EpetraExt_BlockDiagMatrix: A class for storing distributed block matrices.
More...
#include <EpetraExt_BlockDiagMatrix.h>
Inherits Epetra_Operator, Epetra_DistObject, and Epetra_BLAS.
|
void | Allocate () |
|
int | DoCopy (const EpetraExt_BlockDiagMatrix &Source) |
|
int | CheckSizes (const Epetra_SrcDistObject &Source) |
|
int | CopyAndPermute (const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor, Epetra_CombineMode CombineMode=Zero) |
|
int | PackAndPrepare (const Epetra_SrcDistObject &Source, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, Epetra_Distributor &Distor) |
|
int | UnpackAndCombine (const Epetra_SrcDistObject &Source, int NumImportIDs, int *ImportLIDs, int LenImports, char *Imports, int &SizeOfPacket, Epetra_Distributor &Distor, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor) |
|
|
virtual int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
| Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y. More...
|
|
virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
| Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y. More...
|
|
virtual double | NormInf () const |
| NormInf - Not Implemented. More...
|
|
void | PutScalar (double value) |
| PutScalar function. More...
|
|
virtual const Epetra_BlockMap & | DataMap () const |
| Returns the Epetra_BlockMap object with the distribution of underlying values. More...
|
|
EpetraExt_BlockDiagMatrix: A class for storing distributed block matrices.
A dense-block block-diagonal matrix with inversion/factorization capabilities.
This class has a rigid map structure — the Domain and Range maps must be the same.
Definition at line 66 of file EpetraExt_BlockDiagMatrix.h.
◆ EpetraExt_BlockDiagMatrix() [1/2]
EpetraExt_BlockDiagMatrix::EpetraExt_BlockDiagMatrix |
( |
const Epetra_BlockMap & |
Map, |
|
|
bool |
zero_out = true |
|
) |
| |
◆ EpetraExt_BlockDiagMatrix() [2/2]
◆ ~EpetraExt_BlockDiagMatrix()
EpetraExt_BlockDiagMatrix::~EpetraExt_BlockDiagMatrix |
( |
| ) |
|
|
virtual |
◆ operator=()
◆ operator[]() [1/2]
double* EpetraExt_BlockDiagMatrix::operator[] |
( |
int |
index | ) |
|
|
inline |
◆ operator[]() [2/2]
const double* EpetraExt_BlockDiagMatrix::operator[] |
( |
int |
index | ) |
const |
|
inline |
◆ SetUseTranspose()
virtual int EpetraExt_BlockDiagMatrix::SetUseTranspose |
( |
bool |
| ) |
|
|
inlinevirtual |
◆ SetParameters()
◆ Compute()
int EpetraExt_BlockDiagMatrix::Compute |
( |
| ) |
|
|
virtual |
◆ Label()
virtual const char* EpetraExt_BlockDiagMatrix::Label |
( |
| ) |
const |
|
inlinevirtual |
◆ UseTranspose()
virtual bool EpetraExt_BlockDiagMatrix::UseTranspose |
( |
| ) |
const |
|
inlinevirtual |
◆ HasNormInf()
virtual bool EpetraExt_BlockDiagMatrix::HasNormInf |
( |
| ) |
const |
|
inlinevirtual |
◆ Comm()
virtual const Epetra_Comm& EpetraExt_BlockDiagMatrix::Comm |
( |
| ) |
const |
|
inlinevirtual |
◆ OperatorDomainMap()
virtual const Epetra_Map& EpetraExt_BlockDiagMatrix::OperatorDomainMap |
( |
| ) |
const |
|
inlinevirtual |
◆ OperatorRangeMap()
virtual const Epetra_Map& EpetraExt_BlockDiagMatrix::OperatorRangeMap |
( |
| ) |
const |
|
inlinevirtual |
◆ BlockMap()
virtual const Epetra_BlockMap& EpetraExt_BlockDiagMatrix::BlockMap |
( |
| ) |
const |
|
inlinevirtual |
◆ Values()
double* EpetraExt_BlockDiagMatrix::Values |
( |
| ) |
const |
|
inline |
◆ BlockSize()
int EpetraExt_BlockDiagMatrix::BlockSize |
( |
int |
LID | ) |
const |
|
inline |
◆ DataSize()
int EpetraExt_BlockDiagMatrix::DataSize |
( |
int |
LID | ) |
const |
|
inline |
◆ ConstantBlockSize()
bool EpetraExt_BlockDiagMatrix::ConstantBlockSize |
( |
| ) |
const |
|
inline |
◆ NumMyBlocks()
int EpetraExt_BlockDiagMatrix::NumMyBlocks |
( |
| ) |
const |
|
inline |
◆ NumGlobalBlocks()
int EpetraExt_BlockDiagMatrix::NumGlobalBlocks |
( |
| ) |
const |
|
inline |
◆ NumGlobalBlocks64()
long long EpetraExt_BlockDiagMatrix::NumGlobalBlocks64 |
( |
| ) |
const |
|
inline |
◆ NumMyUnknowns()
int EpetraExt_BlockDiagMatrix::NumMyUnknowns |
( |
| ) |
const |
|
inline |
◆ NumGlobalUnknowns()
int EpetraExt_BlockDiagMatrix::NumGlobalUnknowns |
( |
| ) |
const |
|
inline |
◆ NumGlobalUnknowns64()
long long EpetraExt_BlockDiagMatrix::NumGlobalUnknowns64 |
( |
| ) |
const |
|
inline |
◆ NumData()
int EpetraExt_BlockDiagMatrix::NumData |
( |
| ) |
const |
|
inline |
◆ GetApplyMode()
int EpetraExt_BlockDiagMatrix::GetApplyMode |
( |
| ) |
|
|
inline |
◆ Print()
void EpetraExt_BlockDiagMatrix::Print |
( |
std::ostream & |
os | ) |
const |
|
virtual |
◆ Apply()
virtual int EpetraExt_BlockDiagMatrix::Apply |
( |
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
inlinevirtual |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
- Parameters
-
In | X - A Epetra_MultiVector of dimension NumVectors to multiply with matrix. |
Out | Y -A Epetra_MultiVector of dimension NumVectors containing result. |
- Returns
- Integer error code, set to 0 if successful.
Definition at line 193 of file EpetraExt_BlockDiagMatrix.h.
◆ ApplyInverse()
int EpetraExt_BlockDiagMatrix::ApplyInverse |
( |
const Epetra_MultiVector & |
X, |
|
|
Epetra_MultiVector & |
Y |
|
) |
| const |
|
virtual |
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
- Parameters
-
In | X - A Epetra_MultiVector of dimension NumVectors to solve for. |
Out | Y -A Epetra_MultiVector of dimension NumVectors containing result. |
- Returns
- Integer error code, set to 0 if successful.
- Warning
- In order to work with AztecOO, any implementation of this method must support the case where X and Y are the same object.
Definition at line 231 of file EpetraExt_BlockDiagMatrix.cpp.
◆ NormInf()
virtual double EpetraExt_BlockDiagMatrix::NormInf |
( |
| ) |
const |
|
inlinevirtual |
◆ PutScalar()
void EpetraExt_BlockDiagMatrix::PutScalar |
( |
double |
value | ) |
|
◆ DataMap()
virtual const Epetra_BlockMap& EpetraExt_BlockDiagMatrix::DataMap |
( |
| ) |
const |
|
inlinevirtual |
◆ Allocate()
void EpetraExt_BlockDiagMatrix::Allocate |
( |
| ) |
|
|
private |
◆ DoCopy()
◆ CheckSizes()
int EpetraExt_BlockDiagMatrix::CheckSizes |
( |
const Epetra_SrcDistObject & |
Source | ) |
|
|
private |
◆ CopyAndPermute()
int EpetraExt_BlockDiagMatrix::CopyAndPermute |
( |
const Epetra_SrcDistObject & |
Source, |
|
|
int |
NumSameIDs, |
|
|
int |
NumPermuteIDs, |
|
|
int * |
PermuteToLIDs, |
|
|
int * |
PermuteFromLIDs, |
|
|
const Epetra_OffsetIndex * |
Indexor, |
|
|
Epetra_CombineMode |
CombineMode = Zero |
|
) |
| |
|
private |
◆ PackAndPrepare()
int EpetraExt_BlockDiagMatrix::PackAndPrepare |
( |
const Epetra_SrcDistObject & |
Source, |
|
|
int |
NumExportIDs, |
|
|
int * |
ExportLIDs, |
|
|
int & |
LenExports, |
|
|
char *& |
Exports, |
|
|
int & |
SizeOfPacket, |
|
|
int * |
Sizes, |
|
|
bool & |
VarSizes, |
|
|
Epetra_Distributor & |
Distor |
|
) |
| |
|
private |
◆ UnpackAndCombine()
int EpetraExt_BlockDiagMatrix::UnpackAndCombine |
( |
const Epetra_SrcDistObject & |
Source, |
|
|
int |
NumImportIDs, |
|
|
int * |
ImportLIDs, |
|
|
int |
LenImports, |
|
|
char * |
Imports, |
|
|
int & |
SizeOfPacket, |
|
|
Epetra_Distributor & |
Distor, |
|
|
Epetra_CombineMode |
CombineMode, |
|
|
const Epetra_OffsetIndex * |
Indexor |
|
) |
| |
|
private |
◆ LAPACK
Epetra_LAPACK EpetraExt_BlockDiagMatrix::LAPACK |
|
private |
◆ List_
◆ HasComputed_
bool EpetraExt_BlockDiagMatrix::HasComputed_ |
|
private |
◆ ApplyMode_
int EpetraExt_BlockDiagMatrix::ApplyMode_ |
|
private |
◆ DataMap_
Epetra_BlockMap* EpetraExt_BlockDiagMatrix::DataMap_ |
|
private |
◆ Values_
double* EpetraExt_BlockDiagMatrix::Values_ |
|
private |
◆ Pivots_
int* EpetraExt_BlockDiagMatrix::Pivots_ |
|
private |
The documentation for this class was generated from the following files: