symfem.create
¶
Create elements and references.
Module Contents¶
Functions¶
|
Add an element to Symfem. |
|
Make a reference cell. |
|
Make a finite element. |
|
Check that an order is valid for an element. |
Attributes¶
- symfem.create._folder¶
- symfem.create._elementmap: Dict[str, Dict[str, Type]]¶
- symfem.create._elementlist: List[Type] = []¶
- symfem.create.add_element(element_class: Type)¶
Add an element to Symfem.
- Parameters:
element_class – The class defining the element.
- symfem.create._fname¶
- symfem.create.create_reference(cell_type: str, vertices: symfem.geometry.SetOfPointsInput | None = None) symfem.references.Reference ¶
Make a reference cell.
- Parameters:
cell_type – The reference cell type. Supported values: point, interval, triangle, quadrilateral, tetrahedron, hexahedron, prism, pyramid, dual polygon(number_of_triangles)
vertices – The vertices of the reference.
- symfem.create.create_element(cell_type: str, element_type: str, order: int, vertices: symfem.geometry.SetOfPointsInput | None = None, **kwargs: Any) symfem.finite_element.FiniteElement ¶
Make a finite element.
- Parameters:
cell_type – The reference cell type. Supported values: point, interval, triangle, quadrilateral, tetrahedron, hexahedron, prism, pyramid, dual polygon(number_of_triangles)
element_type – The type of the element. Supported values: Lagrange, P, vector Lagrange, vP, matrix Lagrange, symmetric matrix Lagrange, dPc, vector dPc, Crouzeix-Raviart, CR, Crouzeix-Falk, CF, conforming Crouzeix-Raviart, conforming CR, serendipity, S, serendipity Hcurl, Scurl, BDMCE, AAE, serendipity Hdiv, Sdiv, BDMCF, AAF, direct serendipity, Regge, Nedelec, Nedelec1, N1curl, Ncurl, Nedelec2, N2curl, Raviart-Thomas, RT, N1div, Brezzi-Douglas-Marini, BDM, N2div, Q, vector Q, vQ, NCE, RTCE, Qcurl, NCF, RTCF, Qdiv, Morley, Morley-Wang-Xu, MWX, Hermite, Mardal-Tai-Winther, MTW, Argyris, bubble, dual polynomial, dual P, dual, Buffa-Christiansen, BC, rotated Buffa-Christiansen, RBC, Brezzi-Douglas-Fortin-Marini, BDFM, Brezzi-Douglas-Duran-Fortin, BDDF, Hellan-Herrmann-Johnson, HHJ, Arnold-Winther, AW, conforming Arnold-Winther, Bell, Kong-Mulder-Veldhuizen, KMV, Bernstein, Bernstein-Bezier, Hsieh-Clough-Tocher, Clough-Tocher, HCT, CT, reduced Hsieh-Clough-Tocher, rHCT, Taylor, discontinuous Taylor, bubble enriched Lagrange, bubble enriched vector Lagrange, Bogner-Fox-Schmit, BFS, Fortin-Soulie, FS, Bernardi-Raugel, Wu-Xu, transition, Guzman-Neilan, nonconforming Arnold-Winther, nonconforming AW, TScurl, trimmed serendipity Hcurl, TSdiv, trimmed serendipity Hdiv, TNT, tiniest tensor, TNTcurl, tiniest tensor Hcurl, TNTdiv, tiniest tensor Hdiv, Arnold-Boffi-Falk, ABF, Arbogast-Correa, AC, AC full, Arbogast-Correa full, Rannacher-Turek, P1-iso-P2, P2-iso-P1, iso-P2 P1, Huang-Zhang, HZ, enriched Galerkin, EG, enriched vector Galerkin, locking-free enriched Galerkin, LFEG, P1 macro, Alfeld-Sorokina, AS
order – The order of the element.
vertices – The vertices of the reference.
- symfem.create._order_is_allowed(element_class: Type, ref: str, order: int) bool ¶
Check that an order is valid for an element.
- Parameters:
element_class – The element class
ref – The reference cell
order – The polynomial order