Class documentation of Concepts

Loading...
Searching...
No Matches
concepts::AnasaziES< ScalarT > Class Template Reference
Inheritance diagram for concepts::AnasaziES< ScalarT >:
eigensolver::EigenSolver< ScalarT > concepts::OutputOperator

Public Types

enum  State { INIT_PHASE , CONFIGURED_PHASE , SOLVED_PHASE }
 
enum  SolverType { BLOCK_KRYLOV_SCHUR , BLOCK_DAVIDSON , LOBPCG , RTR }
 
typedef Anasazi::MultiVec< ScalarTMV
 
typedef Anasazi::Operator< ScalarTOP
 
typedef AnasaziMV< ScalarTMV_C
 
typedef AnasaziOp< ScalarTOP_C
 
typedef Anasazi::MultiVecTraits< ScalarT, MV > MVT
 

Public Member Functions

 AnasaziES (SolverType solverType, concepts::Operator< ScalarT > &A)
 
void setM (concepts::Operator< ScalarT > &M)
 
void setHermitian (bool isHermite)
 
void setBlockSize (int blocksize=1)
 
void setNEV (int nev=3)
 
bool setProblem ()
 
int solve ()
 
void setVerbosity (int verbosity=Anasazi::Errors)
 
void setOrthogonalization (std::string mode="SVQB")
 
void setMode (std::string mode="LM")
 
void setNumBlocks (int numBlocks)
 
void setMaxRestarts (int maxRestarts=100)
 
void setConvTol (double tolerance)
 
void setRelConvTol (bool rct)
 
void setConvergenceNorm (std::string norm="2")
 
void setMaxLocked (int val)
 
virtual const concepts::Array< ScalarT > & getEV ()
 Returns an array with the eigen values.
 
virtual const concepts::Array< concepts::Vector< ScalarT > * > & getEF ()
 Returns an array with the eigen functions.
 
virtual uint converged () const
 Returns the number of converged eigen pairs.
 
virtual uint iterations () const
 Returns the number of iterations.
 
Teuchos::RCP< Anasazi::BasicEigenproblem< ScalarT, MV, OP > > getProblem ()
 

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.
 

Detailed Description

template<class ScalarT>
class concepts::AnasaziES< ScalarT >

Definition at line 17 of file anasaziES.hh.

Member Typedef Documentation

◆ MV

template<class ScalarT >
typedef Anasazi::MultiVec<ScalarT> concepts::AnasaziES< ScalarT >::MV

Definition at line 22 of file anasaziES.hh.

◆ MV_C

Definition at line 24 of file anasaziES.hh.

◆ MVT

template<class ScalarT >
typedef Anasazi::MultiVecTraits<ScalarT, MV> concepts::AnasaziES< ScalarT >::MVT

Definition at line 26 of file anasaziES.hh.

◆ OP

template<class ScalarT >
typedef Anasazi::Operator<ScalarT> concepts::AnasaziES< ScalarT >::OP

Definition at line 23 of file anasaziES.hh.

◆ OP_C

Definition at line 25 of file anasaziES.hh.

Member Enumeration Documentation

◆ SolverType

template<class ScalarT >
enum concepts::AnasaziES::SolverType

Definition at line 20 of file anasaziES.hh.

◆ State

template<class ScalarT >
enum concepts::AnasaziES::State

Definition at line 19 of file anasaziES.hh.

Constructor & Destructor Documentation

◆ ~AnasaziES()

template<class ScalarT >
concepts::AnasaziES< ScalarT >::~AnasaziES ( )
inline

Definition at line 32 of file anasaziES.hh.

Member Function Documentation

◆ converged()

template<class ScalarT >
virtual uint concepts::AnasaziES< ScalarT >::converged ( ) const
inlinevirtual

Returns the number of converged eigen pairs.

Implements eigensolver::EigenSolver< ScalarT >.

Definition at line 180 of file anasaziES.hh.

◆ getEF()

template<class ScalarT >
virtual const concepts::Array< concepts::Vector< ScalarT > * > & concepts::AnasaziES< ScalarT >::getEF ( )
inlinevirtual

Returns an array with the eigen functions.

Implements eigensolver::EigenSolver< ScalarT >.

Definition at line 169 of file anasaziES.hh.

◆ getEV()

template<class ScalarT >
virtual const concepts::Array< ScalarT > & concepts::AnasaziES< ScalarT >::getEV ( )
inlinevirtual

Returns an array with the eigen values.

Implements eigensolver::EigenSolver< ScalarT >.

Definition at line 159 of file anasaziES.hh.

◆ getProblem()

template<class ScalarT >
Teuchos::RCP< Anasazi::BasicEigenproblem< ScalarT, MV, OP > > concepts::AnasaziES< ScalarT >::getProblem ( )
inline

Definition at line 197 of file anasaziES.hh.

◆ info()

virtual std::ostream & eigensolver::EigenSolver< ScalarT >::info ( std::ostream &  os) const
protectedvirtualinherited

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

◆ iterations()

template<class ScalarT >
virtual uint concepts::AnasaziES< ScalarT >::iterations ( ) const
inlinevirtual

Returns the number of iterations.

Implements eigensolver::EigenSolver< ScalarT >.

Definition at line 190 of file anasaziES.hh.

◆ setBlockSize()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setBlockSize ( int  blocksize = 1)
inline

Definition at line 47 of file anasaziES.hh.

◆ setConvergenceNorm()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setConvergenceNorm ( std::string  norm = "2")
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()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setConvTol ( double  tolerance)
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()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setHermitian ( bool  isHermite)
inline

Definition at line 41 of file anasaziES.hh.

◆ setM()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setM ( concepts::Operator< ScalarT > &  M)
inline

Definition at line 36 of file anasaziES.hh.

◆ setMaxLocked()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setMaxLocked ( int  val)
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()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setMaxRestarts ( int  maxRestarts = 100)
inline

Definition at line 121 of file anasaziES.hh.

◆ setMode()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setMode ( std::string  mode = "LM")
inline

Definition at line 108 of file anasaziES.hh.

◆ setNEV()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setNEV ( int  nev = 3)
inline

Definition at line 56 of file anasaziES.hh.

◆ setNumBlocks()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setNumBlocks ( int  numBlocks)
inline

for Block Krylov Chur. Anasazi default: 3 * nev

Definition at line 116 of file anasaziES.hh.

◆ setOrthogonalization()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setOrthogonalization ( std::string  mode = "SVQB")
inline

BlockKrylovSchur: the desired orthogonalization: DGKS or SVQB

Definition at line 93 of file anasaziES.hh.

◆ setProblem()

template<class ScalarT >
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()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setRelConvTol ( bool  rct)
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()

template<class ScalarT >
void concepts::AnasaziES< ScalarT >::setVerbosity ( int  verbosity = Anasazi::Errors)
inline

Definition at line 87 of file anasaziES.hh.

Member Data Documentation

◆ const

template<class ScalarT >
virtual std::ostream& std::ostream& os concepts::AnasaziES< ScalarT >::const
Initial value:
{
return os << concepts::typeOf(*this) << " in state " << (int)phase_
std::string typeOf(const T &t)
Definition output.hh:43
Set< F > makeSet(uint n, const F &first,...)
Definition set.hh:320

Definition at line 203 of file anasaziES.hh.


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