petsc-3.8.4 2018-03-24
Report Typos and Errors


Returns a multiple dimension array that shares data with the underlying vector and is indexed using the global dimensions.


#include "petscdmda.h"   
PetscErrorCode  DMDAVecGetArrayDOFRead(DM da,Vec vec,void *array)
Not Collective

Input Parameter

da - the distributed array
vec - the vector, either a vector the same size as one obtained with DMCreateGlobalVector() or DMCreateLocalVector()

Output Parameter

array -the array


Call DMDAVecRestoreArrayDOFRead() once you have finished accessing the vector entries.

In C, the indexing is "backwards" from what expects: array[k][j][i][DOF] NOT array[i][j][k][DOF]!

In Fortran 90 you do not need a version of DMDAVecRestoreArrayDOF() just use DMDAVecRestoreArrayReadF90() and declare your array with one higher dimension, see src/dm/examples/tutorials/ex11f90.F


distributed array, get, corners, nodes, local indices, coordinates

See Also

DMDAGetGhostCorners(), DMDAGetCorners(), VecGetArray(), VecRestoreArray(), DMDAVecRestoreArray(), DMDAVecGetArray(), DMDAVecRestoreArrayDOF()

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