Ifpack_DiagonalFilter: Filter to modify the diagonal entries of a given Epetra_RowMatrix.
More...
#include <Ifpack_DiagonalFilter.h>
Inherits Epetra_RowMatrix.
|
| Ifpack_DiagonalFilter (const Teuchos::RefCountPtr< Epetra_RowMatrix > &Matrix, double AbsoluteThreshold, double RelativeThreshold) |
| Constructor. More...
|
|
virtual | ~Ifpack_DiagonalFilter () |
| Destructor. More...
|
|
virtual int | NumMyRowEntries (int MyRow, int &NumEntries) const |
| Returns the number of entries in MyRow. More...
|
|
virtual int | MaxNumEntries () const |
| Returns the maximum number of entries. More...
|
|
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. More...
|
|
virtual double | NormOne () const |
| Not implemented for efficiency reasons. More...
|
|
virtual int | NumGlobalNonzeros () const |
|
virtual int | NumGlobalRows () const |
|
virtual int | NumGlobalCols () const |
|
virtual int | NumGlobalDiagonals () const |
|
virtual long long | NumGlobalNonzeros64 () const |
|
virtual long long | NumGlobalRows64 () const |
|
virtual long long | NumGlobalCols64 () const |
|
virtual long long | NumGlobalDiagonals64 () 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. More...
|
|
const Epetra_Comm & | Comm () const |
|
const Epetra_Map & | OperatorDomainMap () const |
|
const Epetra_Map & | OperatorRangeMap () const |
|
const Epetra_BlockMap & | Map () const |
|
const char * | Label () const |
|
|
Teuchos::RefCountPtr< Epetra_RowMatrix > | A_ |
| Pointer to the matrix to be filtered. More...
|
|
double | AbsoluteThreshold_ |
| This value (times the sgn(A(i,i)) is added to the diagonal elements. More...
|
|
double | RelativeThreshold_ |
| Multiplies A(i,i) by this value. More...
|
|
std::vector< int > | pos_ |
| Stores the position of the diagonal element, or -1 if not present. More...
|
|
std::vector< double > | val_ |
| Stores as additional diagonal contribution due to the filter. More...
|
|
Ifpack_DiagonalFilter: Filter to modify the diagonal entries of a given Epetra_RowMatrix.
Ifpack_DiagonalFilter modifies the elements on the diagonal.
A typical use is as follows:
Teuchos::RefCountPtr<Epetra_RowMatrix> A;
double AbsoluteThreshold = 1e-3;
double RelativeThreshold = 1.01;
- Author
- Marzio Sala, SNL 9214.
Last modified on 24-Jan-05.
Definition at line 80 of file Ifpack_DiagonalFilter.h.
◆ Ifpack_DiagonalFilter()
Ifpack_DiagonalFilter::Ifpack_DiagonalFilter |
( |
const Teuchos::RefCountPtr< Epetra_RowMatrix > & |
Matrix, |
|
|
double |
AbsoluteThreshold, |
|
|
double |
RelativeThreshold |
|
) |
| |
◆ ~Ifpack_DiagonalFilter()
virtual Ifpack_DiagonalFilter::~Ifpack_DiagonalFilter |
( |
| ) |
|
|
inlinevirtual |
◆ NumMyRowEntries()
virtual int Ifpack_DiagonalFilter::NumMyRowEntries |
( |
int |
MyRow, |
|
|
int & |
NumEntries |
|
) |
| const |
|
inlinevirtual |
◆ MaxNumEntries()
virtual int Ifpack_DiagonalFilter::MaxNumEntries |
( |
| ) |
const |
|
inlinevirtual |
◆ ExtractMyRowCopy()
int Ifpack_DiagonalFilter::ExtractMyRowCopy |
( |
int |
MyRow, |
|
|
int |
Length, |
|
|
int & |
NumEntries, |
|
|
double * |
Values, |
|
|
int * |
Indices |
|
) |
| const |
|
inlinevirtual |
◆ ExtractDiagonalCopy()
virtual int Ifpack_DiagonalFilter::ExtractDiagonalCopy |
( |
Epetra_Vector & |
Diagonal | ) |
const |
|
inlinevirtual |
◆ Multiply()
int Ifpack_DiagonalFilter::Multiply |
( |
bool |
TransA, |
|
|
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
virtual |
◆ Solve()
virtual int Ifpack_DiagonalFilter::Solve |
( |
bool |
Upper, |
|
|
bool |
Trans, |
|
|
bool |
UnitDiagonal, |
|
|
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
inlinevirtual |
◆ Apply()
virtual int Ifpack_DiagonalFilter::Apply |
( |
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
inlinevirtual |
◆ ApplyInverse()
virtual int Ifpack_DiagonalFilter::ApplyInverse |
( |
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
inlinevirtual |
◆ InvRowSums()
virtual int Ifpack_DiagonalFilter::InvRowSums |
( |
Epetra_Vector & |
x | ) |
const |
|
inlinevirtual |
◆ LeftScale()
virtual int Ifpack_DiagonalFilter::LeftScale |
( |
const Epetra_Vector & |
x | ) |
|
|
inlinevirtual |
◆ InvColSums()
virtual int Ifpack_DiagonalFilter::InvColSums |
( |
Epetra_Vector & |
x | ) |
const |
|
inlinevirtual |
◆ RightScale()
virtual int Ifpack_DiagonalFilter::RightScale |
( |
const Epetra_Vector & |
x | ) |
|
|
inlinevirtual |
◆ Filled()
virtual bool Ifpack_DiagonalFilter::Filled |
( |
| ) |
const |
|
inlinevirtual |
◆ NormInf()
virtual double Ifpack_DiagonalFilter::NormInf |
( |
| ) |
const |
|
inlinevirtual |
◆ NormOne()
virtual double Ifpack_DiagonalFilter::NormOne |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalNonzeros()
virtual int Ifpack_DiagonalFilter::NumGlobalNonzeros |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalRows()
virtual int Ifpack_DiagonalFilter::NumGlobalRows |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalCols()
virtual int Ifpack_DiagonalFilter::NumGlobalCols |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalDiagonals()
virtual int Ifpack_DiagonalFilter::NumGlobalDiagonals |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalNonzeros64()
virtual long long Ifpack_DiagonalFilter::NumGlobalNonzeros64 |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalRows64()
virtual long long Ifpack_DiagonalFilter::NumGlobalRows64 |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalCols64()
virtual long long Ifpack_DiagonalFilter::NumGlobalCols64 |
( |
| ) |
const |
|
inlinevirtual |
◆ NumGlobalDiagonals64()
virtual long long Ifpack_DiagonalFilter::NumGlobalDiagonals64 |
( |
| ) |
const |
|
inlinevirtual |
◆ NumMyNonzeros()
virtual int Ifpack_DiagonalFilter::NumMyNonzeros |
( |
| ) |
const |
|
inlinevirtual |
◆ NumMyRows()
virtual int Ifpack_DiagonalFilter::NumMyRows |
( |
| ) |
const |
|
inlinevirtual |
◆ NumMyCols()
virtual int Ifpack_DiagonalFilter::NumMyCols |
( |
| ) |
const |
|
inlinevirtual |
◆ NumMyDiagonals()
virtual int Ifpack_DiagonalFilter::NumMyDiagonals |
( |
| ) |
const |
|
inlinevirtual |
◆ LowerTriangular()
virtual bool Ifpack_DiagonalFilter::LowerTriangular |
( |
| ) |
const |
|
inlinevirtual |
◆ UpperTriangular()
virtual bool Ifpack_DiagonalFilter::UpperTriangular |
( |
| ) |
const |
|
inlinevirtual |
◆ RowMatrixRowMap()
virtual const Epetra_Map& Ifpack_DiagonalFilter::RowMatrixRowMap |
( |
| ) |
const |
|
inlinevirtual |
◆ RowMatrixColMap()
virtual const Epetra_Map& Ifpack_DiagonalFilter::RowMatrixColMap |
( |
| ) |
const |
|
inlinevirtual |
◆ RowMatrixImporter()
virtual const Epetra_Import* Ifpack_DiagonalFilter::RowMatrixImporter |
( |
| ) |
const |
|
inlinevirtual |
◆ SetUseTranspose()
int Ifpack_DiagonalFilter::SetUseTranspose |
( |
bool |
UseTranspose_in | ) |
|
|
inline |
◆ UseTranspose()
bool Ifpack_DiagonalFilter::UseTranspose |
( |
| ) |
const |
|
inline |
◆ HasNormInf()
bool Ifpack_DiagonalFilter::HasNormInf |
( |
| ) |
const |
|
inline |
◆ Comm()
const Epetra_Comm& Ifpack_DiagonalFilter::Comm |
( |
| ) |
const |
|
inline |
◆ OperatorDomainMap()
const Epetra_Map& Ifpack_DiagonalFilter::OperatorDomainMap |
( |
| ) |
const |
|
inline |
◆ OperatorRangeMap()
const Epetra_Map& Ifpack_DiagonalFilter::OperatorRangeMap |
( |
| ) |
const |
|
inline |
◆ Map()
const Epetra_BlockMap& Ifpack_DiagonalFilter::Map |
( |
| ) |
const |
|
inline |
◆ Label()
const char* Ifpack_DiagonalFilter::Label |
( |
| ) |
const |
|
inline |
◆ A_
Teuchos::RefCountPtr<Epetra_RowMatrix> Ifpack_DiagonalFilter::A_ |
|
private |
◆ AbsoluteThreshold_
double Ifpack_DiagonalFilter::AbsoluteThreshold_ |
|
private |
◆ RelativeThreshold_
double Ifpack_DiagonalFilter::RelativeThreshold_ |
|
private |
◆ pos_
std::vector<int> Ifpack_DiagonalFilter::pos_ |
|
private |
◆ val_
std::vector<double> Ifpack_DiagonalFilter::val_ |
|
private |
The documentation for this class was generated from the following files: