DMPlexComputeCellGeometryFEM — PETSc 3.23.0 documentation

Skip to main content
`Ctrl`+`K`

# DMPlexComputeCellGeometryFEM

Compute the Jacobian, inverse Jacobian, and Jacobian determinant at each quadrature point in the given cell

## Synopsis

    #include "petscdmplex.h"
    #include "petscfe.h"
    PetscErrorCode DMPlexComputeCellGeometryFEM(DM dm, PetscInt cell, PetscQuadrature quad, PetscReal *v, PetscReal J[], PetscReal invJ[], PetscReal *detJ)

Collective

## Input Parameters

- dm - the `DMPLEX`

- cell - the cell

- quad - the quadrature containing the points in the reference element where the geometry will be evaluated. If `quad` is `NULL`, geometry will be evaluated at the first vertex of the reference element

## Output Parameters

- v - the image of the transformed quadrature points, otherwise the image of the first vertex in the closure of the reference element

- J - the Jacobian of the transform from the reference element at each quadrature point

- invJ - the inverse of the Jacobian at each quadrature point

- detJ - the Jacobian determinant at each quadrature point

## Note

Implicit cell geometry must be used when the topological mesh dimension is not equal to the coordinate dimension, for instance for embedded manifolds.

## See Also

`DMPLEX`, `DMGetCoordinateSection()`, `DMGetCoordinates()`

## Level

advanced

## Location

src/dm/impls/plex/plexgeometry.c

## Examples

src/tao/tutorials/ex3.c

## Implementations

DMPlexComputeCellGeometryFEM_Implicit() in src/dm/impls/plex/plexgeometry.c
DMPlexComputeCellGeometryFEM_FE() in src/dm/impls/plex/plexgeometry.c

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