# DMPlexInterpolatedFlag
Describes level of topological interpolatedness. 
## Synopsis
```
typedef enum {
  DMPLEX_INTERPOLATED_INVALID = -1,
  DMPLEX_INTERPOLATED_NONE    = 0,
  DMPLEX_INTERPOLATED_PARTIAL,
  DMPLEX_INTERPOLATED_MIXED,
  DMPLEX_INTERPOLATED_FULL
} DMPlexInterpolatedFlag;
```
Local or collective property depending on whether it is returned by `DMPlexIsInterpolated()` or `DMPlexIsInterpolatedCollective()`.

```none
DMPLEX_INTERPOLATED_INVALID - Uninitialized value (internal use only; never returned by `DMPlexIsInterpolated()` or `DMPlexIsInterpolatedCollective()`)
```
```none
DMPLEX_INTERPOLATED_NONE    - Mesh is not interpolated
```
```none
DMPLEX_INTERPOLATED_PARTIAL - Mesh is partially interpolated. This can e.g. mean `DMPLEX` with cells, faces and vertices but no edges represented, or a mesh with mixed cones (see `DMPlexStratify()` for an example)
```
```none
DMPLEX_INTERPOLATED_MIXED   - Can be returned only by `DMPlexIsInterpolatedCollective()`, meaning that `DMPlexIsInterpolated()` returns different interpolatedness on different ranks
```
```none
DMPLEX_INTERPOLATED_FULL    - Mesh is fully interpolated
```




## Note
An interpolated `DMPLEX` means that edges (and faces for 3d meshes) are present in the `DMPLEX` data structures.


## Developer Note
Any additions/changes here MUST also be made in include/petsc/finclude/petscdmplex.h and src/dm/f90-mod/petscdmplex.h


## See Also
 `DMPLEX`, `DMPlexIsInterpolated()`, `DMPlexIsInterpolatedCollective()`, `DMPlexInterpolate()`, `DMPlexUninterpolate()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscdmplex.h.html#DMPlexInterpolatedFlag">include/petscdmplex.h</A>


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


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