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

# DMCreateDomainDecomposition

Returns lists of IS objects defining a decomposition of a problem into subproblems corresponding to restrictions to pairs nested subdomains: each IS contains the global indices of the dofs of the corresponding subdomains. The inner subdomains conceptually define a nonoverlapping covering, while outer subdomains can overlap. The optional list of DMs define the DM for each subproblem.

### Synopsis

    #include "petscdm.h"
    #include "petscdmlabel.h"
    PetscErrorCode DMCreateDomainDecomposition(DM dm, PetscInt *len, char ***namelist, IS **innerislist, IS **outerislist, DM **dmlist)

Not collective Many br

### Input Parameter

dm -the DM object Many br

### Output Parameters

| len | - The number of subproblems in the domain decomposition (or NULL if not requested) Many br
| namelist | - The name for each subdomain (or NULL if not requested) Many br
| innerislist | - The global indices for each inner subdomain (or NULL, if not requested) Many br
| outerislist | - The global indices for each outer subdomain (or NULL, if not requested) Many br
| dmlist | - The DMs for each subdomain 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(), DMCreateDomainDecompositionDM(), DMCreateFieldDecomposition()

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