The Finite Element Method (FEM) is a widely used numerical technique, employed for the solution of partial differential equations (PDEs), arising in structural engineering analysis and more broadly in the field of continuum mechanics.
However, due to their generality and mathematically sound foundation, sections/fem
, are often employed in the implementation of other numerical schemes and for various computational operators, e.g. interpolation, integration, etc.
Mint provides basic support for sections/fem
that consists:
LagrangeBasis
shape functions for commonly employedCellTypes
- Corresponding
Quadratures
(under development) - Routines for forward/inverse
IsoparametricMapping
, and - Infrastructure to facilitate adding shape functions for new
CellTypes
, as well as, toAddABasis
.
This functionality is collectively exposed to the application through the mint::FiniteElement
class. Concrete examples illustrating the usage of the mint::FiniteElement
class within an application code are provided in the femTutorial
tutorial section.
A Finite Element Basis consists of a family of shape functions corresponding to different CellTypes
. Mint currently supports Lagrange isoparametric sections/fem
.
The Lagrange basis consists of CellTypes
whose shape functions are formed from products of the one-dimensional Lagrange polynomial. This section provides a summary of supported LagrangeBasis
CellTypes
, their associated shape functions, and summarize the process to AddALagrangeElement
.
Note
The shape functions of all Lagrange Cells
in Mint, follow the CGNS Numbering Conventions and are defined within a reference coordinate system, on the closed interval ξ̂ ∈ [0, 1].
end{array}
N{10} &=& 4xi(1-xi) ×& eta(2eta-1) ×& (zeta-1)(2zeta-1) \ N{11} &=& (xi-1)(2xi-1) ×& 4eta(1-eta) ×& (zeta-1)(2zeta-1) \ \ N{12} &=& 4xi(1-xi) ×& (eta-1)(2eta-1) ×& zeta(2zeta-1) \ N{13} &=& xi(2xi-1) ×& 4eta(1-eta) ×& zeta(2zeta-1) \ N{14} &=& 4xi(1-xi) ×& eta(2eta-1) ×& zeta(2zeta-1) \ N{15} &=& (xi-1)(2xi-1) ×& 4eta(1-eta) ×& zeta(2zeta-1) \ \ N{16} &=& (xi-1)(2xi-1) ×& (eta-1)(2eta-1) ×& 4zeta(1-zeta) \ N{17} &=& xi(2xi-1) ×& (eta-1)(2eta-1) ×& 4zeta(1-zeta) \ N{18} &=& xi(2xi-1) ×& eta(2eta-1) ×& 4zeta(1-zeta) \ N{19} &=& (xi-1)(2xi-1) ×& eta(2eta-1) ×& 4zeta(1-zeta) \ \ N{20} &=& (xi-1)(2xi-1) ×& 4eta(1-eta) ×& 4zeta(1-zeta) \ N{21} &=& xi(2xi-1) ×& 4eta(1-eta) ×& 4zeta(1-zeta) \ N{22} &=& 4xi(1-xi) ×& (eta-1)(2eta-1) ×& 4zeta(1-zeta) \ N{23} &=& 4xi(1-xi) ×& eta(2eta-1) ×& 4zeta(1-zeta) \ N{24} &=& 4xi(1-xi) ×& 4eta(1-eta) ×& (zeta-1)(2zeta-1) \ N{25} &=& 4xi(1-xi) ×& 4eta(1-eta) ×& zeta(2zeta-1) \ \ N{26} &=& 4xi(1-xi) ×& 4eta(1-eta) ×& 4zeta(1-zeta) \ end{array}
end{array}
Warning
This section is under construction.
Warning
This section is under construction.
Warning
Support for Quadratures in Mint is under development.
Warning
This section is under construction.