|
ML
Version of the Day
|
MatrixFreePreconditioner: a class to define preconditioners for Epetra_Operator's. More...
#include <ml_MatrixFreePreconditioner.h>


Public Member Functions | |
| MatrixFreePreconditioner (const Epetra_Operator &Operator, const Epetra_CrsGraph &Graph, Epetra_MultiVector &NullSpace, const Epetra_Vector &PointDiagonal, Teuchos::ParameterList &List) | |
| Constructor. | |
| virtual | ~MatrixFreePreconditioner () |
| destructor | |
| int | SetUseTranspose (bool UseTranspose) |
| Sets the use of the transpose of the operator (NOT SUPPORTED). | |
| int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
| Applies the operator to a std::vector (NOT SUPPORTED). | |
| int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Applies the preconditioner to std::vector X, returns the result in Y. | |
| double | NormInf () const |
| Returns the infinite norm of the operator (NOT SUPPORTED). | |
| const char * | Label () const |
Returns the label of this operator. | |
| bool | UseTranspose () const |
Returns true if the tranpose of the operator is considerd (NOT SUPPORTED). | |
| bool | HasNormInf () const |
Returns false. | |
| const Epetra_Comm & | Comm () const |
| Returns a reference to the communicator object. | |
| const Epetra_Map & | OperatorDomainMap () const |
| Returns the domain map of the operator. | |
| const Epetra_Map & | OperatorRangeMap () const |
| Returns the range map of the operator. | |
| const Epetra_RowMatrix & | C () const |
| Returns the coarser-level operator as an Epetra_RowMatrix. | |
| const MultiLevelPreconditioner & | MLP () const |
| const Epetra_CrsMatrix & | R () const |
| Returns the restriction operator as an Epetra_CrsMatrix. | |
| ML_Comm * | Comm_ML () |
Returns the ML communicator of this object. | |
| int | MyPID () const |
| Returns the PID of the calling processor. | |
| int | NumProc () const |
| Returns the number of processors in the communicator. | |
| bool | IsComputed () const |
Returns true if the preconditioner has been successfully computed. | |
| double | TotalCPUTime () const |
Returns the total CPU time spent in this class. | |
| bool | CheckSPD (const Epetra_Operator &Op, const bool UseApply=true, const int NumChecks=1, const int NumVectors=1) const |
| int | Coarsen (ML_Operator *A, ML_Aggregate **aggr, ML_Operator **P, ML_Operator **R, ML_Operator **C, int NumPDEEqns=1, int NullSpaceDim=1, double *NullSpace=NULL) |
Performs coarsening for a given operator A. | |
| int | GetBlockDiagonal (const Epetra_CrsGraph &Graph, std::string DiagonalColoringType) |
| Probes for the block diagonal of the given operator. | |
MatrixFreePreconditioner: a class to define preconditioners for Epetra_Operator's.
This file requires ML to be configured with the following options:
–enable-epetra –enable-epetraext –enable-teuchos The following options are suggested:
–enable-amesos –enable-ifpack This class does not support Maxwell problems. It has been tested on symmetric problems; however it can in principle be used with non-symmetric problems as well.
1.8.5