Thyra Version of the Day
Loading...
Searching...
No Matches
Related Symbols | List of all members
Thyra::DelayedLinearOpWithSolve< Scalar > Class Template Reference

Delayed linear solver construction LinearOpWithSolveBase decorator class. More...

#include <Thyra_DelayedLinearOpWithSolve_decl.hpp>

Inheritance diagram for Thyra::DelayedLinearOpWithSolve< Scalar >:
Inheritance graph
[legend]

Related Symbols

(Note that these are not member symbols.)

template<class Scalar >
RCP< DelayedLinearOpWithSolve< Scalar > > delayedLinearOpWithSolve ()
 Nonmember constuctor.
 
template<class Scalar >
RCP< DelayedLinearOpWithSolve< Scalar > > delayedLinearOpWithSolve (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf)
 Nonmember constuctor.
 

Overridden from LinearOpWithSolveBase.

virtual bool solveSupportsImpl (EOpTransp M_trans) const
 
virtual bool solveSupportsSolveMeasureTypeImpl (EOpTransp M_trans, const SolveMeasureType &solveMeasureType) const
 
SolveStatus< Scalar > solveImpl (const EOpTransp transp, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X, const Ptr< const SolveCriteria< Scalar > > solveCriteria) const
 

Constructor/Initializers

 DelayedLinearOpWithSolve ()
 
void initialize (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const RCP< const PreconditionerBase< Scalar > > &prec, const RCP< const LinearOpSourceBase< Scalar > > &approxFwdOpSrc, const ESupportSolveUse supportSolveUse, const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf)
 
RCP< const LinearOpSourceBase< Scalar > > getFwdOpSrc () const
 
RCP< const PreconditionerBase< Scalar > > getPrec () const
 
RCP< const LinearOpSourceBase< Scalar > > getApproxFwdOpSrc () const
 
ESupportSolveUse getSupportSolveUse () const
 

Overridden from Teuchos::Describable.

std::string description () const
 

Overridden from LinearOpBase

RCP< const VectorSpaceBase< Scalar > > range () const
 
RCP< const VectorSpaceBase< Scalar > > domain () const
 
RCP< const LinearOpBase< Scalar > > clone () const
 
void informUpdatedVerbosityState () const
 Overridden from Teuchos::VerboseObjectBase.
 

Overridden from LinearOpBase <br>

virtual bool opSupportedImpl (EOpTransp M_trans) const
 
virtual void applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 

Additional Inherited Members

- Public Member Functions inherited from Thyra::LinearOpWithSolveBase< Scalar >
bool solveSupports (EOpTransp transp) const
 Return if solve() supports the argument transp.
 
bool solveSupports (EOpTransp transp, const Ptr< const SolveCriteria< Scalar > > solveCriteria) const
 Return if solve() supports a given transpose and solve criteria specification.
 
bool solveSupportsSolveMeasureType (EOpTransp transp, const SolveMeasureType &solveMeasureType) const
 Return if solve() supports the given the solve measure type.
 
SolveStatus< Scalar > solve (const EOpTransp A_trans, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X, const Ptr< const SolveCriteria< Scalar > > solveCriteria=Teuchos::null) const
 Request the solution of a block linear system.
 
- Public Member Functions inherited from Thyra::LinearOpBase< Scalar >
bool opSupported (EOpTransp M_trans) const
 Return if the M_trans operation of apply() is supported or not.
 
void apply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 Apply the linear operator to a multi-vector : Y = alpha*op(M)*X + beta*Y.
 
- Protected Member Functions inherited from Thyra::LinearOpWithSolveBase< Scalar >
virtual bool solveSupportsNewImpl (EOpTransp, const Ptr< const SolveCriteria< Scalar > >) const
 Virtual implementation of solveSupports().
 
- Protected Member Functions inherited from Thyra::LinearOpBase< Scalar >

Detailed Description

template<class Scalar>
class Thyra::DelayedLinearOpWithSolve< Scalar >

Delayed linear solver construction LinearOpWithSolveBase decorator class.

This simple class takes a LinearOpWithSolveFactoryBase object and the arguments for a call to LinearOpWithSolveBase::initializeOp() (or one of its related functions) and then waits until a solve is called before it constructs the preconditioner.

This class should never be created directly by a client. Instead, it should be created by a DelayedLinearOpWithSolveFactory object.

Definition at line 66 of file Thyra_DelayedLinearOpWithSolve_decl.hpp.

Constructor & Destructor Documentation

◆ DelayedLinearOpWithSolve()

template<class Scalar >
Thyra::DelayedLinearOpWithSolve< Scalar >::DelayedLinearOpWithSolve ( )

Definition at line 61 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

Member Function Documentation

◆ initialize()

template<class Scalar >
void Thyra::DelayedLinearOpWithSolve< Scalar >::initialize ( const RCP< const LinearOpSourceBase< Scalar > > & fwdOpSrc,
const RCP< const PreconditionerBase< Scalar > > & prec,
const RCP< const LinearOpSourceBase< Scalar > > & approxFwdOpSrc,
const ESupportSolveUse supportSolveUse,
const RCP< LinearOpWithSolveFactoryBase< Scalar > > & lowsf )

Definition at line 67 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ getFwdOpSrc()

template<class Scalar >
RCP< const LinearOpSourceBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::getFwdOpSrc ( ) const

Definition at line 92 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ getPrec()

template<class Scalar >
RCP< const PreconditionerBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::getPrec ( ) const

Definition at line 100 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ getApproxFwdOpSrc()

template<class Scalar >
RCP< const LinearOpSourceBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::getApproxFwdOpSrc ( ) const

Definition at line 108 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ getSupportSolveUse()

template<class Scalar >
ESupportSolveUse Thyra::DelayedLinearOpWithSolve< Scalar >::getSupportSolveUse ( ) const

Definition at line 116 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ description()

template<class Scalar >
std::string Thyra::DelayedLinearOpWithSolve< Scalar >::description ( ) const
virtual

Reimplemented from Teuchos::Describable.

Definition at line 126 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ range()

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::range ( ) const
virtual

◆ domain()

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::domain ( ) const
virtual

◆ clone()

template<class Scalar >
RCP< const LinearOpBase< Scalar > > Thyra::DelayedLinearOpWithSolve< Scalar >::clone ( ) const
virtual

Reimplemented from Thyra::LinearOpBase< Scalar >.

Definition at line 171 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ informUpdatedVerbosityState()

template<class Scalar >
void Thyra::DelayedLinearOpWithSolve< Scalar >::informUpdatedVerbosityState ( ) const
protectedvirtual

Overridden from Teuchos::VerboseObjectBase.

Reimplemented from Teuchos::VerboseObjectBase.

Definition at line 181 of file Thyra_DelayedLinearOpWithSolve_def.hpp.

◆ opSupportedImpl()

template<class Scalar >
bool Thyra::DelayedLinearOpWithSolve< Scalar >::opSupportedImpl ( EOpTransp M_trans) const
protectedvirtual

◆ applyImpl()

template<class Scalar >
void Thyra::DelayedLinearOpWithSolve< Scalar >::applyImpl ( const EOpTransp M_trans,
const MultiVectorBase< Scalar > & X,
const Ptr< MultiVectorBase< Scalar > > & Y,
const Scalar alpha,
const Scalar beta ) const
protectedvirtual

◆ solveSupportsImpl()

template<class Scalar >
bool Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsImpl ( EOpTransp M_trans) const
protectedvirtual

◆ solveSupportsSolveMeasureTypeImpl()

template<class Scalar >
bool Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureTypeImpl ( EOpTransp M_trans,
const SolveMeasureType & solveMeasureType ) const
protectedvirtual

◆ solveImpl()

template<class Scalar >
SolveStatus< Scalar > Thyra::DelayedLinearOpWithSolve< Scalar >::solveImpl ( const EOpTransp transp,
const MultiVectorBase< Scalar > & B,
const Ptr< MultiVectorBase< Scalar > > & X,
const Ptr< const SolveCriteria< Scalar > > solveCriteria ) const
protectedvirtual

Friends And Related Symbol Documentation

◆ delayedLinearOpWithSolve() [1/2]

template<class Scalar >
RCP< DelayedLinearOpWithSolve< Scalar > > delayedLinearOpWithSolve ( )
related

Nonmember constuctor.

Definition at line 187 of file Thyra_DelayedLinearOpWithSolve_decl.hpp.

◆ delayedLinearOpWithSolve() [2/2]

template<class Scalar >
RCP< DelayedLinearOpWithSolve< Scalar > > delayedLinearOpWithSolve ( const RCP< const LinearOpSourceBase< Scalar > > & fwdOpSrc,
const RCP< LinearOpWithSolveFactoryBase< Scalar > > & lowsf )
related

Nonmember constuctor.

Definition at line 199 of file Thyra_DelayedLinearOpWithSolve_decl.hpp.


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