:orphan: # PetscFormKey This key indicates how to use a set of pointwise functions defining part of a system of equations ## Synopsis ``` typedef struct _PetscFormKey { DMLabel label; /* The (label, value) select a subdomain */ PetscInt value; PetscInt field; /* Selects the field for the test function */ PetscInt part; /* Selects the equation part. For example, LHS = 0 and RHS = 1 in IMEX methods. More pieces can be present for operator splitting methods. */ } PetscFormKey; ``` The subdomain on which to integrate is specified by (label, value), the test function field by (field), and the piece of the equation by (part). For example, LHS = 0 and RHS = 1 in IMEX methods. More pieces can be present for operator splitting methods. ## See Also `DMPlexSNESComputeResidualFEM()`, `DMPlexSNESComputeJacobianFEM()`, `DMPlexSNESComputeBoundaryFEM()` ## Level intermediate ## Location include/petscdstypes.h --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscdstypes.h) [Index of all DT routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)