/*! \page about_meshes_page About meshes \n \b MESH represents a discrete approximation of a subset of the three-dimensional space by \ref mesh_entities "elementary geometrical elements". A SALOME study can contain multiple meshes, but they do not implicitly compose one super-mesh, and finally each of them can be used (e.g. exported) only individually. Mesh module provides several ways to create the mesh: <ul> <li>The main way is to \subpage constructing_meshes_page "construct the mesh" on the basis of the geometrical shape produced in the Geometry module. This way implies selection of - a geometrical object (<em>main shape</em>) and - <em>meshing parameters</em> (\ref basic_meshing_algos_page "meshing algorithms" and characteristics (e.g. element size) of a required mesh encapsulated in \ref about_hypo_page "hypothesis" objects). Construction of \subpage constructing_submeshes_page "sub-meshes" allows to discretize some sub-shapes of the main shape, for example a face, using the meshing parameters that differ from those used for other sub-shapes.<br> Meshing parameters of meshes and sub-meshes can be \subpage editing_meshes_page "edited". (Upon edition only mesh entities generated using changed meshing parameters are removed and will be re-computed).<br> \note Algorithms and hypotheses used at mesh level are referred to as \a global ones and those used at sub-mesh level are referred to as \a local ones. </li> <li>Bottom-up way, using \ref modifying_meshes_page "mesh modification" operations, especially \ref extrusion_page "extrusion" and \ref revolution_page "revolution". To create an empty mesh not based on geometry, use the same dialog as to \ref constructing_meshes_page "construct the mesh on geometry" but specify neither the geometry nor meshing algorithms. </li> <li>The mesh can be \subpage importing_exporting_meshes_page "imported" from (and exported to) the file in MED, UNV, STL, CGNS, DAT, GMF and SAUVE formats. </li> <li>The 3D mesh can be generated from the 2D mesh not based on geometry, which was either \ref importing_exporting_meshes_page "imported" or created in other way. To setup the meshing parameters of a mesh not based on geometry, just invoke \ref editing_meshes_page "Edit mesh / sub-mesh" command on your 2D mesh. </li> <li>Several meshes can be \subpage building_compounds_page "combined" into a new mesh. </li> <li>The whole mesh or its part (sub-mesh or group) can be \subpage copy_mesh_page "copied" into a new mesh. </li> <li>A new mesh can be created from a transformed, e.g. \ref translation_page "translated", part of the mesh.</li> </ul> Meshes can be edited using the MESH functions destined for \ref modifying_meshes_page "modification" of meshes. Attractive meshing capabilities include: - 3D and 2D \ref viscous_layers_anchor "Viscous Layers" (boundary layers of highly stretched elements beneficial for high quality viscous computations); - automatic conformal transition between tetrahedral and hexahedral sub-meshes. The \b structure of a SALOME mesh is described by nodes and elements based on these nodes. The geometry of an element is defined by the sequence of nodes constituting it and the \ref connectivity_page "connectivity convention" (adopted from MED library). Definition of the element basing on the elements of a lower dimension is NOT supported. \anchor mesh_entities The mesh can include the following entities: <ul> <li>\b Node — a mesh entity defining a position in 3D space with coordinates (x, y, z).</li> <li>\b Edge (or segment) — 1D mesh element linking two nodes.</li> <li>\b Face — 2D mesh element representing a part of surface bound by links between face nodes. A face can be a triangle, quadrangle or polygon.</li> <li>\b Volume — 3D mesh element representing a part of 3D space bound by volume facets. Nodes of a volume describing each facet are defined by the \subpage connectivity_page "connectivity convention". A volume can be a tetrahedron, hexahedron, pentahedron, pyramid, hexagonal prism or polyhedron.</li> <li>\b 0D element — mesh element defined by one node.</li> <li>\b Ball element — discrete mesh element defined by a node and a diameter.</li> </ul> Every mesh entity has an attribute associating it to a sub-shape it is generated on (if any). The node generated on the geometrical edge or surface in addition stores its position in parametric space of the associated geometrical entity. This attribute is set up by meshing algorithms generating elements and nodes. Mesh entities are identified by integer IDs starting from 1. Nodes and elements are counted separately, i.e. there can be a node and element with the same ID. SALOME supports elements of second order, without a central node (quadratic triangle, quadrangle, polygon, tetrahedron, hexahedron, pentahedron and pyramid) and with central nodes (bi-quadratic triangle and quadrangle and tri-quadratic hexahedron).<br> Quadratic mesh can be obtained in three ways: - Using a global \ref quadratic_mesh_anchor "Quadratic Mesh" hypothesis. (Elements with the central node are not generated in this way). - Using \ref convert_to_from_quadratic_mesh_page operation. - Using an appropriate option of some meshing algorithms, which generate elements of several dimensions starting from mesh segments. */