DMPlexComputeJacobianByKeyGeneral#

Assemble the Jacobian and its preconditioning matrix over a cell range described by a PetscFormKey for a general (possibly non-square, non-nested) pair of row/column DMs.

Synopsis#

#include "petscdmplex.h"   
PetscErrorCode DMPlexComputeJacobianByKeyGeneral(DM dmr, DM dmc, PetscFormKey key, IS cellIS, PetscReal t, PetscReal X_tShift, Vec locX, Vec locX_t, Mat Jac, Mat JacP, PetscCtx ctx)

Collective

Input Parameters#

  • dmr - the row DMPLEX

  • dmc - the column DMPLEX

  • key - the PetscFormKey selecting the label, value, part, and field for assembly

  • cellIS - the IS listing cells to process, or NULL

  • t - the current time

  • X_tShift - the time-derivative shift used to combine dynamic and static Jacobian contributions

  • locX - the local solution vector

  • locX_t - the local time-derivative vector, or NULL

  • ctx - the application context (unused; kept for API symmetry)

Output Parameters#

  • Jac - the assembled Jacobian matrix

  • JacP - the assembled matrix from which the preconditioner is constructed

See Also#

DMPlex: Unstructured Grids, DM, DMPLEX, PetscFormKey, DMPlexComputeJacobianByKey(), DMPlexComputeInterpolatorGeneral()

Level#

developer

Location#

src/dm/impls/plex/plexfem.c


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