Epetra_RowMatrixTransposer: A class for transposing an Epetra_RowMatrix object.
More...
#include <Epetra_RowMatrixTransposer.h>
Epetra_RowMatrixTransposer: A class for transposing an Epetra_RowMatrix object.
This class provides capabilities to construct a transpose matrix of an existing Epetra_RowMatrix object and (optionally) redistribute it across a parallel distributed memory machine.
Definition at line 58 of file Epetra_RowMatrixTransposer.h.
Epetra_RowMatrixTransposer::Epetra_RowMatrixTransposer |
( |
Epetra_RowMatrix * |
OrigMatrix | ) |
|
Epetra_RowMatrixTransposer::~Epetra_RowMatrixTransposer |
( |
| ) |
|
|
virtual |
int Epetra_RowMatrixTransposer::CreateTranspose |
( |
const bool |
MakeDataContiguous, |
|
|
Epetra_CrsMatrix *& |
TransposeMatrix, |
|
|
Epetra_Map * |
TransposeRowMap = 0 |
|
) |
| |
Generate a new Epetra_CrsMatrix as the transpose of an Epetra_RowMatrix passed into the constructor.
Constructs a new Epetra_CrsMatrix that is a copy of the Epetra_RowMatrix passed in to the constructor.
- Parameters
-
MakeDataContiguous | (In) Causes the output matrix, LHS and RHS to be stored in a form compatible with Fortran-style solvers. The output matrix will be compatible with the Harwell-Boeing compressed column format. The RHS and LHS will be stored such that the last value in column j of the multivector is stored next to the first value in column j+1. |
TransposeRowMap | (Optional/In) If this argument is defined, the transpose matrix will be distributed using this map as the row map for the transpose. If it is set to zero, the transpose matrix will use the OrigMatrix->RowMatrixDomainMap as the row map. |
- Returns
- Integer error code, 0 if no errors. Negative if some fatal error occured.
Definition at line 133 of file Epetra_RowMatrixTransposer.cpp.
int Epetra_RowMatrixTransposer::UpdateTransposeValues |
( |
Epetra_RowMatrix * |
MatrixWithNewValues | ) |
|
Update the values of an already-redistributed problem.
Updates the values of an already-redistributed problem. This method allows updating the redistributed problem without allocating new storage.
- Parameters
-
MatrixWithNewValues | (In) The values from MatrixWithNewValues will be copied into the TransposeMatrix. The MatrixWithNewValues object must be identical in structure to the original matrix object used to create this instance of Epetra_RowMatrixTransposer. |
- Returns
- Integer error code, 0 if no errors. Negative if some fatal error occured.
Definition at line 279 of file Epetra_RowMatrixTransposer.cpp.
int Epetra_RowMatrixTransposer::UpdateOriginalMatrixValues |
( |
| ) |
|
Update values of original matrix (Not implemented and not sure if we will implement this).
const Epetra_Map& Epetra_RowMatrixTransposer::TransposeRowMap |
( |
| ) |
const |
|
inline |
Returns const reference to the Epetra_Map object describing the row distribution of the transpose matrix.
The RedistExporter object can be used to redistribute other Epetra_DistObject objects whose maps are compatible with the original linear problem map, or with the RedistMap().
- Warning
- Must not be called before CreateTranspose()is called.
Definition at line 134 of file Epetra_RowMatrixTransposer.h.
const Epetra_Export& Epetra_RowMatrixTransposer::TransposeExporter |
( |
| ) |
const |
|
inline |
void Epetra_RowMatrixTransposer::DeleteData |
( |
| ) |
|
|
private |
Epetra_Map* Epetra_RowMatrixTransposer::TransposeRowMap_ |
|
private |
bool Epetra_RowMatrixTransposer::TransposeCreated_ |
|
private |
bool Epetra_RowMatrixTransposer::MakeDataContiguous_ |
|
private |
int Epetra_RowMatrixTransposer::NumMyRows_ |
|
private |
int Epetra_RowMatrixTransposer::NumMyCols_ |
|
private |
int Epetra_RowMatrixTransposer::MaxNumEntries_ |
|
private |
int* Epetra_RowMatrixTransposer::Indices_ |
|
private |
double* Epetra_RowMatrixTransposer::Values_ |
|
private |
int* Epetra_RowMatrixTransposer::TransNumNz_ |
|
private |
int** Epetra_RowMatrixTransposer::TransIndices_ |
|
private |
double** Epetra_RowMatrixTransposer::TransValues_ |
|
private |
int* Epetra_RowMatrixTransposer::TransMyGlobalEquations_ |
|
private |
bool Epetra_RowMatrixTransposer::OrigMatrixIsCrsMatrix_ |
|
private |
The documentation for this class was generated from the following files: