petsc-3.14.5 2021-03-03
Report Typos and Errors

# DMBoundaryConditionType

indicates what type of boundary condition is to be imposed

### Synopsis

    typedef enum {DM_BC_ESSENTIAL = 1, DM_BC_ESSENTIAL_FIELD = 5, DM_BC_NATURAL = 2, DM_BC_NATURAL_FIELD = 6, DM_BC_ESSENTIAL_BD_FIELD = 9, DM_BC_NATURAL_RIEMANN = 10} DMBoundaryConditionType;

### Note: This flag indicates the type of function which will define the condition

    DM_BC_ESSENTIAL       - A Dirichlet condition using a function of the coordinates

    DM_BC_ESSENTIAL_FIELD - A Dirichlet condition using a function of the coordinates and auxiliary field data

    DM_BC_ESSENTIAL_BD_FIELD - A Dirichlet condition using a function of the coordinates, facet normal, and auxiliary field data

    DM_BC_NATURAL         - A Neumann condition using a function of the coordinates

    DM_BC_NATURAL_FIELD   - A Neumann condition using a function of the coordinates and auxiliary field data

    DM_BC_NATURAL_RIEMANN - A flux condition which determines the state in ghost cells

The user can check whether a boundary condition is essential using (type & DM_BC_ESSENTIAL), and similarly for natural conditions (type & DM_BC_NATURAL)

### See Also

DMAddBoundary(), DMGetBoundary()

### Level

beginner

### Location

src/dm/../../include/petscdmtypes.h

### Examples

src/dm/impls/plex/tutorials/ex2.c.html
src/snes/tutorials/ex12.c.html
src/snes/tutorials/ex17.c.html
src/snes/tutorials/ex56.c.html
src/snes/tutorials/ex62.c.html
src/snes/tutorials/ex77.c.html
src/ts/tutorials/ex11.c.html
src/ts/tutorials/ex45.c.html
src/ts/tutorials/ex46.c.html
src/ts/tutorials/ex48.c.html
src/tao/tutorials/ex1.c.html
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages