Tempus  Version of the Day
Time Integration
Thyra::MultiVectorLinearOpWithSolveFactory< Scalar > Class Template Reference

Create a LinearOpWithSolveFactory for a flattened-out multi-vector. More...

#include <Thyra_MultiVectorLinearOpWithSolveFactory.hpp>

Inheritance diagram for Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >:

Public Member Functions

Overridden from Constructors/Initializers/Accessors
 MultiVectorLinearOpWithSolveFactory ()
 Construct to uninitialized. More...
 
void nonconstInitialize (const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecRange, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecDomain)
 Initialize given a single non-const LOWSFB object. More...
 
void initialize (const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecRange, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecDomain)
 Initialize given a single const LOWSFB object. More...
 
RCP< LinearOpWithSolveFactoryBase< Scalar > > getUnderlyingLOWSF ()
 
RCP< const LinearOpWithSolveFactoryBase< Scalar > > getUnderlyingLOWSF () const
 
Overridden from Teuchos::Describable.
std::string description () const
 
Overridden from ParameterListAcceptor (simple forwarding functions)
void setParameterList (RCP< ParameterList > const &paramList)
 
RCP< ParameterList > getNonconstParameterList ()
 
RCP< ParameterList > unsetParameterList ()
 
RCP< const ParameterList > getParameterList () const
 
RCP< const ParameterList > getValidParameters () const
 

Related Functions

(Note that these are not member functions.)

template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > nonconstMultiVectorLinearOpWithSolveFactory (const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecRange, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecDomain)
 Nonmember constructor. More...
 
template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > nonconstMultiVectorLinearOpWithSolveFactory (const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const int num_blocks)
 Nonmember constructor. More...
 
template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > multiVectorLinearOpWithSolveFactory (const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecRange, const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &multiVecDomain)
 Nonmember constructor. More...
 
template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > multiVectorLinearOpWithSolveFactory (const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &lowsf, const int num_blocks)
 Nonmember constructor. More...
 

Overridden from LinearOpWithSolveFactoyBase

typedef Teuchos::ConstNonconstObjectContainer< LinearOpWithSolveFactoryBase< Scalar > > LOWSF_t
 
LOWSF_t lowsf_
 
RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > multiVecRange_
 
RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > multiVecDomain_
 
virtual bool acceptsPreconditionerFactory () const
 returns false. More...
 
virtual void setPreconditionerFactory (const RCP< PreconditionerFactoryBase< Scalar > > &precFactory, const std::string &precFactoryName)
 Throws exception. More...
 
virtual RCP< PreconditionerFactoryBase< Scalar > > getPreconditionerFactory () const
 Returns null . More...
 
virtual void unsetPreconditionerFactory (RCP< PreconditionerFactoryBase< Scalar > > *precFactory, std::string *precFactoryName)
 Throws exception. More...
 
virtual bool isCompatible (const LinearOpSourceBase< Scalar > &fwdOpSrc) const
 
virtual RCP< LinearOpWithSolveBase< Scalar > > createOp () const
 
virtual void initializeOp (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 
virtual void initializeAndReuseOp (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, LinearOpWithSolveBase< Scalar > *Op) const
 
virtual void uninitializeOp (LinearOpWithSolveBase< Scalar > *Op, RCP< const LinearOpSourceBase< Scalar > > *fwdOpSrc, RCP< const PreconditionerBase< Scalar > > *prec, RCP< const LinearOpSourceBase< Scalar > > *approxFwdOpSrc, ESupportSolveUse *supportSolveUse) const
 
virtual bool supportsPreconditionerInputType (const EPreconditionerInputType precOpType) const
 
virtual void initializePreconditionedOp (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const RCP< const PreconditionerBase< Scalar > > &prec, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 
virtual void initializeApproxPreconditionedOp (const RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const RCP< const LinearOpSourceBase< Scalar > > &approxFwdOpSrc, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 
void informUpdatedVerbosityState () const
 Overridden from Teuchos::VerboseObjectBase. More...
 

Detailed Description

template<class Scalar>
class Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >

Create a LinearOpWithSolveFactory for a flattened-out multi-vector.

Definition at line 25 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

Member Typedef Documentation

◆ LOWSF_t

template<class Scalar >
typedef Teuchos::ConstNonconstObjectContainer<LinearOpWithSolveFactoryBase<Scalar> > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::LOWSF_t
private

Constructor & Destructor Documentation

◆ MultiVectorLinearOpWithSolveFactory()

Construct to uninitialized.

Definition at line 34 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

Member Function Documentation

◆ acceptsPreconditionerFactory()

template<class Scalar >
bool Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::acceptsPreconditionerFactory ( ) const
virtual

returns false.

Definition at line 377 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ createOp()

template<class Scalar >
RCP< LinearOpWithSolveBase< Scalar > > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::createOp ( ) const
virtual

◆ description()

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

◆ getNonconstParameterList()

template<class Scalar >
RCP< ParameterList > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getNonconstParameterList ( )

◆ getParameterList()

template<class Scalar >
RCP< const ParameterList > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getParameterList ( ) const

◆ getPreconditionerFactory()

template<class Scalar >
RCP< PreconditionerFactoryBase< Scalar > > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getPreconditionerFactory ( ) const
virtual

Returns null .

Definition at line 400 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ getUnderlyingLOWSF() [1/2]

template<class Scalar >
RCP< LinearOpWithSolveFactoryBase< Scalar > > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getUnderlyingLOWSF ( )

◆ getUnderlyingLOWSF() [2/2]

template<class Scalar >
RCP< const LinearOpWithSolveFactoryBase< Scalar > > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getUnderlyingLOWSF ( ) const

◆ getValidParameters()

template<class Scalar >
RCP< const ParameterList > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::getValidParameters ( ) const

◆ informUpdatedVerbosityState()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::informUpdatedVerbosityState ( ) const
protected

Overridden from Teuchos::VerboseObjectBase.

Definition at line 647 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ initialize()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::initialize ( const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecRange,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecDomain 
)

Initialize given a single const LOWSFB object.

Parameters
lowsf[in,persisting] The LOWSFB object that will be used to create the LOWSB object for the diagonal blocks.
multiVecRange[?] Description.
multiVecDomain[?] Description.

Preconditions:

  • !is_null(lowsf)

Definition at line 279 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ initializeAndReuseOp()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::initializeAndReuseOp ( const RCP< const LinearOpSourceBase< Scalar > > &  fwdOpSrc,
LinearOpWithSolveBase< Scalar > *  Op 
) const
virtual

◆ initializeApproxPreconditionedOp()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::initializeApproxPreconditionedOp ( const RCP< const LinearOpSourceBase< Scalar > > &  fwdOpSrc,
const RCP< const LinearOpSourceBase< Scalar > > &  approxFwdOpSrc,
LinearOpWithSolveBase< Scalar > *  Op,
const ESupportSolveUse  supportSolveUse 
) const
virtual

◆ initializeOp()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::initializeOp ( const RCP< const LinearOpSourceBase< Scalar > > &  fwdOpSrc,
LinearOpWithSolveBase< Scalar > *  Op,
const ESupportSolveUse  supportSolveUse 
) const
virtual

◆ initializePreconditionedOp()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::initializePreconditionedOp ( const RCP< const LinearOpSourceBase< Scalar > > &  fwdOpSrc,
const RCP< const PreconditionerBase< Scalar > > &  prec,
LinearOpWithSolveBase< Scalar > *  Op,
const ESupportSolveUse  supportSolveUse 
) const
virtual

◆ isCompatible()

template<class Scalar >
bool Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::isCompatible ( const LinearOpSourceBase< Scalar > &  fwdOpSrc) const
virtual

◆ nonconstInitialize()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::nonconstInitialize ( const RCP< LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecRange,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecDomain 
)

Initialize given a single non-const LOWSFB object.

Parameters
lowsf[in,persisting] The LOWSFB object that will be used to create the LOWSB object for the diagonal blocks.
multiVecRange[?] Description.
multiVecDomain[?] Description.

Preconditions:

  • !is_null(lowsf)

Definition at line 262 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ setParameterList()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::setParameterList ( RCP< ParameterList > const &  paramList)

◆ setPreconditionerFactory()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::setPreconditionerFactory ( const RCP< PreconditionerFactoryBase< Scalar > > &  precFactory,
const std::string &  precFactoryName 
)
virtual

Throws exception.

Definition at line 385 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ supportsPreconditionerInputType()

template<class Scalar >
bool Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::supportsPreconditionerInputType ( const EPreconditionerInputType  precOpType) const
virtual

◆ uninitializeOp()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::uninitializeOp ( LinearOpWithSolveBase< Scalar > *  Op,
RCP< const LinearOpSourceBase< Scalar > > *  fwdOpSrc,
RCP< const PreconditionerBase< Scalar > > *  prec,
RCP< const LinearOpSourceBase< Scalar > > *  approxFwdOpSrc,
ESupportSolveUse *  supportSolveUse 
) const
virtual

◆ unsetParameterList()

template<class Scalar >
RCP< ParameterList > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::unsetParameterList ( )

◆ unsetPreconditionerFactory()

template<class Scalar >
void Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::unsetPreconditionerFactory ( RCP< PreconditionerFactoryBase< Scalar > > *  precFactory,
std::string *  precFactoryName 
)
virtual

Throws exception.

Definition at line 414 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

Friends And Related Function Documentation

◆ multiVectorLinearOpWithSolveFactory() [1/2]

template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > multiVectorLinearOpWithSolveFactory ( const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const int  num_blocks 
)
related

Nonmember constructor.

Definition at line 244 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ multiVectorLinearOpWithSolveFactory() [2/2]

template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > multiVectorLinearOpWithSolveFactory ( const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecRange,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecDomain 
)
related

Nonmember constructor.

Definition at line 226 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ nonconstMultiVectorLinearOpWithSolveFactory() [1/2]

template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > nonconstMultiVectorLinearOpWithSolveFactory ( const RCP< LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const int  num_blocks 
)
related

Nonmember constructor.

Definition at line 207 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

◆ nonconstMultiVectorLinearOpWithSolveFactory() [2/2]

template<class Scalar >
RCP< MultiVectorLinearOpWithSolveFactory< Scalar > > nonconstMultiVectorLinearOpWithSolveFactory ( const RCP< LinearOpWithSolveFactoryBase< Scalar > > &  lowsf,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecRange,
const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  multiVecDomain 
)
related

Nonmember constructor.

Definition at line 189 of file Thyra_MultiVectorLinearOpWithSolveFactory.hpp.

Member Data Documentation

◆ lowsf_

template<class Scalar >
LOWSF_t Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::lowsf_
private

◆ multiVecDomain_

template<class Scalar >
RCP<const DefaultMultiVectorProductVectorSpace<Scalar> > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::multiVecDomain_
private

◆ multiVecRange_

template<class Scalar >
RCP<const DefaultMultiVectorProductVectorSpace<Scalar> > Thyra::MultiVectorLinearOpWithSolveFactory< Scalar >::multiVecRange_
private

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