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
DMPLEXdmc - the column
DMPLEXkey - the
PetscFormKeyselecting the label, value, part, and field for assemblycellIS - the
ISlisting cells to process, orNULLt - 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
NULLctx - 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#
Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages