|
IFPACK Development
|
Ifpack_OverlappingRowMatrix: matrix with ghost rows, based on Epetra_RowMatrix. More...
#include <Ifpack_OverlappingRowMatrix.h>


Public Member Functions | |
| Ifpack_OverlappingRowMatrix (const Teuchos::RefCountPtr< const Epetra_RowMatrix > &Matrix_in, int OverlapLevel_in) | |
| virtual int | NumMyRowEntries (int MyRow, int &NumEntries) const |
| Returns the number of nonzero entries in MyRow. | |
| virtual int | MaxNumEntries () const |
| Returns the maximum of NumMyRowEntries() over all rows. | |
| virtual int | ExtractMyRowCopy (int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const |
| Returns a copy of the specified local row in user-provided arrays. | |
| virtual int | ExtractDiagonalCopy (Epetra_Vector &Diagonal) const |
| Returns a copy of the main diagonal in a user-provided vector. | |
| virtual int | Multiply (bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
| Returns the result of a Epetra_RowMatrix multiplied by a Epetra_MultiVector X in Y. | |
| virtual int | Solve (bool, bool, bool, const Epetra_MultiVector &, Epetra_MultiVector &) const |
| Returns result of a local-only solve using a triangular Epetra_RowMatrix with Epetra_MultiVectors X and Y (NOT IMPLEMENTED). | |
| 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 |
| Computes the sum of absolute values of the rows of the Epetra_RowMatrix, results returned in x (NOT IMPLEMENTED). | |
| virtual int | LeftScale (const Epetra_Vector &) |
| Scales the Epetra_RowMatrix on the left with a Epetra_Vector x (NOT IMPLEMENTED). | |
| virtual int | InvColSums (Epetra_Vector &) const |
| Computes the sum of absolute values of the columns of the Epetra_RowMatrix, results returned in x (NOT IMPLEMENTED). | |
| virtual int | RightScale (const Epetra_Vector &) |
| Scales the Epetra_RowMatrix on the right with a Epetra_Vector x (NOT IMPLEMENTED). | |
| virtual bool | Filled () const |
| If FillComplete() has been called, this query returns true, otherwise it returns false. | |
| virtual double | NormInf () const |
| Returns the infinity norm of the global matrix. | |
| virtual double | NormOne () const |
| Returns the one norm of the global matrix. | |
| virtual int | NumGlobalNonzeros () const |
| Returns the number of nonzero entries in the global matrix. | |
| virtual int | NumGlobalRows () const |
| Returns the number of global matrix rows. | |
| virtual int | NumGlobalCols () const |
| Returns the number of global matrix columns. | |
| virtual int | NumGlobalDiagonals () const |
| Returns the number of global nonzero diagonal entries, based on global row/column index comparisons. | |
| virtual long long | NumGlobalNonzeros64 () const |
| Returns the number of nonzero entries in the global matrix. | |
| virtual long long | NumGlobalRows64 () const |
| Returns the number of global matrix rows. | |
| virtual long long | NumGlobalCols64 () const |
| Returns the number of global matrix columns. | |
| virtual long long | NumGlobalDiagonals64 () const |
| Returns the number of global nonzero diagonal entries, based on global row/column index comparisons. | |
| virtual int | NumMyNonzeros () const |
| Returns the number of nonzero entries in the calling processor's portion of the matrix. | |
| virtual int | NumMyRows () const |
| Returns the number of matrix rows owned by the calling processor. | |
| virtual int | NumMyCols () const |
| Returns the number of matrix columns owned by the calling processor. | |
| virtual int | NumMyDiagonals () const |
| Returns the number of local nonzero diagonal entries, based on global row/column index comparisons. | |
| virtual bool | LowerTriangular () const |
| If matrix is lower triangular in local index space, this query returns true, otherwise it returns false. | |
| virtual bool | UpperTriangular () const |
| If matrix is upper triangular in local index space, this query returns true, otherwise it returns false. | |
| virtual const Epetra_Map & | RowMatrixRowMap () const |
| Returns the Epetra_Map object associated with the rows of this matrix. | |
| virtual const Epetra_Map & | RowMatrixColMap () const |
| Returns the Epetra_Map object associated with the columns of this matrix. | |
| virtual const Epetra_Import * | RowMatrixImporter () const |
| Returns the Epetra_Import object that contains the import operations for distributed operations. | |
| int | SetOwnership (bool) |
| Sets ownership. | |
| int | SetUseTranspose (bool UseTranspose_in) |
| Sets use transpose (not implemented). | |
| bool | UseTranspose () const |
| Returns the current UseTranspose setting. | |
| bool | HasNormInf () const |
| Returns true if the this object can provide an approximate Inf-norm, false otherwise. | |
| const Epetra_Comm & | Comm () const |
| Returns a pointer to the Epetra_Comm communicator associated with this operator. | |
| const Epetra_Map & | OperatorDomainMap () const |
| Returns the Epetra_Map object associated with the domain of this operator. | |
| const Epetra_Map & | OperatorRangeMap () const |
| Returns the Epetra_Map object associated with the range of this operator. | |
| const Epetra_BlockMap & | Map () const |
| const char * | Label () const |
| int | OverlapLevel () const |
| int | ImportMultiVector (const Epetra_MultiVector &X, Epetra_MultiVector &OvX, Epetra_CombineMode CM=Insert) |
| int | ExportMultiVector (const Epetra_MultiVector &OvX, Epetra_MultiVector &X, Epetra_CombineMode CM=Add) |
Ifpack_OverlappingRowMatrix: matrix with ghost rows, based on Epetra_RowMatrix.
Definition at line 74 of file Ifpack_OverlappingRowMatrix.h.
| Ifpack_OverlappingRowMatrix::Ifpack_OverlappingRowMatrix | ( | const Teuchos::RefCountPtr< const Epetra_RowMatrix > & | Matrix_in, |
| int | OverlapLevel_in | ||
| ) |
Definition at line 164 of file Ifpack_OverlappingRowMatrix.cpp.
|
inline |
Definition at line 97 of file Ifpack_OverlappingRowMatrix.h.
|
virtual |
Implements Epetra_Operator.
Definition at line 1771 of file Ifpack_OverlappingRowMatrix.cpp.
|
virtual |
Implements Epetra_Operator.
Definition at line 1779 of file Ifpack_OverlappingRowMatrix.cpp.
|
inlinevirtual |
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Implements Epetra_Operator.
Definition at line 378 of file Ifpack_OverlappingRowMatrix.h.
References Comm().
Referenced by Comm().
| int Ifpack_OverlappingRowMatrix::ExportMultiVector | ( | const Epetra_MultiVector & | OvX, |
| Epetra_MultiVector & | X, | ||
| Epetra_CombineMode | CM = Add |
||
| ) |
Definition at line 1810 of file Ifpack_OverlappingRowMatrix.cpp.
|
virtual |
Returns a copy of the main diagonal in a user-provided vector.
| Diagonal | - (Out) Extracted main diagonal. |
Implements Epetra_RowMatrix.
Definition at line 1727 of file Ifpack_OverlappingRowMatrix.cpp.
|
virtual |
Returns a copy of the specified local row in user-provided arrays.
| MyRow | - (In) Local row to extract. |
| Length | - (In) Length of Values and Indices. |
| NumEntries | - (Out) Number of nonzero entries extracted. |
| Values | - (Out) Extracted values for this row. |
| Indices | - (Out) Extracted global column indices for the corresponding values. |
Implements Epetra_RowMatrix.
Definition at line 1710 of file Ifpack_OverlappingRowMatrix.cpp.
References Epetra_RowMatrix::ExtractMyRowCopy().
Referenced by Multiply().
|
inlinevirtual |
If FillComplete() has been called, this query returns true, otherwise it returns false.
Implements Epetra_RowMatrix.
Definition at line 212 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
Definition at line 372 of file Ifpack_OverlappingRowMatrix.h.
References HasNormInf().
Referenced by HasNormInf().
| int Ifpack_OverlappingRowMatrix::ImportMultiVector | ( | const Epetra_MultiVector & | X, |
| Epetra_MultiVector & | OvX, | ||
| Epetra_CombineMode | CM = Insert |
||
| ) |
Definition at line 1801 of file Ifpack_OverlappingRowMatrix.cpp.
|
inlinevirtual |
Computes the sum of absolute values of the columns of the Epetra_RowMatrix, results returned in x (NOT IMPLEMENTED).
Implements Epetra_RowMatrix.
Definition at line 195 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Computes the sum of absolute values of the rows of the Epetra_RowMatrix, results returned in x (NOT IMPLEMENTED).
Implements Epetra_RowMatrix.
Definition at line 183 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Implements Epetra_Operator.
Definition at line 398 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Scales the Epetra_RowMatrix on the left with a Epetra_Vector x (NOT IMPLEMENTED).
Implements Epetra_RowMatrix.
Definition at line 189 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
If matrix is lower triangular in local index space, this query returns true, otherwise it returns false.
Implements Epetra_RowMatrix.
Definition at line 312 of file Ifpack_OverlappingRowMatrix.h.
References LowerTriangular().
Referenced by LowerTriangular().
|
virtual |
Implements Epetra_SrcDistObject.
Definition at line 1795 of file Ifpack_OverlappingRowMatrix.cpp.
|
inlinevirtual |
Returns the maximum of NumMyRowEntries() over all rows.
Implements Epetra_RowMatrix.
Definition at line 116 of file Ifpack_OverlappingRowMatrix.h.
|
virtual |
Returns the result of a Epetra_RowMatrix multiplied by a Epetra_MultiVector X in Y.
| TransA | -(In) If true, multiply by the transpose of matrix, otherwise just use matrix. |
| X | - (In) A Epetra_MultiVector of dimension NumVectors to multiply with matrix. |
| Y | -(Out) A Epetra_MultiVector of dimension NumVectorscontaining result. |
Implements Epetra_RowMatrix.
Definition at line 1735 of file Ifpack_OverlappingRowMatrix.cpp.
References ExtractMyRowCopy(), Epetra_MultiVector::NumVectors(), and Epetra_MultiVector::PutScalar().
|
inlinevirtual |
Returns the infinity norm of the global matrix.
Implements Epetra_RowMatrix.
Definition at line 221 of file Ifpack_OverlappingRowMatrix.h.
References NormInf().
Referenced by NormInf().
|
inlinevirtual |
Returns the one norm of the global matrix.
Implements Epetra_RowMatrix.
Definition at line 230 of file Ifpack_OverlappingRowMatrix.h.
References NormOne().
Referenced by NormOne().
|
inlinevirtual |
Returns the number of global matrix columns.
Implements Epetra_RowMatrix.
Definition at line 252 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalCols().
Referenced by NumGlobalCols().
|
inlinevirtual |
Returns the number of global matrix columns.
Definition at line 276 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalCols64().
Referenced by NumGlobalCols64().
|
inlinevirtual |
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
Implements Epetra_RowMatrix.
Definition at line 258 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalDiagonals().
Referenced by NumGlobalDiagonals().
|
inlinevirtual |
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
Definition at line 282 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalDiagonals64().
Referenced by NumGlobalDiagonals64().
|
inlinevirtual |
Returns the number of nonzero entries in the global matrix.
Implements Epetra_RowMatrix.
Definition at line 237 of file Ifpack_OverlappingRowMatrix.h.
References RowMatrixRowMap().
|
inlinevirtual |
Returns the number of nonzero entries in the global matrix.
Definition at line 264 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the number of global matrix rows.
Implements Epetra_RowMatrix.
Definition at line 246 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalRows().
Referenced by NumGlobalRows().
|
inlinevirtual |
Returns the number of global matrix rows.
Definition at line 270 of file Ifpack_OverlappingRowMatrix.h.
References NumGlobalRows64().
Referenced by NumGlobalRows64().
|
inlinevirtual |
Returns the number of matrix columns owned by the calling processor.
Implements Epetra_RowMatrix.
Definition at line 300 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
Implements Epetra_RowMatrix.
Definition at line 306 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Implements Epetra_RowMatrix.
Definition at line 288 of file Ifpack_OverlappingRowMatrix.h.
|
virtual |
Returns the number of nonzero entries in MyRow.
| MyRow | - (In) Local row. |
| NumEntries | - (Out) Number of nonzero values present. |
Implements Epetra_RowMatrix.
Definition at line 1601 of file Ifpack_OverlappingRowMatrix.cpp.
References NumMyRowEntries().
Referenced by NumMyRowEntries().
|
inlinevirtual |
Returns the number of matrix rows owned by the calling processor.
Implements Epetra_RowMatrix.
Definition at line 294 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the domain of this operator.
Implements Epetra_Operator.
Definition at line 384 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the range of this operator.
Implements Epetra_Operator.
Definition at line 390 of file Ifpack_OverlappingRowMatrix.h.
|
inline |
Definition at line 402 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Scales the Epetra_RowMatrix on the right with a Epetra_Vector x (NOT IMPLEMENTED).
Implements Epetra_RowMatrix.
Definition at line 202 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the columns of this matrix.
Implements Epetra_RowMatrix.
Definition at line 330 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the Epetra_Import object that contains the import operations for distributed operations.
Implements Epetra_RowMatrix.
Definition at line 344 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the rows of this matrix.
Implements Epetra_RowMatrix.
Definition at line 324 of file Ifpack_OverlappingRowMatrix.h.
Referenced by NumGlobalNonzeros().
|
inline |
Sets ownership.
Definition at line 353 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Sets use transpose (not implemented).
Implements Epetra_Operator.
Definition at line 359 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
Returns result of a local-only solve using a triangular Epetra_RowMatrix with Epetra_MultiVectors X and Y (NOT IMPLEMENTED).
Implements Epetra_RowMatrix.
Definition at line 171 of file Ifpack_OverlappingRowMatrix.h.
|
inlinevirtual |
If matrix is upper triangular in local index space, this query returns true, otherwise it returns false.
Implements Epetra_RowMatrix.
Definition at line 318 of file Ifpack_OverlappingRowMatrix.h.
References UpperTriangular().
Referenced by UpperTriangular().
|
inlinevirtual |
Returns the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 366 of file Ifpack_OverlappingRowMatrix.h.