Non-member LinearOpWithSolveBase helper functions.


Functions

template<class Scalar>
bool Thyra::solveSupports (const LinearOpWithSolveBase< Scalar > &A, const ETransp A_trans)
 Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve or not..
template<class Scalar>
SolveStatus< Scalar > Thyra::solve (const LinearOpWithSolveBase< Scalar > &A, const ETransp A_trans, const MultiVectorBase< Scalar > &B, MultiVectorBase< Scalar > *X, const SolveCriteria< Scalar > *solveCriteria)
 Solve a set of forward linear systems with a single set of tolerances and a single scalar type.
template<class RangeScalar, class DomainScalar>
SolveStatus< typename LinearOpWithSolveBase<
RangeScalar, DomainScalar
>::PromotedScalar > 
Thyra::solve (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< RangeScalar > &B, MultiVectorBase< DomainScalar > *X, const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *solveCriteria)
 Solve a set of forward linear systems with a single set of tolerances.
template<class RangeScalar, class DomainScalar>
SolveStatus< typename LinearOpWithSolveBase<
RangeScalar, DomainScalar
>::PromotedScalar > 
Thyra::solveTranspose (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< DomainScalar > &B, MultiVectorBase< RangeScalar > *X, const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *solveCriteria)
 Solve a set of transpose linear systems with a single set of tolerances.
template<class RangeScalar, class DomainScalar>
void Thyra::solve (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< RangeScalar > &B, MultiVectorBase< DomainScalar > *X, const int numBlocks, const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveCriteria[], SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveStatus[])
 Solve a set of forward linear systems with two or more sets of tolerances.
template<class RangeScalar, class DomainScalar>
void Thyra::solveTranspose (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< DomainScalar > &B, MultiVectorBase< RangeScalar > *X, const int numBlocks, const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveCriteria[], SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveStatus[])
 Solve a set of transpose linear systems with two or more sets of tolerances.

Detailed Description

These functions allow for simpler calling sequences for solving linear systems given a LinearOpWithSolveBase object. In fact, these functions help to document the various use cases associated with a LinearOpWithSolveBase object.

Function Documentation

template<class Scalar>
bool solveSupports const LinearOpWithSolveBase< Scalar > &  A,
const ETransp  A_trans
 

Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve or not..

Definition at line 534 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

template<class Scalar>
SolveStatus<Scalar> solve const LinearOpWithSolveBase< Scalar > &  A,
const ETransp  A_trans,
const MultiVectorBase< Scalar > &  B,
MultiVectorBase< Scalar > *  X,
const SolveCriteria< Scalar > *  solveCriteria
 

Solve a set of forward linear systems with a single set of tolerances and a single scalar type.

This function allows a single interface for accessing LinearOpWithSolveBase::solve() or LinearOpWithSolveBase::solveTranspose() for operators only templated on a single scalar type for the domain and the range.

See the implementation of this function for details.

Definition at line 563 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

template<class RangeScalar, class DomainScalar>
SolveStatus<typename LinearOpWithSolveBase<RangeScalar,DomainScalar>::PromotedScalar> solve const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< RangeScalar > &  B,
MultiVectorBase< DomainScalar > *  X,
const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *  solveCriteria
 

Solve a set of forward linear systems with a single set of tolerances.

See the implementation of this function for details.

Definition at line 604 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

template<class RangeScalar, class DomainScalar>
SolveStatus<typename LinearOpWithSolveBase<RangeScalar,DomainScalar>::PromotedScalar> solveTranspose const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< DomainScalar > &  B,
MultiVectorBase< RangeScalar > *  X,
const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *  solveCriteria
 

Solve a set of transpose linear systems with a single set of tolerances.

See the implementation of this function for details.

Definition at line 656 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

template<class RangeScalar, class DomainScalar>
void solve const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< RangeScalar > &  B,
MultiVectorBase< DomainScalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveCriteria[],
SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveStatus[]
 

Solve a set of forward linear systems with two or more sets of tolerances.

See the implementation of this function for details.

Definition at line 707 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

template<class RangeScalar, class DomainScalar>
void solveTranspose const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< DomainScalar > &  B,
MultiVectorBase< RangeScalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveCriteria[],
SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveStatus[]
 

Solve a set of transpose linear systems with two or more sets of tolerances.

See the implementation of this function for details.

Definition at line 766 of file Thyra_LinearOpWithSolveBaseDecl.hpp.


Generated on Thu Sep 18 12:32:15 2008 for Thyra ANA Operator Solve Interfaces by doxygen 1.3.9.1