Stratimikos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
Thyra::BelosLinearOpWithSolveFactory< Scalar > Class Template Reference

LinearOpWithSolveFactoryBase subclass implemented in terms of Belos. More...

#include <Thyra_BelosLinearOpWithSolveFactory_decl.hpp>

Inherits LinearOpWithSolveFactoryBase< Scalar >.

Private Member Functions

void updateThisValidParamList ()
 
void initializeOpImpl (const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &approxFwdOpSrc, const Teuchos::RCP< const PreconditionerBase< Scalar > > &prec, const bool reusePrec, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 

Static Private Member Functions

static Teuchos::RCP< const
Teuchos::ParameterList
generateAndGetValidParameters ()
 

Private Attributes

Teuchos::RCP
< PreconditionerFactoryBase
< Scalar > > 
precFactory_
 
std::string precFactoryName_
 
Teuchos::RCP
< Teuchos::ParameterList
thisValidParamList_
 
Teuchos::RCP
< Teuchos::ParameterList
paramList_
 
EBelosSolverType solverType_
 
int convergenceTestFrequency_
 

Public types

typedef Teuchos::ScalarTraits
< Scalar >::magnitudeType 
MagnitudeType
 

Parameter names for Parameter List

static const std::string SolverType_name = "Solver Type"
 
static const std::string SolverType_default = "Pseudo Block GMRES"
 
static const std::string SolverTypes_name = "Solver Types"
 
static const std::string BlockGMRES_name = "Block GMRES"
 
static const std::string PseudoBlockGMRES_name = "Pseudo Block GMRES"
 
static const std::string BlockCG_name = "Block CG"
 
static const std::string PseudoBlockCG_name = "Pseudo Block CG"
 
static const std::string PseudoBlockStochasticCG_name = "Pseudo Block Stochastic CG"
 
static const std::string GCRODR_name = "GCRODR"
 
static const std::string RCG_name = "RCG"
 
static const std::string MINRES_name = "MINRES"
 
static const std::string TFQMR_name = "TFQMR"
 
static const std::string ConvergenceTestFrequency_name = "Convergence Test Frequency"
 

Constructors/initializers/accessors

 BelosLinearOpWithSolveFactory ()
 Construct without preconditioner factory. More...
 
 BelosLinearOpWithSolveFactory (const Teuchos::RCP< PreconditionerFactoryBase< Scalar > > &precFactory)
 Calls this->setPreconditionerFactory(precFactory)</tt. . More...
 

Overridden public functions from LinearOpWithSolveFactoryBase

bool acceptsPreconditionerFactory () const
 Returns true . More...
 
void setPreconditionerFactory (const Teuchos::RCP< PreconditionerFactoryBase< Scalar > > &precFactory, const std::string &precFactoryName)
 
Teuchos::RCP
< PreconditionerFactoryBase
< Scalar > > 
getPreconditionerFactory () const
 
void unsetPreconditionerFactory (Teuchos::RCP< PreconditionerFactoryBase< Scalar > > *precFactory, std::string *precFactoryName)
 
bool isCompatible (const LinearOpSourceBase< Scalar > &fwdOpSrc) const
 
Teuchos::RCP
< LinearOpWithSolveBase
< Scalar > > 
createOp () const
 
void initializeOp (const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 
void initializeAndReuseOp (const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, LinearOpWithSolveBase< Scalar > *Op) const
 
void uninitializeOp (LinearOpWithSolveBase< Scalar > *Op, Teuchos::RCP< const LinearOpSourceBase< Scalar > > *fwdOpSrc, Teuchos::RCP< const PreconditionerBase< Scalar > > *prec, Teuchos::RCP< const LinearOpSourceBase< Scalar > > *approxFwdOpSrc, ESupportSolveUse *supportSolveUse) const
 
bool supportsPreconditionerInputType (const EPreconditionerInputType precOpType) const
 
void initializePreconditionedOp (const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const Teuchos::RCP< const PreconditionerBase< Scalar > > &prec, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 
void initializeApproxPreconditionedOp (const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &approxFwdOpSrc, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse) const
 

Overridden from ParameterListAcceptor

void setParameterList (Teuchos::RCP< Teuchos::ParameterList > const &paramList)
 
Teuchos::RCP
< Teuchos::ParameterList
getNonconstParameterList ()
 
Teuchos::RCP
< Teuchos::ParameterList
unsetParameterList ()
 
Teuchos::RCP< const
Teuchos::ParameterList
getParameterList () const
 
Teuchos::RCP< const
Teuchos::ParameterList
getValidParameters () const
 

Public functions overridden from Teuchos::Describable.

std::string description () const
 

Detailed Description

template<class Scalar>
class Thyra::BelosLinearOpWithSolveFactory< Scalar >

LinearOpWithSolveFactoryBase subclass implemented in terms of Belos.

ToDo: Finish Documentation!

Definition at line 86 of file Thyra_BelosLinearOpWithSolveFactory_decl.hpp.

Member Typedef Documentation

template<class Scalar>
typedef Teuchos::ScalarTraits<Scalar>::magnitudeType Thyra::BelosLinearOpWithSolveFactory< Scalar >::MagnitudeType

Definition at line 93 of file Thyra_BelosLinearOpWithSolveFactory_decl.hpp.

Constructor & Destructor Documentation

Construct without preconditioner factory.

Definition at line 112 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

template<class Scalar >
Thyra::BelosLinearOpWithSolveFactory< Scalar >::BelosLinearOpWithSolveFactory ( const Teuchos::RCP< PreconditionerFactoryBase< Scalar > > &  precFactory)

Calls this->setPreconditionerFactory(precFactory)</tt. .

Definition at line 121 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

Member Function Documentation

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

Returns true .

Definition at line 134 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 141 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 162 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 169 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 183 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 195 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 202 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 214 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 262 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 225 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 236 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 249 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 297 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 314 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 322 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 332 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 340 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

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

Definition at line 350 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

template<class Scalar >
RCP< const Teuchos::ParameterList > Thyra::BelosLinearOpWithSolveFactory< Scalar >::generateAndGetValidParameters ( )
staticprivate

Definition at line 366 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

template<class Scalar >
void Thyra::BelosLinearOpWithSolveFactory< Scalar >::updateThisValidParamList ( )
private

Definition at line 522 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

template<class Scalar >
void Thyra::BelosLinearOpWithSolveFactory< Scalar >::initializeOpImpl ( const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &  fwdOpSrc,
const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &  approxFwdOpSrc,
const Teuchos::RCP< const PreconditionerBase< Scalar > > &  prec,
const bool  reusePrec,
LinearOpWithSolveBase< Scalar > *  Op,
const ESupportSolveUse  supportSolveUse 
) const
private

Definition at line 532 of file Thyra_BelosLinearOpWithSolveFactory_def.hpp.

Member Data Documentation

template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::SolverType_name = "Solver Type"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::SolverType_default = "Pseudo Block GMRES"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::SolverTypes_name = "Solver Types"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::BlockGMRES_name = "Block GMRES"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::PseudoBlockGMRES_name = "Pseudo Block GMRES"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::BlockCG_name = "Block CG"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::PseudoBlockCG_name = "Pseudo Block CG"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::PseudoBlockStochasticCG_name = "Pseudo Block Stochastic CG"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::GCRODR_name = "GCRODR"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::RCG_name = "RCG"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::MINRES_name = "MINRES"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::TFQMR_name = "TFQMR"
static
template<class Scalar>
const std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::ConvergenceTestFrequency_name = "Convergence Test Frequency"
static
template<class Scalar>
Teuchos::RCP<PreconditionerFactoryBase<Scalar> > Thyra::BelosLinearOpWithSolveFactory< Scalar >::precFactory_
private
template<class Scalar>
std::string Thyra::BelosLinearOpWithSolveFactory< Scalar >::precFactoryName_
private
template<class Scalar>
Teuchos::RCP<Teuchos::ParameterList> Thyra::BelosLinearOpWithSolveFactory< Scalar >::thisValidParamList_
private
template<class Scalar>
Teuchos::RCP<Teuchos::ParameterList> Thyra::BelosLinearOpWithSolveFactory< Scalar >::paramList_
private
template<class Scalar>
EBelosSolverType Thyra::BelosLinearOpWithSolveFactory< Scalar >::solverType_
private
template<class Scalar>
int Thyra::BelosLinearOpWithSolveFactory< Scalar >::convergenceTestFrequency_
private

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