/*!
\page basic_meshing_algos_page Basic meshing algorithms
\n The MESH module contains a set of meshing algorithms, which are
used for meshing entities (1D, 2D, 3D sub-shapes) composing
geometrical objects.
An algorithm represents either an implementation of a certain meshing
technique or an interface to the whole meshing program generating elements
of several dimensions.
- For meshing of 1D entities (edges):
\anchor a1d_algos_anchor
- Wire Discretization meshing algorithm - splits an edge into a
number of mesh segments following an 1D hypothesis.
- Composite Side Discretization algorithm - allows to apply a 1D
hypothesis to a whole side of a geometrical face even if it is
composed of several edges provided that they form C1 curve in all
faces of the main shape.
- For meshing of 2D entities (faces):
- Triangle: Mefisto meshing algorithm - splits faces
into triangular elements.
- \subpage quad_ijk_algo_page "Quadrangle: Mapping" meshing
algorithm - splits faces into quadrangular elements.
\image html image123.gif "Example of a triangular 2D mesh"
\image html image124.gif "Example of a quadrangular 2D mesh"
- For meshing of 3D entities (solid objects):
- Hexahedron (i,j,k) meshing algorithm - solids are
split into hexahedral elements thus forming a structured 3D
mesh. The algorithm requires that 2D mesh generated on a solid could
be considered as a mesh of a box, i.e. there should be eight nodes
shared by three quadrangles and the rest nodes should be shared by
four quadrangles.
\image html hexa_ijk_mesh.png "Structured mesh generated by Hexahedron (i,j,k) on a solid bound by 16 faces"
- \subpage cartesian_algo_page "Body Fitting" meshing
algorithm - solids are split into hexahedral elements forming
a Cartesian grid; polyhedra and other types of elements are generated
where the geometrical boundary intersects Cartesian cells.
\image html image125.gif "Example of a tetrahedral 3D mesh"
\image html image126.gif "Example of a hexahedral 3D mesh"
Some 3D meshing algorithms, such as Hexahedron(i,j,k) also can
generate 3D meshes from 2D meshes, working without geometrical
objects.
There is also a number of more specific algorithms:
- \subpage prism_3d_algo_page "Extrusion 3D" - for meshing prismatic 3D shapes with hexahedra and prisms.
- \subpage quad_from_ma_algo_page "Quadrangle: Medial Axis Projection" - for quadrangle meshing of faces with sinuous borders and rings.
- Polygon per Face meshing algorithm - generates one mesh
face (either a triangle, a quadrangle or a polygon) per a geometrical
face using all nodes from the face boundary.
- \subpage projection_algos_page "Projection algorithms" - for meshing by projection of another mesh.
- \subpage import_algos_page "Import algorithms" - for meshing by importing elements from another mesh.
- \subpage radial_prism_algo_page "Radial Prism" - for meshing 3D geometrical objects with cavities with hexahedra and prisms.
- \subpage radial_quadrangle_1D2D_algo_page "Radial Quadrangle 1D-2D" - for quadrangle meshing of disks and parts of disks.
- \subpage use_existing_page "Use Faces/Edges to be Created Manually" - to create a 1D or a 2D mesh in a python script.
- \subpage segments_around_vertex_algo_page "Segments around Vertex" - for defining the length of mesh segments around certain vertices.
\ref constructing_meshes_page "Constructing meshes" page describes in
detail how to apply meshing algorithms.
See Also a sample TUI Script of a
\ref tui_defining_meshing_algos "Define Meshing Algorithm" operation.
*/