DMDACreateNaturalVector#
Creates a parallel PETSc vector that will hold vector values in the natural numbering, rather than in the PETSc parallel numbering associated with the DMDA.
Synopsis#
#include "petscdmda.h"
PetscErrorCode DMDACreateNaturalVector(DM da, Vec *g)
Collective
Input Parameter#
da - the distributed array
Output Parameter#
g - the distributed global vector
Notes#
The natural numbering is a number of grid nodes that starts with, in three dimensions, with (0,0,0), (1,0,0), (2,0,0), …, (m-1,0,0) followed by (0,1,0), (1,1,0), (2,1,0), …, (m,1,0) etc up to (0,n-1,p-1), (1,n-1,p-1), (2,n-1,p-1), …, (m-1,n-1,p-1).
The output parameter, g, is a regular Vec that should be destroyed
with a call to VecDestroy() when usage is finished.
The number of local entries in the vector on each process is the same
as in a vector created with DMCreateGlobalVector().
See Also#
DMDA - Creating vectors for structured grids, DM, DMDA, DMDAGlobalToNaturalBegin(), DMDAGlobalToNaturalEnd(), DMDANaturalToGlobalBegin(), DMDANaturalToGlobalEnd(),
DMCreateLocalVector(), VecDuplicate(), VecDuplicateVecs(), DMDACreate1d(), DMDACreate2d(), DMDACreate3d(), DMGlobalToLocalBegin(),
DMGlobalToLocalEnd(), DMLocalToGlobalBegin()
Level#
advanced
Location#
Examples#
src/dm/tutorials/ex6.c
src/ksp/ksp/tutorials/ex71.c
Index of all DMDA routines
Table of Contents for all manual pages
Index of all manual pages