#include <Ifpack_DiagonalFilter.h>
Public Member Functions | |
| Ifpack_DiagonalFilter (const Teuchos::RefCountPtr< Epetra_RowMatrix > &Matrix, double AbsoluteThreshold, double RelativeThreshold) | |
| Constructor. | |
| virtual | ~Ifpack_DiagonalFilter () |
| 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 |
| Not implemented for efficiency reasons. | |
| virtual double | NormOne () const |
| Not implemented for efficiency reasons. | |
| 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_in) |
| bool | UseTranspose () const |
| bool | HasNormInf () const |
| Not implemented for efficiency reasons. | |
| 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_DiagonalFilter modifies the elements on the diagonal.
A typical use is as follows:
Teuchos::RefCountPtr<Epetra_RowMatrix> A; // creates a matrix B such that // B(i,i) = AbsoluteThreshold * sgn(B(i,i)) + // RelativeThreshold * B(i,i) double AbsoluteThreshold = 1e-3; double RelativeThreshold = 1.01; Ifpack_DiagonalFilter B(A, AbsoluteThreshold, RelativeThreshold);
Last modified on 24-Jan-05.
| Ifpack_DiagonalFilter::Ifpack_DiagonalFilter | ( | const Teuchos::RefCountPtr< Epetra_RowMatrix > & | Matrix, | |
| double | AbsoluteThreshold, | |||
| double | RelativeThreshold | |||
| ) |
Constructor.
| virtual Ifpack_DiagonalFilter::~Ifpack_DiagonalFilter | ( | ) | [inline, virtual] |
Destructor.
| virtual int Ifpack_DiagonalFilter::Apply | ( | const Epetra_MultiVector & | X, | |
| Epetra_MultiVector & | Y | |||
| ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::ApplyInverse | ( | const Epetra_MultiVector & | X, | |
| Epetra_MultiVector & | Y | |||
| ) | const [inline, virtual] |
| const Epetra_Comm& Ifpack_DiagonalFilter::Comm | ( | ) | const [inline] |
| virtual int Ifpack_DiagonalFilter::ExtractDiagonalCopy | ( | Epetra_Vector & | Diagonal | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::ExtractMyRowCopy | ( | int | MyRow, | |
| int | Length, | |||
| int & | NumEntries, | |||
| double * | Values, | |||
| int * | Indices | |||
| ) | const [inline, virtual] |
| virtual bool Ifpack_DiagonalFilter::Filled | ( | ) | const [inline, virtual] |
| bool Ifpack_DiagonalFilter::HasNormInf | ( | ) | const [inline] |
Not implemented for efficiency reasons.
| virtual int Ifpack_DiagonalFilter::InvColSums | ( | Epetra_Vector & | x | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::InvRowSums | ( | Epetra_Vector & | x | ) | const [inline, virtual] |
| const char* Ifpack_DiagonalFilter::Label | ( | ) | const [inline] |
| virtual int Ifpack_DiagonalFilter::LeftScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
| virtual bool Ifpack_DiagonalFilter::LowerTriangular | ( | ) | const [inline, virtual] |
| const Epetra_BlockMap& Ifpack_DiagonalFilter::Map | ( | ) | const [inline] |
| virtual int Ifpack_DiagonalFilter::MaxNumEntries | ( | ) | const [inline, virtual] |
Returns the maximum number of entries.
| virtual int Ifpack_DiagonalFilter::Multiply | ( | bool | TransA, | |
| const Epetra_MultiVector & | X, | |||
| Epetra_MultiVector & | Y | |||
| ) | const [virtual] |
| virtual double Ifpack_DiagonalFilter::NormInf | ( | ) | const [inline, virtual] |
Not implemented for efficiency reasons.
| virtual double Ifpack_DiagonalFilter::NormOne | ( | ) | const [inline, virtual] |
Not implemented for efficiency reasons.
| virtual int Ifpack_DiagonalFilter::NumGlobalCols | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumGlobalDiagonals | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumGlobalNonzeros | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumGlobalRows | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumMyCols | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumMyDiagonals | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumMyNonzeros | ( | ) | const [inline, virtual] |
| virtual int Ifpack_DiagonalFilter::NumMyRowEntries | ( | int | MyRow, | |
| int & | NumEntries | |||
| ) | const [inline, virtual] |
Returns the number of entries in MyRow.
| virtual int Ifpack_DiagonalFilter::NumMyRows | ( | ) | const [inline, virtual] |
| const Epetra_Map& Ifpack_DiagonalFilter::OperatorDomainMap | ( | ) | const [inline] |
| const Epetra_Map& Ifpack_DiagonalFilter::OperatorRangeMap | ( | ) | const [inline] |
| virtual int Ifpack_DiagonalFilter::RightScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
| virtual const Epetra_Map& Ifpack_DiagonalFilter::RowMatrixColMap | ( | ) | const [inline, virtual] |
| virtual const Epetra_Import* Ifpack_DiagonalFilter::RowMatrixImporter | ( | ) | const [inline, virtual] |
| virtual const Epetra_Map& Ifpack_DiagonalFilter::RowMatrixRowMap | ( | ) | const [inline, virtual] |
| int Ifpack_DiagonalFilter::SetUseTranspose | ( | bool | UseTranspose_in | ) | [inline] |
| virtual int Ifpack_DiagonalFilter::Solve | ( | bool | Upper, | |
| bool | Trans, | |||
| bool | UnitDiagonal, | |||
| const Epetra_MultiVector & | X, | |||
| Epetra_MultiVector & | Y | |||
| ) | const [inline, virtual] |
| virtual bool Ifpack_DiagonalFilter::UpperTriangular | ( | ) | const [inline, virtual] |
| bool Ifpack_DiagonalFilter::UseTranspose | ( | ) | const [inline] |
1.5.9