VecGetArrayWrite#

Returns a pointer to a contiguous array that WILL contains this processor’s portion of the vector data. The values in this array are NOT valid, the routine calling this routine is responsible for putting values into the array; any values it does not set will be invalid

Synopsis#

#include "petscvec.h"   
PetscErrorCode VecGetArrayWrite(Vec x, PetscScalar **a)

Logically Collective

Input Parameter#

  • x - the vector

Output Parameter#

  • a - location to put pointer to the array

This is for vectors associate with GPUs, the vector is not copied up before giving access. If you need correct values in the array use VecGetArray()

See Also#

Vectors and Parallel Data, Vec, VecRestoreArray(), VecGetArrayRead(), VecGetArrays(), VecGetArrayF90(), VecGetArrayReadF90(), VecPlaceArray(), VecGetArray2d(), VecGetArrayPair(), VecRestoreArrayPair(), VecGetArray(), VecRestoreArrayWrite()

Level#

intermediate

Location#

src/vec/vec/interface/rvector.c

Examples#

src/dm/impls/plex/tutorials/ex11.c.html
src/dm/impls/plex/tutorials/ex14.c.html
src/snes/tutorials/ex17.c.html
src/ts/tutorials/ex23fwdadj.c.html
src/ts/tutorials/ex3.c.html
src/ts/tutorials/ex36.c.html
src/ts/tutorials/ex43.c.html
src/ts/tutorials/ex77.c.html
src/tao/unconstrained/tutorials/rosenbrock3.c.html

Implementations#

VecGetArrayWrite_SeqKokkos in src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx
VecGetArrayWrite_SeqCUDA in src/vec/vec/impls/seq/seqcuda/veccuda.c
VecGetArrayWrite_SeqHIP in src/vec/vec/impls/seq/seqhip/vechip.hip.c
VecGetArrayWrite_SeqViennaCL in src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx


Edit on GitLab

Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages