DMDAGetOwnershipRanges#

Gets the ranges of indices in the x, y and z direction that are owned by each process

Synopsis#

#include "petscdmda.h"   
PetscErrorCode DMDAGetOwnershipRanges(DM da, const PetscInt *lx[], const PetscInt *ly[], const PetscInt *lz[])

Not Collective

Input Parameter#

  • da - the DMDA object

Output Parameters#

  • lx - ownership along x direction (optional)

  • ly - ownership along y direction (optional)

  • lz - ownership along z direction (optional)

Note#

These correspond to the optional final arguments passed to DMDACreate(), DMDACreate2d(), DMDACreate3d()

In C you should not free these arrays, nor change the values in them. They will only have valid values while the DMDA they came from still exists (has not been destroyed).

These numbers are NOT multiplied by the number of dof per node.

Fortran Note#

Pass in arrays lx, ly, and lz of the appropriate length to hold the values; the sixth, seventh and eighth arguments from DMDAGetInfo()

See Also#

DMDA - Creating vectors for structured grids, DM, DMDA, DMDAGetCorners(), DMDAGetGhostCorners(), DMDACreate(), DMDACreate1d(), DMDACreate2d(), DMDACreate3d(), VecGetOwnershipRanges()

Level#

intermediate

Location#

src/dm/impls/da/da.c

Examples#

src/ksp/ksp/tutorials/ex42.c
src/dm/tutorials/ex22.c
src/ts/tutorials/ex10.c
src/dm/tutorials/ex51.c
src/ksp/ksp/tutorials/ex73.c
src/snes/tutorials/ex28.c


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