Thyra
Version of the Day
|
Simple concreate subclass of LinearOpWithSolveBase
for serial dense matrices implemented using LAPACK.
More...
#include <Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp>
Related Functions | |
(Note that these are not member functions.) | |
template<class Scalar > | |
RCP < DefaultSerialDenseLinearOpWithSolve < Scalar > > | defaultSerialDenseLinearOpWithSolve () |
Nonmember constructor. More... | |
template<class Scalar > | |
RCP < DefaultSerialDenseLinearOpWithSolve < Scalar > > | defaultSerialDenseLinearOpWithSolve (const RCP< const MultiVectorBase< Scalar > > &M) |
Nonmember constructor. More... | |
Related Functions inherited from Thyra::LinearOpWithSolveBase< Scalar > | |
template<class Scalar > | |
bool | solveSupports (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp transp) |
Call solveSupports() as a non-member function. More... | |
template<class Scalar > | |
bool | solveSupports (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp transp, const Ptr< const SolveCriteria< Scalar > > solveCriteria) |
Call solveSupports() as a non-member function. More... | |
template<class Scalar > | |
bool | solveSupportsSolveMeasureType (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp transp, const SolveMeasureType &solveMeasureType) |
Call solveSupportsSolveMeasureType() as a non-member function. More... | |
template<class Scalar > | |
SolveStatus< Scalar > | solve (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp A_trans, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X, const Ptr< const SolveCriteria< Scalar > > solveCriteria=Teuchos::null) |
Call solve() as a non-member function. More... | |
template<class Scalar > | |
void | assertSolveSupports (const LinearOpWithSolveBase< Scalar > &lows, const EOpTransp M_trans, const Ptr< const SolveCriteria< Scalar > > solveCriteria=Teuchos::null) |
Assert that a LOWSB object supports a particular solve type. More... | |
Related Functions inherited from Thyra::LinearOpBase< Scalar > | |
template<class Scalar > | |
bool | isFullyUninitialized (const LinearOpBase< Scalar > &M) |
Determines if a linear operator is in the "Fully Uninitialized" state or not. More... | |
template<class Scalar > | |
bool | isPartiallyInitialized (const LinearOpBase< Scalar > &M) |
Determines if a linear operator is in the "Partially Initialized" state or not. More... | |
template<class Scalar > | |
bool | isFullyInitialized (const LinearOpBase< Scalar > &M) |
Determines if a linear operator is in the "Fully Initialized" state or not. More... | |
template<class Scalar > | |
bool | opSupported (const LinearOpBase< Scalar > &M, EOpTransp M_trans) |
Determines if an operation is supported for a single scalar type. More... | |
template<class Scalar > | |
void | apply (const LinearOpBase< Scalar > &M, const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha=static_cast< Scalar >(1.0), const Scalar beta=static_cast< Scalar >(0.0)) |
Non-member function call for M.apply(...) . More... | |
void | apply (const LinearOpBase< double > &M, const EOpTransp M_trans, const MultiVectorBase< double > &X, const Ptr< MultiVectorBase< double > > &Y, const double alpha=1.0, const double beta=0.0) |
Calls apply<double>(...) . More... | |
Constructors/initializers/accessors | |
DefaultSerialDenseLinearOpWithSolve () | |
void | initialize (const RCP< const MultiVectorBase< Scalar > > &M) |
RCP< const LinearOpBase< Scalar > > | getFwdOp () const |
Overridden from LinearOpBase | |
RCP< const VectorSpaceBase < Scalar > > | range () const |
RCP< const VectorSpaceBase < Scalar > > | domain () const |
bool | opSupportedImpl (EOpTransp M_trans) const |
void | applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const |
Overridden from LinearOpWithSolveBase | |
bool | solveSupportsImpl (EOpTransp M_trans) const |
bool | solveSupportsSolveMeasureTypeImpl (EOpTransp M_trans, const SolveMeasureType &solveMeasureType) const |
SolveStatus< Scalar > | solveImpl (const EOpTransp transp, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X, const Ptr< const SolveCriteria< Scalar > > solveCriteria) const |
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 91 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::DefaultSerialDenseLinearOpWithSolve | ( | ) |
Definition at line 62 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::initialize | ( | const RCP< const MultiVectorBase< Scalar > > & | M | ) |
Definition at line 67 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
RCP< const LinearOpBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::getFwdOp | ( | ) | const |
Definition at line 83 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
virtual |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 93 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
virtual |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 103 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
protectedvirtual |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 118 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
protectedvirtual |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 126 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
protectedvirtual |
Reimplemented from Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 142 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
protectedvirtual |
Reimplemented from Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 151 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
protectedvirtual |
Implements Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 161 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
|
related |
Nonmember constructor.
Definition at line 195 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
|
related |
Nonmember constructor.
Definition at line 207 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.