#include <AnasaziIRTR.hpp>
Public Member Functions | |
Constructor/Destructor | |
IRTR (const Teuchos::RCP< Eigenproblem< ScalarType, MV, OP > > &problem, const Teuchos::RCP< SortManager< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > > &sorter, const Teuchos::RCP< OutputManager< ScalarType > > &printer, const Teuchos::RCP< StatusTest< ScalarType, MV, OP > > &tester, const Teuchos::RCP< GenOrthoManager< ScalarType, MV, OP > > &ortho, Teuchos::ParameterList ¶ms) | |
IRTR constructor with eigenproblem, solver utilities, and parameter list of solver options. | |
virtual | ~IRTR () |
IRTR destructor | |
Solver methods | |
void | iterate () |
Impemements Eigensolver. The outer IRTR iteration. See RTRBase::iterate(). | |
Output methods | |
void | currentStatus (std::ostream &os) |
Impemements Eigensolver. This method requests that the solver print out its current status to screen. |
The solver uses between 10 and 13 blocks of vectors, compared to the requirements by SIRTR of 6 to 8 blocks of vectors. The base requirement is 10 blocks of vectors, where a block of vectors contains a number of vectors equal to the block size specified for the solver (see RTRBase::getBlockSize()). Additional blocks are required when solving a generalized eigenvalue problem or when using a preconditioiner.
For more information, see RTRBase.
Definition at line 46 of file AnasaziIRTR.hpp.
Anasazi::IRTR< ScalarType, MV, OP >::IRTR | ( | const Teuchos::RCP< Eigenproblem< ScalarType, MV, OP > > & | problem, | |
const Teuchos::RCP< SortManager< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > > & | sorter, | |||
const Teuchos::RCP< OutputManager< ScalarType > > & | printer, | |||
const Teuchos::RCP< StatusTest< ScalarType, MV, OP > > & | tester, | |||
const Teuchos::RCP< GenOrthoManager< ScalarType, MV, OP > > & | ortho, | |||
Teuchos::ParameterList & | params | |||
) | [inline] |
IRTR constructor with eigenproblem, solver utilities, and parameter list of solver options.
This constructor takes pointers required by the eigensolver, in addition to a parameter list of options for the eigensolver. These options include the following:
MagnitudeType
specifying the size of the implicit trust-region radius.int
specifying the block size used by the algorithm. This can also be specified using the setBlockSize() method.bool
specifying whether the solver is computing the leftmost ("SR") or rightmost ("LR") eigenvalues. Default: true. This must be in accord with the SortManager pass to the constructor.MagnitudeType
specifing the rate of convergence for the linear convergence regime. Default: 0.1MagnitudeType
specifing the order of convergence for the linear convergence regime. theta implies a convergence order of theta+1. Default: 1.0 Definition at line 142 of file AnasaziIRTR.hpp.
virtual Anasazi::IRTR< ScalarType, MV, OP >::~IRTR | ( | ) | [inline, virtual] |
void Anasazi::IRTR< ScalarType, MV, OP >::currentStatus | ( | std::ostream & | os | ) | [inline, virtual] |
Impemements Eigensolver. This method requests that the solver print out its current status to screen.
Reimplemented from Anasazi::RTRBase< ScalarType, MV, OP >.
Definition at line 904 of file AnasaziIRTR.hpp.
void Anasazi::IRTR< ScalarType, MV, OP >::iterate | ( | ) | [inline, virtual] |
Impemements Eigensolver. The outer IRTR iteration. See RTRBase::iterate().
Implements Anasazi::RTRBase< ScalarType, MV, OP >.
Definition at line 665 of file AnasaziIRTR.hpp.