Finite Elements (PetscFE)#
The PetscFE
class encapsulates a finite element discretization. Each PetscFE
object contains a PetscSpace
, its dual PetscDualSpace
, and a DMPLEX
in the classic Ciarlet triple representation (https://finite-element.github.io/2_finite_elements.html).
- Achieving High Performance with Unified Residual Evaluation, Matthew G. Knepley, Jed Brown, Karl Rupp, Barry F. Smith, 2013.
- Finite Element Integration with Quadrature on the GPU, Matthew G. Knepley, Karl Rupp, Andy R. Terrel, 2016.
There are many SNES Examples using PetscFE
, such ex12, ex17, and ex62.
Developer Note:
Using an entire DMPLEX
object to provide the cell information seems unnecessary and complicated. Why not have a simple PetscCell
object that could encapsulate this information. It could then be used by a variety of DM
etc.