|
Thyra Package Browser (Single Doxygen Collection) Version of the Day
|
Simple concreate subclass of LinearOpWithSolveBase for serial dense matrices implemented using LAPACK.
More...
#include <Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp>

Private Member Functions | |
| DefaultSerialDenseLinearOpWithSolve (const DefaultSerialDenseLinearOpWithSolve &) | |
| DefaultSerialDenseLinearOpWithSolve & | operator= (const DefaultSerialDenseLinearOpWithSolve &) |
Static Private Member Functions | |
| static void | factorize (const MultiVectorBase< Scalar > &M, const Ptr< RTOpPack::ConstSubMultiVectorView< Scalar > > &LU, const Ptr< Array< int > > &ipiv) |
| static void | backsolve (const RTOpPack::ConstSubMultiVectorView< Scalar > &LU, const ArrayView< const int > ipiv, const EOpTransp transp, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X) |
Private Attributes | |
| RCP< const MultiVectorBase < Scalar > > | M_ |
| RTOpPack::ConstSubMultiVectorView < Scalar > | LU_ |
| Array< int > | ipiv_ |
Related Functions | |
(Note that these are not member functions.) | |
| template<class Scalar > | |
| RCP < DefaultSerialDenseLinearOpWithSolve < Scalar > > | defaultSerialDenseLinearOpWithSolve () |
| Nonmember constructor. | |
| template<class Scalar > | |
| RCP < DefaultSerialDenseLinearOpWithSolve < Scalar > > | defaultSerialDenseLinearOpWithSolve (const RCP< const MultiVectorBase< Scalar > > &M) |
| Nonmember constructor. | |
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 78 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
| Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::DefaultSerialDenseLinearOpWithSolve | ( | ) |
Definition at line 49 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
| Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::DefaultSerialDenseLinearOpWithSolve | ( | const DefaultSerialDenseLinearOpWithSolve< Scalar > & | ) | [private] |
| void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::initialize | ( | const RCP< const MultiVectorBase< Scalar > > & | M | ) |
Definition at line 54 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References THYRA_ASSERT_VEC_SPACES.
Referenced by Thyra::DefaultSerialDenseLinearOpWithSolveFactory< Scalar >::initializeOp().
| RCP< const LinearOpBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::getFwdOp | ( | ) | const |
Definition at line 70 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
Referenced by Thyra::DefaultSerialDenseLinearOpWithSolveFactory< Scalar >::uninitializeOp().
| RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::range | ( | ) | const [virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 80 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
| RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::domain | ( | ) | const [virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 90 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
| bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::opSupportedImpl | ( | EOpTransp | M_trans | ) | const [protected, virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 105 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
| void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::applyImpl | ( | const EOpTransp | M_trans, |
| const MultiVectorBase< Scalar > & | X, | ||
| const Ptr< MultiVectorBase< Scalar > > & | Y, | ||
| const Scalar | alpha, | ||
| const Scalar | beta | ||
| ) | const [protected, virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 113 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References Thyra::apply().
| bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solveSupportsImpl | ( | EOpTransp | M_trans | ) | const [protected, virtual] |
Reimplemented from Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 129 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References Thyra::CONJ.
| bool Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureTypeImpl | ( | EOpTransp | M_trans, |
| const SolveMeasureType & | solveMeasureType | ||
| ) | const [protected, virtual] |
Reimplemented from Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 138 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
| SolveStatus< Scalar > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::solveImpl | ( | const EOpTransp | transp, |
| const MultiVectorBase< Scalar > & | B, | ||
| const Ptr< MultiVectorBase< Scalar > > & | X, | ||
| const Ptr< const SolveCriteria< Scalar > > | solveCriteria | ||
| ) | const [protected, virtual] |
Implements Thyra::LinearOpWithSolveBase< Scalar >.
Definition at line 148 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References Thyra::SOLVE_STATUS_CONVERGED, Thyra::SolveStatus< Scalar >::solveStatus, and THYRA_ASSERT_LINEAR_OP_MULTIVEC_APPLY_SPACES.
| void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::factorize | ( | const MultiVectorBase< Scalar > & | M, |
| const Ptr< RTOpPack::ConstSubMultiVectorView< Scalar > > & | LU, | ||
| const Ptr< Array< int > > & | ipiv | ||
| ) | [static, private] |
Definition at line 171 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References Thyra::ConstDetachedMultiVectorView< Scalar >::smv(), and Thyra::ConstDetachedMultiVectorView< Scalar >::subDim().
| void Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::backsolve | ( | const RTOpPack::ConstSubMultiVectorView< Scalar > & | LU, |
| const ArrayView< const int > | ipiv, | ||
| const EOpTransp | transp, | ||
| const MultiVectorBase< Scalar > & | B, | ||
| const Ptr< MultiVectorBase< Scalar > > & | X | ||
| ) | [static, private] |
Definition at line 191 of file Thyra_DefaultSerialDenseLinearOpWithSolve_def.hpp.
References Thyra::assign(), Thyra::convertToRTOpPackETransp(), and Thyra::DetachedMultiVectorView< Scalar >::smv().
| DefaultSerialDenseLinearOpWithSolve& Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::operator= | ( | const DefaultSerialDenseLinearOpWithSolve< Scalar > & | ) | [private] |
| RCP< DefaultSerialDenseLinearOpWithSolve< Scalar > > defaultSerialDenseLinearOpWithSolve | ( | ) | [related] |
Nonmember constructor.
Definition at line 182 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
| RCP< DefaultSerialDenseLinearOpWithSolve< Scalar > > defaultSerialDenseLinearOpWithSolve | ( | const RCP< const MultiVectorBase< Scalar > > & | M | ) | [related] |
Nonmember constructor.
Definition at line 194 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
RCP<const MultiVectorBase<Scalar> > Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::M_ [private] |
Definition at line 148 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
RTOpPack::ConstSubMultiVectorView<Scalar> Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::LU_ [private] |
Definition at line 149 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
Array<int> Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::ipiv_ [private] |
Definition at line 150 of file Thyra_DefaultSerialDenseLinearOpWithSolve_decl.hpp.
1.7.4