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
DMPLEXcell - the cell
quad - the quadrature containing the points in the reference element where the geometry will be evaluated. If
quadisNULL, 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. This is a one-dimensional array of size \(cdim * Nq\) where \(cdim\) is the dimension of the
DMcoordinate space and \(Nq\) is the number of quadrature pointsJ - the Jacobian of the transform from the reference element at each quadrature point. This is a one-dimensional array of size \(Nq * cdim * cdim\) containing each Jacobian in column-major order.
invJ - the inverse of the Jacobian at each quadrature point. This is a one-dimensional array of size \(Nq * cdim * cdim\) containing each inverse Jacobian in column-major order.
detJ - the Jacobian determinant at each quadrature point. This is a one-dimensional array of size \(Nq\).
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#
Level#
advanced
Location#
Examples#
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