Ifpack_CrsIlut: ILUT preconditioner of a given Epetra_RowMatrix. More...
#include <Ifpack_CrsIlut.h>
Public Member Functions | |
Ifpack_CrsIlut (const Ifpack_OverlapGraph *OverlapGraph, double DropTol=1.0E-4, double FillTol=1.0) | |
Constructor using Ifpack_OverlapGraph. More... | |
Ifpack_CrsIlut (const Epetra_RowMatrix *UserMatrix, double DropTol=1.0E-4, double FillTol=1.0) | |
Constructor using Epetra_RowMatrix. More... | |
Ifpack_CrsIlut (const Ifpack_CrsIlut &Source) | |
Copy constructor. | |
virtual | ~Ifpack_CrsIlut () |
Ifpack_CrsIlut Destructor. | |
int | SetDropTol (double DropTol) |
Set Drop tolerance value as defined by the ILUT algorithm. | |
int | SetFillTol (double FillTol) |
Set fill tolerance value as defined by the ILUT algorithm. | |
int | SetParameters (const Teuchos::ParameterList ¶meterlist, bool cerr_warning_if_unused=false) |
Set parameters using a Teuchos::ParameterList object. | |
double | DropTol () const |
Set Drop tolerance value as defined by the ILUT algorithm. | |
double | FillTol () const |
Set fill tolerance value as defined by the ILUT algorithm. | |
Public Member Functions inherited from Ifpack_OverlapFactorObject | |
Ifpack_OverlapFactorObject (const Ifpack_OverlapGraph *OverlapGraph) | |
Constructor using Ifpack_OverlapGraph. More... | |
Ifpack_OverlapFactorObject (const Epetra_RowMatrix *UserMatrix) | |
Constructor using Epetra_RowMatrix. More... | |
Ifpack_OverlapFactorObject (const Ifpack_OverlapFactorObject &Source) | |
Copy constructor. | |
virtual | ~Ifpack_OverlapFactorObject () |
Ifpack_OverlapFactorObject Destructor. | |
virtual int | InitValues (const Epetra_RowMatrix *UserMatrix) |
Initialize values from user matrix A, can be called repeatedly as matrix values change. More... | |
virtual int | Factor () |
Compute factors. More... | |
bool | Allocated () const |
If storage has been allocated, this query returns true, otherwise it returns false. | |
bool | ValuesInitialized () const |
If values have been initialized, this query returns true, otherwise it returns false. | |
bool | Factored () const |
If factor is completed, this query returns true, otherwise it returns false. | |
Public Member Functions inherited from Ifpack_OverlapSolveObject | |
Ifpack_OverlapSolveObject (char *Label, const Epetra_Comm &Comm) | |
Constructor. | |
Ifpack_OverlapSolveObject (const Ifpack_OverlapSolveObject &Source) | |
Copy constructor. | |
virtual | ~Ifpack_OverlapSolveObject () |
Ifpack_OverlapSolveObject Destructor. | |
void | SetOverlapMode (Epetra_CombineMode OverlapMode) |
Generate Ifpack_OverlapGraph object using current settings. | |
int | SetLowerOperator (Epetra_CrsMatrix *L, bool UseLTrans) |
Define the operator to be used for the lower triangle. | |
int | SetDiagonal (Epetra_Vector *D, bool UseDInv) |
Define the vector to be used for the diagonal. | |
int | SetUpperOperator (Epetra_CrsMatrix *U, bool UseUTrans) |
Define the operator to be used for the upper triangle. | |
int | Solve (bool Trans, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of a Ifpack_CrsIlut forward/back solve on a Epetra_MultiVector X in Y (works for Epetra_Vectors also). More... | |
int | Multiply (bool Trans, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of multiplying U, D and L in that order on an Epetra_MultiVector X in Y. More... | |
int | Condest (bool Trans, double &ConditionNumberEstimate) const |
Returns the maximum over all the condition number estimate for each local ILU set of factors. More... | |
Epetra_CombineMode | OverlapMode () const |
Returns the overlap mode used to combine terms that are redundantly computed. More... | |
int | NumGlobalNonzeros () const |
Returns the number of nonzero entries in the global graph. | |
int | NumMyNonzeros () const |
Returns the number of nonzero entries in the local graph. | |
const Epetra_CrsMatrix & | L () const |
Returns the address of the L factor associated with this factored matrix. | |
const Epetra_Vector & | D () const |
Returns the address of the D factor associated with this factored matrix. | |
const Epetra_CrsMatrix & | U () const |
Returns the address of the L factor associated with this factored matrix. | |
const char * | Label () const |
Returns a character string describing the operator. | |
int | SetUseTranspose (bool UseTranspose) |
If set true, transpose of this operator will be applied. More... | |
int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y. More... | |
int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y. More... | |
double | NormInf () const |
Returns 0.0 because this class cannot compute Inf-norm. | |
bool | HasNormInf () const |
Returns false because this class cannot compute an Inf-norm. | |
bool | UseTranspose () const |
Returns the current UseTranspose setting. | |
const Epetra_Map & | OperatorDomainMap () const |
Returns the Epetra_Map object associated with the domain of this operator. | |
const Epetra_Map & | OperatorRangeMap () const |
Returns the Epetra_Map object associated with the range of this operator. | |
const Epetra_Comm & | Comm () const |
Returns the Epetra_BlockMap object associated with the range of this matrix operator. | |
Protected Member Functions | |
int | ProcessOverlapMatrix (const Epetra_RowMatrix &A) |
Processes the overlapped user matrix for computing the ILUT preconditioner. | |
int | DerivedFactor () |
Compute ILUT factors L and U: WARNING: THIS ROUTINE IS NOT USER CALLABLE, CALL Factor(). | |
Protected Member Functions inherited from Ifpack_OverlapFactorObject | |
void | SetAllocated (bool Flag) |
void | SetFactored (bool Flag) |
void | SetValuesInitialized (bool Flag) |
Protected Member Functions inherited from Ifpack_OverlapSolveObject | |
virtual int | SetupXY (bool Trans, const Epetra_MultiVector &Xin, const Epetra_MultiVector &Yin, Epetra_MultiVector *&Xout, Epetra_MultiVector *&Yout) const =0 |
Additional Inherited Members | |
Protected Attributes inherited from Ifpack_OverlapFactorObject | |
bool | Factored_ |
bool | Allocated_ |
bool | ValuesInitialized_ |
Ifpack_OverlapGraph * | OverlapGraph_ |
Epetra_RowMatrix * | UserMatrix_ |
Ifpack_CrsIlut: ILUT preconditioner of a given Epetra_RowMatrix.
Definition at line 64 of file Ifpack_CrsIlut.h.
Ifpack_CrsIlut::Ifpack_CrsIlut | ( | const Ifpack_OverlapGraph * | OverlapGraph, |
double | DropTol = 1.0E-4 , |
||
double | FillTol = 1.0 |
||
) |
Constructor using Ifpack_OverlapGraph.
Creates an object from the overlap graph.
OverlapGraph | (In) - Graph describing the graph that should be used for the factors. |
DropTol | (In/Default) - Drop tolerance used by ILUT algorithm. |
FillTol | (In/Default) - Fill tolerance used by ILUT algorithm. |
Definition at line 57 of file Ifpack_CrsIlut.cpp.
Ifpack_CrsIlut::Ifpack_CrsIlut | ( | const Epetra_RowMatrix * | UserMatrix, |
double | DropTol = 1.0E-4 , |
||
double | FillTol = 1.0 |
||
) |
Constructor using Epetra_RowMatrix.
Creates an Ifpack_Graph object from the user graph implicitly defined by the Epetra_RowMatrix interface.
RowMatrix | (In) - An object that has implemented the Epetra_RowMatrix interface. |
DropTol | (In/Default) - Drop tolerance used by ILUT algorithm. |
FillTol | (In/Default) - Fill tolerance used by ILUT algorithm. |
Definition at line 68 of file Ifpack_CrsIlut.cpp.