petsc-3.7.1 2016-05-15
Report Typos and Errors

DMCreateFieldDecomposition

Returns a list of IS objects defining a decomposition of a problem into subproblems corresponding to different fields: each IS contains the global indices of the dofs of the corresponding field. The optional list of DMs define the DM for each subproblem. Generalizes DMCreateFieldIS().

Synopsis

#include "petscdm.h"          
#include "petscdmlabel.h"     
PetscErrorCode DMCreateFieldDecomposition(DM dm, PetscInt *len, char ***namelist, IS **islist, DM **dmlist)
Not collective Many br

Input Parameter

dm -the DM object Many br

Output Parameters

len - The number of subproblems in the field decomposition (or NULL if not requested) Many br
namelist - The name for each field (or NULL if not requested) Many br
islist - The global indices for each field (or NULL if not requested) Many br
dmlist - The DMs for each field subproblem (or NULL, if not requested; if NULL is returned, no DMs are defined) Many br

Many br

Notes

The user is responsible for freeing all requested arrays. In particular, every entry of names should be freed with Many brPetscFree(), every entry of is should be destroyed with ISDestroy(), every entry of dm should be destroyed with DMDestroy(), Many brand all of the arrays should be freed with PetscFree(). Many br

See Also

DMDestroy(), DMView(), DMCreateInterpolation(), DMCreateColoring(), DMCreateMatrix(), DMCreateFieldIS()

Level:intermediate
Location:
src/dm/interface/dm.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages