Thyra Version of the Day
Loading...
Searching...
No Matches
List of all members
Thyra::PreconditionerBase< Scalar > Class Template Referenceabstract

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...

#include <Thyra_PreconditionerBase.hpp>

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

Pure virtual public functions that must be overridden in subclasses

virtual bool isLeftPrecOpConst () const =0
 Return if the underlying left preconditioner operator is const-only or allows non-const access.
 
virtual Teuchos::RCP< LinearOpBase< Scalar > > getNonconstLeftPrecOp ()=0
 Return a non-const left preconditioner linear operator if one is designed or targeted to be applied on the left.
 
virtual Teuchos::RCP< const LinearOpBase< Scalar > > getLeftPrecOp () const =0
 Return a const left preconditioner linear operator if one is designed or targeted to be applied on the left.
 
virtual bool isRightPrecOpConst () const =0
 Return if the underlying right preconditioner operator is const-only or allows non-const access.
 
virtual Teuchos::RCP< LinearOpBase< Scalar > > getNonconstRightPrecOp ()=0
 Return a non-const right preconditioner linear operator if one is designed or targeted to be applied on the right.
 
virtual Teuchos::RCP< const LinearOpBase< Scalar > > getRightPrecOp () const =0
 Return a const right preconditioner linear operator if one is designed or targeted to be applied on the right.
 
virtual bool isUnspecifiedPrecOpConst () const =0
 Return if the underlying unspecified preconditioner operator is const-only or allows non-const access.
 
virtual Teuchos::RCP< LinearOpBase< Scalar > > getNonconstUnspecifiedPrecOp ()=0
 Return a non-const generic preconditioner linear operator that is not designed or targeted to be applied on the left or on the right.
 
virtual Teuchos::RCP< const LinearOpBase< Scalar > > getUnspecifiedPrecOp () const =0
 Return a const generic preconditioner linear operator that is not designed or targeted to be applied on the left or on the right.
 

Detailed Description

template<class Scalar>
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.

This class supports four different kinds of preconditioners:

Definition at line 89 of file Thyra_PreconditionerBase.hpp.

Member Function Documentation

◆ isLeftPrecOpConst()

template<class Scalar >
virtual bool Thyra::PreconditionerBase< Scalar >::isLeftPrecOpConst ( ) const
pure virtual

Return if the underlying left preconditioner operator is const-only or allows non-const access.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getNonconstLeftPrecOp()

template<class Scalar >
virtual Teuchos::RCP< LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getNonconstLeftPrecOp ( )
pure virtual

Return a non-const left preconditioner linear operator if one is designed or targeted to be applied on the left.

Preconditions:

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getLeftPrecOp()

template<class Scalar >
virtual Teuchos::RCP< const LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getLeftPrecOp ( ) const
pure virtual

Return a const left preconditioner linear operator if one is designed or targeted to be applied on the left.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ isRightPrecOpConst()

template<class Scalar >
virtual bool Thyra::PreconditionerBase< Scalar >::isRightPrecOpConst ( ) const
pure virtual

Return if the underlying right preconditioner operator is const-only or allows non-const access.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getNonconstRightPrecOp()

template<class Scalar >
virtual Teuchos::RCP< LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getNonconstRightPrecOp ( )
pure virtual

Return a non-const right preconditioner linear operator if one is designed or targeted to be applied on the right.

Preconditions:

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getRightPrecOp()

template<class Scalar >
virtual Teuchos::RCP< const LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getRightPrecOp ( ) const
pure virtual

Return a const right preconditioner linear operator if one is designed or targeted to be applied on the right.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ isUnspecifiedPrecOpConst()

template<class Scalar >
virtual bool Thyra::PreconditionerBase< Scalar >::isUnspecifiedPrecOpConst ( ) const
pure virtual

Return if the underlying unspecified preconditioner operator is const-only or allows non-const access.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getNonconstUnspecifiedPrecOp()

template<class Scalar >
virtual Teuchos::RCP< LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getNonconstUnspecifiedPrecOp ( )
pure virtual

Return a non-const generic preconditioner linear operator that is not designed or targeted to be applied on the left or on the right.

Implemented in Thyra::DefaultPreconditioner< Scalar >.

◆ getUnspecifiedPrecOp()

template<class Scalar >
virtual Teuchos::RCP< const LinearOpBase< Scalar > > Thyra::PreconditionerBase< Scalar >::getUnspecifiedPrecOp ( ) const
pure virtual

Return a const generic preconditioner linear operator that is not designed or targeted to be applied on the left or on the right.

Preconditions:

Implemented in Thyra::DefaultPreconditioner< Scalar >.


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