smesh/doc/salome/gui/SMESH/input/cartesian_algo.doc

106 lines
4.8 KiB
Plaintext

/*!
\page cartesian_algo_page Body Fitting 3D meshing algorithm
Body Fitting algorithm generates hexahedrons of a Cartesian grid in
the internal part of geometry and polyhedrons and other types of
elements at the intersection of Cartesian cells with the geometrical
boundary.
\image html cartesian3D_sphere.png "A shpere meshed by Body Fitting algorithm"
The meshing algorithm is as follows.
<ol>
<li> Lines of a Cartesian structured grid defined by
\ref cartesian_hyp_anchor "Body Fitting Parameters" hypothesis are
intersected with the geometry boundary, thus nodes lying on the
boundary are found. This step also allows finding out for each node of
the Cartesian grid if it is inside or outside the geometry. </li>
<li> For each cell of the grid, check how many of its nodes are outside
of the geometry boundary. Depending on a result of this check
<ul>
<li> skip a cell, if all its nodes are outside </li>
<li> skip a cell, if it is too small according to <b> Size
Threshold </b> parameter</li>
<li> add a hexahedron in the mesh, if all nodes are inside </li>
<li> add a polyhedron or another cell type in the mesh, if some
nodes are inside and some outside. </li>
</ul>
</li>
</ol>
To apply this algorithm when you define your mesh, select <b>Body
Fitting</b> in the list of 3D algorithms and click <em> "Add
Hypothesis" </em> button and <em>"Body Fitting Parameters"</em>" menu
item. Dialog of <b>Body Fitting Parameters
hypothesis</b> will appear.
<br>
\anchor cartesian_hyp_anchor
<h2>Body Fitting Parameters hypothesis</h2>
\image html cartesian3D_hyp.png "Body Fitting Parameters hypothesis dialog"
This dialog allows to define
<ul>
<li>\b Name of the algorithm. </li>
<li> Minimal size of a cell truncated by the geometry boundary. If the
size of a truncated grid cell is \b Threshold times less than a
initial cell size, then a mesh element is not created. </li>
<li> <b> Implement Edges </b> check-box activates incorporation of
geometrical edges in the mesh.
\image html cartesian_implement_edge.png "'Implement Edges' switched off (left) and on (right)"
<li> Cartesian structured grid. Location of nodes along each grid axis
is defined individually. <b> Definition mode </b> chooses a way of
grid definition:
<ul>
<li> You can specify the \b Coordinates of grid nodes. \b Insert button
inserts a node at distance \b Step (negative or positive) from a
selected node. \b Delete button removes a selected node. Double
click on a coordinate in the list enables its edition.
\b Note that node coordinates are measured along directions of
axes that can differ from the directions of the Global Coordinate
System.</li>
<li> You can define the \b Spacing of a grid as an algebraic formula
<em>f(t)</em> where \a t is a position along a grid axis
normalized at [0.0,1.0]. The whole range of geometry can be
divided into sub-ranges with their own spacing formulas to apply;
\a t varies between 0.0 and 1.0 within each sub-range. \b Insert button
divides a selected range into two ones. \b Delete button adds the
selected sub-range to the previous one. Double click on a range in
the list enables edition of its right boundary. Double click on a
function in the list enables its edition.
</li> </ul>
</li>
<li> Coordinates of a <b> Fixed Point</b>. They allow to exactly
locate a grid node in a direction defined by spacing. If all the three
directions are defined by spacing, then there will be a mesh node at
the <b> Fixed Point</b>. If two directions are defined by spacing,
then there will be at least a link between mesh nodes passing through
the <b> Fixed Point</b>. If only one direction is defined by spacing,
then there will be at least an element facet passing through
the <b> Fixed Point</b>. If no directions are defined by spacing,
<b> Fixed Point</b> is disabled.</li>
<li> <b> Directions of Axes</b>. You can set up almost any
directions of grid axes that can help in generation of as many as
possible hexahedral elements.
<ul>
<li><b> Orthogonal Axes </b> check-box, if activated, keeps the
axes orthogonal during their modification. </li>
<li> Selection buttons enable snapping corresponding axes to
direction of a geometrical edge selected in the Object
Browser. Edge direction is defined by coordinates of its end
points.</li>
<li><b> Optimal Axes</b> button runs an algorithm that tries to
set the axes so that a number of generated hexahedra to be
maximal.</li>
<li><b> Reset </b> button returns the axes in a default position
parallel to the axes of the Global Coordinate System.</li>
</ul></li>
</ul>
<br>
<b>See Also</b> a sample TUI Script of a
\ref tui_cartesian_algo "Usage of Body Fitting algorithm".
*/