concepts::AnasaziES< ScalarT > Class Template Referenceabstract
#include <anasaziES.hh>
Public Types | |
typedef Anasazi::MultiVec< ScalarT > | MV |
typedef AnasaziMV< ScalarT > | MV_C |
typedef Anasazi::MultiVecTraits< ScalarT, MV > | MVT |
typedef Anasazi::Operator< ScalarT > | OP |
typedef AnasaziOp< ScalarT > | OP_C |
enum | SolverType { BLOCK_KRYLOV_SCHUR, BLOCK_DAVIDSON, LOBPCG, RTR } |
enum | State { INIT_PHASE, CONFIGURED_PHASE, SOLVED_PHASE } |
Public Member Functions | |
AnasaziES (SolverType solverType, concepts::Operator< ScalarT > &A) | |
virtual uint | converged () const |
Returns the number of converged eigen pairs. More... | |
virtual uint | converged () const=0 |
Returns the number of converged eigen pairs. More... | |
virtual const concepts::Array< concepts::Vector< ScalarT > * > & | getEF () |
Returns an array with the eigen functions. More... | |
virtual const concepts::Array< ScalarT > & | getEV () |
Returns an array with the eigen values. More... | |
Teuchos::RCP< Anasazi::BasicEigenproblem< ScalarT, MV, OP > > | getProblem () |
virtual uint | iterations () const |
Returns the number of iterations. More... | |
virtual uint | iterations () const=0 |
Returns the number of iterations. More... | |
void | setBlockSize (int blocksize=1) |
void | setConvergenceNorm (std::string norm="2") |
Convergence Norm. More... | |
void | setConvTol (double tolerance) |
Convergence Tolerance. More... | |
void | setHermitian (bool isHermite) |
void | setM (concepts::Operator< ScalarT > &M) |
void | setMaxLocked (int val) |
Max Locked. More... | |
void | setMaxRestarts (int maxRestarts=100) |
void | setMode (std::string mode="LM") |
void | setNEV (int nev=3) |
void | setNumBlocks (int numBlocks) |
for Block Krylov Chur. More... | |
void | setOrthogonalization (std::string mode="SVQB") |
BlockKrylovSchur: the desired orthogonalization: DGKS or SVQB. More... | |
bool | setProblem () |
initialises the problem with the specified parameters, and returns if the configuration is valid More... | |
void | setRelConvTol (bool rct) |
Relative Convergence Tolerance. More... | |
void | setVerbosity (int verbosity=Anasazi::Errors) |
int | solve () |
~AnasaziES () | |
Public Attributes | |
virtual std::ostream &std::ostream &os | const |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. More... | |
Private Attributes | |
Teuchos::RCP< OP_C > | A_ |
concepts::Array< concepts::Vector< ScalarT > * > | efs_ |
concepts::Array< ScalarT > | evs_ |
Teuchos::ParameterList | myPL_ |
Teuchos::RCP< Anasazi::BasicEigenproblem< ScalarT, MV, OP > > | myProblem_ |
State | phase_ |
Teuchos::RCP< Anasazi::SolverManager< ScalarT, MV, OP > > | solver_ |
SolverType | solverType_ |
Detailed Description
template<class ScalarT>
class concepts::AnasaziES< ScalarT >
Definition at line 17 of file anasaziES.hh.
Member Typedef Documentation
◆ MV
typedef Anasazi::MultiVec<ScalarT> concepts::AnasaziES< ScalarT >::MV |
Definition at line 22 of file anasaziES.hh.
◆ MV_C
typedef AnasaziMV<ScalarT> concepts::AnasaziES< ScalarT >::MV_C |
Definition at line 24 of file anasaziES.hh.
◆ MVT
typedef Anasazi::MultiVecTraits<ScalarT, MV> concepts::AnasaziES< ScalarT >::MVT |
Definition at line 26 of file anasaziES.hh.
◆ OP
typedef Anasazi::Operator<ScalarT> concepts::AnasaziES< ScalarT >::OP |
Definition at line 23 of file anasaziES.hh.
◆ OP_C
typedef AnasaziOp<ScalarT> concepts::AnasaziES< ScalarT >::OP_C |
Definition at line 25 of file anasaziES.hh.
Member Enumeration Documentation
◆ SolverType
enum concepts::AnasaziES::SolverType |
Enumerator | |
---|---|
BLOCK_KRYLOV_SCHUR | |
BLOCK_DAVIDSON | |
LOBPCG | |
RTR |
Definition at line 20 of file anasaziES.hh.
◆ State
enum concepts::AnasaziES::State |
Enumerator | |
---|---|
INIT_PHASE | |
CONFIGURED_PHASE | |
SOLVED_PHASE |
Definition at line 19 of file anasaziES.hh.
Constructor & Destructor Documentation
◆ AnasaziES()
concepts::AnasaziES< ScalarT >::AnasaziES | ( | SolverType | solverType, |
concepts::Operator< ScalarT > & | A | ||
) |
◆ ~AnasaziES()
|
inline |
Definition at line 32 of file anasaziES.hh.
Member Function Documentation
◆ converged() [1/2]
|
inlinevirtual |
Returns the number of converged eigen pairs.
Definition at line 180 of file anasaziES.hh.
◆ converged() [2/2]
|
pure virtualinherited |
Returns the number of converged eigen pairs.
◆ getEF()
|
inlinevirtual |
Returns an array with the eigen functions.
Implements eigensolver::EigenSolver< ScalarT >.
Definition at line 169 of file anasaziES.hh.
◆ getEV()
|
inlinevirtual |
Returns an array with the eigen values.
Implements eigensolver::EigenSolver< ScalarT >.
Definition at line 159 of file anasaziES.hh.
◆ getProblem()
|
inline |
Definition at line 197 of file anasaziES.hh.
◆ info()
|
protectedvirtualinherited |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
◆ iterations() [1/2]
|
inlinevirtual |
Returns the number of iterations.
Definition at line 190 of file anasaziES.hh.
◆ iterations() [2/2]
|
pure virtualinherited |
Returns the number of iterations.
◆ setBlockSize()
|
inline |
Definition at line 47 of file anasaziES.hh.
◆ setConvergenceNorm()
|
inline |
Convergence Norm.
Block Davidson: a string specifying the norm for convergence testing: "2" or "M"
Definition at line 145 of file anasaziES.hh.
◆ setConvTol()
|
inline |
Convergence Tolerance.
MagnitudeType specifying the level that residual norms must reach to decide convergence. Default: machine precision.
Definition at line 129 of file anasaziES.hh.
◆ setHermitian()
|
inline |
Definition at line 41 of file anasaziES.hh.
◆ setM()
|
inline |
Definition at line 36 of file anasaziES.hh.
◆ setMaxLocked()
|
inline |
Max Locked.
Block Davidson: a int specifying the maximum number of eigenpairs to be locked. Default: problem->getNEV()
Definition at line 153 of file anasaziES.hh.
◆ setMaxRestarts()
|
inline |
Definition at line 121 of file anasaziES.hh.
◆ setMode()
|
inline |
Definition at line 108 of file anasaziES.hh.
◆ setNEV()
|
inline |
Definition at line 56 of file anasaziES.hh.
◆ setNumBlocks()
|
inline |
◆ setOrthogonalization()
|
inline |
BlockKrylovSchur: the desired orthogonalization: DGKS or SVQB.
Definition at line 93 of file anasaziES.hh.
◆ setProblem()
bool concepts::AnasaziES< ScalarT >::setProblem | ( | ) |
initialises the problem with the specified parameters, and returns if the configuration is valid
- Precondition
- : phase is INIT_PHASE or CONFIGURED_PHASE
- Postcondition
- : phase is CONFIGURED_PHASE or error occured (return != 0)
◆ setRelConvTol()
|
inline |
Relative Convergence Tolerance.
a bool specifying whether residuals norms should be scaled by their eigenvalues for the purposing of deciding convergence. Default: true
Definition at line 138 of file anasaziES.hh.
◆ setVerbosity()
|
inline |
Definition at line 87 of file anasaziES.hh.
◆ solve()
int concepts::AnasaziES< ScalarT >::solve | ( | ) |
Member Data Documentation
◆ A_
|
private |
Definition at line 208 of file anasaziES.hh.
◆ const
virtual std::ostream& std::ostream& os concepts::AnasaziES< ScalarT >::const |
Definition at line 203 of file anasaziES.hh.
◆ efs_
|
private |
Definition at line 216 of file anasaziES.hh.
◆ evs_
|
private |
Definition at line 215 of file anasaziES.hh.
◆ myPL_
|
private |
Definition at line 211 of file anasaziES.hh.
◆ myProblem_
|
private |
Definition at line 209 of file anasaziES.hh.
◆ phase_
|
private |
Definition at line 218 of file anasaziES.hh.
◆ solver_
|
private |
Definition at line 213 of file anasaziES.hh.
◆ solverType_
|
private |
Definition at line 219 of file anasaziES.hh.
The documentation for this class was generated from the following file:
- eigensolver/anasaziES.hh