Skip to main content
`Ctrl`+`K`

# DMShellSetCreateDomainDecompositionScatters

Set the routine used to create the scatter contexts for domain decomposition with a `DMSHELL`

## Synopsis

    #include "petscdmshell.h"
    PetscErrorCode DMShellSetCreateDomainDecompositionScatters(DM dm, PetscErrorCode (*scatter)(DM dm, PetscInt n, DM subdms[], VecScatter *iscat[], VecScatter *oscat[], VecScatter *gscat[]))

Logically Collective

## Input Parameters

- dm - the `DMSHELL`

- scatter - the routine to create the scatters

## Calling sequence of `scatter`

- dm - the `DM` to decompose into domains

- n - number of subdomains

- subdms - the sub `DM`

- iscat - output, the inner scatters for the subdomains

- oscat - output, outer scatters for the subdomains

- gscat - output, the global scatters for the subdomains

## See Also

`DM`, `DMSHELL`, `DMCreateDomainDecompositionScatters()`, `DMShellSetContext()`, `DMShellGetContext()`

## Level

advanced

## Location

src/dm/impls/shell/dmshell.c

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