|
| Teuchos::RCP< LinearProblem< ScalarType, MV, OP > > | problem_ |
| |
| Teuchos::RCP< OutputManager< ScalarType > > | printer_ |
| |
| Teuchos::RCP< std::ostream > | outputStream_ |
| |
| Teuchos::RCP< StatusTest< ScalarType, MV, OP > > | sTest_ |
| |
| Teuchos::RCP< StatusTestMaxIters< ScalarType, MV, OP > > | maxIterTest_ |
| |
| Teuchos::RCP< StatusTestGenResNorm< ScalarType, MV, OP > > | convTest_ |
| |
| Teuchos::RCP< StatusTestOutput< ScalarType, MV, OP > > | outputTest_ |
| |
| Teuchos::RCP< Teuchos::ParameterList > | params_ |
| |
| MagnitudeType | convtol_ |
| | Convergence tolerance (read from parameter list). More...
|
| |
| MagnitudeType | achievedTol_ |
| | Tolerance achieved by the last solve() invocation. More...
|
| |
| int | maxIters_ |
| | Maximum iteration count (read from parameter list). More...
|
| |
| int | numIters_ |
| | Number of iterations taken by the last solve() invocation. More...
|
| |
| int | numBlocks_ |
| |
| int | recycleBlocks_ |
| |
| bool | showMaxResNormOnly_ |
| |
| int | verbosity_ |
| |
| int | outputStyle_ |
| |
| int | outputFreq_ |
| |
| Teuchos::RCP< MV > | P_ |
| |
| Teuchos::RCP< MV > | Ap_ |
| |
| Teuchos::RCP< MV > | r_ |
| |
| Teuchos::RCP< MV > | z_ |
| |
| bool | existU_ |
| |
| bool | existU1_ |
| |
| Teuchos::RCP< MV > | U_ |
| |
| Teuchos::RCP< MV > | AU_ |
| |
| Teuchos::RCP< MV > | U1_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | Alpha_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | Beta_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | D_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | Delta_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | UTAU_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | LUUTAU_ |
| |
| Teuchos::RCP< std::vector< int > > | ipiv_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AUTAU_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | rTz_old_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | F_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | G_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | Y_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | L2_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | DeltaL2_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AU1TUDeltaL2_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AU1TAU1_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AU1TU1_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AU1TAP_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | FY_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | GY_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | APTAP_ |
| |
| Teuchos::RCP< MV > | U1Y1_ |
| |
| Teuchos::RCP< MV > | PY2_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AUTAP_ |
| |
| Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > | AU1TU_ |
| |
| ScalarType | dold |
| |
| std::string | label_ |
| |
| Teuchos::RCP< Teuchos::Time > | timerSolve_ |
| |
| bool | params_Set_ |
| |
| static constexpr int | maxIters_default_ = 1000 |
| |
| static constexpr int | blockSize_default_ = 1 |
| |
| static constexpr int | numBlocks_default_ = 25 |
| |
| static constexpr int | recycleBlocks_default_ = 3 |
| |
| static constexpr bool | showMaxResNormOnly_default_ = false |
| |
| static constexpr int | verbosity_default_ = Belos::Errors |
| |
| static constexpr int | outputStyle_default_ = Belos::General |
| |
| static constexpr int | outputFreq_default_ = -1 |
| |
| static constexpr const char * | label_default_ = "Belos" |
| |
| static constexpr std::ostream * | outputStream_default_ = &std::cout |
| |
| std::string | description () const override |
| | Method to return description of the RCG solver manager. More...
|
| |
| void | init () |
| |
| void | getHarmonicVecs (const Teuchos::SerialDenseMatrix< int, ScalarType > &F, const Teuchos::SerialDenseMatrix< int, ScalarType > &G, Teuchos::SerialDenseMatrix< int, ScalarType > &Y) |
| |
| void | sort (std::vector< ScalarType > &dlist, int n, std::vector< int > &iperm) |
| |
| void | initializeStateStorage () |
| |
|
| | SolverManagerRequiresRealLapack () |
| |
| virtual | ~SolverManagerRequiresRealLapack () |
| |
| | SolverManager () |
| | Empty constructor. More...
|
| |
| virtual | ~SolverManager () |
| | Destructor. More...
|
| |
| virtual void | setUserConvStatusTest (const Teuchos::RCP< StatusTest< ScalarType, MV, OP > > &userConvStatusTest, const typename StatusTestCombo< ScalarType, MV, OP >::ComboType &comboType=StatusTestCombo< ScalarType, MV, OP >::SEQ) |
| | Set user-defined convergence status test. More...
|
| |
| virtual void | setDebugStatusTest (const Teuchos::RCP< StatusTest< ScalarType, MV, OP > > &debugStatusTest) |
| | Set user-defined debug status test. More...
|
| |
| DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
| |
| std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
| |
| virtual void | describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
| |
| void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
| |
| virtual | ~Describable () |
| |
| | LabeledObject () |
| |
| virtual | ~LabeledObject () |
| |
| virtual void | setObjectLabel (const std::string &objectLabel) |
| |
| virtual std::string | getObjectLabel () const |
| |
| static const EVerbosityLevel | verbLevel_default |
| |
template<class ScalarType, class MV, class OP>
class Belos::RCGSolMgr< ScalarType, MV, OP, true >
Definition at line 185 of file BelosRCGSolMgr.hpp.
template<class ScalarType , class MV , class OP >
Basic constructor for RCGSolMgr.
This constructor accepts the LinearProblem to be solved in addition to a parameter list of options for the solver manager. These options include the following:
- "Num Blocks" - a
int specifying length of a cycle (and thus number of max number of search vectors kept). Default: 25
- "Num Recycled Blocks" - a
int specifying the number of vectors selected for recycling. Default: 3
- "Maximum Iterations" - an
int specifying the maximum number of iterations the underlying solver is allowed to perform. Default: 1000
- "Verbosity" - a sum of MsgType specifying the verbosity. Default: Belos::Errors
- "Output Style" - a OutputType specifying the style of output. Default: Belos::General
- "Convergence Tolerance" - a
MagnitudeType specifying the level that residual norms must reach to decide convergence. Default: 1e-8.
- "Output Stream" - a reference-counted pointer to the output stream where all solver output is sent. Default: Teuchos::rcp(&std::cout,false)
- "Output Frequency" - an
int specifying how often convergence information should be outputted. Default: -1 (never)
- "Show Maximum Residual Norm Only" - a
bool specifying whether that only the maximum relative residual norm is printed if convergence information is printed. Default: false
- "Timer Label" - a
std::string to use as a prefix for the timer labels. Default: "Belos"
Definition at line 487 of file BelosRCGSolMgr.hpp.
template<class ScalarType , class MV , class OP >
template<class ScalarType , class MV , class OP >
Performs a reset of the solver manager specified by the ResetType. This informs the solver manager that the solver should prepare for the next call to solve by resetting certain elements of the iterative solver strategy. Belos::Problem forces a call to setProblem on the linear problem, and Belos::RecycleSubspace causes the solver manager to "forget" the recycle space generated by previous calls to the solver. In the latter case, the next call to solve() will act as if the solver has never been called before.
Implements Belos::SolverManager< ScalarType, MV, OP >.
Definition at line 298 of file BelosRCGSolMgr.hpp.
template<class ScalarType , class MV , class OP >
This method performs possibly repeated calls to the underlying linear solver's iterate() routine until the problem has been solved (as decided by the solver manager) or the solver manager decides to quit.
This method calls RCGIter::iterate(), which will return either because a specially constructed status test evaluates to Passed or an std::exception is thrown.
A return from RCGIter::iterate() signifies one of the following scenarios:
- the maximum number of iterations has been exceeded. In this scenario, the current solutions to the linear system will be placed in the linear problem and return Unconverged.
- global convergence has been met. In this case, the current solutions to the linear system will be placed in the linear problem and the solver manager will return Converged
- Returns
- ReturnType specifying:
- Converged: the linear problem was solved to the specification required by the solver manager.
- Unconverged: the linear problem was not solved to the specification desired by the solver manager.
Implements Belos::SolverManager< ScalarType, MV, OP >.
Definition at line 1067 of file BelosRCGSolMgr.hpp.