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#

In Fortran one must pass in arrays lx, ly, and lz that are long enough to hold the values; the sixth, seventh and eighth arguments from DMDAGetInfo()

See Also#

DM, DMDA, DMDAGetCorners(), DMDAGetGhostCorners(), DMDACreate(), DMDACreate1d(), DMDACreate2d(), DMDACreate3d(), VecGetOwnershipRanges()

Level#

intermediate

Location#

src/dm/impls/da/da.c

Examples#

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


Edit on GitLab

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