sfepy.discrete.fem.refine module
Basic uniform mesh refinement functions.
-
sfepy.discrete.fem.refine.refine_2_3(mesh_in, cmesh)[source]
Refines mesh out of triangles by cutting cutting each edge in half
and making 4 new finer triangles out of one coarser one.
-
sfepy.discrete.fem.refine.refine_2_4(mesh_in, cmesh)[source]
Refines mesh out of quadrilaterals by cutting cutting each edge in
half and making 4 new finer quadrilaterals out of one coarser one.
-
sfepy.discrete.fem.refine.refine_3_4(mesh_in, cmesh)[source]
Refines tetrahedra by cutting each edge in half and making 8 new
finer tetrahedra out of one coarser one. Old nodal coordinates come
first in coors, then the new ones. The new tetrahedra are similar
to the old one, no degeneration is supposed to occur as at most 3
congruence classes of tetrahedra appear, even when re-applied
iteratively (provided that conns are not modified between two
applications - ordering of vertices in tetrahedra matters not only
for positivity of volumes).
References:
- Juergen Bey: Simplicial grid refinement: on Freudenthal s algorithm and
the optimal number of congruence classes, Numer.Math. 85 (2000),
no. 1, 1–29, or
- Juergen Bey: Tetrahedral grid refinement, Computing 55 (1995),
no. 4, 355–378, or
http://citeseer.ist.psu.edu/bey95tetrahedral.html
-
sfepy.discrete.fem.refine.refine_3_8(mesh_in, cmesh)[source]
Refines hexahedral mesh by cutting cutting each edge in half and
making 8 new finer hexahedrons out of one coarser one.
-
sfepy.discrete.fem.refine.refine_reference(geometry, level)[source]
Refine reference element given by geometry.
Notes
The error edges must be generated in the order of the connectivity
of the previous (lower) level.