#include <LanczosLargestMagnitudeEig.h>
Public Member Functions | |
| LanczosLargestMagnitudeEig (Tmatrix const &AA, Tvector const &startVec, int maxIter=100, int cap=100) | |
| void | setRelTol (Treal const newTol) |
| void | setAbsTol (Treal const newTol) |
| void | getLargestMagnitudeEig (Treal &ev, Treal &accuracy) |
| void | getLargestMagnitudeEigPair (Treal &eValue, Tvector &eVector, Treal &accuracy) |
| virtual void | run () |
| void | rerun () |
| virtual | ~LanczosLargestMagnitudeEig () |
Protected Member Functions | |
| void | computeEigenPairTri () |
| void | computeEigVec () |
| virtual void | update () |
| virtual bool | converged () const |
Protected Attributes | |
| Treal | eVal |
| Tvector | eVec |
| Treal | acc |
| Treal * | eigVectorTri |
| Treal | absTol |
| Eigenvector to the tridiagonal matrix length: this->j. | |
| Treal | relTol |
| Treal | eValTmp |
| Treal | accTmp |
| mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::LanczosLargestMagnitudeEig | ( | Tmatrix const & | AA, | |
| Tvector const & | startVec, | |||
| int | maxIter = 100, |
|||
| int | cap = 100 | |||
| ) | [inline] |
| virtual mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::~LanczosLargestMagnitudeEig | ( | ) | [inline, virtual] |
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigenPairTri | ( | ) | [inline, protected] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::accTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eigVectorTri, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eValTmp, mat::arn::Lanczos< Treal, Tmatrix, Tvector >::j, template_blas_fabs(), and mat::arn::Lanczos< Treal, Tmatrix, Tvector >::Tri.
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::update().
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigVec | ( | ) | [inline, protected] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eigVectorTri, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVec, and mat::arn::Lanczos< Treal, Tmatrix, Tvector >::getEigVector().
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun(), mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run().
| bool mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged | ( | ) | const [inline, protected, virtual] |
Implements mat::arn::Lanczos< Treal, Tmatrix, Tvector >.
Reimplemented in mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >.
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::absTol, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::accTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eValTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::relTol, and template_blas_fabs().
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEig | ( | Treal & | ev, | |
| Treal & | accuracy | |||
| ) | [inline] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::acc, and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVal.
Referenced by mat::MatrixTriangular< Treal, Tmatrix >::eucl(), mat::MatrixSymmetric< Treal, Tmatrix >::eucl(), mat::MatrixGeneral< Treal, Tmatrix >::eucl(), mat::euclIfSmall(), and mainFun().
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEigPair | ( | Treal & | eValue, | |
| Tvector & | eVector, | |||
| Treal & | accuracy | |||
| ) | [inline] |
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun | ( | ) | [inline] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::acc, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::accTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigVec(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVal, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eValTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVec, mat::arn::Lanczos< Treal, Tmatrix, Tvector >::restart(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run(), template_blas_fabs(), and mat::transpose().
Referenced by mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run().
| virtual void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run | ( | ) | [inline, virtual] |
Reimplemented from mat::arn::Lanczos< Treal, Tmatrix, Tvector >.
Reimplemented in mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >.
References mat::arn::Lanczos< Treal, Tmatrix, Tvector >::A, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::acc, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::accTmp, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigVec(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVal, mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eValTmp, and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun().
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun().
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::setAbsTol | ( | Treal const | newTol | ) | [inline] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::absTol.
Referenced by mat::euclIfSmall().
| void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::setRelTol | ( | Treal const | newTol | ) | [inline] |
References mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::relTol.
Referenced by mat::euclIfSmall().
| virtual void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::update | ( | ) | [inline, protected, virtual] |
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::absTol [protected] |
Eigenvector to the tridiagonal matrix length: this->j.
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::setAbsTol().
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::acc [protected] |
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEig(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEigPair(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun(), mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run().
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::accTmp [protected] |
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigenPairTri(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun(), mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run().
Treal* mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eigVectorTri [protected] |
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVal [protected] |
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEig(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEigPair(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun(), mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run().
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eValTmp [protected] |
Referenced by mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigenPairTri(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::rerun(), mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::run(), mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::run(), and mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >::update().
Tvector mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVec [protected] |
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::relTol [protected] |
1.6.1