Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar > Class Template Reference

Simple concreate subclass of LinearOpWithSolveBase for serial dense matrices implemented using LAPACK. More...

#include <Thyra_DefaultSerialDenseLinearOpWithSolveDecl.hpp>

Inheritance diagram for Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >:

Inheritance graph
[legend]
List of all members.

Constructors/initializers/accessors

 DefaultSerialDenseLinearOpWithSolve ()
 
void initialize (const RCP< const MultiVectorBase< Scalar > > &M)
 

Overridden from LinearOpBase

RCP< const VectorSpaceBase<
Scalar > > 
range () const
 
RCP< const VectorSpaceBase<
Scalar > > 
domain () const
 

Overridden from SingleScalarLinearOpBase

bool opSupported (EOpTransp M_trans) const
 
void apply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const
 

Overridden from SingleScalarLinearOpWithSolveBase

bool solveSupportsTrans (EOpTransp M_trans) const
 
bool solveSupportsSolveMeasureType (EOpTransp M_trans, const SolveMeasureType &solveMeasureType) const
 
void solve (const EOpTransp M_trans, const MultiVectorBase< Scalar > &B, MultiVectorBase< Scalar > *X, const int numBlocks, const BlockSolveCriteria< Scalar > blockSolveCriteria[], SolveStatus< Scalar > blockSolveStatus[]) const
 

Related Functions

(Note that these are not member functions.)

RCP< DefaultSerialDenseLinearOpWithSolve<
Scalar > > 
defaultSerialDenseLinearOpWithSolve ()
 Nonmember constructor.
RCP< DefaultSerialDenseLinearOpWithSolve<
Scalar > > 
defaultSerialDenseLinearOpWithSolve (const RCP< const MultiVectorBase< Scalar > > &M)
 Nonmember constructor.

Detailed Description

template<class Scalar>
class Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >

Simple concreate subclass of LinearOpWithSolveBase for serial dense matrices implemented using LAPACK.

This class uses the helper class DetachedMultiVectorView to extract an explicit view of the matrix elements and then uses Teuchos::LAPACK to factor M = L * U and then do back-solves with the factors L and U.

Even through this class accesses explicit matrix entries and is called SerialDense, it is still considered an ANA subclass since it does not have any direct dependance on a specific computing environment or concreate operator/vector/vectorspace implementation.

ToDo: Finish Documentation!

Definition at line 78 of file Thyra_DefaultSerialDenseLinearOpWithSolveDecl.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::DefaultSerialDenseLinearOpWithSolve (  ) 

Definition at line 49 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.


Member Function Documentation

template<class Scalar>
void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::initialize ( const RCP< const MultiVectorBase< Scalar > > &  M  ) 

Definition at line 54 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::range (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 75 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::domain (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 85 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::opSupported ( EOpTransp  M_trans  )  const [protected]

Definition at line 100 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::apply ( const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
MultiVectorBase< Scalar > *  Y,
const Scalar  alpha,
const Scalar  beta 
) const [protected]

Definition at line 108 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solveSupportsTrans ( EOpTransp  M_trans  )  const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 124 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType ( EOpTransp  M_trans,
const SolveMeasureType solveMeasureType 
) const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 133 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.

template<class Scalar>
void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solve ( const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  B,
MultiVectorBase< Scalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< Scalar >  blockSolveCriteria[],
SolveStatus< Scalar >  blockSolveStatus[] 
) const [protected, virtual]

Implements Thyra::SingleScalarLinearOpWithSolveBase< Scalar >.

Definition at line 142 of file Thyra_DefaultSerialDenseLinearOpWithSolve.hpp.


Friends And Related Function Documentation

template<class Scalar>
RCP< DefaultSerialDenseLinearOpWithSolve< Scalar > > defaultSerialDenseLinearOpWithSolve (  )  [related]

Nonmember constructor.

Definition at line 182 of file Thyra_DefaultSerialDenseLinearOpWithSolveDecl.hpp.

template<class Scalar>
RCP< DefaultSerialDenseLinearOpWithSolve< Scalar > > defaultSerialDenseLinearOpWithSolve ( const RCP< const MultiVectorBase< Scalar > > &  M  )  [related]

Nonmember constructor.

Definition at line 194 of file Thyra_DefaultSerialDenseLinearOpWithSolveDecl.hpp.


The documentation for this class was generated from the following files:
Generated on Wed May 12 21:42:47 2010 for Thyra Operator Solve Support by  doxygen 1.4.7