:orphan:
# DMDALocalInfo
C struct that contains information about a structured grid and a processors logical location in it. 
## Synopsis
```
typedef struct {
  PetscInt        dim, dof, sw;
  PetscInt        mx, my, mz;    /* global number of grid points in each direction */
  PetscInt        xs, ys, zs;    /* starting point of this processor, excluding ghosts */
  PetscInt        xm, ym, zm;    /* number of grid points on this processor, excluding ghosts */
  PetscInt        gxs, gys, gzs; /* starting point of this processor including ghosts */
  PetscInt        gxm, gym, gzm; /* number of grid points on this processor including ghosts */
  DMBoundaryType  bx, by, bz;    /* type of ghost nodes at boundary */
  DMDAStencilType st;
  DM              da;
} DMDALocalInfo;
```



## Fortran Note
This should be declared as
```none
`DMDALocalInfo` :: info(DMDA_LOCAL_INFO_SIZE)
```
and the entries accessed via
```none
    info(DMDA_LOCAL_INFO_DIM)
    info(DMDA_LOCAL_INFO_DOF) etc.
```

The entries bx,by,bz, st, and da are not accessible from Fortran.


## See Also
 `DMDA`, `DMDACreate1d()`, `DMDACreate2d()`, `DMDACreate3d()`, `DMDestroy()`, `DM`, `DMDAGetLocalInfo()`, `DMDAGetInfo()`

## Level
beginner

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscdmdatypes.h.html#DMDALocalInfo">include/petscdmdatypes.h</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscdmdatypes.h)


[Index of all DMDA routines](index.md)  
[Table of Contents for all manual pages](/manualpages/index.md)  
[Index of all manual pages](/manualpages/singleindex.md)  
