#include <Epetra_FEVector.h>
Inheritance diagram for Epetra_FEVector:


Public Member Functions | |
| Epetra_FEVector (const Epetra_BlockMap &Map, bool ignoreNonLocalEntries=false) | |
| Epetra_FEVector (const Epetra_FEVector &source) | |
| virtual | ~Epetra_FEVector () |
| int | SumIntoGlobalValues (int numIDs, const int *GIDs, const double *values) |
| int | SumIntoGlobalValues (const Epetra_IntSerialDenseVector &GIDs, const Epetra_SerialDenseVector &values) |
| int | ReplaceGlobalValues (int numIDs, const int *GIDs, const double *values) |
| int | ReplaceGlobalValues (const Epetra_IntSerialDenseVector &GIDs, const Epetra_SerialDenseVector &values) |
| int | SumIntoGlobalValues (int numIDs, const int *GIDs, const int *numValuesPerID, const double *values) |
| int | ReplaceGlobalValues (int numIDs, const int *GIDs, const int *numValuesPerID, const double *values) |
| int | GlobalAssemble (Epetra_CombineMode mode=Add) |
| void | setIgnoreNonLocalEntries (bool flag) |
| Epetra_FEVector & | operator= (const Epetra_FEVector &source) |
The added functionality provided by Epetra_FEVector is the ability to perform finite-element style vector assembly. It accepts sub-vector contributions, such as those that would come from element-load vectors, etc., and these sub-vectors need not be wholly locally owned. In other words, the user can assemble overlapping data (e.g., corresponding to shared finite-element nodes). When the user is finished assembling their vector data, they then call the method Epetra_FEVector::GlobalAssemble() which gathers the overlapping data (all non-local data that was input on each processor) into the data-distribution specified by the map that the Epetra_FEVector is constructed with.
Note: At the current time (Sept 6, 2002) the methods in this implementation assume that there is only 1 point associated with each map element. This limitation will be removed in the near future.
| Epetra_FEVector::Epetra_FEVector | ( | const Epetra_BlockMap & | Map, | |
| bool | ignoreNonLocalEntries = false | |||
| ) |
Constructor that requires a map specifying a non-overlapping data layout. The methods SumIntoGlobalValues() and ReplaceGlobalValues() will accept any global IDs, and GlobalAssemble() will move any non-local data onto the appropriate owning processors.
| Epetra_FEVector::Epetra_FEVector | ( | const Epetra_FEVector & | source | ) |
Copy constructor.
| virtual Epetra_FEVector::~Epetra_FEVector | ( | ) | [virtual] |
Destructor
| int Epetra_FEVector::GlobalAssemble | ( | Epetra_CombineMode | mode = Add |
) |
Gather any overlapping/shared data into the non-overlapping partitioning defined by the Map that was passed to this vector at construction time. Data imported from other processors is stored on the owning processor with a "sumInto" or accumulate operation. This is a collective method -- every processor must enter it before any will complete it.
| int Epetra_FEVector::ReplaceGlobalValues | ( | const Epetra_IntSerialDenseVector & | GIDs, | |
| const Epetra_SerialDenseVector & | values | |||
| ) |
Copy values into the vector, replacing any values that already exist for the specified GIDs.
| GIDs | List of global ids. Must be the same length as the accompanying list of values. | |
| values | List of coefficient values. Must be the same length as the accompanying list of GIDs. |
| int Epetra_FEVector::ReplaceGlobalValues | ( | int | numIDs, | |
| const int * | GIDs, | |||
| const double * | values | |||
| ) |
Copy values into the vector overwriting any values that already exist for the specified indices.
| void Epetra_FEVector::setIgnoreNonLocalEntries | ( | bool | flag | ) | [inline] |
Set whether or not non-local data values should be ignored.
| int Epetra_FEVector::SumIntoGlobalValues | ( | const Epetra_IntSerialDenseVector & | GIDs, | |
| const Epetra_SerialDenseVector & | values | |||
| ) |
Accumulate values into the vector, adding them to any values that already exist for the specified GIDs.
| GIDs | List of global ids. Must be the same length as the accompanying list of values. | |
| values | List of coefficient values. Must be the same length as the accompanying list of GIDs. |
| int Epetra_FEVector::SumIntoGlobalValues | ( | int | numIDs, | |
| const int * | GIDs, | |||
| const double * | values | |||
| ) |
Accumulate values into the vector, adding them to any values that already exist for the specified indices.
1.4.7