DMStagVecSplitToDMDA#

create a DMDA and Vec from a subgrid of a DMSTAG and its Vec

Synopsis#

#include "petscdmda.h"   
#include "petscdmstag.h"   
PetscErrorCode DMStagVecSplitToDMDA(DM dm, Vec vec, DMStagStencilLocation loc, PetscInt c, DM *pda, Vec *pdavec)

Collective

Input Parameters#

  • dm - the DMSTAG object

  • vec - Vec object associated with dm

  • loc - which subgrid to extract (see DMStagStencilLocation)

  • c - which component to extract (see note below)

Output Parameters#

  • pda - the DMDA

  • pdavec - the new Vec

Notes#

If a c value of -k is provided, the first k DOF for that position are extracted, padding with zero values if needed. If a non-negative value is provided, a single DOF is extracted.

The caller is responsible for destroying the created DMDA and Vec.

See Also#

DMSTAG: Staggered, Structured Grid, DMSTAG, DMDA, DMStagStencilLocation, DM, Vec, DMStagMigrateVec(), DMStagCreateCompatibleDMStag()

Level#

advanced

Location#

src/dm/impls/stag/stagda.c

Examples#

src/dm/impls/stag/tutorials/ex4.c
src/dm/impls/stag/tutorials/ex6.c


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