VecGetArray1dWrite — PETSc 3.23.0 documentation

Skip to main content
`Ctrl`+`K`

# VecGetArray1dWrite

Returns a pointer to a 1d contiguous array that will contain this processor’s portion of the vector data. You MUST call `VecRestoreArray1dWrite()` when you no longer need access to the array.

## Synopsis

    #include "petscvec.h"
    PetscErrorCode VecGetArray1dWrite(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

Vectors and Parallel Data, `Vec`, `VecGetArray()`, `VecRestoreArray()`, `VecGetArrays()`, `VecPlaceArray()`, `VecRestoreArray2d()`, `DMDAVecGetArray()`, `DMDAVecRestoreArray()`, `VecGetArray3d()`, `VecRestoreArray3d()`, `VecGetArray2d()`, `VecRestoreArray1d()`, `VecGetArray4d()`, `VecRestoreArray4d()`

## Level

developer

## Location

src/vec/vec/interface/rvector.c

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