Skip to main content
`Ctrl`+`K`

# PCASMSetDMSubdomains

Indicates whether to use `DMCreateDomainDecomposition()` to define the subdomains, whenever possible.

## Synopsis

    #include "petscpc.h"
    PetscErrorCode PCASMSetDMSubdomains(PC pc, PetscBool flg)

Logically Collective

## Input Parameters

- pc - the preconditioner

- flg - boolean indicating whether to use subdomains defined by the `DM`

## Options Database Key

- -pc_asm_dm_subdomains (true|false) - use subdomains defined by the `DM` with `DMCreateDomainDecomposition()`

## Note

`PCASMSetTotalSubdomains()` and `PCASMSetOverlap()` take precedence over `PCASMSetDMSubdomains()`, so setting either of the first two effectively turns the latter off.

## Developer Note

This should be `PCASMSetUseDMSubdomains()`, similarly for the options database key

## See Also

KSP: Linear System Solvers, `PCASM`, `PCASMGetDMSubdomains()`, `PCASMSetTotalSubdomains()`, `PCASMSetOverlap()`, `PCASMCreateSubdomains2D()`, `PCASMSetLocalSubdomains()`, `PCASMGetLocalSubdomains()`

## Level

intermediate

## Location

src/ksp/pc/impls/asm/asm.c

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