#include <Ifpack_DropFilter.h>
Public Member Functions | |
Ifpack_DropFilter (const Teuchos::RefCountPtr< Epetra_RowMatrix > &Matrix, double DropTol) | |
Constructor. | |
virtual | ~Ifpack_DropFilter () |
Destructor. | |
virtual int | NumMyRowEntries (int MyRow, int &NumEntries) const |
Returns the number of entries in MyRow. | |
virtual int | MaxNumEntries () const |
Returns the maximum number of entries. | |
virtual int | ExtractMyRowCopy (int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const |
virtual int | ExtractDiagonalCopy (Epetra_Vector &Diagonal) const |
virtual int | Multiply (bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual int | Solve (bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual int | InvRowSums (Epetra_Vector &x) const |
virtual int | LeftScale (const Epetra_Vector &x) |
virtual int | InvColSums (Epetra_Vector &x) const |
virtual int | RightScale (const Epetra_Vector &x) |
virtual bool | Filled () const |
virtual double | NormInf () const |
virtual double | NormOne () const |
virtual int | NumGlobalNonzeros () const |
virtual int | NumGlobalRows () const |
virtual int | NumGlobalCols () const |
virtual int | NumGlobalDiagonals () const |
virtual int | NumMyNonzeros () const |
virtual int | NumMyRows () const |
virtual int | NumMyCols () const |
virtual int | NumMyDiagonals () const |
virtual bool | LowerTriangular () const |
virtual bool | UpperTriangular () const |
virtual const Epetra_Map & | RowMatrixRowMap () const |
virtual const Epetra_Map & | RowMatrixColMap () const |
virtual const Epetra_Import * | RowMatrixImporter () const |
int | SetUseTranspose (bool UseTranspose) |
bool | UseTranspose () const |
bool | HasNormInf () const |
const Epetra_Comm & | Comm () const |
const Epetra_Map & | OperatorDomainMap () const |
const Epetra_Map & | OperatorRangeMap () const |
const Epetra_BlockMap & | Map () const |
const char * | Label () const |
Ifpack_DropFilter enables the dropping of all elements whose absolute value is below a specified threshold.
A typical use is as follows:
Teuchos::RefCountPtr<Epetra_RowMatrix> A; // first localize the matrix Ifpack_LocalFilter LocalA(A); // drop all elements below this value double DropTol = 1e-5; // now create the matrix, elements below DropTol are // not included in calls to ExtractMyRowCopy(), Multiply() // and Apply() Ifpack_DropFilter DropA(LocalA,DropTol)
It is supposed that Ifpack_DropFilter is used on localized matrices.
Last modified: Oct-04.
Ifpack_DropFilter::Ifpack_DropFilter | ( | const Teuchos::RefCountPtr< Epetra_RowMatrix > & | Matrix, | |
double | DropTol | |||
) |
Constructor.
virtual Ifpack_DropFilter::~Ifpack_DropFilter | ( | ) | [inline, virtual] |
Destructor.
virtual int Ifpack_DropFilter::Apply | ( | const Epetra_MultiVector & | X, | |
Epetra_MultiVector & | Y | |||
) | const [virtual] |
virtual int Ifpack_DropFilter::ApplyInverse | ( | const Epetra_MultiVector & | X, | |
Epetra_MultiVector & | Y | |||
) | const [virtual] |
const Epetra_Comm& Ifpack_DropFilter::Comm | ( | ) | const [inline] |
virtual int Ifpack_DropFilter::ExtractDiagonalCopy | ( | Epetra_Vector & | Diagonal | ) | const [virtual] |
virtual int Ifpack_DropFilter::ExtractMyRowCopy | ( | int | MyRow, | |
int | Length, | |||
int & | NumEntries, | |||
double * | Values, | |||
int * | Indices | |||
) | const [virtual] |
virtual bool Ifpack_DropFilter::Filled | ( | ) | const [inline, virtual] |
bool Ifpack_DropFilter::HasNormInf | ( | ) | const [inline] |
virtual int Ifpack_DropFilter::InvColSums | ( | Epetra_Vector & | x | ) | const [virtual] |
virtual int Ifpack_DropFilter::InvRowSums | ( | Epetra_Vector & | x | ) | const [virtual] |
const char* Ifpack_DropFilter::Label | ( | ) | const [inline] |
virtual int Ifpack_DropFilter::LeftScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
virtual bool Ifpack_DropFilter::LowerTriangular | ( | ) | const [inline, virtual] |
const Epetra_BlockMap& Ifpack_DropFilter::Map | ( | ) | const [inline] |
virtual int Ifpack_DropFilter::MaxNumEntries | ( | ) | const [inline, virtual] |
Returns the maximum number of entries.
virtual int Ifpack_DropFilter::Multiply | ( | bool | TransA, | |
const Epetra_MultiVector & | X, | |||
Epetra_MultiVector & | Y | |||
) | const [virtual] |
virtual double Ifpack_DropFilter::NormInf | ( | ) | const [inline, virtual] |
virtual double Ifpack_DropFilter::NormOne | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumGlobalCols | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumGlobalDiagonals | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumGlobalNonzeros | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumGlobalRows | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumMyCols | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumMyDiagonals | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumMyNonzeros | ( | ) | const [inline, virtual] |
virtual int Ifpack_DropFilter::NumMyRowEntries | ( | int | MyRow, | |
int & | NumEntries | |||
) | const [inline, virtual] |
Returns the number of entries in MyRow.
virtual int Ifpack_DropFilter::NumMyRows | ( | ) | const [inline, virtual] |
const Epetra_Map& Ifpack_DropFilter::OperatorDomainMap | ( | ) | const [inline] |
const Epetra_Map& Ifpack_DropFilter::OperatorRangeMap | ( | ) | const [inline] |
virtual int Ifpack_DropFilter::RightScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
virtual const Epetra_Map& Ifpack_DropFilter::RowMatrixColMap | ( | ) | const [inline, virtual] |
virtual const Epetra_Import* Ifpack_DropFilter::RowMatrixImporter | ( | ) | const [inline, virtual] |
virtual const Epetra_Map& Ifpack_DropFilter::RowMatrixRowMap | ( | ) | const [inline, virtual] |
int Ifpack_DropFilter::SetUseTranspose | ( | bool | UseTranspose | ) | [inline] |
virtual int Ifpack_DropFilter::Solve | ( | bool | Upper, | |
bool | Trans, | |||
bool | UnitDiagonal, | |||
const Epetra_MultiVector & | X, | |||
Epetra_MultiVector & | Y | |||
) | const [virtual] |
virtual bool Ifpack_DropFilter::UpperTriangular | ( | ) | const [inline, virtual] |
bool Ifpack_DropFilter::UseTranspose | ( | ) | const [inline] |