|
| PetscParVector (MPI_Comm comm, PetscInt glob_size, PetscInt *col=NULL) |
| Creates vector with given global size and partitioning of the columns. More...
|
|
| PetscParVector (MPI_Comm comm, PetscInt glob_size, PetscScalar *data_, PetscInt *col) |
| Creates vector with given global size, partitioning of the columns, and data. More...
|
|
| PetscParVector (const PetscParVector &y) |
| Creates vector compatible with y. More...
|
|
| PetscParVector (MPI_Comm comm, const Vector &x_, bool copy=false) |
| Creates a PetscParVector from a Vector. More...
|
|
| PetscParVector (MPI_Comm comm, const Operator &op, bool transpose=false, bool allocate=true) |
| Creates vector compatible with the Operator (i.e. in the domain of) op or its adjoint. More...
|
|
| PetscParVector (const PetscParMatrix &A, bool transpose=false, bool allocate=true) |
| Creates vector compatible with (i.e. in the domain of) A or A^T. More...
|
|
| PetscParVector (petsc::Vec y, bool ref=false) |
| Creates PetscParVector out of PETSc Vec object. More...
|
|
| PetscParVector (ParFiniteElementSpace *pfes) |
| Create a true dof parallel vector on a given ParFiniteElementSpace. More...
|
|
virtual | ~PetscParVector () |
| Calls PETSc's destroy function. More...
|
|
MPI_Comm | GetComm () const |
| Get the associated MPI communicator. More...
|
|
PetscInt | GlobalSize () const |
| Returns the global number of rows. More...
|
|
| operator petsc::Vec () const |
| Typecasting to PETSc's Vec type. More...
|
|
| operator PetscObject () const |
| Typecasting to PETSc object. More...
|
|
Vector * | GlobalVector () const |
| Returns the global vector in each processor. More...
|
|
PetscParVector & | operator= (PetscScalar d) |
| Set constant values. More...
|
|
void | SetBlockSize (PetscInt bs) |
| Set block size of a vector. More...
|
|
PetscParVector & | SetValues (const Array< PetscInt > &, const Array< PetscScalar > &) |
| Set values in a vector. More...
|
|
PetscParVector & | AddValues (const Array< PetscInt > &, const Array< PetscScalar > &) |
| Add values in a vector. More...
|
|
PetscParVector & | operator= (const PetscParVector &y) |
| Define operators for PETSc vectors. More...
|
|
PetscParVector & | operator+= (const PetscParVector &y) |
|
PetscParVector & | operator-= (const PetscParVector &y) |
|
PetscParVector & | operator*= (PetscScalar d) |
|
PetscParVector & | operator+= (PetscScalar d) |
|
void | PlaceArray (PetscScalar *temp_data) |
| Temporarily replace the data of the PETSc Vec object. To return to the original data array, call ResetArray(). More...
|
|
void | ResetArray () |
| Reset the PETSc Vec object to use its default data. Call this method after the use of PlaceArray(). More...
|
|
void | PlaceMemory (Memory< double > &, bool=false) |
| This requests write access from where the memory is valid and temporarily replaces the corresponding array used by the PETSc Vec The bool parameter indicates read/write request. More...
|
|
void | PlaceMemory (const Memory< double > &) |
| This requests read access from where the memory is valid and temporarily replaces the corresponding array used by the PETSc Vec. More...
|
|
void | ResetMemory () |
| Completes the operation started with PlaceMemory. More...
|
|
void | UpdateVecFromFlags () |
| Update PETSc's Vec after having accessed its data via GetMemory() More...
|
|
void | Randomize (PetscInt seed=0) |
| Set random values. More...
|
|
void | Print (const char *fname=NULL, bool binary=false) const |
| Prints the vector (to stdout if fname is NULL) More...
|
|
const double * | Read (bool=true) const override |
| Shortcut for mfem::Read(vec.GetMemory(), vec.Size(), on_dev). More...
|
|
const double * | HostRead () const override |
| Shortcut for mfem::Read(vec.GetMemory(), vec.Size(), false). More...
|
|
double * | Write (bool=true) override |
| Shortcut for mfem::Write(vec.GetMemory(), vec.Size(), on_dev). More...
|
|
double * | HostWrite () override |
| Shortcut for mfem::Write(vec.GetMemory(), vec.Size(), false). More...
|
|
double * | ReadWrite (bool=true) override |
| Shortcut for mfem::ReadWrite(vec.GetMemory(), vec.Size(), on_dev). More...
|
|
double * | HostReadWrite () override |
| Shortcut for mfem::ReadWrite(vec.GetMemory(), vec.Size(), false). More...
|
|
bool | UseDevice () const override |
| Return the device flag of the Memory object used by the Vector. More...
|
|
void | UseDevice (bool) const override |
| Enable execution of Vector operations using the mfem::Device. More...
|
|
| Vector () |
|
| Vector (const Vector &) |
| Copy constructor. Allocates a new data array and copies the data. More...
|
|
| Vector (Vector &&v) |
| Move constructor. "Steals" data from its argument. More...
|
|
| Vector (int s) |
| Creates vector of size s. More...
|
|
| Vector (double *data_, int size_) |
| Creates a vector referencing an array of doubles, owned by someone else. More...
|
|
| Vector (Vector &base, int base_offset, int size_) |
| Create a Vector referencing a sub-vector of the Vector base starting at the given offset, base_offset, and size size_. More...
|
|
| Vector (int size_, MemoryType mt) |
| Create a Vector of size size_ using MemoryType mt. More...
|
|
| Vector (int size_, MemoryType h_mt, MemoryType d_mt) |
| Create a Vector of size size_ using host MemoryType h_mt and device MemoryType d_mt. More...
|
|
template<int N> |
| Vector (const double(&values)[N]) |
| Create a vector using a braced initializer list. More...
|
|
void | Load (std::istream **in, int np, int *dim) |
| Reads a vector from multiple files. More...
|
|
void | Load (std::istream &in, int Size) |
| Load a vector from an input stream. More...
|
|
void | Load (std::istream &in) |
| Load a vector from an input stream, reading the size from the stream. More...
|
|
void | SetSize (int s) |
| Resize the vector to size s. More...
|
|
void | SetSize (int s, MemoryType mt) |
| Resize the vector to size s using MemoryType mt. More...
|
|
void | SetSize (int s, Vector &v) |
| Resize the vector to size s using the MemoryType of v. More...
|
|
void | SetData (double *d) |
|
void | SetDataAndSize (double *d, int s) |
| Set the Vector data and size. More...
|
|
void | NewDataAndSize (double *d, int s) |
| Set the Vector data and size, deleting the old data, if owned. More...
|
|
void | NewMemoryAndSize (const Memory< double > &mem, int s, bool own_mem) |
| Reset the Vector to use the given external Memory mem and size s. More...
|
|
void | MakeRef (Vector &base, int offset, int size) |
| Reset the Vector to be a reference to a sub-vector of base. More...
|
|
void | MakeRef (Vector &base, int offset) |
| Reset the Vector to be a reference to a sub-vector of base without changing its current size. More...
|
|
void | MakeDataOwner () const |
| Set the Vector data (host pointer) ownership flag. More...
|
|
void | Destroy () |
| Destroy a vector. More...
|
|
void | DeleteDevice (bool copy_to_host=true) |
| Delete the device pointer, if owned. If copy_to_host is true and the data is valid only on device, move it to host before deleting. Invalidates the device memory. More...
|
|
int | Size () const |
| Returns the size of the vector. More...
|
|
int | Capacity () const |
| Return the size of the currently allocated data array. More...
|
|
double * | GetData () const |
| Return a pointer to the beginning of the Vector data. More...
|
|
MFEM_DEPRECATED | operator double * () |
| Conversion to double * . Deprecated. More...
|
|
MFEM_DEPRECATED | operator const double * () const |
| Conversion to const double * . Deprecated. More...
|
|
double * | begin () |
| STL-like begin. More...
|
|
double * | end () |
| STL-like end. More...
|
|
const double * | begin () const |
| STL-like begin (const version). More...
|
|
const double * | end () const |
| STL-like end (const version). More...
|
|
Memory< double > & | GetMemory () |
| Return a reference to the Memory object used by the Vector. More...
|
|
const Memory< double > & | GetMemory () const |
| Return a reference to the Memory object used by the Vector, const version. More...
|
|
void | SyncMemory (const Vector &v) const |
| Update the memory location of the vector to match v. More...
|
|
void | SyncAliasMemory (const Vector &v) const |
| Update the alias memory location of the vector to match v. More...
|
|
bool | OwnsData () const |
| Read the Vector data (host pointer) ownership flag. More...
|
|
void | StealData (double **p) |
| Changes the ownership of the data; after the call the Vector is empty. More...
|
|
double * | StealData () |
| Changes the ownership of the data; after the call the Vector is empty. More...
|
|
double & | Elem (int i) |
| Access Vector entries. Index i = 0 .. size-1. More...
|
|
const double & | Elem (int i) const |
| Read only access to Vector entries. Index i = 0 .. size-1. More...
|
|
double & | operator() (int i) |
| Access Vector entries using () for 0-based indexing. More...
|
|
const double & | operator() (int i) const |
| Read only access to Vector entries using () for 0-based indexing. More...
|
|
double & | operator[] (int i) |
| Access Vector entries using [] for 0-based indexing. More...
|
|
const double & | operator[] (int i) const |
| Read only access to Vector entries using [] for 0-based indexing. More...
|
|
double | operator* (const double *) const |
| Dot product with a double * array. More...
|
|
double | operator* (const Vector &v) const |
| Return the inner-product. More...
|
|
Vector & | operator= (const double *v) |
| Copy Size() entries from v. More...
|
|
Vector & | operator= (const Vector &v) |
| Copy assignment. More...
|
|
Vector & | operator= (Vector &&v) |
| Move assignment. More...
|
|
Vector & | operator= (double value) |
| Redefine '=' for vector = constant. More...
|
|
Vector & | operator*= (double c) |
|
Vector & | operator*= (const Vector &v) |
| Component-wise scaling: (*this)(i) *= v(i) More...
|
|
Vector & | operator/= (double c) |
|
Vector & | operator/= (const Vector &v) |
| Component-wise division: (*this)(i) /= v(i) More...
|
|
Vector & | operator-= (double c) |
|
Vector & | operator-= (const Vector &v) |
|
Vector & | operator+= (double c) |
|
Vector & | operator+= (const Vector &v) |
|
Vector & | Add (const double a, const Vector &Va) |
| (*this) += a * Va More...
|
|
Vector & | Set (const double a, const Vector &x) |
| (*this) = a * x More...
|
|
void | SetVector (const Vector &v, int offset) |
|
void | AddSubVector (const Vector &v, int offset) |
|
void | Neg () |
| (*this) = -(*this) More...
|
|
void | Swap (Vector &other) |
| Swap the contents of two Vectors. More...
|
|
void | median (const Vector &lo, const Vector &hi) |
| v = median(v,lo,hi) entrywise. Implementation assumes lo <= hi. More...
|
|
void | GetSubVector (const Array< int > &dofs, Vector &elemvect) const |
| Extract entries listed in dofs to the output Vector elemvect. More...
|
|
void | GetSubVector (const Array< int > &dofs, double *elem_data) const |
| Extract entries listed in dofs to the output array elem_data. More...
|
|
void | SetSubVector (const Array< int > &dofs, const double value) |
| Set the entries listed in dofs to the given value. More...
|
|
void | SetSubVector (const Array< int > &dofs, const Vector &elemvect) |
| Set the entries listed in dofs to the values given in the elemvect Vector. Negative dof values cause the -dof-1 position in this Vector to receive the -val from elemvect. More...
|
|
void | SetSubVector (const Array< int > &dofs, double *elem_data) |
| Set the entries listed in dofs to the values given the , elem_data array. Negative dof values cause the -dof-1 position in this Vector to receive the -val from elem_data. More...
|
|
void | AddElementVector (const Array< int > &dofs, const Vector &elemvect) |
| Add elements of the elemvect Vector to the entries listed in dofs. Negative dof values cause the -dof-1 position in this Vector to add the -val from elemvect. More...
|
|
void | AddElementVector (const Array< int > &dofs, double *elem_data) |
| Add elements of the elem_data array to the entries listed in dofs. Negative dof values cause the -dof-1 position in this Vector to add the -val from elem_data. More...
|
|
void | AddElementVector (const Array< int > &dofs, const double a, const Vector &elemvect) |
| Add times the elements of the elemvect Vector to the entries listed in dofs. Negative dof values cause the -dof-1 position in this Vector to add the -a*val from elemvect. More...
|
|
void | SetSubVectorComplement (const Array< int > &dofs, const double val) |
| Set all vector entries NOT in the dofs Array to the given val. More...
|
|
void | Print (std::ostream &out=mfem::out, int width=8) const |
| Prints vector to stream out. More...
|
|
void | Print (adios2stream &out, const std::string &variable_name) const |
|
void | Print_HYPRE (std::ostream &out) const |
| Prints vector to stream out in HYPRE_Vector format. More...
|
|
void | PrintHash (std::ostream &out) const |
| Print the Vector size and hash of its data. More...
|
|
void | Randomize (int seed=0) |
| Set random values in the vector. More...
|
|
double | Norml2 () const |
| Returns the l2 norm of the vector. More...
|
|
double | Normlinf () const |
| Returns the l_infinity norm of the vector. More...
|
|
double | Norml1 () const |
| Returns the l_1 norm of the vector. More...
|
|
double | Normlp (double p) const |
| Returns the l_p norm of the vector. More...
|
|
double | Max () const |
| Returns the maximal element of the vector. More...
|
|
double | Min () const |
| Returns the minimal element of the vector. More...
|
|
double | Sum () const |
| Return the sum of the vector entries. More...
|
|
double | DistanceSquaredTo (const double *p) const |
| Compute the square of the Euclidean distance to another vector. More...
|
|
double | DistanceSquaredTo (const Vector &p) const |
| Compute the square of the Euclidean distance to another vector. More...
|
|
double | DistanceTo (const double *p) const |
| Compute the Euclidean distance to another vector. More...
|
|
double | DistanceTo (const Vector &p) const |
| Compute the Euclidean distance to another vector. More...
|
|
int | CheckFinite () const |
| Count the number of entries in the Vector for which isfinite is false, i.e. the entry is a NaN or +/-Inf. More...
|
|
virtual | ~Vector () |
| Destroys vector. More...
|
|