Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
Thyra::DiagonalEpetraLinearOpWithSolveFactory Class Reference

Create a DefaultDiagonalLinearOpWithSolve out of a diagonal Epetra_RowMatrix object. More...

#include <Thyra_DiagonalEpetraLinearOpWithSolveFactory.hpp>

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

Overridden from LinearOpWithSolveFactoryBase

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 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
 Uninitialize a LinearOpWithSolveBase object and return its remembered forward linear operator and potentially also its externally generated preconditioner. More...
 

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
 

Detailed Description

Create a DefaultDiagonalLinearOpWithSolve out of a diagonal Epetra_RowMatrix object.

Definition at line 57 of file Thyra_DiagonalEpetraLinearOpWithSolveFactory.hpp.

Member Function Documentation

bool Thyra::DiagonalEpetraLinearOpWithSolveFactory::isCompatible ( const LinearOpSourceBase< double > &  fwdOpSrc) const
virtual
RCP< LinearOpWithSolveBase< double > > Thyra::DiagonalEpetraLinearOpWithSolveFactory::createOp ( ) const
virtual
void Thyra::DiagonalEpetraLinearOpWithSolveFactory::initializeOp ( const Teuchos::RCP< const LinearOpSourceBase< double > > &  fwdOpSrc,
LinearOpWithSolveBase< double > *  Op,
const ESupportSolveUse  supportSolveUse 
) const
virtual
void Thyra::DiagonalEpetraLinearOpWithSolveFactory::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

Uninitialize a LinearOpWithSolveBase object and return its remembered forward linear operator and potentially also its externally generated preconditioner.

Parameters
Op[in/out] On input, *Op is an initialized or uninitialized object and on output is uninitialized. Note that "uninitialized" does not mean that Op is completely stateless. It may still remember some aspect of the matrix fwdOpSrc that will allow for a more efficient initialization next time through this->initializeOp().
fwdOpSrc[in/out] If fwdOpSrc!=NULL on input, then on output this is set to the same forward operator passed into this->initializeOp().
prec[in/out] If prep!=NULL on input, then on output, this this is set to same preconditioner that was passed into this->initializePreconditionedOp().
approxFwdOpSrc[in/out] If approxFwdOpSrc!=NULL on input, then on output, this is set to same approximate forward operator that was passed into this->initializePreconditionedOp().
ESupportSolveUse[in/out] If fwdOpSrc!=NULL on input, then on output this is set to same option value passed to this->initializeOp().

Preconditions:

Postconditions:

  • If *Op on input was initialized through a call to this->initializeOp() and if fwdOpSrc!=NULL then (*fwdOpSrc).get()!=NULL.

  • If *Op was uninitialized on input and fwdOpSrc!=NULL then fwdOpSrc->get()==NULL out output.

  • On output, *Op can be considered to be uninitialized and it is safe to modify the forward operator object *(*fwdOpSrc) returned in fwdOpSrc. The default is fwdOpSrc==NULL in which case the forward operator will not be returned in *fwdOpSrc.

This function should be called before the forward operator passed in to this->initializeOp() is modified. Otherwise, *this could be left in an inconsistent state. However, this is not required.

Implements Thyra::LinearOpWithSolveFactoryBase< double >.

Definition at line 124 of file Thyra_DiagonalEpetraLinearOpWithSolveFactory.cpp.

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

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