per::Perturbation< Treal, Tmatrix, Tvector > Class Template Reference

#include <Perturbation.h>

List of all members.

Public Member Functions

 Perturbation (std::vector< Tmatrix * > const &F, std::vector< Tmatrix * > &D, mat::Interval< Treal > const &gap, mat::Interval< Treal > const &allEigs, Treal const deltaMax, Treal const errorTol, mat::normType const norm, Tvector &vect)
void perturb ()
void checkIdempotencies (std::vector< Treal > &idemErrors)
template<typename TmatNoSymm >
void checkCommutators (std::vector< Treal > &commErrors, TmatNoSymm const &dummyMat)
void checkMaxSubspaceError (Treal &subsError)

Protected Member Functions

void dryRun ()
 Dry run to obtain some needed numbers.
void run ()

Protected Attributes

std::vector< Tmatrix * > const & F
std::vector< Tmatrix * > & X
mat::Interval< Treal > gap
mat::Interval< Treal > const & allEigs
Treal deltaMax
Treal errorTol
mat::normType const norm
Tvector & vect
int nIter
std::vector< Treal > threshVal
std::vector< Treal > sigma

template<typename Treal, typename Tmatrix, typename Tvector>
class per::Perturbation< Treal, Tmatrix, Tvector >


Constructor & Destructor Documentation

template<typename Treal , typename Tmatrix , typename Tvector >
per::Perturbation< Treal, Tmatrix, Tvector >::Perturbation ( std::vector< Tmatrix * > const &  F,
std::vector< Tmatrix * > &  D,
mat::Interval< Treal > const &  gap,
mat::Interval< Treal > const &  allEigs,
Treal const   deltaMax,
Treal const   errorTol,
mat::normType const   norm,
Tvector &  vect 
) [inline]
Parameters:
F Vector with matrices (input).
D Vector with matrices (output).
gap Band gap.
allEigs Interval containing all eigenvalues of X0 + delta*X1 + delta^2*X2 + ... for all delta in [0, deltaMax] for initial X.
deltaMax Largest allowed delta.
errorTol Error tolerance.
norm Norm for truncation etc.
vect Vector.

References per::Perturbation< Treal, Tmatrix, Tvector >::allEigs, per::Perturbation< Treal, Tmatrix, Tvector >::F, per::Perturbation< Treal, Tmatrix, Tvector >::gap, and per::Perturbation< Treal, Tmatrix, Tvector >::X.


Member Function Documentation

template<typename Treal , typename Tmatrix , typename Tvector >
template<typename TmatNoSymm >
void per::Perturbation< Treal, Tmatrix, Tvector >::checkCommutators ( std::vector< Treal > &  commErrors,
TmatNoSymm const &  dummyMat 
) [inline]
template<typename Treal , typename Tmatrix , typename Tvector >
void per::Perturbation< Treal, Tmatrix, Tvector >::checkIdempotencies ( std::vector< Treal > &  idemErrors  )  [inline]
template<typename Treal , typename Tmatrix , typename Tvector >
void per::Perturbation< Treal, Tmatrix, Tvector >::checkMaxSubspaceError ( Treal &  subsError  )  [inline]
template<typename Treal , typename Tmatrix , typename Tvector >
void per::Perturbation< Treal, Tmatrix, Tvector >::dryRun (  )  [inline, protected]
template<typename Treal, typename Tmatrix, typename Tvector>
void per::Perturbation< Treal, Tmatrix, Tvector >::perturb (  )  [inline]
template<typename Treal , typename Tmatrix , typename Tvector >
void per::Perturbation< Treal, Tmatrix, Tvector >::run (  )  [inline, protected]

Member Data Documentation

template<typename Treal, typename Tmatrix, typename Tvector>
mat::Interval<Treal> const& per::Perturbation< Treal, Tmatrix, Tvector >::allEigs [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
Treal per::Perturbation< Treal, Tmatrix, Tvector >::deltaMax [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
Treal per::Perturbation< Treal, Tmatrix, Tvector >::errorTol [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
std::vector<Tmatrix *> const& per::Perturbation< Treal, Tmatrix, Tvector >::F [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
mat::Interval<Treal> per::Perturbation< Treal, Tmatrix, Tvector >::gap [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
int per::Perturbation< Treal, Tmatrix, Tvector >::nIter [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
mat::normType const per::Perturbation< Treal, Tmatrix, Tvector >::norm [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
std::vector<Treal> per::Perturbation< Treal, Tmatrix, Tvector >::sigma [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
std::vector<Treal> per::Perturbation< Treal, Tmatrix, Tvector >::threshVal [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
Tvector& per::Perturbation< Treal, Tmatrix, Tvector >::vect [protected]
template<typename Treal, typename Tmatrix, typename Tvector>
std::vector<Tmatrix *>& per::Perturbation< Treal, Tmatrix, Tvector >::X [protected]

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

Generated on 10 Jul 2018 for ergo by  doxygen 1.6.1