Ifpack Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
Ifpack_SparsityFilter Class Reference

Ifpack_SparsityFilter: a class to drop based on sparsity. More...

#include <Ifpack_SparsityFilter.h>

Inheritance diagram for Ifpack_SparsityFilter:
Inheritance graph
[legend]

Public Member Functions

 Ifpack_SparsityFilter (const Teuchos::RefCountPtr< Epetra_RowMatrix > &Matrix, int AllowedNumEntries, int AllowedBandwidth=-1)
 
virtual ~Ifpack_SparsityFilter ()
 
virtual int NumMyRowEntries (int MyRow, int &NumEntries) const
 
virtual int MaxNumEntries () const
 
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 &) const
 
virtual int LeftScale (const Epetra_Vector &)
 
virtual int InvColSums (Epetra_Vector &) 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 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_MapRowMatrixRowMap () const
 
virtual const Epetra_MapRowMatrixColMap () const
 
virtual const Epetra_ImportRowMatrixImporter () const
 
int SetUseTranspose (bool useTranspose)
 
bool UseTranspose () const
 
bool HasNormInf () const
 
const Epetra_CommComm () const
 
const Epetra_MapOperatorDomainMap () const
 
const Epetra_MapOperatorRangeMap () const
 
const Epetra_BlockMapMap () const
 
const char * Label () const
 

Private Attributes

Teuchos::RefCountPtr
< Epetra_RowMatrix
A_
 Pointer to the matrix to be preconditioned. More...
 
int MaxNumEntries_
 Maximum entries in each row. More...
 
int MaxNumEntriesA_
 
int AllowedBandwidth_
 Maximum allowed bandwidth. More...
 
int AllowedEntries_
 Maximum allowed entries per row. More...
 
int NumNonzeros_
 Number of nonzeros for the dropped matrix. More...
 
std::vector< int > Indices_
 Used in ExtractMyRowCopy, to avoid allocation each time. More...
 
std::vector< double > Values_
 Used in ExtractMyRowCopy, to avoid allocation each time. More...
 
char Label_ [80]
 Label for this object. More...
 
int NumRows_
 
std::vector< int > NumEntries_
 

Detailed Description

Ifpack_SparsityFilter: a class to drop based on sparsity.

Definition at line 58 of file Ifpack_SparsityFilter.h.

Constructor & Destructor Documentation

Ifpack_SparsityFilter::Ifpack_SparsityFilter ( const Teuchos::RefCountPtr< Epetra_RowMatrix > &  Matrix,
int  AllowedNumEntries,
int  AllowedBandwidth = -1 
)

Definition at line 53 of file Ifpack_SparsityFilter.cpp.

virtual Ifpack_SparsityFilter::~Ifpack_SparsityFilter ( )
inlinevirtual

Definition at line 65 of file Ifpack_SparsityFilter.h.

Member Function Documentation

virtual int Ifpack_SparsityFilter::NumMyRowEntries ( int  MyRow,
int &  NumEntries 
) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 67 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::MaxNumEntries ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 73 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::ExtractMyRowCopy ( int  MyRow,
int  Length,
int &  NumEntries,
double *  Values,
int *  Indices 
) const
virtual

Implements Epetra_RowMatrix.

Definition at line 114 of file Ifpack_SparsityFilter.cpp.

int Ifpack_SparsityFilter::ExtractDiagonalCopy ( Epetra_Vector Diagonal) const
virtual

Implements Epetra_RowMatrix.

Definition at line 176 of file Ifpack_SparsityFilter.cpp.

int Ifpack_SparsityFilter::Multiply ( bool  TransA,
const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
virtual

Implements Epetra_RowMatrix.

Definition at line 184 of file Ifpack_SparsityFilter.cpp.

int Ifpack_SparsityFilter::Solve ( bool  Upper,
bool  Trans,
bool  UnitDiagonal,
const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
virtual

Implements Epetra_RowMatrix.

Definition at line 225 of file Ifpack_SparsityFilter.cpp.

int Ifpack_SparsityFilter::Apply ( const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
virtual

Implements Epetra_Operator.

Definition at line 233 of file Ifpack_SparsityFilter.cpp.

int Ifpack_SparsityFilter::ApplyInverse ( const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
virtual

Implements Epetra_Operator.

Definition at line 241 of file Ifpack_SparsityFilter.cpp.

virtual int Ifpack_SparsityFilter::InvRowSums ( Epetra_Vector ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 95 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::LeftScale ( const Epetra_Vector )
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 100 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::InvColSums ( Epetra_Vector ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 105 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::RightScale ( const Epetra_Vector x)
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 110 of file Ifpack_SparsityFilter.h.

virtual bool Ifpack_SparsityFilter::Filled ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 115 of file Ifpack_SparsityFilter.h.

virtual double Ifpack_SparsityFilter::NormInf ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 120 of file Ifpack_SparsityFilter.h.

virtual double Ifpack_SparsityFilter::NormOne ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 125 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumGlobalNonzeros ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 131 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumGlobalRows ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 136 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumGlobalCols ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 141 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumGlobalDiagonals ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 146 of file Ifpack_SparsityFilter.h.

virtual long long Ifpack_SparsityFilter::NumGlobalNonzeros64 ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 152 of file Ifpack_SparsityFilter.h.

virtual long long Ifpack_SparsityFilter::NumGlobalRows64 ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 157 of file Ifpack_SparsityFilter.h.

virtual long long Ifpack_SparsityFilter::NumGlobalCols64 ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 162 of file Ifpack_SparsityFilter.h.

virtual long long Ifpack_SparsityFilter::NumGlobalDiagonals64 ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 167 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumMyNonzeros ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 172 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumMyRows ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 177 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumMyCols ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 182 of file Ifpack_SparsityFilter.h.

virtual int Ifpack_SparsityFilter::NumMyDiagonals ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 187 of file Ifpack_SparsityFilter.h.

virtual bool Ifpack_SparsityFilter::LowerTriangular ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 192 of file Ifpack_SparsityFilter.h.

virtual bool Ifpack_SparsityFilter::UpperTriangular ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 197 of file Ifpack_SparsityFilter.h.

virtual const Epetra_Map& Ifpack_SparsityFilter::RowMatrixRowMap ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 202 of file Ifpack_SparsityFilter.h.

virtual const Epetra_Map& Ifpack_SparsityFilter::RowMatrixColMap ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 207 of file Ifpack_SparsityFilter.h.

virtual const Epetra_Import* Ifpack_SparsityFilter::RowMatrixImporter ( ) const
inlinevirtual

Implements Epetra_RowMatrix.

Definition at line 212 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::SetUseTranspose ( bool  useTranspose)
inlinevirtual

Implements Epetra_Operator.

Definition at line 217 of file Ifpack_SparsityFilter.h.

bool Ifpack_SparsityFilter::UseTranspose ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 222 of file Ifpack_SparsityFilter.h.

bool Ifpack_SparsityFilter::HasNormInf ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 227 of file Ifpack_SparsityFilter.h.

const Epetra_Comm& Ifpack_SparsityFilter::Comm ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 232 of file Ifpack_SparsityFilter.h.

const Epetra_Map& Ifpack_SparsityFilter::OperatorDomainMap ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 237 of file Ifpack_SparsityFilter.h.

const Epetra_Map& Ifpack_SparsityFilter::OperatorRangeMap ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 242 of file Ifpack_SparsityFilter.h.

const Epetra_BlockMap& Ifpack_SparsityFilter::Map ( ) const
inlinevirtual

Implements Epetra_SrcDistObject.

Definition at line 247 of file Ifpack_SparsityFilter.h.

const char* Ifpack_SparsityFilter::Label ( ) const
inlinevirtual

Implements Epetra_Operator.

Definition at line 252 of file Ifpack_SparsityFilter.h.

Member Data Documentation

Teuchos::RefCountPtr<Epetra_RowMatrix> Ifpack_SparsityFilter::A_
private

Pointer to the matrix to be preconditioned.

Definition at line 259 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::MaxNumEntries_
private

Maximum entries in each row.

Definition at line 261 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::MaxNumEntriesA_
private

Definition at line 262 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::AllowedBandwidth_
private

Maximum allowed bandwidth.

Definition at line 265 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::AllowedEntries_
private

Maximum allowed entries per row.

Definition at line 267 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::NumNonzeros_
private

Number of nonzeros for the dropped matrix.

Definition at line 270 of file Ifpack_SparsityFilter.h.

std::vector<int> Ifpack_SparsityFilter::Indices_
mutableprivate

Used in ExtractMyRowCopy, to avoid allocation each time.

Definition at line 273 of file Ifpack_SparsityFilter.h.

std::vector<double> Ifpack_SparsityFilter::Values_
mutableprivate

Used in ExtractMyRowCopy, to avoid allocation each time.

Definition at line 275 of file Ifpack_SparsityFilter.h.

char Ifpack_SparsityFilter::Label_[80]
private

Label for this object.

Definition at line 277 of file Ifpack_SparsityFilter.h.

int Ifpack_SparsityFilter::NumRows_
private

Definition at line 279 of file Ifpack_SparsityFilter.h.

std::vector<int> Ifpack_SparsityFilter::NumEntries_
private

Definition at line 280 of file Ifpack_SparsityFilter.h.


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