Belos  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
Belos::InnerSolveResult Class Reference

Represents the result of an inner solve. More...

#include <BelosInnerSolveResult.hpp>

Public Member Functions

 InnerSolveResult (const ReturnType theResult, const int theNumRestartCycles, const int theTotalNumIters, const std::map< std::string, double > &theExtraData)
 Constructor. More...
 
 InnerSolveResult (const ReturnType theResult, const int theNumRestartCycles, const int theTotalNumIters)
 Constructor, with no "extra data" input argument. More...
 
ReturnType result ()
 Did the inner solve converge? More...
 
int totalNumIters () const
 Total number of iterations completed over all restarts. More...
 
int numRestartCycles () const
 Total number of restart cycles. More...
 
const std::map< std::string,
double > & 
extraData () const
 "Extra" data from the inner solve. More...
 

Detailed Description

Represents the result of an inner solve.

Author
Mark Hoemmen
Warning
This is EXPERIMENTAL CODE. DO NOT RELY ON THIS CODE. The interface or implementation may change at any time.

An "inner solve" is an invocation of an iterative method, itself used as the operator or preconditioner for another iterative method. Inner solves may converge or not converge; they take some number of iterations to do either, and that number is less than or equal to some maximum number of iterations. The inner solve result may represent the result of solving for a single right-hand side, or it may aggregate the results of solving for multiple right-hand side(s).

Definition at line 66 of file BelosInnerSolveResult.hpp.

Constructor & Destructor Documentation

Belos::InnerSolveResult::InnerSolveResult ( const ReturnType  theResult,
const int  theNumRestartCycles,
const int  theTotalNumIters,
const std::map< std::string, double > &  theExtraData 
)

Constructor.

Parameters
theResult[in] Result of the solve, in numerical terms (Converged or Unconverged)
theNumRestartCycles[in] Number of restart cycles started (not necessarily completed, if convergence happened before the end of the restart cycle). Zero means the initial guess was accurate enough to be judged Converged.
theTotalNumIters[in] Total number of iterations, summed over all restart cycles.
theExtraData[in] Any more data that the inner solve implementation would like to expose to the outside world. The data are stored as a map from the string label, to a double-precision floating-point value.

Definition at line 47 of file BelosInnerSolveResult.cpp.

Belos::InnerSolveResult::InnerSolveResult ( const ReturnType  theResult,
const int  theNumRestartCycles,
const int  theTotalNumIters 
)

Constructor, with no "extra data" input argument.

Definition at line 58 of file BelosInnerSolveResult.cpp.

Member Function Documentation

ReturnType Belos::InnerSolveResult::result ( )
inline

Did the inner solve converge?

The ReturnType enum currently only has two values: Converged and Unconverged. This may or may not change in the future, which is why we express convergence using ReturnType rather than a Boolean value.

Definition at line 101 of file BelosInnerSolveResult.hpp.

int Belos::InnerSolveResult::totalNumIters ( ) const
inline

Total number of iterations completed over all restarts.

This is the sum of all iterations over all restarts.

Definition at line 108 of file BelosInnerSolveResult.hpp.

int Belos::InnerSolveResult::numRestartCycles ( ) const
inline

Total number of restart cycles.

Definition at line 113 of file BelosInnerSolveResult.hpp.

const std::map<std::string, double>& Belos::InnerSolveResult::extraData ( ) const
inline

"Extra" data from the inner solve.

The inner solve may choose to expose more data to the outside world than just the data above. The data are stored as a map from the string label, to a double-precision floating-point value.

Definition at line 123 of file BelosInnerSolveResult.hpp.


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

Generated on Fri Aug 14 2020 10:48:35 for Belos by doxygen 1.8.5