ergo
mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector > Class Template Reference

#include <LanczosLargestMagnitudeEig.h>

Inheritance diagram for mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >:
mat::arn::Lanczos< Treal, Tmatrix, Tvector > mat::arn::LanczosLargestMagnitudeEigIfSmall< Treal, Tmatrix, Tvector >

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 ()
 
- Public Member Functions inherited from mat::arn::Lanczos< Treal, Tmatrix, Tvector >
 Lanczos (Tmatrix const &AA, Tvector const &startVec, int maxIt=100, int cap=100)
 
void restart (Tvector const &startVec)
 
void copyTridiag (MatrixTridiagSymmetric< Treal > &Tricopy)
 
virtual ~Lanczos ()
 

Protected Member Functions

void computeEigenPairTri ()
 
void computeEigVec ()
 
virtual void update ()
 
virtual bool converged () const
 
- Protected Member Functions inherited from mat::arn::Lanczos< Treal, Tmatrix, Tvector >
void increaseCapacity (int const newCapacity)
 
void step ()
 
void getEigVector (Tvector &eigVec, Treal const *const eVecTri) const
 

Protected Attributes

Treal eVal
 
Tvector eVec
 
Treal acc
 
Treal * eigVectorTri
 
Treal absTol
 Eigenvector to the tridiagonal matrix length: this->j. More...
 
Treal relTol
 
Treal eValTmp
 
Treal accTmp
 
- Protected Attributes inherited from mat::arn::Lanczos< Treal, Tmatrix, Tvector >
Tmatrix const & A
 
Tvector * v
 
Tvector r
 Vectors spanning Krylov subspace. More...
 
MatrixTridiagSymmetric< Treal > Tri
 Residual vector. More...
 
int capacity
 
int j
 
int maxIter
 Current step. More...
 

Constructor & Destructor Documentation

◆ LanczosLargestMagnitudeEig()

template<typename Treal , typename Tmatrix , typename Tvector >
mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::LanczosLargestMagnitudeEig ( Tmatrix const &  AA,
Tvector const &  startVec,
int  maxIter = 100,
int  cap = 100 
)
inline

◆ ~LanczosLargestMagnitudeEig()

template<typename Treal , typename Tmatrix , typename Tvector >
virtual mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::~LanczosLargestMagnitudeEig ( )
inlinevirtual

Member Function Documentation

◆ computeEigenPairTri()

template<typename Treal , typename Tmatrix , typename Tvector >
void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigenPairTri
protected

◆ computeEigVec()

◆ converged()

template<typename Treal , typename Tmatrix , typename Tvector >
bool mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged
protectedvirtual

◆ getLargestMagnitudeEig()

◆ getLargestMagnitudeEigPair()

template<typename Treal , typename Tmatrix , typename Tvector >
void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::getLargestMagnitudeEigPair ( Treal &  eValue,
Tvector &  eVector,
Treal &  accuracy 
)

Referenced by mat::euclIfSmall().

◆ rerun()

◆ run()

◆ setAbsTol()

template<typename Treal , typename Tmatrix , typename Tvector >
void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::setAbsTol ( Treal const  newTol)
inline

◆ setRelTol()

template<typename Treal , typename Tmatrix , typename Tvector >
void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::setRelTol ( Treal const  newTol)
inline

◆ update()

Member Data Documentation

◆ absTol

template<typename Treal , typename Tmatrix , typename Tvector >
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 >::setAbsTol().

◆ acc

◆ accTmp

◆ eigVectorTri

template<typename Treal , typename Tmatrix , typename Tvector >
Treal* mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eigVectorTri
protected

◆ eVal

◆ eValTmp

◆ eVec

template<typename Treal , typename Tmatrix , typename Tvector >
Tvector mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVec
protected

◆ relTol

template<typename Treal , typename Tmatrix , typename Tvector >
Treal mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::relTol
protected

The documentation for this class was generated from the following file: