#include <MLAPI_DistributedMatrix.h>
Public Member Functions | |
DistributedMatrix (const Space &RowSpace, const Space &ColSpace) | |
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 | 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 |
virtual const Epetra_Map & | OperatorDomainMap () const |
virtual const Epetra_Map & | OperatorRangeMap () const |
virtual const Epetra_Map & | Map () const |
virtual int | SetUseTranspose (bool what) |
int | Apply (const MultiVector &X, MultiVector &Y) const |
Applies this operator to LHS, returns the result in RHS . | |
virtual int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
virtual const char * | Label () const |
virtual bool | UseTranspose () const |
virtual bool | HasNormInf () const |
virtual const Epetra_Comm & | Comm () const |
std::ostream & | Print (std::ostream &os, const bool verbose=true) const |
Prints basic information about this object. | |
Space | GetDomainSpace () const |
Returns a reference to the internally stored domain space. | |
Space | GetRangeSpace () const |
Returns a reference to the internally stored range space. | |
double & | operator() (const int GRID, const int GCID) |
void | ReplaceElement (const int GRID, const int GCID, const double value) |
void | FillComplete () |
bool | IsFillCompleted () const |
Private Member Functions | |
DistributedMatrix (const DistributedMatrix &rhs) | |
DistributedMatrix & | operator= (const DistributedMatrix &rhs) |
Private Attributes | |
std::vector< int > | rows_ |
std::vector< int > | cols_ |
std::vector< double > | vals_ |
Epetra_FECrsMatrix * | Matrix_ |
Space | ColSpace_ |
Space | RowSpace_ |
Epetra_Map * | DomainMap_ |
Epetra_Map * | RangeMap_ |
bool | FillCompleted_ |
MLAPI::DistributedMatrix::DistributedMatrix | ( | const Space & | RowSpace, | |
const Space & | ColSpace | |||
) | [inline] |
MLAPI::DistributedMatrix::DistributedMatrix | ( | const DistributedMatrix & | rhs | ) | [inline, private] |
virtual int MLAPI::DistributedMatrix::Apply | ( | const Epetra_MultiVector & | X, | |
Epetra_MultiVector & | Y | |||
) | const [inline, virtual] |
int MLAPI::DistributedMatrix::Apply | ( | const MultiVector & | X, | |
MultiVector & | Y | |||
) | const [inline, virtual] |
Reimplemented from MLAPI::Operator.
virtual int MLAPI::DistributedMatrix::ApplyInverse | ( | const Epetra_MultiVector & | X, | |
Epetra_MultiVector & | Y | |||
) | const [inline, virtual] |
virtual const Epetra_Comm& MLAPI::DistributedMatrix::Comm | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::ExtractDiagonalCopy | ( | Epetra_Vector & | Diagonal | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::ExtractMyRowCopy | ( | int | MyRow, | |
int | Length, | |||
int & | NumEntries, | |||
double * | Values, | |||
int * | Indices | |||
) | const [inline, virtual] |
void MLAPI::DistributedMatrix::FillComplete | ( | ) | [inline] |
virtual bool MLAPI::DistributedMatrix::Filled | ( | ) | const [inline, virtual] |
Space MLAPI::DistributedMatrix::GetDomainSpace | ( | ) | const [inline] |
Reimplemented from MLAPI::Operator.
Space MLAPI::DistributedMatrix::GetRangeSpace | ( | ) | const [inline] |
Reimplemented from MLAPI::Operator.
virtual bool MLAPI::DistributedMatrix::HasNormInf | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::InvColSums | ( | Epetra_Vector & | x | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::InvRowSums | ( | Epetra_Vector & | x | ) | const [inline, virtual] |
bool MLAPI::DistributedMatrix::IsFillCompleted | ( | ) | const [inline] |
virtual const char* MLAPI::DistributedMatrix::Label | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::LeftScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
virtual bool MLAPI::DistributedMatrix::LowerTriangular | ( | ) | const [inline, virtual] |
virtual const Epetra_Map& MLAPI::DistributedMatrix::Map | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::MaxNumEntries | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::Multiply | ( | bool | TransA, | |
const Epetra_MultiVector & | X, | |||
Epetra_MultiVector & | Y | |||
) | const [inline, virtual] |
virtual double MLAPI::DistributedMatrix::NormInf | ( | ) | const [inline, virtual] |
virtual double MLAPI::DistributedMatrix::NormOne | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumGlobalCols | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumGlobalDiagonals | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumGlobalNonzeros | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumGlobalRows | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumMyCols | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumMyDiagonals | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumMyNonzeros | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumMyRowEntries | ( | int | MyRow, | |
int & | NumEntries | |||
) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::NumMyRows | ( | ) | const [inline, virtual] |
double& MLAPI::DistributedMatrix::operator() | ( | const int | GRID, | |
const int | GCID | |||
) | [inline] |
DistributedMatrix& MLAPI::DistributedMatrix::operator= | ( | const DistributedMatrix & | rhs | ) | [inline, private] |
virtual const Epetra_Map& MLAPI::DistributedMatrix::OperatorDomainMap | ( | ) | const [inline, virtual] |
virtual const Epetra_Map& MLAPI::DistributedMatrix::OperatorRangeMap | ( | ) | const [inline, virtual] |
std::ostream& MLAPI::DistributedMatrix::Print | ( | std::ostream & | os, | |
const bool | verbose = true | |||
) | const [virtual] |
Reimplemented from MLAPI::Operator.
void MLAPI::DistributedMatrix::ReplaceElement | ( | const int | GRID, | |
const int | GCID, | |||
const double | value | |||
) | [inline] |
virtual int MLAPI::DistributedMatrix::RightScale | ( | const Epetra_Vector & | x | ) | [inline, virtual] |
virtual const Epetra_Map& MLAPI::DistributedMatrix::RowMatrixColMap | ( | ) | const [inline, virtual] |
virtual const Epetra_Import* MLAPI::DistributedMatrix::RowMatrixImporter | ( | ) | const [inline, virtual] |
virtual const Epetra_Map& MLAPI::DistributedMatrix::RowMatrixRowMap | ( | ) | const [inline, virtual] |
virtual int MLAPI::DistributedMatrix::SetUseTranspose | ( | bool | what | ) | [inline, virtual] |
virtual int MLAPI::DistributedMatrix::Solve | ( | bool | Upper, | |
bool | Trans, | |||
bool | UnitDiagonal, | |||
const Epetra_MultiVector & | X, | |||
Epetra_MultiVector & | Y | |||
) | const [inline, virtual] |
virtual bool MLAPI::DistributedMatrix::UpperTriangular | ( | ) | const [inline, virtual] |
virtual bool MLAPI::DistributedMatrix::UseTranspose | ( | ) | const [inline, virtual] |
std::vector<int> MLAPI::DistributedMatrix::cols_ [mutable, private] |
Space MLAPI::DistributedMatrix::ColSpace_ [private] |
Epetra_Map* MLAPI::DistributedMatrix::DomainMap_ [private] |
bool MLAPI::DistributedMatrix::FillCompleted_ [private] |
Epetra_FECrsMatrix* MLAPI::DistributedMatrix::Matrix_ [private] |
Epetra_Map* MLAPI::DistributedMatrix::RangeMap_ [private] |
std::vector<int> MLAPI::DistributedMatrix::rows_ [mutable, private] |
Space MLAPI::DistributedMatrix::RowSpace_ [private] |
std::vector<double> MLAPI::DistributedMatrix::vals_ [mutable, private] |