#include <Epetra_MultiVector.h>
Inheritance diagram for Epetra_MultiVector:
Constructors/destructors | |
| Epetra_MultiVector (const Epetra_BlockMap &Map, int NumVectors, bool zeroOut=true) | |
| Basic Epetra_MultiVector constuctor. | |
| Epetra_MultiVector (const Epetra_MultiVector &Source) | |
| Epetra_MultiVector copy constructor. | |
| Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *A, int MyLDA, int NumVectors) | |
| Set multi-vector values from two-dimensional array. | |
| Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_BlockMap &Map, double **ArrayOfPointers, int NumVectors) | |
| Set multi-vector values from array of pointers. | |
| Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_MultiVector &Source, int *Indices, int NumVectors) | |
| Set multi-vector values from list of vectors in an existing Epetra_MultiVector. | |
| Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_MultiVector &Source, int StartIndex, int NumVectors) | |
| Set multi-vector values from range of vectors in an existing Epetra_MultiVector. | |
| virtual | ~Epetra_MultiVector () |
| Epetra_MultiVector destructor. | |
Post-construction modification routines | |
| int | ReplaceGlobalValue (int GlobalRow, int VectorIndex, double ScalarValue) |
| Replace current value at the specified (GlobalRow, VectorIndex) location with ScalarValue. | |
| int | ReplaceGlobalValue (int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue) |
| Replace current value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location with ScalarValue. | |
| int | SumIntoGlobalValue (int GlobalRow, int VectorIndex, double ScalarValue) |
| Adds ScalarValue to existing value at the specified (GlobalRow, VectorIndex) location. | |
| int | SumIntoGlobalValue (int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue) |
| Adds ScalarValue to existing value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location. | |
| int | ReplaceMyValue (int MyRow, int VectorIndex, double ScalarValue) |
| Replace current value at the specified (MyRow, VectorIndex) location with ScalarValue. | |
| int | ReplaceMyValue (int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue) |
| Replace current value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location with ScalarValue. | |
| int | SumIntoMyValue (int MyRow, int VectorIndex, double ScalarValue) |
| Adds ScalarValue to existing value at the specified (MyRow, VectorIndex) location. | |
| int | SumIntoMyValue (int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue) |
| Adds ScalarValue to existing value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location. | |
| int | PutScalar (double ScalarConstant) |
| Initialize all values in a multi-vector with constant value. | |
| int | Random () |
| Set multi-vector values to random numbers. | |
Extraction methods | |
| int | ExtractCopy (double *A, int MyLDA) const |
| Put multi-vector values into user-provided two-dimensional array. | |
| int | ExtractCopy (double **ArrayOfPointers) const |
| Put multi-vector values into user-provided array of pointers. | |
| int | ExtractView (double **A, int *MyLDA) const |
| Set user-provided addresses of A and MyLDA. | |
| int | ExtractView (double ***ArrayOfPointers) const |
| Set user-provided addresses of ArrayOfPointers. | |
Mathematical methods | |
| int | Dot (const Epetra_MultiVector &A, double *Result) const |
| Computes dot product of each corresponding pair of vectors. | |
| int | Abs (const Epetra_MultiVector &A) |
| Puts element-wise absolute values of input Multi-vector in target. | |
| int | Reciprocal (const Epetra_MultiVector &A) |
| Puts element-wise reciprocal values of input Multi-vector in target. | |
| int | Scale (double ScalarValue) |
| Scale the current values of a multi-vector, this = ScalarValue*this. | |
| int | Scale (double ScalarA, const Epetra_MultiVector &A) |
| Replace multi-vector values with scaled values of A, this = ScalarA*A. | |
| int | Update (double ScalarA, const Epetra_MultiVector &A, double ScalarThis) |
| Update multi-vector values with scaled values of A, this = ScalarThis*this + ScalarA*A. | |
| int | Update (double ScalarA, const Epetra_MultiVector &A, double ScalarB, const Epetra_MultiVector &B, double ScalarThis) |
| Update multi-vector with scaled values of A and B, this = ScalarThis*this + ScalarA*A + ScalarB*B. | |
| int | Norm1 (double *Result) const |
| Compute 1-norm of each vector in multi-vector. | |
| int | Norm2 (double *Result) const |
| Compute 2-norm of each vector in multi-vector. | |
| int | NormInf (double *Result) const |
| Compute Inf-norm of each vector in multi-vector. | |
| int | NormWeighted (const Epetra_MultiVector &Weights, double *Result) const |
| Compute Weighted 2-norm (RMS Norm) of each vector in multi-vector. | |
| int | MinValue (double *Result) const |
| Compute minimum value of each vector in multi-vector. | |
| int | MaxValue (double *Result) const |
| Compute maximum value of each vector in multi-vector. | |
| int | MeanValue (double *Result) const |
| Compute mean (average) value of each vector in multi-vector. | |
| int | Multiply (char TransA, char TransB, double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis) |
| Matrix-Matrix multiplication, this = ScalarThis*this + ScalarAB*A*B. | |
| int | Multiply (double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis) |
| Multiply a Epetra_MultiVector with another, element-by-element. | |
| int | ReciprocalMultiply (double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis) |
| Multiply a Epetra_MultiVector by the reciprocal of another, element-by-element. | |
Random number utilities | |
| int | SetSeed (unsigned int Seed) |
| Set seed for Random function. | |
| unsigned int | Seed () |
| Get seed from Random function. | |
Overloaded operators | |
| Epetra_MultiVector & | operator= (const Epetra_MultiVector &Source) |
| = Operator. | |
| double *& | operator[] (int i) |
| Vector access function. | |
| double *const & | operator[] (int i) const |
| Vector access function. | |
| Epetra_Vector *& | operator() (int i) |
| Vector access function. | |
| const Epetra_Vector *& | operator() (int i) const |
| Vector access function. | |
Attribute access functions | |
| int | NumVectors () const |
| Returns the number of vectors in the multi-vector. | |
| int | MyLength () const |
| Returns the local vector length on the calling processor of vectors in the multi-vector. | |
| int | GlobalLength () const |
| Returns the global vector length of vectors in the multi-vector. | |
| int | Stride () const |
| Returns the stride between vectors in the multi-vector (only meaningful if ConstantStride() is true). | |
| bool | ConstantStride () const |
| Returns true if this multi-vector has constant stride between vectors. | |
I/O methods | |
| virtual void | Print (ostream &os) const |
| Print method. | |
Expert-only unsupported methods | |
| int | ResetView (double **ArrayOfPointers) |
| Reset the view of an existing multivector to point to new user data. | |
| double * | Values () const |
| Get pointer to MultiVector values. | |
| double ** | Pointers () const |
| Get pointer to individual vector pointers. | |
Public Member Functions | |
| int | ReplaceMap (const Epetra_BlockMap &map) |
| Replace map, only if new map has same point-structure as current map. | |
| int | Reduce () |
Protected Member Functions | |
| void | Assign (const Epetra_MultiVector &rhs) |
| int | CheckInput () |
Protected Attributes | |
| double * | Values_ |
Private Member Functions | |
| int | AllocateForCopy (void) |
| int | DoCopy (void) |
| void | UpdateDoubleTemp () const |
| void | UpdateVectors () const |
| int | AllocateForView (void) |
| int | DoView (void) |
| int | ChangeGlobalValue (int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue, bool SumInto) |
| int | ChangeMyValue (int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue, bool SumInto) |
| int | CheckSizes (const Epetra_SrcDistObject &A) |
| Allows the source and target (this) objects to be compared for compatibility, return nonzero if not. | |
| int | CopyAndPermute (const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor) |
| Perform ID copies and permutations that are on processor. | |
| int | PackAndPrepare (const Epetra_SrcDistObject &Source, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, Epetra_Distributor &Distor) |
| Perform any packing or preparation required for call to DoTransfer(). | |
| 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) |
| Perform any unpacking and combining after call to DoTransfer(). | |
Private Attributes | |
| double ** | Pointers_ |
| int | MyLength_ |
| int | GlobalLength_ |
| int | NumVectors_ |
| bool | UserAllocated_ |
| bool | ConstantStride_ |
| int | Stride_ |
| bool | Allocated_ |
| double * | DoubleTemp_ |
| Epetra_Vector ** | Vectors_ |
| Epetra_Util | Util_ |
The Epetra_MultiVector class enables the construction and use of real-valued, double-precision dense vectors, multi-vectors, and matrices in a distributed memory environment. The dimensions and distribution of the dense multi-vectors is determined in part by a Epetra_Comm object, a Epetra_Map (or Epetra_LocalMap or Epetra_BlockMap) and the number of vectors passed to the constructors described below.
There are several concepts that important for understanding the Epetra_MultiVector class:
Constructing Epetra_MultiVectors
Except for the basic constructor and copy constructor, Epetra_MultiVector constructors have two data access modes:
map is a Epetra_Map, Epetra_LocalMap or Epetra_BlockMap object describing the desired memory layout for the multi-vector.There are six different Epetra_MultiVector constructors:
Extracting Data from Epetra_MultiVectors
Once a Epetra_MultiVector is constructed, it is possible to extract a copy of the values or create a view of them.
Vector, Matrix and Utility Functions
Once a Epetra_MultiVector is constructed, a variety of mathematical functions can be applied to the individual vectors. Specifically:
In addition, a matrix-matrix multiply function supports a variety of operations on any viable combination of global distributed and local replicated multi-vectors using calls to DGEMM, a high performance kernel for matrix operations. In the near future we will add support for calls to other selected BLAS and LAPACK functions.
Counting Floating Point Operations
Each Epetra_MultiVector object keep track of the number of serial floating point operations performed using the specified object as the this argument to the function. The Flops() function returns this number as a double precision number. Using this information, in conjunction with the Epetra_Time class, one can get accurate parallel performance numbers. The ResetFlops() function resets the floating point counter.
Definition at line 171 of file Epetra_MultiVector.h.
|
||||||||||||||||
|
Basic Epetra_MultiVector constuctor. Creates a Epetra_MultiVector object and, by default, fills with zero values.
Definition at line 46 of file Epetra_MultiVector.cpp. |
|
|
Epetra_MultiVector copy constructor.
Definition at line 71 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||
|
Set multi-vector values from two-dimensional array.
Definition at line 97 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Set multi-vector values from array of pointers.
Definition at line 127 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Set multi-vector values from list of vectors in an existing Epetra_MultiVector.
Definition at line 158 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Set multi-vector values from range of vectors in an existing Epetra_MultiVector.
Definition at line 189 of file Epetra_MultiVector.cpp. |
|
|
Epetra_MultiVector destructor.
Definition at line 216 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||
|
Replace current value at the specified (GlobalRow, VectorIndex) location with ScalarValue. Replaces the existing value for a single entry in the multivector. The specified global row must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication. If the map associated with this multivector is an Epetra_BlockMap, only the first point entry associated with the global row will be modified. To modify a different point entry, use the other version of this method
Definition at line 342 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Replace current value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location with ScalarValue. Replaces the existing value for a single entry in the multivector. The specified global block row and block row offset must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication.
Definition at line 349 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||
|
Adds ScalarValue to existing value at the specified (GlobalRow, VectorIndex) location. Sums the given value into the existing value for a single entry in the multivector. The specified global row must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication. If the map associated with this multivector is an Epetra_BlockMap, only the first point entry associated with the global row will be modified. To modify a different point entry, use the other version of this method
Definition at line 356 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Adds ScalarValue to existing value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location. Sums the given value into the existing value for a single entry in the multivector. The specified global block row and block row offset must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication.
Definition at line 363 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||
|
Replace current value at the specified (MyRow, VectorIndex) location with ScalarValue. Replaces the existing value for a single entry in the multivector. The specified local row must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication. This method is intended for use with vectors based on an Epetra_Map. If used on a vector based on a non-trivial Epetra_BlockMap, this will update only block row 0, i.e. Epetra_MultiVector::ReplaceMyValue ( MyRow, VectorIndex, ScalarValue ) is equivalent to: Epetra_MultiVector::ReplaceMyValue ( 0, MyRow, VectorIndex, ScalarValue )
Definition at line 370 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Replace current value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location with ScalarValue. Replaces the existing value for a single entry in the multivector. The specified local block row and block row offset must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication.
Definition at line 377 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||
|
Adds ScalarValue to existing value at the specified (MyRow, VectorIndex) location. Sums the given value into the existing value for a single entry in the multivector. The specified local row must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication. If the map associated with this multivector is an Epetra_BlockMap, only the first point entry associated with the local row will be modified. To modify a different point entry, use the other version of this method
Definition at line 384 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Adds ScalarValue to existing value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location. Sums the given value into the existing value for a single entry in the multivector. The specified local block row and block row offset must correspond to a GID owned by the map of the multivector on the calling processor. In other words, this method does not perform cross-processor communication.
Definition at line 390 of file Epetra_MultiVector.cpp. |
|
|
Initialize all values in a multi-vector with constant value.
Definition at line 514 of file Epetra_MultiVector.cpp. |
|
|
Set multi-vector values to random numbers. MultiVector uses the random number generator provided by Epetra_Util. The multi-vector values will be set to random values on the interval (-1.0, 1.0).
Definition at line 422 of file Epetra_MultiVector.cpp. |
|
||||||||||||
|
Put multi-vector values into user-provided two-dimensional array.
Definition at line 448 of file Epetra_MultiVector.cpp. |
|
|
Put multi-vector values into user-provided array of pointers.
Definition at line 476 of file Epetra_MultiVector.cpp. |
|
||||||||||||
|
Set user-provided addresses of A and MyLDA.
Definition at line 493 of file Epetra_MultiVector.cpp. |
|
|
Set user-provided addresses of ArrayOfPointers.
Definition at line 506 of file Epetra_MultiVector.cpp. |
|
||||||||||||
|
Computes dot product of each corresponding pair of vectors.
Definition at line 966 of file Epetra_MultiVector.cpp. |
|
|
Puts element-wise absolute values of input Multi-vector in target.
Definition at line 986 of file Epetra_MultiVector.cpp. |
|
|
Puts element-wise reciprocal values of input Multi-vector in target.
Definition at line 1003 of file Epetra_MultiVector.cpp. |
|
|
Scale the current values of a multi-vector, this = ScalarValue*this.
Definition at line 1030 of file Epetra_MultiVector.cpp. |
|
||||||||||||
|
Replace multi-vector values with scaled values of A, this = ScalarA*A.
Definition at line 1043 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||
|
Update multi-vector values with scaled values of A, this = ScalarThis*this + ScalarA*A.
Definition at line 1062 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||
|
Update multi-vector with scaled values of A and B, this = ScalarThis*this + ScalarA*A + ScalarB*B.
Definition at line 1103 of file Epetra_MultiVector.cpp. |
|
|
Compute 1-norm of each vector in multi-vector.
Definition at line 1207 of file Epetra_MultiVector.cpp. |
|
|
Compute 2-norm of each vector in multi-vector.
Definition at line 1225 of file Epetra_MultiVector.cpp. |
|
|
Compute Inf-norm of each vector in multi-vector.
Definition at line 1248 of file Epetra_MultiVector.cpp. |
|
||||||||||||
|
Compute Weighted 2-norm (RMS Norm) of each vector in multi-vector.
Definition at line 1269 of file Epetra_MultiVector.cpp. |
|
|
Compute minimum value of each vector in multi-vector. Note that the vector contents must be already initialized for this function to compute a well-defined result. The length of the vector need not be greater than zero on all processors. If length is greater than zero on any processor then a valid result will be computed.
Definition at line 1308 of file Epetra_MultiVector.cpp. |
|
|
Compute maximum value of each vector in multi-vector. Note that the vector contents must be already initialized for this function to compute a well-defined result. The length of the vector need not be greater than zero on all processors. If length is greater than zero on any processor then a valid result will be computed.
Definition at line 1405 of file Epetra_MultiVector.cpp. |
|
|
Compute mean (average) value of each vector in multi-vector.
Definition at line 1502 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||||||
|
Matrix-Matrix multiplication, this = ScalarThis*this + ScalarAB*A*B. This function performs a variety of matrix-matrix multiply operations, interpreting the Epetra_MultiVectors (this-aka C , A and B) as 2D matrices. Variations are due to the fact that A, B and C can be local replicated or global distributed Epetra_MultiVectors and that we may or may not operate with the transpose of A and B. Possible cases are:
Total of 32 case (2^5).
Num
OPERATIONS case Notes
1) C(local) = A^X(local) * B^X(local) 4 (X=Transpose or Not, No comm needed)
2) C(local) = A^T(distr) * B (distr) 1 (2D dot product, replicate C)
3) C(distr) = A (distr) * B^X(local) 2 (2D vector update, no comm needed)
Note that the following operations are not meaningful for
1D distributions:
1) C(local) = A^T(distr) * B^T(distr) 1
2) C(local) = A (distr) * B^X(distr) 2
3) C(distr) = A^X(local) * B^X(local) 4
4) C(distr) = A^X(local) * B^X(distr) 4
5) C(distr) = A^T(distr) * B^X(local) 2
6) C(local) = A^X(distr) * B^X(local) 4
7) C(distr) = A^X(distr) * B^X(local) 4
8) C(local) = A^X(local) * B^X(distr) 4
Definition at line 1527 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Multiply a Epetra_MultiVector with another, element-by-element. This function supports diagonal matrix multiply. A is usually a single vector while B and this may have one or more columns. Note that B and this must have the same shape. A can be one vector or have the same shape as B. The actual computation is this = ScalarThis * this + ScalarAB * B @ A where @ denotes element-wise multiplication. Definition at line 1674 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||
|
Multiply a Epetra_MultiVector by the reciprocal of another, element-by-element. This function supports diagonal matrix scaling. A is usually a single vector while B and this may have one or more columns. Note that B and this must have the same shape. A can be one vector or have the same shape as B. The actual computation is this = ScalarThis * this + ScalarAB * B @ A where @ denotes element-wise division. Definition at line 1767 of file Epetra_MultiVector.cpp. |
|
|
Set seed for Random function.
Definition at line 833 of file Epetra_MultiVector.h. |
|
|
Get seed from Random function.
Definition at line 839 of file Epetra_MultiVector.h. |
|
|
= Operator.
Definition at line 1895 of file Epetra_MultiVector.cpp. |
|
|
Vector access function.
Reimplemented in Epetra_Vector. Definition at line 863 of file Epetra_MultiVector.h. |
|
|
Vector access function.
Reimplemented in Epetra_Vector. Definition at line 869 of file Epetra_MultiVector.h. |
|
|
Vector access function.
Definition at line 1862 of file Epetra_MultiVector.cpp. |
|
|
Vector access function.
Definition at line 1878 of file Epetra_MultiVector.cpp. |
|
|
Returns the number of vectors in the multi-vector.
Definition at line 888 of file Epetra_MultiVector.h. |
|
|
Returns the local vector length on the calling processor of vectors in the multi-vector.
Definition at line 891 of file Epetra_MultiVector.h. |
|
|
Returns the global vector length of vectors in the multi-vector.
Definition at line 894 of file Epetra_MultiVector.h. |
|
|
Returns the stride between vectors in the multi-vector (only meaningful if ConstantStride() is true).
Definition at line 897 of file Epetra_MultiVector.h. |
|
|
Returns true if this multi-vector has constant stride between vectors.
Definition at line 900 of file Epetra_MultiVector.h. |
|
|
Replace map, only if new map has same point-structure as current map. return 0 if map is replaced, -1 if not. Definition at line 462 of file Epetra_MultiVector.cpp. |
|
|
Print method.
Reimplemented from Epetra_DistObject. Definition at line 1967 of file Epetra_MultiVector.cpp. |
|
|
Reset the view of an existing multivector to point to new user data. Allows the (very) light-weight replacement of multivector values for an existing multivector that was constructed using an Epetra_DataAccess mode of View. No checking is performed to see if the array of values passed in contains valid data. It is assumed that the user has verified the integrity of data before calling this method. This method is useful for situations where a multivector is needed for use with an Epetra operator or matrix and the user is not passing in a multivector, or the multivector is being passed in with another map that is not exactly compatible with the operator, but has the correct number of entries. This method is used by AztecOO and Ifpack in the matvec, and solve methods to improve performance and reduce repeated calls to constructors and destructors.
Definition at line 1955 of file Epetra_MultiVector.cpp. |
|
|
Get pointer to MultiVector values.
Definition at line 941 of file Epetra_MultiVector.h. |
|
|
Get pointer to individual vector pointers.
Definition at line 944 of file Epetra_MultiVector.h. |
|
|
Definition at line 1920 of file Epetra_MultiVector.cpp. |
|
|
Definition at line 1904 of file Epetra_MultiVector.cpp. |
|
|
|
|
|
Definition at line 234 of file Epetra_MultiVector.cpp. |
|
|
Definition at line 264 of file Epetra_MultiVector.cpp. |
|
|
Definition at line 966 of file Epetra_MultiVector.h. |
|
|
Definition at line 969 of file Epetra_MultiVector.h. |
|
|
Definition at line 286 of file Epetra_MultiVector.cpp. |
|
|
Definition at line 313 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||
|
Definition at line 397 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||
|
Definition at line 405 of file Epetra_MultiVector.cpp. |
|
|
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
Implements Epetra_DistObject. Definition at line 523 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||||||
|
Perform ID copies and permutations that are on processor.
Implements Epetra_DistObject. Definition at line 532 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Perform any packing or preparation required for call to DoTransfer().
Implements Epetra_DistObject. Definition at line 637 of file Epetra_MultiVector.cpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Perform any unpacking and combining after call to DoTransfer().
Implements Epetra_DistObject. Definition at line 729 of file Epetra_MultiVector.cpp. |
|
|
Definition at line 956 of file Epetra_MultiVector.h. |
|
|
Definition at line 1016 of file Epetra_MultiVector.h. |
|
|
Definition at line 1018 of file Epetra_MultiVector.h. |
|
|
Definition at line 1019 of file Epetra_MultiVector.h. |
|
|
Definition at line 1020 of file Epetra_MultiVector.h. |
|
|
Definition at line 1021 of file Epetra_MultiVector.h. |
|
|
Definition at line 1022 of file Epetra_MultiVector.h. |
|
|
Definition at line 1023 of file Epetra_MultiVector.h. |
|
|
Definition at line 1024 of file Epetra_MultiVector.h. |
|
|
Definition at line 1025 of file Epetra_MultiVector.h. |
|
|
Definition at line 1026 of file Epetra_MultiVector.h. |
|
|
Definition at line 1027 of file Epetra_MultiVector.h. |
1.3.9.1