Thyra::DelayedLinearOpWithSolve< Scalar > Class Template Reference

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

#include <Thyra_DelayedLinearOpWithSolveDecl.hpp>

Inheritance diagram for Thyra::DelayedLinearOpWithSolve< Scalar >:

[legend]
List of all members.

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 SingleScalarLinearOpBase

virtual bool opSupported (ETransp M_trans) const
 
virtual void apply (const ETransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const
 

Overridden from SingleScalarLinearOpWithSolveBase.

virtual bool solveSupportsTrans (ETransp M_trans) const
 
virtual bool solveSupportsSolveMeasureType (ETransp M_trans, const SolveMeasureType &solveMeasureType) const
 
virtual void solve (const ETransp M_trans, const MultiVectorBase< Scalar > &B, MultiVectorBase< Scalar > *X, const int numBlocks, const BlockSolveCriteria< Scalar > blockSolveCriteria[], SolveStatus< Scalar > blockSolveStatus[]) const
 

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 52 of file Thyra_DelayedLinearOpWithSolveDecl.hpp.


Constructor & Destructor Documentation

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

Definition at line 47 of file Thyra_DelayedLinearOpWithSolve.hpp.


Member Function Documentation

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 53 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Definition at line 78 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Definition at line 86 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Definition at line 94 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Definition at line 102 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Reimplemented from Teuchos::Describable.

Definition at line 112 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 137 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 147 of file Thyra_DelayedLinearOpWithSolve.hpp.

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

Reimplemented from Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 157 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
void Thyra::DelayedLinearOpWithSolve< Scalar >::informUpdatedVerbosityState (  )  const [protected, virtual]

Overridden from Teuchos::VerboseObjectBase .

Reimplemented from Teuchos::VerboseObjectBase.

Definition at line 167 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DelayedLinearOpWithSolve< Scalar >::opSupported ( ETransp  M_trans  )  const [protected, virtual]

Definition at line 184 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
void Thyra::DelayedLinearOpWithSolve< Scalar >::apply ( const ETransp  M_trans,
const MultiVectorBase< Scalar > &  X,
MultiVectorBase< Scalar > *  Y,
const Scalar  alpha,
const Scalar  beta 
) const [protected, virtual]

Definition at line 191 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsTrans ( ETransp  M_trans  )  const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 204 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType ( ETransp  M_trans,
const SolveMeasureType solveMeasureType 
) const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 214 of file Thyra_DelayedLinearOpWithSolve.hpp.

template<class Scalar>
void Thyra::DelayedLinearOpWithSolve< Scalar >::solve ( const ETransp  M_trans,
const MultiVectorBase< Scalar > &  B,
MultiVectorBase< Scalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< Scalar >  blockSolveCriteria[],
SolveStatus< Scalar >  blockSolveStatus[] 
) const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 224 of file Thyra_DelayedLinearOpWithSolve.hpp.


The documentation for this class was generated from the following files:
Generated on Tue Oct 20 12:47:11 2009 for Thyra Operator Solve Support by doxygen 1.4.7