Skip to main content
`Ctrl`+`K`

# PetscSectionCreateSubdomainSection

Create a new, smaller section with support on a subdomain of the mesh

## Synopsis

    #include "petscsection.h"
    PetscErrorCode PetscSectionCreateSubdomainSection(PetscSection s, IS subpointMap, PetscSection *subs)

Collective

## Input Parameters

- s - the `PetscSection`

- subpointMap - a sorted list of points in the original mesh which are in the subdomain

## Output Parameter

- subs - the subsection

## Notes

The point numbers remain the same as in the larger `PetscSection`, but the section offsets now refer to a new, smaller vector. The chart of `subs` is `[min(subpointMap),max(subpointMap)+1)`

Compare this with `PetscSectionCreateSubmeshSection()` that maps the point numbers to start at zero

## Developer Notes

The use of the term Subdomain is unneeded and needs clarification, it is not specific to meshes. It appears to be just a subset of the chart of the original `PetscSection`

## See Also

PetscSection, `PetscSection`, `PetscSectionCreateSubmeshSection()`, `PetscSectionCreateSubsection()`, `DMPlexGetSubpointMap()`, `PetscSectionCreate()`

## Level

advanced

## Location

src/vec/is/section/interface/section.c

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