#include <EpetraExt_DistArray.h>
Inheritance diagram for EpetraExt::DistArray< T >:
Constructors and Destructors | |
| DistArray (const Epetra_Map &Map, const int RowSize) | |
Constructor for a given Map and RowSize. | |
Query methods | |
| int | MyLength () const |
| Returns the length of the locally owned array. | |
| int | GlobalLength () const |
| Returns the global length of the array. | |
| int | RowSize () const |
| Returns the row size, that is, the amount of data associated with each element. | |
| T & | operator() (const int LEID, const int ID) |
Returns a reference to the ID component of the LEID local element. | |
| T & | operator() (const int GEID, const int ID, const bool isLocal) |
| void | Print (ostream &os) const |
| Prints the array on the specified stream. | |
| int | NextGID () |
| int | FirstGID () |
| const vector< T > & | ExtractView () const |
| Extracts a view of the array. | |
| T * | Values () |
| Returns a pointer to the internally stored data (non-const version). | |
| const T * | Values () const |
| Returns a pointer to the internally stored data (const version). | |
Epetra_DistObject methods | |
| virtual int | CheckSizes (const Epetra_SrcDistObject &Source) |
| virtual int | CopyAndPermute (const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor) |
| virtual int | PackAndPrepare (const Epetra_SrcDistObject &Source, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, Epetra_Distributor &Distor) |
| virtual 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) |
Private data | |
| vector< T > | values_ |
| Container of local data. | |
| int | MyLength_ |
| Length of the locally owned array. | |
| int | GlobalLength_ |
| Length of the global array. | |
| int | RowSize_ |
| Amount of data associated with each element. | |
| int | count_ |
| int | last_ |
Class DistArray allows the construction and usage of multivectors. These vectors contain element of type T, and the storage is row-oriented, and not column-oriented as in class Epetra_MultiVector. As such, this class should be used as a container for data, on which no BLAS-like operations are performed.
DistArray objects are indentified by an Epetra_Map and a RowSize. The map specifies the distribution of the elements across the processors and therefore the number of local elements, while the RowSize gives the total number of data assigned to each node. RowSize is constant for all elements.
DistArray is derived from Epetra_DistObject, and it can therefore be redistributed using Import/Export instructions.
The typical usage of this class is as follows:
EpetraExt::DistArray<double> COO(VertexMap, NumDimensions); // set the value of the j-th dimension of the i-th local node i: COO(i, j) = 1.24
Definition at line 42 of file EpetraExt_DistArray.h.
|
||||||||||||||||
|
Constructor for a given
Definition at line 48 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Returns the length of the locally owned array.
Definition at line 70 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Returns the global length of the array.
Definition at line 76 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Returns the row size, that is, the amount of data associated with each element.
Definition at line 82 of file EpetraExt_DistArray.h. |
|
||||||||||||||||
|
Returns a reference to the
Definition at line 88 of file EpetraExt_DistArray.h. |
|
||||||||||||||||||||
|
Definition at line 94 of file EpetraExt_DistArray.h. |
|
||||||||||
|
Prints the array on the specified stream.
Reimplemented from Epetra_DistObject. Definition at line 103 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Definition at line 133 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Definition at line 142 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Extracts a view of the array.
Definition at line 149 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Returns a pointer to the internally stored data (non-const version).
Definition at line 155 of file EpetraExt_DistArray.h. |
|
|||||||||
|
Returns a pointer to the internally stored data (const version).
Definition at line 161 of file EpetraExt_DistArray.h. |
|
||||||||||
|
Implements Epetra_DistObject. Definition at line 170 of file EpetraExt_DistArray.h. |
|
||||||||||||||||||||||||||||||||
|
Implements Epetra_DistObject. Definition at line 175 of file EpetraExt_DistArray.h. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Implements Epetra_DistObject. Definition at line 220 of file EpetraExt_DistArray.h. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Implements Epetra_DistObject. Definition at line 260 of file EpetraExt_DistArray.h. |
|
|||||
|
Container of local data.
Definition at line 298 of file EpetraExt_DistArray.h. |
|
|||||
|
Length of the locally owned array.
Definition at line 300 of file EpetraExt_DistArray.h. |
|
|||||
|
Length of the global array.
Definition at line 302 of file EpetraExt_DistArray.h. |
|
|||||
|
Amount of data associated with each element.
Definition at line 304 of file EpetraExt_DistArray.h. |
|
|||||
|
Definition at line 305 of file EpetraExt_DistArray.h. |
|
|||||
|
Definition at line 306 of file EpetraExt_DistArray.h. |
1.3.9.1