:orphan: # VecGetArray1d Returns a pointer to a 1d contiguous array that contains this processor's portion of the vector data. You MUST call `VecRestoreArray1d()` when you no longer need access to the array. ## Synopsis ``` #include "petscvec.h" PetscErrorCode VecGetArray1d(Vec x, PetscInt m, PetscInt mstart, PetscScalar *a[]) ``` Logically Collective ## Input Parameters - ***x -*** the vector - ***m -*** first dimension of two dimensional array - ***mstart -*** first index you will use in first coordinate direction (often 0) ## Output Parameter - ***a -*** location to put pointer to the array ## Notes For a vector obtained from `DMCreateLocalVector()` `mstart` is likely obtained from the corner indices obtained from `DMDAGetGhostCorners()` while for `DMCreateGlobalVector()` they are the corner indices from `DMDAGetCorners()`. For standard PETSc vectors this is an inexpensive call; it does not copy the vector values. ## See Also [](ch_vectors), `Vec`, `VecGetArray()`, `VecRestoreArray()`, `VecGetArrays()`, `VecGetArrayF90()`, `VecPlaceArray()`, `VecRestoreArray2d()`, `DMDAVecGetArray()`, `DMDAVecRestoreArray()`, `VecGetArray3d()`, `VecRestoreArray3d()`, `VecGetArray2d()`, `VecRestoreArray1d()`, `VecGetArray4d()`, `VecRestoreArray4d()` ## Level developer ## Location src/vec/vec/interface/rvector.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/vec/interface/rvector.c) [Index of all Vec routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)