#include <Epetra_JadOperator.h>
Inheritance diagram for Epetra_JadOperator:
Public Member Functions | |
Constructors/Destructor. | |
| Epetra_JadOperator (const Epetra_RowMatrix &Matrix, bool UseFloats=false, bool UseShorts=false) | |
| Epetra_JadOperator constuctor. | |
| virtual | ~Epetra_JadOperator () |
| Epetra_JadOperator Destructor. | |
Post-construction modifications. | |
| int | UpdateValues (const Epetra_RowMatrix &Matrix, bool CheckStructure=false) |
| Update values using a matrix with identical structure. | |
Additional methods required to support the Epetra_Operator interface. | |
| int | SetUseTranspose (bool UseTranspose) |
| If set true, transpose of this operator will be applied. | |
| double | NormInf () const |
| Returns the infinity norm of the global matrix. | |
| const char * | Label () const |
| Returns a character string describing the operator. | |
| const Epetra_Comm & | Comm () const |
| Returns the Epetra_Comm communicator associated with this matrix. | |
| 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. | |
| 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. | |
| bool | HasNormInf () const |
| Returns true because this class can compute an Inf-norm. | |
| bool | UseTranspose () const |
| Returns the current UseTranspose setting. | |
| const Epetra_Map & | OperatorDomainMap () const |
| Returns the Epetra_Map object associated with the domain of this matrix operator. | |
| const Epetra_Map & | OperatorRangeMap () const |
| Returns the Epetra_Map object associated with the range of this matrix operator. | |
Additional accessor methods. | |
| const Epetra_Import * | Importer () const |
| Returns the Epetra_Import object that contains the import operations for distributed operations. | |
| const Epetra_Export * | Exporter () const |
| Returns the Epetra_Export object that contains the export operations for distributed operations. | |
| int | NumGlobalNonzeros () const |
| Returns the number of nonzero entries in the global matrix. | |
I/O Methods. | |
| virtual void | Print (ostream &os) const |
| Print method. | |
Protected Member Functions | |
| void | UpdateImportVector (int NumVectors) const |
| void | UpdateExportVector (int NumVectors) const |
| void | GeneralMV (bool TransA, double *x, double *y) const |
| void | GeneralMM (bool TransA, double **X, int LDX, double **Y, int LDY, int NumVectors) const |
| void | GeneralMM3RHS (bool TransA, double **X, int LDX, double **Y, int LDY, int NumVectors) const |
| void | GeneralMM2RHS (bool TransA, double *x, int ldx, double *y, int ldy) const |
| int | Allocate (const Epetra_RowMatrix &Matrix, bool UseFloats) |
Protected Attributes | |
| double | NormInf_ |
| Epetra_Comm * | Comm_ |
| Epetra_Map | OperatorDomainMap_ |
| Epetra_Map | OperatorRangeMap_ |
| int | NumMyRows_ |
| int | NumMyCols_ |
| int | NumMyNonzeros_ |
| int | NumGlobalNonzeros_ |
| Epetra_SerialDenseVector | Values_ |
| float * | FloatValues_ |
| Epetra_IntSerialDenseVector | Indices_ |
| unsigned short * | ShortIndices_ |
| Epetra_IntSerialDenseVector | IndexOffset_ |
| Epetra_IntSerialDenseVector | RowPerm_ |
| bool | UseTranspose_ |
| bool | HasNormInf_ |
| bool | UsingFloats_ |
| bool | UsingShorts_ |
| int | NumJaggedDiagonals_ |
| Epetra_MultiVector * | ImportVector_ |
| Epetra_MultiVector * | ExportVector_ |
| Epetra_Import * | Importer_ |
| Epetra_Export * | Exporter_ |
The Epetra_JadOperator class takes an existing Epetra_RowMatrix ojbect, analyzes it and builds a jagged diagonal equivalent of it. Once constructed, it is also possible to update the values of the matrix with values from another Epetra_RowMatrix that has the identical structure.
|
||||||||||||
|
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
Implements Epetra_Operator. |
|
||||||||||||
|
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
Implements Epetra_Operator. |
|
|
If set true, transpose of this operator will be applied. This flag allows the transpose of the given operator to be used implicitly. Setting this flag affects only the Apply() and ApplyInverse() methods. If the implementation of this interface does not support transpose use, this method should return a value of -1.
Implements Epetra_Operator. |
1.3.9.1