51 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES // FIXME
56 : OrigMatrix_(OrigMatrix),
58 TransposeExporter_(0),
60 TransposeCreated_(false),
61 MakeDataContiguous_(false),
70 TransMyGlobalEquations_(NULL),
71 OrigMatrixIsCrsMatrix_(false)
76 :OrigMatrix_(Source.OrigMatrix_),
78 TransposeExporter_(0),
80 TransposeCreated_(Source.TransposeCreated_),
81 MakeDataContiguous_(Source.MakeDataContiguous_),
90 TransMyGlobalEquations_(NULL),
91 OrigMatrixIsCrsMatrix_(false)
143 if (TransposeRowMap_in==0)
222 for (j=0; j<NumIndices; j++) {
267 EPETRA_CHK_ERR(TransposeMatrix_->FillComplete(range_map, domain_map));
269 if (MakeDataContiguous) {
281 int i, j, NumIndices;
313 for (j=0; j<NumIndices; j++) {
358 bool throw_error =
true;
360 std::cerr << std::endl
361 <<
"Epetra_RowMatrixTransposer::operator= not supported."
369 #endif // EPETRA_NO_32BIT_GLOBAL_INDICES
Epetra_Map: A class for partitioning vectors and matrices.
int 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...
virtual const Epetra_Map & RowMatrixRowMap() const =0
Returns the Epetra_Map object associated with the rows of this matrix.
int MyGlobalElements(int *MyGlobalElementList) const
Puts list of global elements on this processor into the user-provided array.
Epetra_RowMatrix * OrigMatrix_
virtual int InsertGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Insert a list of elements in a given global row of the matrix.
Epetra_RowMatrixTransposer & operator=(const Epetra_RowMatrixTransposer &src)
Epetra_CrsMatrix * TransposeMatrix_
#define EPETRA_CHK_ERR(a)
Epetra_Export: This class builds an export object for efficient exporting of off-processor elements...
virtual const Epetra_Map & OperatorDomainMap() const =0
Returns the Epetra_Map object associated with the domain of this operator.
Epetra_RowMatrixTransposer(Epetra_RowMatrix *OrigMatrix)
Primary Epetra_RowMatrixTransposer constructor.
int FillComplete(bool OptimizeDataStorage=true)
Signal that data entry is complete. Perform transformations to local index space. ...
int MakeDataContiguous()
Eliminates memory that is used for construction. Make consecutive row index sections contiguous...
virtual int NumMyCols() const =0
Returns the number of matrix columns owned by the calling processor.
int ExtractMyRowView(int MyRow, int &NumEntries, double *&Values, int *&Indices) const
Returns a view of the specified local row values via pointers to internal data.
int PutScalar(double ScalarConstant)
Initialize all values in the matrix with constant value.
virtual int NumMyRowEntries(int MyRow, int &NumEntries) const =0
Returns the number of nonzero entries in MyRow.
virtual const Epetra_Map & OperatorRangeMap() const =0
Returns the Epetra_Map object associated with the range of this operator.
long long GID64(int LID) const
int Export(const Epetra_SrcDistObject &A, const Epetra_Import &Importer, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0)
Exports an Epetra_DistObject using the Epetra_Import object.
int UpdateTransposeValues(Epetra_RowMatrix *MatrixWithNewValues)
Update the values of an already-redistributed problem.
int * TransMyGlobalEquations_
virtual int NumMyRows() const =0
Returns the number of matrix rows owned by the calling processor.
virtual ~Epetra_RowMatrixTransposer()
Epetra_RowMatrixTransposer destructor.
int ExtractMyRowView(int LocalRow, int &NumIndices, int *&Indices) const
Get a view of the elements in a specified local row of the graph.
Epetra_Map * TransposeRowMap_
Epetra_RowMatrixTransposer: A class for transposing an Epetra_RowMatrix object.
Epetra_CrsMatrix: A class for constructing and using real-valued double-precision sparse compressed r...
virtual int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const =0
Returns a copy of the specified local row in user-provided arrays.
bool OrigMatrixIsCrsMatrix_
virtual const Epetra_Map & RowMatrixColMap() const =0
Returns the Epetra_Map object associated with the columns of this matrix.
const Epetra_CrsGraph & Graph() const
Returns a reference to the Epetra_CrsGraph object associated with this matrix.
Epetra_RowMatrix: A pure virtual class for using real-valued double-precision row matrices...
Epetra_CrsGraph: A class for constructing and using sparse compressed row graphs. ...
Epetra_Export * TransposeExporter_