:orphan: # PetscFEIntegrateBdJacobian Produce the boundary element Jacobian for a chunk of elements by quadrature integration ## Synopsis ``` #include "petscfe.h" PetscErrorCode PetscFEIntegrateBdJacobian(PetscDS ds, PetscWeakForm wf, PetscFormKey key, PetscInt Ne, PetscFEGeom *fgeom, const PetscScalar coefficients[], const PetscScalar coefficients_t[], PetscDS probAux, const PetscScalar coefficientsAux[], PetscReal t, PetscReal u_tshift, PetscScalar elemMat[]) ``` Not Collective ## Input Parameters - ***ds -*** The `PetscDS` specifying the discretizations and continuum functions - ***wf -*** The PetscWeakForm holding the pointwise functions - ***key -*** The (label+value, fieldI*Nf + fieldJ) being integrated - ***Ne -*** The number of elements in the chunk - ***fgeom -*** The face geometry for each cell in the chunk - ***coefficients -*** The array of FEM basis coefficients for the elements for the Jacobian evaluation point - ***coefficients_t -*** The array of FEM basis time derivative coefficients for the elements - ***probAux -*** The `PetscDS` specifying the auxiliary discretizations - ***coefficientsAux -*** The array of FEM auxiliary basis coefficients for the elements - ***t -*** The time - ***u_tShift -*** A multiplier for the dF/du_t term (as opposed to the dF/du term) ## Output Parameter - ***elemMat -*** the element matrices for the Jacobian from each element ## Note ```none Loop over batch of elements (e): Loop over element matrix entries (f,fc,g,gc --> i,j): Loop over quadrature points (q): Make u_q and gradU_q (loops over fields,Nb,Ncomp) elemMat[i,j] += \psi^{fc}_f(q) g0_{fc,gc}(u, \nabla u) \phi^{gc}_g(q) + \psi^{fc}_f(q) \cdot g1_{fc,gc,dg}(u, \nabla u) \nabla\phi^{gc}_g(q) + \nabla\psi^{fc}_f(q) \cdot g2_{fc,gc,df}(u, \nabla u) \phi^{gc}_g(q) + \nabla\psi^{fc}_f(q) \cdot g3_{fc,gc,df,dg}(u, \nabla u) \nabla\phi^{gc}_g(q) ``` ## See Also `PetscFEIntegrateJacobian()`, `PetscFEIntegrateResidual()` ## Level intermediate ## Location src/dm/dt/fe/interface/fe.c ## Implementations PetscFEIntegrateBdJacobian_Basic in src/dm/dt/fe/impls/basic/febasic.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/dt/fe/interface/fe.c) [Index of all FE routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)