Fe_nodal module (fe_nodal.h)

Functions

PetscBool feNodalSupports(PetscInt order)

Reports whether the nodal H1 basis supports a given order.

This function returns whether a matched nodal H1 basis is available for the requested order, i.e. whether order lies in [1, FE_NODAL_MAX_ORDER].

Parameters:
  • order[in] Polynomial order.

  • order[in] Polynomial order.

Returns:

PETSC_TRUE for order in [1, FE_NODAL_MAX_ORDER], else PETSC_FALSE.

Returns:

PETSC_TRUE for order in [1, FE_NODAL_MAX_ORDER], else PETSC_FALSE.

PetscErrorCode feNodalH1Shape(PetscInt order, const PetscReal *vertexCoords, const PetscReal X[3], PetscReal *ShapH, PetscReal **GradH)

Evaluates the nodal H1 shape values and reference gradients.

This function evaluates the arbitrary-order nodal (Lagrange) H1 basis at a reference-cell point and writes the shape values and reference gradients in DMPlex H1 closure order [volume, face, edge, vertex]. It first builds the 1D nodal factors L_k(lam_i) and their derivatives by recurrence, then emits the vertex, edge, face and volume DOFs via feNodalEmit. Edge and face DOFs are oriented geometrically by lexicographic vertex coordinate (using the cell vertex coordinates), so the emitted ordering matches the Nedelec side and the two spaces stay conforming; volume DOFs are never shared and use a fixed enumeration.

Parameters:
  • order[in] Polynomial order (1..6).

  • vertexCoords[in] Cell vertex coordinates (4x3) for edge/face orientation.

  • X[in] Reference-cell evaluation point (3).

  • ShapH[out] Shape values, one per H1 DOF, in closure order.

  • GradH[out] Reference gradients: GradH[d][dof], d in [0,3).

  • order[in] Polynomial order (1..FE_NODAL_MAX_ORDER).

  • vertexCoords[in] Cell vertex coordinates (4x3) for edge/face orientation.

  • X[in] Reference-cell evaluation point (3).

  • ShapH[out] Shape values, one per H1 DOF, in closure order.

  • GradH[out] Reference gradients: GradH[d][dof], d in [0,3).

Returns:

PetscErrorCode PETSC_SUCCESS on success, or a PETSc error code.

Returns:

PetscErrorCode PETSC_SUCCESS on success, or a PETSc error code.