Thyra::AztecOOLinearOpWithSolveFactory Class Reference
[AztecOO to Thyra Linear Solver Adapter Code]

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

#include <Thyra_AztecOOLinearOpWithSolveFactory.hpp>

Inheritance diagram for Thyra::AztecOOLinearOpWithSolveFactory:
Inheritance graph
[legend]

List of all members.

Private Member Functions

void updateThisValidParamList ()
void initializeOp_impl (const Teuchos::RCP< const LinearOpSourceBase< double > > &fwdOpSrc, const Teuchos::RCP< const PreconditionerBase< double > > &prec, const Teuchos::RCP< const LinearOpSourceBase< double > > &approxFwdOpSrc, const bool reusePrec, LinearOpWithSolveBase< double > *Op) const

Static Private Member Functions

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

Private Attributes

Teuchos::RCP
< PreconditionerFactoryBase
< double > > 
precFactory_
std::string precFactoryName_
Teuchos::RCP
< Teuchos::ParameterList
thisValidParamList_
Teuchos::RCP
< Teuchos::ParameterList
paramList_
int defaultFwdMaxIterations_
double defaultFwdTolerance_
int defaultAdjMaxIterations_
double defaultAdjTolerance_
bool outputEveryRhs_
bool useAztecPrec_

Constructors/initializers/accessors



 AztecOOLinearOpWithSolveFactory (Teuchos::RCP< Teuchos::ParameterList > const &paramList=Teuchos::null)
 Construct uninitialized.
 STANDARD_COMPOSITION_MEMBERS (EpetraOperatorViewExtractorBase, epetraFwdOpViewExtractor)
 Set the strategy object used to extract an Epetra_Operator view of an input forward operator.

Overridden public functions from LinearOpWithSolveFactoryBase



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

LinearOpWithSolveFactoryBase subclass implemented in terms of AztecOO.

This class creates objects of type AztecOOLinearOpWithSolve (through the LinearOpWithSolveBase interface) using AztecOO objects.

The class can support both externally defined preconditioners and built-in aztec preconditioners. Then built-in aztec preconditioners are used (as specified by the input parameter list), *this only supports very limited functionality and does not support adjoint solves. However, when no preconditioning or externally defined preconditioners are used, *this supports a wide range of features which include:

Definition at line 67 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.


Constructor & Destructor Documentation

Thyra::AztecOOLinearOpWithSolveFactory::AztecOOLinearOpWithSolveFactory ( Teuchos::RCP< Teuchos::ParameterList > const &  paramList = Teuchos::null  ) 

Construct uninitialized.

Definition at line 91 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.


Member Function Documentation

Thyra::AztecOOLinearOpWithSolveFactory::STANDARD_COMPOSITION_MEMBERS ( EpetraOperatorViewExtractorBase  ,
epetraFwdOpViewExtractor   
)

Set the strategy object used to extract an Epetra_Operator view of an input forward operator.

This view will then be dynamically casted to Epetra_RowMatrix before it is used.

The default implementation used is EpetraOperatorViewExtractorBase.

bool Thyra::AztecOOLinearOpWithSolveFactory::acceptsPreconditionerFactory (  )  const [virtual]

Returns true .

Reimplemented from Thyra::LinearOpWithSolveFactoryBase< double >.

Definition at line 110 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

void Thyra::AztecOOLinearOpWithSolveFactory::setPreconditionerFactory ( const Teuchos::RCP< PreconditionerFactoryBase< double > > &  precFactory,
const std::string &  precFactoryName 
) [virtual]
Teuchos::RCP< PreconditionerFactoryBase< double > > Thyra::AztecOOLinearOpWithSolveFactory::getPreconditionerFactory (  )  const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::unsetPreconditionerFactory ( Teuchos::RCP< PreconditionerFactoryBase< double > > *  precFactory,
std::string *  precFactoryName 
) [virtual]
bool Thyra::AztecOOLinearOpWithSolveFactory::isCompatible ( const LinearOpSourceBase< double > &  fwdOpSrc  )  const [virtual]
Teuchos::RCP< LinearOpWithSolveBase< double > > Thyra::AztecOOLinearOpWithSolveFactory::createOp (  )  const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::initializeOp ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
LinearOpWithSolveBase< double > *  Op,
const ESupportSolveUse  supportSolveUse 
) const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::initializeAndReuseOp ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
LinearOpWithSolveBase< double > *  Op 
) const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::uninitializeOp ( LinearOpWithSolveBase< double > *  Op,
Teuchos::RCP< const LinearOpSourceBase< double > > *  fwdOpSrc,
Teuchos::RCP< const PreconditionerBase< double > > *  prec,
Teuchos::RCP< const LinearOpSourceBase< double > > *  approxFwdOpSrc,
ESupportSolveUse supportSolveUse 
) const [virtual]
bool Thyra::AztecOOLinearOpWithSolveFactory::supportsPreconditionerInputType ( const EPreconditionerInputType  precOpType  )  const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::initializePreconditionedOp ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
const Teuchos::RCP< const PreconditionerBase< double > > &  prec,
LinearOpWithSolveBase< double > *  Op,
const ESupportSolveUse  supportSolveUse 
) const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::initializeApproxPreconditionedOp ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
const Teuchos::RCP< const LinearOpSourceBase< double > > &  approxFwdOpSrc,
LinearOpWithSolveBase< double > *  Op,
const ESupportSolveUse  supportSolveUse 
) const [virtual]
void Thyra::AztecOOLinearOpWithSolveFactory::setParameterList ( Teuchos::RCP< Teuchos::ParameterList > const &  paramList  )  [virtual]
Teuchos::RCP< Teuchos::ParameterList > Thyra::AztecOOLinearOpWithSolveFactory::getNonconstParameterList (  )  [virtual]
Teuchos::RCP< Teuchos::ParameterList > Thyra::AztecOOLinearOpWithSolveFactory::unsetParameterList (  )  [virtual]
Teuchos::RCP< const Teuchos::ParameterList > Thyra::AztecOOLinearOpWithSolveFactory::getParameterList (  )  const [virtual]

Reimplemented from Teuchos::ParameterListAcceptor.

Definition at line 333 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

Teuchos::RCP< const Teuchos::ParameterList > Thyra::AztecOOLinearOpWithSolveFactory::getValidParameters (  )  const [virtual]

Reimplemented from Teuchos::ParameterListAcceptor.

Definition at line 340 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

std::string Thyra::AztecOOLinearOpWithSolveFactory::description (  )  const [virtual]

Reimplemented from Teuchos::Describable.

Definition at line 349 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

Teuchos::RCP< const Teuchos::ParameterList > Thyra::AztecOOLinearOpWithSolveFactory::generateAndGetValidParameters (  )  [static, private]

Definition at line 367 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

void Thyra::AztecOOLinearOpWithSolveFactory::updateThisValidParamList (  )  [private]

Definition at line 412 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.

void Thyra::AztecOOLinearOpWithSolveFactory::initializeOp_impl ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
const Teuchos::RCP< const PreconditionerBase< double > > &  prec,
const Teuchos::RCP< const LinearOpSourceBase< double > > &  approxFwdOpSrc,
const bool  reusePrec,
LinearOpWithSolveBase< double > *  Op 
) const [private]

Definition at line 429 of file Thyra_AztecOOLinearOpWithSolveFactory.cpp.


Member Data Documentation

Definition at line 176 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 177 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 178 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 179 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 181 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 182 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 183 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 184 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 185 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.

Definition at line 187 of file Thyra_AztecOOLinearOpWithSolveFactory.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
Generated on Wed Apr 13 10:20:32 2011 for Stratimikos Package Browser (Single Doxygen Collection) by  doxygen 1.6.3