Thyra  Version of the Day
Classes | Enumerations | Functions
Thyra operator solve fundamental interfaces

These are the fundamental Operator Solve Interfaces that provide the foundation for all ANAs. More...

Collaboration diagram for Thyra operator solve fundamental interfaces:

Classes

class  Thyra::LinearOpSourceBase< Scalar >
 Base interface for objects that can return a linear operator. More...
 
class  Thyra::LinearOpWithSolveBase< Scalar >
 Base class for all linear operators that can support a high-level solve operation. More...
 
class  Thyra::LinearOpWithSolveFactoryBase< Scalar >
 Factory interface for creating LinearOpWithSolveBase objects from compatible LinearOpBase objects. More...
 
class  Thyra::PreconditionerBase< Scalar >
 Simple interface class to access a precreated preconditioner as one or more linear operators objects and information on how they are meant to be applied. More...
 
class  Thyra::PreconditionerFactoryBase< Scalar >
 Factory interface for creating preconditioner objects from LinearOpBase objects. More...
 
struct  Thyra::SolveMeasureType
 Solve tolerance type. More...
 
struct  Thyra::SolveCriteria< Scalar >
 Simple struct that defines the requested solution criteria for a solve. More...
 
class  Thyra::CatastrophicSolveFailure
 Exception type thrown on an catastrophic solve failure. More...
 
struct  Thyra::SolveStatus< Scalar >
 Simple struct for the return status from a solve. More...
 

Enumerations

enum  Thyra::ESolveMeasureNormType {
  Thyra::SOLVE_MEASURE_ONE, Thyra::SOLVE_MEASURE_NORM_RESIDUAL, Thyra::SOLVE_MEASURE_NORM_SOLUTION, Thyra::SOLVE_MEASURE_NORM_INIT_RESIDUAL,
  Thyra::SOLVE_MEASURE_NORM_RHS
}
 Type of solve measure norm. More...
 
enum  Thyra::ESolveStatus { Thyra::SOLVE_STATUS_CONVERGED, Thyra::SOLVE_STATUS_UNCONVERGED, Thyra::SOLVE_STATUS_UNKNOWN }
 Solution status. More...
 
enum  Thyra::ESupportSolveUse { Thyra::SUPPORT_SOLVE_UNSPECIFIED, Thyra::SUPPORT_SOLVE_FORWARD_ONLY, Thyra::SUPPORT_SOLVE_TRANSPOSE_ONLY, Thyra::SUPPORT_SOLVE_FORWARD_AND_TRANSPOSE }
 Enum that specifies how a LinearOpWithSolveBase object will be used for solves after it is constructed. More...
 
enum  Thyra::EPreconditionerInputType { Thyra::PRECONDITIONER_INPUT_TYPE_AS_OPERATOR, Thyra::PRECONDITIONER_INPUT_TYPE_AS_MATRIX }
 Enum defining the status of a preconditioner object. More...
 

Functions

const std::string Thyra::toString (const ESolveMeasureNormType solveMeasureNormType)
 
const std::string Thyra::toString (const ESolveStatus solveStatus)
 

Detailed Description

These are the fundamental Operator Solve Interfaces that provide the foundation for all ANAs.

Enumeration Type Documentation

◆ ESolveMeasureNormType

Type of solve measure norm.

For reference we refer to solving a single linear system A*x=b.

Enumerator
SOLVE_MEASURE_ONE 

No solve measure (i.e. same as 1.0)

SOLVE_MEASURE_NORM_RESIDUAL 

Norm of the current residual vector (i.e. ||A*x-b||)

SOLVE_MEASURE_NORM_SOLUTION 

Norm of the current solution vector (i.e. ||x||)

SOLVE_MEASURE_NORM_INIT_RESIDUAL 

Norm of the initial residual vector given a non-zero guess (i.e. ||A*xo-b||)

SOLVE_MEASURE_NORM_RHS 

Norm of the right-hand side (i.e. ||b||)

Definition at line 60 of file Thyra_SolveSupportTypes.hpp.

◆ ESolveStatus

Solution status.

Enumerator
SOLVE_STATUS_CONVERGED 

The requested solution criteria has likely been achieved.

SOLVE_STATUS_UNCONVERGED 

The requested solution criteria has likely not been achieved.

SOLVE_STATUS_UNKNOWN 

The final solution status is unknown but he solve did not totally fail.

Definition at line 392 of file Thyra_SolveSupportTypes.hpp.

◆ ESupportSolveUse

Enum that specifies how a LinearOpWithSolveBase object will be used for solves after it is constructed.

Enumerator
SUPPORT_SOLVE_UNSPECIFIED 

How the output LOWSB object will be useded for solves in unspecified.

SUPPORT_SOLVE_FORWARD_ONLY 

The output LOWSB object will only be used for forward solves.

SUPPORT_SOLVE_TRANSPOSE_ONLY 

The output LOWSB object will only be used for transpose solves.

SUPPORT_SOLVE_FORWARD_AND_TRANSPOSE 

The output LOWSB object will used for forward and transpose solves.

Definition at line 489 of file Thyra_SolveSupportTypes.hpp.

◆ EPreconditionerInputType

Enum defining the status of a preconditioner object.

Enumerator
PRECONDITIONER_INPUT_TYPE_AS_OPERATOR 

The input preconditioner should just be applied as an operator.

PRECONDITIONER_INPUT_TYPE_AS_MATRIX 

The input preconditioner should viewed as a matrix to be factored then backsolved as a preconditioner.

Definition at line 501 of file Thyra_SolveSupportTypes.hpp.

Function Documentation

◆ toString() [1/2]

const std::string Thyra::toString ( const ESolveMeasureNormType  solveMeasureNormType)
inline

Definition at line 79 of file Thyra_SolveSupportTypes.hpp.

◆ toString() [2/2]

const std::string Thyra::toString ( const ESolveStatus  solveStatus)
inline

Definition at line 404 of file Thyra_SolveSupportTypes.hpp.