Belos Version of the Day
Loading...
Searching...
No Matches
List of all members
Belos::DenseSolver< ScalarType, DM > Class Template Referenceabstract

#include <BelosDenseSolver.hpp>

Inheritance diagram for Belos::DenseSolver< ScalarType, DM >:
Inheritance graph
[legend]

Public Member Functions

Constructor/Destructor Methods
 DenseSolver ()
 Default constructor; matrix should be set using setMatrix(), LHS and RHS set with setVectors().
 
virtual ~DenseSolver ()
 SerialDenseSolver destructor.
 
Set Methods
virtual int setMatrix (const Teuchos::RCP< DM > &A)
 Sets the pointers for coefficient matrix.
 
virtual int setVectors (const Teuchos::RCP< DM > &X, const Teuchos::RCP< DM > &B)
 Sets the pointers for left and right hand side vector(s).
 
Strategy Modifying Methods
void setSPD (bool flag)
 Set if dense matrix is symmetric positive definite.
 
void factorWithEquilibration (bool flag)
 Causes equilibration to be called just before the matrix factorization as part of the call to factor.
 
void solveWithTransposeFlag (Teuchos::ETransp trans)
 All subsequent function calls will work with the transpose-type set by this method (Teuchos::NO_TRANS, Teuchos::TRANS, and Teuchos::CONJ_TRANS).
 

Factor/Solve Methods

bool spd_
 
bool equilibrate_
 
Teuchos::ETransp TRANS_
 
bool newMatrix_
 
Teuchos::RCP< DM > A_
 
Teuchos::RCP< DM > X_
 
Teuchos::RCP< DM > B_
 
virtual int factor ()=0
 Computes the in-place LU factorization of the matrix.
 
virtual int solve ()=0
 Computes the solution X to AX = B for the this matrix and the B provided.
 

Detailed Description

template<class ScalarType, class DM>
class Belos::DenseSolver< ScalarType, DM >

Definition at line 23 of file BelosDenseSolver.hpp.

Constructor & Destructor Documentation

◆ DenseSolver()

template<class ScalarType , class DM >
Belos::DenseSolver< ScalarType, DM >::DenseSolver ( )
inline

Default constructor; matrix should be set using setMatrix(), LHS and RHS set with setVectors().

Definition at line 30 of file BelosDenseSolver.hpp.

◆ ~DenseSolver()

template<class ScalarType , class DM >
virtual Belos::DenseSolver< ScalarType, DM >::~DenseSolver ( )
inlinevirtual

SerialDenseSolver destructor.

Definition at line 38 of file BelosDenseSolver.hpp.

Member Function Documentation

◆ setMatrix()

template<class ScalarType , class DM >
virtual int Belos::DenseSolver< ScalarType, DM >::setMatrix ( const Teuchos::RCP< DM > &  A)
inlinevirtual

Sets the pointers for coefficient matrix.

Definition at line 45 of file BelosDenseSolver.hpp.

◆ setVectors()

template<class ScalarType , class DM >
virtual int Belos::DenseSolver< ScalarType, DM >::setVectors ( const Teuchos::RCP< DM > &  X,
const Teuchos::RCP< DM > &  B 
)
inlinevirtual

Sets the pointers for left and right hand side vector(s).

Row dimension of X must match column dimension of matrix A, row dimension of B must match row dimension of A. X and B must have the same dimensions.

Definition at line 51 of file BelosDenseSolver.hpp.

◆ setSPD()

template<class ScalarType , class DM >
void Belos::DenseSolver< ScalarType, DM >::setSPD ( bool  flag)
inline

Set if dense matrix is symmetric positive definite.

Note
This method must be called before the factorization is performed, otherwise it will have no effect.

Definition at line 59 of file BelosDenseSolver.hpp.

◆ factorWithEquilibration()

template<class ScalarType , class DM >
void Belos::DenseSolver< ScalarType, DM >::factorWithEquilibration ( bool  flag)
inline

Causes equilibration to be called just before the matrix factorization as part of the call to factor.

Note
This method must be called before the factorization is performed, otherwise it will have no effect.

Definition at line 64 of file BelosDenseSolver.hpp.

◆ solveWithTransposeFlag()

template<class ScalarType , class DM >
void Belos::DenseSolver< ScalarType, DM >::solveWithTransposeFlag ( Teuchos::ETransp  trans)
inline

All subsequent function calls will work with the transpose-type set by this method (Teuchos::NO_TRANS, Teuchos::TRANS, and Teuchos::CONJ_TRANS).

Note
This interface will set correct transpose flag for matrix, including complex-valued linear systems.

Definition at line 69 of file BelosDenseSolver.hpp.

◆ factor()

template<class ScalarType , class DM >
virtual int Belos::DenseSolver< ScalarType, DM >::factor ( )
pure virtual

Computes the in-place LU factorization of the matrix.

Returns
Integer error code, set to 0 if successful.

Implemented in Belos::KokkosDenseSolver< Scalar, DM >, and Belos::TeuchosDenseSolver< ScalarType >.

◆ solve()

template<class ScalarType , class DM >
virtual int Belos::DenseSolver< ScalarType, DM >::solve ( )
pure virtual

Computes the solution X to AX = B for the this matrix and the B provided.

Returns
Integer error code, set to 0 if successful.

Implemented in Belos::KokkosDenseSolver< Scalar, DM >, and Belos::TeuchosDenseSolver< ScalarType >.

Member Data Documentation

◆ spd_

template<class ScalarType , class DM >
bool Belos::DenseSolver< ScalarType, DM >::spd_
protected

Definition at line 90 of file BelosDenseSolver.hpp.

◆ equilibrate_

template<class ScalarType , class DM >
bool Belos::DenseSolver< ScalarType, DM >::equilibrate_
protected

Definition at line 90 of file BelosDenseSolver.hpp.

◆ TRANS_

template<class ScalarType , class DM >
Teuchos::ETransp Belos::DenseSolver< ScalarType, DM >::TRANS_
protected

Definition at line 91 of file BelosDenseSolver.hpp.

◆ newMatrix_

template<class ScalarType , class DM >
bool Belos::DenseSolver< ScalarType, DM >::newMatrix_
protected

Definition at line 93 of file BelosDenseSolver.hpp.

◆ A_

template<class ScalarType , class DM >
Teuchos::RCP<DM> Belos::DenseSolver< ScalarType, DM >::A_
protected

Definition at line 94 of file BelosDenseSolver.hpp.

◆ X_

template<class ScalarType , class DM >
Teuchos::RCP<DM> Belos::DenseSolver< ScalarType, DM >::X_
protected

Definition at line 94 of file BelosDenseSolver.hpp.

◆ B_

template<class ScalarType , class DM >
Teuchos::RCP<DM> Belos::DenseSolver< ScalarType, DM >::B_
protected

Definition at line 94 of file BelosDenseSolver.hpp.


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

Generated for Belos by doxygen 1.9.8