44#ifndef EPETRA_VECTOR_H
45#define EPETRA_VECTOR_H
224#ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
227#ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
405#ifdef HAVE_EPETRA_ARRAY_BOUNDS_CHECK
407 !( 0 <= index && index < this->
MyLength() ), -99,
408 "Epetra_Vector::operator[](int): "
409 "The index = " << index <<
" does not fall in the range"
421#ifdef HAVE_EPETRA_ARRAY_BOUNDS_CHECK
423 !( 0 <= index && index < this->
MyLength() ), -99,
424 "Epetra_Vector::operator[](int) const: "
425 "The index = " << index <<
" does not fall in the range"
464 int ChangeValues(
int NumEntries,
int BlockOffset,
const double * Values,
const int * Indices,
bool IndicesGlobal,
bool SumInto);
465#ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
466 int ChangeValues(
int NumEntries,
int BlockOffset,
const double * Values,
const long long * Indices,
bool IndicesGlobal,
bool SumInto);
469 template<
typename int_type>
470 int TChangeValues(
int NumEntries,
int BlockOffset,
const double * Values,
const int_type * Indices,
bool IndicesGlobal,
bool SumInto);
#define EPETRA_CHK_ERR(a)
#define EPETRA_TEST_FOR_EXCEPTION(throw_exception_test, errCode, msg)
Macro for testing for and throwing and int exception for objects derived from Epetra_Object.
Epetra_BlockMap: A class for partitioning block element vectors and matrices.
const Epetra_BlockMap & Map() const
Returns the address of the Epetra_BlockMap for this multi-vector.
Epetra_Map: A class for partitioning vectors and matrices.
int MyLength() const
Returns the local vector length on the calling processor of vectors in the multi-vector.
int ExtractView(double **A, int *MyLDA) const
Set user-provided addresses of A and MyLDA.
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.
int ExtractCopy(double *A, int MyLDA) const
Put multi-vector values into user-provided two-dimensional array.
double *& operator[](int i)
Vector access function.
Epetra_MultiVector(const Epetra_BlockMap &Map, int NumVectors, bool zeroOut=true)
Basic Epetra_MultiVector constuctor.
int ReplaceGlobalValues(int NumEntries, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values, indices are in global index space.
Epetra_Vector(const Epetra_BlockMap &Map, bool zeroOut=true)
Basic Epetra_Vector constuctor.
int ResetView(double *Values_in)
Reset the view of an existing vector to point to new user data.
int ReplaceMyValues(int NumEntries, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values, indices are in local index space.
int SumIntoMyValues(int NumEntries, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values, indices are in local index space.
int SumIntoGlobalValues(int NumEntries, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values, indices are in global index space.