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.
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.
MatrixTridiagSymmetric< Treal > Tri
 Residual vector.
int capacity
int j
int maxIter
 Current step.

Constructor & Destructor Documentation

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
template<typename Treal , typename Tmatrix , typename Tvector >
virtual mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::~LanczosLargestMagnitudeEig ( )
inlinevirtual

Member Function Documentation

template<typename Treal , typename Tmatrix , typename Tvector >
void mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::computeEigenPairTri ( )
protected
template<typename Treal , typename Tmatrix , typename Tvector >
bool mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::converged ( ) const
protectedvirtual
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().

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

Member Data Documentation

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().

template<typename Treal , typename Tmatrix , typename Tvector >
Treal* mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eigVectorTri
protected
template<typename Treal , typename Tmatrix , typename Tvector >
Tvector mat::arn::LanczosLargestMagnitudeEig< Treal, Tmatrix, Tvector >::eVec
protected
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: