#include <mrtr_ml_preconditioner.H>
Public Member Functions | |
Mortar_ML_Preconditioner (Teuchos::RCP< Epetra_CrsMatrix > Atilde, Teuchos::RCP< Epetra_CrsMatrix > A, Teuchos::RCP< Epetra_CrsMatrix > WT, Teuchos::RCP< Epetra_CrsMatrix > B, Teuchos::RCP< Epetra_Map > Annmap, Teuchos::ParameterList &mlparams, bool constructnow=true) | |
Construct the mortar modified ml preocnditioner. More... | |
virtual | ~Mortar_ML_Preconditioner () |
Destroys an instance of this class. More... | |
const char * | Label () const |
Returns the label of this class. | |
const Epetra_Comm & | Comm () const |
get Comm of this class More... | |
const Epetra_Map & | OperatorDomainMap () const |
Get fine level OperatorDomainMap. More... | |
const Epetra_Map & | OperatorRangeMap () const |
Get fine level OperatorRangeMap. More... | |
bool | Compute () |
Compute the preconditioner. More... | |
int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
ApplyInverse the preconditioner. More... | |
int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
not implemented | |
int | SetUseTranspose (bool UseTranspose) |
not implemented | |
double | NormInf () const |
not implemented | |
bool | UseTranspose () const |
not implemented | |
bool | HasNormInf () const |
not implemented | |
|
explicit |
Construct the mortar modified ml preocnditioner.
Construct the mortar modified ml preconditioner using ML's MLAPI
Atilde | (In) : The mortar modified spd system of equations |
A | (In) : The original (uncoupled) system matrix |
WT | (In) : Mortar scaling object |
B | (In) : Mortar constraints equations |
params | (In) : ML parameters |
constructnow | (In) : If true, the preconditioner is constructed immediately |
References Compute().
|
inlinevirtual |
Destroys an instance of this class.
Destructor
int MOERTEL::Mortar_ML_Preconditioner::ApplyInverse | ( | const Epetra_MultiVector & | X, |
Epetra_MultiVector & | Y | ||
) | const |
ApplyInverse the preconditioner.
ApplyInverse the preconditioner. Method is derived from Epetra_Operator.
X | (In) : Epetra_MultiVector matching the fine level map of this preconditioner |
Y | (Out) : Epetra_MultiVector containing the result on output |
References Compute(), and MOERTEL::ReportError().
|
inline |
get Comm of this class
Derived from Epetra_Operator, returns ref to the Epetra_Comm of this class
bool MOERTEL::Mortar_ML_Preconditioner::Compute | ( | ) |
Compute the preconditioner.
Compute the mortar modified ml preconditioner
References MOERTEL::Solver::Comm(), MOERTEL::MatMatMult(), MOERTEL::MatrixMatrixAdd(), and MOERTEL::PaddedMatrix().
Referenced by ApplyInverse(), and Mortar_ML_Preconditioner().
|
inline |
Get fine level OperatorDomainMap.
Derived from Epetra_Operator, get fine level OperatorDomainMap
|
inline |
Get fine level OperatorRangeMap.
Derived from Epetra_Operator, get fine level OperatorRangeMap