Ifpack_DropFilter Class Reference

Ifpack_DropFilter: Filter based on matrix entries. More...

#include <Ifpack_DropFilter.h>

List of all members.

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


Detailed Description

Ifpack_DropFilter: Filter based on matrix entries.

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.

Author:
Marzio Sala, SNL 9214.
Last modified: Oct-04.

Constructor & Destructor Documentation

Ifpack_DropFilter::Ifpack_DropFilter ( const Teuchos::RefCountPtr< Epetra_RowMatrix > &  Matrix,
double  DropTol 
)

Constructor.

virtual Ifpack_DropFilter::~Ifpack_DropFilter (  )  [inline, virtual]

Destructor.


Member Function Documentation

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]


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

Generated on Thu Dec 17 11:06:42 2009 for IFPACK Robust Algebraic Preconditioner Package by  doxygen 1.5.9