Stratimikos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Public Types | List of all members
Thyra::Amesos2LinearOpWithSolve< Scalar > Class Template Reference

Concrete LinearOpWithSolveBase subclass in terms of Amesos2. More...

#include <Thyra_Amesos2LinearOpWithSolve_decl.hpp>

Inherits LinearOpWithSolveBase< Scalar >.

Public Types

using MAT = Tpetra::CrsMatrix<Scalar>
 
using Op = Tpetra::Operator<Scalar>
 
using MV = Tpetra::MultiVector<Scalar>
 
using Solver = ::Amesos2::Solver<MAT, MV>
 
using ConverterT = TpetraOperatorVectorExtraction<Scalar>
 

Overridden from LinearOpWithSolveBase.

Teuchos::RCP< const LinearOpBase< Scalar > > fwdOp_
 
Teuchos::RCP< const LinearOpSourceBase< Scalar > > fwdOpSrc_
 
Teuchos::RCP< Solveramesos2Solver_
 
virtual bool solveSupportsImpl (EOpTransp M_trans) const
 
virtual bool solveSupportsSolveMeasureTypeImpl (EOpTransp M_trans, const SolveMeasureType &solveMeasureType) const
 
SolveStatus< Scalar > solveImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &B, const Ptr< MultiVectorBase< Scalar > > &X, const Ptr< const SolveCriteria< Scalar > > solveCriteria) const
 
void assertInitialized () const
 

Constructors/initializers/accessors

 Amesos2LinearOpWithSolve ()
 Construct to uninitialized.
 
 Amesos2LinearOpWithSolve (const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const Teuchos::RCP< Solver > &amesos2Solver, const EOpTransp amesos2SolverTransp, const Scalar amesos2SolverScalar)
 Calls this->initialize().
 
void initialize (const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const Teuchos::RCP< const LinearOpSourceBase< Scalar > > &fwdOpSrc, const Teuchos::RCP< Solver > &amesos2Solver)
 Initialize after construction.
 
Teuchos::RCP< const LinearOpSourceBase< Scalar > > extract_fwdOpSrc ()
 Extract the forward LinearOpSourceBase<double> object so that it can be modified and remove it from this object.
 
Teuchos::RCP< const LinearOpBase< Scalar > > get_fwdOp () const
 
Teuchos::RCP< Solverget_amesos2Solver ()
 
Teuchos::RCP< const LinearOpSourceBase< Scalar > > get_fwdOpSrc () const
 

Overridden public functions from LinearOpBase

Teuchos::RCP< const VectorSpaceBase< Scalar > > range () const
 
Teuchos::RCP< const VectorSpaceBase< Scalar > > domain () const
 
Teuchos::RCP< const LinearOpBase< Scalar > > clone () const
 

Overridden public functions from Teuchos::Describable

std::string description () const
 
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
 

Overridden from LinearOpBase <br>

virtual bool opSupportedImpl (EOpTransp M_trans) const
 
virtual void applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 

Detailed Description

template<typename Scalar>
class Thyra::Amesos2LinearOpWithSolve< Scalar >

Concrete LinearOpWithSolveBase subclass in terms of Amesos2.

ToDo: Finish documentation!

Definition at line 72 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

Member Typedef Documentation

◆ MAT

template<typename Scalar >
using Thyra::Amesos2LinearOpWithSolve< Scalar >::MAT = Tpetra::CrsMatrix<Scalar>

Definition at line 75 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ Op

template<typename Scalar >
using Thyra::Amesos2LinearOpWithSolve< Scalar >::Op = Tpetra::Operator<Scalar>

Definition at line 76 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ MV

template<typename Scalar >
using Thyra::Amesos2LinearOpWithSolve< Scalar >::MV = Tpetra::MultiVector<Scalar>

Definition at line 77 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ Solver

template<typename Scalar >
using Thyra::Amesos2LinearOpWithSolve< Scalar >::Solver = ::Amesos2::Solver<MAT, MV>

Definition at line 78 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ ConverterT

template<typename Scalar >
using Thyra::Amesos2LinearOpWithSolve< Scalar >::ConverterT = TpetraOperatorVectorExtraction<Scalar>

Definition at line 79 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

Constructor & Destructor Documentation

◆ Amesos2LinearOpWithSolve() [1/2]

template<typename Scalar >
Thyra::Amesos2LinearOpWithSolve< Scalar >::Amesos2LinearOpWithSolve ( )

Construct to uninitialized.

Definition at line 57 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ Amesos2LinearOpWithSolve() [2/2]

template<typename Scalar >
Thyra::Amesos2LinearOpWithSolve< Scalar >::Amesos2LinearOpWithSolve ( const Teuchos::RCP< const LinearOpBase< Scalar > > & fwdOp,
const Teuchos::RCP< const LinearOpSourceBase< Scalar > > & fwdOpSrc,
const Teuchos::RCP< Solver > & amesos2Solver,
const EOpTransp amesos2SolverTransp,
const Scalar amesos2SolverScalar )

Calls this->initialize().

Definition at line 62 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

Member Function Documentation

◆ initialize()

template<typename Scalar >
void Thyra::Amesos2LinearOpWithSolve< Scalar >::initialize ( const Teuchos::RCP< const LinearOpBase< Scalar > > & fwdOp,
const Teuchos::RCP< const LinearOpSourceBase< Scalar > > & fwdOpSrc,
const Teuchos::RCP< Solver > & amesos2Solver )

Initialize after construction.

Definition at line 75 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ extract_fwdOpSrc()

template<typename Scalar >
Teuchos::RCP< const LinearOpSourceBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::extract_fwdOpSrc ( )

Extract the forward LinearOpSourceBase<double> object so that it can be modified and remove it from this object.

Postconditions:

Definition at line 92 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ get_fwdOp()

template<typename Scalar >
Teuchos::RCP< const LinearOpBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::get_fwdOp ( ) const
inline

Definition at line 192 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ get_amesos2Solver()

template<typename Scalar >
Teuchos::RCP< typename Amesos2LinearOpWithSolve< Scalar >::Solver > Thyra::Amesos2LinearOpWithSolve< Scalar >::get_amesos2Solver ( )
inline

Definition at line 200 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ get_fwdOpSrc()

template<typename Scalar >
Teuchos::RCP< const LinearOpSourceBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::get_fwdOpSrc ( ) const
inline

Definition at line 208 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ range()

template<typename Scalar >
Teuchos::RCP< const VectorSpaceBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::range ( ) const

Definition at line 106 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ domain()

template<typename Scalar >
Teuchos::RCP< const VectorSpaceBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::domain ( ) const

Definition at line 114 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ clone()

template<typename Scalar >
Teuchos::RCP< const LinearOpBase< Scalar > > Thyra::Amesos2LinearOpWithSolve< Scalar >::clone ( ) const

Definition at line 122 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ description()

template<typename Scalar >
std::string Thyra::Amesos2LinearOpWithSolve< Scalar >::description ( ) const

Definition at line 132 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ describe()

template<typename Scalar >
void Thyra::Amesos2LinearOpWithSolve< Scalar >::describe ( Teuchos::FancyOStream & out,
const Teuchos::EVerbosityLevel verbLevel ) const

Definition at line 146 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ opSupportedImpl()

template<typename Scalar >
bool Thyra::Amesos2LinearOpWithSolve< Scalar >::opSupportedImpl ( EOpTransp M_trans) const
protectedvirtual

Definition at line 189 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ applyImpl()

template<typename Scalar >
void Thyra::Amesos2LinearOpWithSolve< Scalar >::applyImpl ( const EOpTransp M_trans,
const MultiVectorBase< Scalar > & X,
const Ptr< MultiVectorBase< Scalar > > & Y,
const Scalar alpha,
const Scalar beta ) const
protectedvirtual

Definition at line 196 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ solveSupportsImpl()

template<typename Scalar >
bool Thyra::Amesos2LinearOpWithSolve< Scalar >::solveSupportsImpl ( EOpTransp M_trans) const
protectedvirtual

Definition at line 211 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ solveSupportsSolveMeasureTypeImpl()

template<typename Scalar >
bool Thyra::Amesos2LinearOpWithSolve< Scalar >::solveSupportsSolveMeasureTypeImpl ( EOpTransp M_trans,
const SolveMeasureType & solveMeasureType ) const
protectedvirtual

Definition at line 223 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ solveImpl()

template<typename Scalar >
SolveStatus< Scalar > Thyra::Amesos2LinearOpWithSolve< Scalar >::solveImpl ( const EOpTransp M_trans,
const MultiVectorBase< Scalar > & B,
const Ptr< MultiVectorBase< Scalar > > & X,
const Ptr< const SolveCriteria< Scalar > > solveCriteria ) const
protected

Definition at line 233 of file Thyra_Amesos2LinearOpWithSolve_def.hpp.

◆ assertInitialized()

template<typename Scalar >
void Thyra::Amesos2LinearOpWithSolve< Scalar >::assertInitialized ( ) const
private

Member Data Documentation

◆ fwdOp_

template<typename Scalar >
Teuchos::RCP<const LinearOpBase<Scalar> > Thyra::Amesos2LinearOpWithSolve< Scalar >::fwdOp_
private

Definition at line 178 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ fwdOpSrc_

template<typename Scalar >
Teuchos::RCP<const LinearOpSourceBase<Scalar> > Thyra::Amesos2LinearOpWithSolve< Scalar >::fwdOpSrc_
private

Definition at line 179 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.

◆ amesos2Solver_

template<typename Scalar >
Teuchos::RCP< Solver > Thyra::Amesos2LinearOpWithSolve< Scalar >::amesos2Solver_
private

Definition at line 180 of file Thyra_Amesos2LinearOpWithSolve_decl.hpp.


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