petsc-3.14.5 2021-03-03
Report Typos and Errors

# DMStagCreateCompatibleDMStag

create a compatible DMStag with different dof/stratum

### Synopsis

    PetscErrorCode DMStagCreateCompatibleDMStag(DM dm,PetscInt dof0,PetscInt dof1,PetscInt dof2,PetscInt dof3,DM *newdm)

Collective

### Input Parameters

| dm | - the DMStag object
| dof0,dof1,dof2,dof3 | - number of dof on each stratum in the new DMStag

### Output Parameters

| newdm | - the new, compatible DMStag

### Notes

Dof supplied for strata too big for the dimension are ignored; these may be set to 0. For example, for a 2-dimensional DMStag, dof2 sets the number of dof per element, and dof3 is unused. For a 3-dimensional DMStag, dof3 sets the number of dof per element.

In contrast to DMDACreateCompatibleDMDA(), coordinates are not reused.

### See Also

DMSTAG, DMDACreateCompatibleDMDA(), DMGetCompatibility(), DMStagMigrateVec()

### Level

intermediate

### Location

src/dm/impls/stag/stagutils.c

### Examples

src/dm/impls/stag/tutorials/ex1.c.html
src/dm/impls/stag/tutorials/ex2.c.html
src/dm/impls/stag/tutorials/ex3.c.html
src/dm/impls/stag/tutorials/ex4.c.html
src/dm/impls/stag/tutorials/ex6.c.html
Index of all DMSTAG routines
Table of Contents for all manual pages
Index of all manual pages