mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-14 17:48:34 +05:00
303 lines
12 KiB
Plaintext
303 lines
12 KiB
Plaintext
/*!
|
|
|
|
\page a1d_meshing_hypo_page 1D Meshing Hypotheses
|
|
|
|
<br>
|
|
<ul>
|
|
<li>\ref adaptive_1d_anchor "Adaptive"</li>
|
|
<li>\ref arithmetic_1d_anchor "Arithmetic 1D"</li>
|
|
<li>\ref geometric_1d_anchor "Geometric Progression"</li>
|
|
<li>\ref average_length_anchor "Local Length"</li>
|
|
<li>\ref max_length_anchor "Max Size"</li>
|
|
<li>\ref deflection_1d_anchor "Deflection 1D"</li>
|
|
<li>\ref number_of_segments_anchor "Number of segments"</li>
|
|
<li>\ref start_and_end_length_anchor "Start and end length"</li>
|
|
<li>\ref automatic_length_anchor "Automatic Length"</li>
|
|
<li>\ref fixed_points_1d_anchor "Fixed points 1D"</li>
|
|
</ul>
|
|
|
|
<br>
|
|
\anchor adaptive_1d_anchor
|
|
<h2>Adaptive hypothesis</h2>
|
|
|
|
<b>Adaptive</b> hypothesis allows to split edges into segments with a
|
|
length that depends on the curvature of edges and faces and is limited by <b>Min. Size</b>
|
|
and <b>Max Size</b>. The length of a segment also depends on the lengths
|
|
of adjacent segments (that can't differ more than twice) and on the
|
|
distance to close geometrical entities (edges and faces) to avoid
|
|
creation of narrow 2D elements.
|
|
|
|
\image html adaptive1d.png
|
|
|
|
- <b>Min size</b> parameter limits the minimal segment size.
|
|
- <b>Max size</b> parameter defines the length of segments on straight edges.
|
|
- \b Deflection parameter gives maximal distance of a segment from a curved edge.
|
|
|
|
\image html adaptive1d_sample_mesh.png "Adaptive hypothesis and Netgen 2D algorithm - the size of mesh segments reflects the size of geometrical features"
|
|
|
|
<b>See Also</b> a \ref tui_1d_adaptive "sample TUI Script" that uses Adaptive hypothesis.
|
|
|
|
<br>
|
|
\anchor arithmetic_1d_anchor
|
|
<h2>Arithmetic 1D hypothesis</h2>
|
|
|
|
<b>Arithmetic 1D</b> hypothesis allows to split edges into segments with a
|
|
length that changes in arithmetic progression (Lk = Lk-1 + d)
|
|
beginning from a given starting length and up to a given end length.
|
|
|
|
The splitting direction is defined by the orientation of the
|
|
underlying geometrical edge.
|
|
<b>Reverse Edges</b> list box allows specifying the edges, for which
|
|
the splitting should be made in the direction opposite to their
|
|
orientation. This list box is usable only if a geometry object is
|
|
selected for meshing. In this case it is possible to select edges to
|
|
be reversed either directly picking them in the 3D viewer or by
|
|
selecting the edges or groups of edges in the Object Browser. Use \b
|
|
Add button to add the selected edges to the list.
|
|
|
|
\image html a-arithmetic1d.png
|
|
|
|
\image html b-ithmetic1d.png "Arithmetic 1D hypothesis - the size of mesh elements gradually increases"
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_1d_arithmetic "Defining Arithmetic 1D and Geometric Progression hypothesis" operation.
|
|
|
|
<br>
|
|
\anchor geometric_1d_anchor
|
|
<h2>Geometric Progression hypothesis</h2>
|
|
|
|
<b>Geometric Progression</b> hypothesis allows splitting edges into
|
|
segments with a length that changes in geometric progression (Lk =
|
|
Lk-1 * d) starting from a given <b>Start Length</b> and with a given
|
|
<b>Common Ratio</b>.
|
|
|
|
The splitting direction is defined by the orientation of the
|
|
underlying geometrical edge.
|
|
<b>Reverse Edges</b> list box allows specifying the edges, for which
|
|
the splitting should be made in the direction opposite to their
|
|
orientation. This list box is usable only if a geometry object is
|
|
selected for meshing. In this case it is possible to select edges to
|
|
be reversed either directly picking them in the 3D viewer or by
|
|
selecting the edges or groups of edges in the Object Browser. Use \b
|
|
Add button to add the selected edges to the list.
|
|
|
|
\image html a-geometric1d.png
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_1d_arithmetic "Defining Arithmetic 1D and Geometric Progression hypothesis" operation.
|
|
|
|
<br>
|
|
\anchor deflection_1d_anchor
|
|
<h2>Deflection 1D hypothesis</h2>
|
|
|
|
<b>Deflection 1D</b> hypothesis can be applied for meshing curvilinear edges
|
|
composing your geometrical object. It uses only one parameter: the
|
|
value of deflection.
|
|
\n A geometrical edge is divided into equal segments. The maximum
|
|
distance between a point on the edge within a segment and the line
|
|
connecting the ends of the segment should not exceed the specified
|
|
value of deflection . Then mesh nodes are constructed at end segment
|
|
locations and 1D mesh elements are constructed on segments.
|
|
|
|
\image html a-deflection1d.png
|
|
|
|
\image html b-flection1d.png "Deflection 1D hypothesis - useful for meshing curvilinear edges"
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_deflection_1d "Defining Deflection 1D hypothesis" operation.
|
|
|
|
<br>
|
|
\anchor average_length_anchor
|
|
<h2>Local Length hypothesis</h2>
|
|
|
|
<b>Local Length</b> hypothesis can be applied for meshing of edges
|
|
composing your geometrical object. Definition of this hypothesis
|
|
consists of setting the \b length of segments, which will split these
|
|
edges, and the \b precision of rounding. The points on the edges
|
|
generated by these segments will represent nodes of your mesh.
|
|
Later these nodes will be used for meshing of the faces abutting to
|
|
these edges.
|
|
|
|
The \b precision parameter is used to allow rounding a number of
|
|
segments, calculated from the edge length and average length of
|
|
segment, to the lower integer, if this value outstands from it in
|
|
bounds of the precision. Otherwise, the number of segments is rounded
|
|
to the higher integer. Use value 0.5 to provide rounding to the
|
|
nearest integer, 1.0 for the lower integer, 0.0 for the higher
|
|
integer. Default value is 1e-07.
|
|
|
|
\image html image41.gif
|
|
|
|
\image html a-averagelength.png
|
|
|
|
\image html b-erage_length.png "Local Length hypothesis - all 1D mesh elements are roughly equal"
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_average_length "Defining Local Length" hypothesis
|
|
operation.
|
|
|
|
<br>\anchor max_length_anchor
|
|
<h2>Max Size</h2>
|
|
<b>Max Size</b> hypothesis allows splitting geometrical edges into
|
|
segments not longer than the given length. Definition of this hypothesis
|
|
consists of setting the maximal allowed \b length of segments.
|
|
<b>Use preestimated length</b> check box lets you specify \b length
|
|
automatically calculated basing on size of your geometrical object,
|
|
namely as diagonal of bounding box divided by ten. The divider can be
|
|
changed via "Ratio Bounding Box Diagonal / Max Size"
|
|
preference parameter.
|
|
<b>Use preestimated length</b> check box is enabled only if the
|
|
geometrical object has been selected before hypothesis definition.
|
|
|
|
\image html a-maxsize1d.png
|
|
|
|
<br>
|
|
\anchor number_of_segments_anchor
|
|
<h2>Number of segments hypothesis</h2>
|
|
|
|
<b>Number of segments</b> hypothesis can be applied for meshing of edges
|
|
composing your geometrical object. Definition of this hypothesis
|
|
consists of setting the number of segments, which will split these
|
|
edges. In other words your edges will be split into a definite number
|
|
of segments with approximately the same length. The points on the
|
|
edges generated by these segments will represent nodes of your
|
|
mesh. Later these nodes will be used for meshing of the faces abutting
|
|
to these edges.
|
|
|
|
The direction of the splitting is defined by the orientation of the
|
|
underlying geometrical edge. <b>"Reverse Edges"</b> list box allows to
|
|
specify the edges for which the splitting should be made in the
|
|
direction opposing to their orientation. This list box is enabled only
|
|
if the geometry object is selected for the meshing. In this case the
|
|
user can select edges to be reversed either by directly picking them
|
|
in the 3D viewer or by selecting the edges or groups of edges in the
|
|
Object Browser.
|
|
|
|
\image html image46.gif
|
|
|
|
You can set the type of distribution for this hypothesis in the
|
|
<b>Hypothesis Construction</b> dialog bog :
|
|
|
|
\image html a-nbsegments1.png
|
|
|
|
<br><b>Equidistant Distribution</b> - all segments will have the same
|
|
length, you define only the <b>Number of Segments</b>.
|
|
|
|
<br><b>Scale Distribution</b> - length of segments gradually changes
|
|
depending on the <b>Scale Factor</b>, which is a ratio of the first
|
|
segment length to the last segment length.<br>
|
|
Length of segments changes in geometric progression with the common
|
|
ratio (A) depending on the <b>Scale Factor</b> (S) and <b>Number of
|
|
Segments</b> (N) as follows: <code> A = S**(1/(N-1))</code>. For an
|
|
edge of length L, length of the first segment is
|
|
<code>L * (1 - A)/(1 - A**N)</code>.
|
|
|
|
|
|
\image html a-nbsegments2.png
|
|
|
|
<br><b>Distribution with Analytic Density</b> - you input the formula,
|
|
which will rule the change of length of segments and the module shows
|
|
in the plot the density function curve in red and the node
|
|
distribution as blue crosses.
|
|
|
|
\image html distributionwithanalyticdensity.png
|
|
|
|
<br>
|
|
\anchor analyticdensity_anchor
|
|
The node distribution is computed so that to have the density function
|
|
integral on the range between two nodes equal for all segments.
|
|
\image html analyticdensity.png
|
|
|
|
<br><b>Distribution with Table Density</b> - you input a number of
|
|
pairs <b>t - F(t)</b>, where \b t ranges from 0 to 1, and the module computes the
|
|
formula, which will rule the change of length of segments and shows
|
|
in the plot the density function curve in red and the node
|
|
distribution as blue crosses. The node distribution is computed the
|
|
same way as for
|
|
\ref analyticdensity_anchor "Distribution with Analytic Density". You
|
|
can select the <b>Conversion mode</b> from\b Exponent and <b>Cut
|
|
negative</b>.
|
|
|
|
\image html distributionwithtabledensity.png
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_deflection_1d "Defining Number of Segments" hypothesis
|
|
operation.
|
|
|
|
|
|
<br>
|
|
\anchor start_and_end_length_anchor
|
|
<h2>Start and End Length hypothesis</h2>
|
|
|
|
<b>Start and End Length</b> hypothesis allows to divide a geometrical edge
|
|
into segments so that the first and the last segments have a specified
|
|
length. The length of medium segments changes with automatically chosen
|
|
geometric progression. Then mesh nodes are
|
|
constructed at segment ends location and 1D mesh elements are
|
|
constructed on them.
|
|
|
|
The direction of the splitting is defined by the orientation of the
|
|
underlying geometrical edge. <b>"Reverse Edges"</b> list box allows to
|
|
specify the edges for which the splitting should be made in the
|
|
direction opposing to their orientation. This list box is enabled only
|
|
if the geometry object is selected for the meshing. In this case the
|
|
user can select edges to be reversed either by directly picking them
|
|
in the 3D viewer or by selecting the edges or groups of edges in the
|
|
Object Browser.
|
|
|
|
\image html a-startendlength.png
|
|
|
|
\image html b-art_end_length.png "The lengths of the first and the last segment are strictly defined"
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_start_and_end_length "Defining Start and End Length"
|
|
hypothesis operation.
|
|
|
|
<br>
|
|
\anchor automatic_length_anchor
|
|
<h2>Automatic Length</h2>
|
|
|
|
This hypothesis is automatically applied when you select <b>Assign a
|
|
set of hypotheses</b> option in Create Mesh menu.
|
|
|
|
\image html automaticlength.png
|
|
|
|
The dialog box prompts you to define the quality of the future mesh by
|
|
only one parameter, which is \b Fineness, ranging from 0 (coarse mesh,
|
|
low number of elements) to 1 (extremely fine mesh, great number of
|
|
elements). Compare one and the same object (sphere) meshed with
|
|
minimum and maximum value of this parameter.
|
|
|
|
\image html image147.gif "Example of a very rough mesh. Automatic Length works for 0."
|
|
|
|
\image html image148.gif "Example of a very fine mesh. Automatic Length works for 1."
|
|
|
|
<br>
|
|
\anchor fixed_points_1d_anchor
|
|
<h2>Fixed points 1D hypothesis</h2>
|
|
|
|
<b>Fixed points 1D</b> hypothesis allows splitting edges through a
|
|
set of points parameterized on the edge (from 1 to 0) and a number of segments for each
|
|
interval limited by the points.
|
|
|
|
\image html hypo_fixedpnt_dlg.png
|
|
|
|
It is possible to check in <b>Same Nb. Segments for all intervals</b>
|
|
option and to define one value for all intervals.
|
|
|
|
The splitting direction is defined by the orientation of the
|
|
underlying geometrical edge. <b>"Reverse Edges"</b> list box allows to
|
|
specify the edges for which the splitting should be made in the
|
|
direction opposite to their orientation. This list box is enabled only
|
|
if the geometrical object is selected for meshing. In this case it is
|
|
possible to select the edges to be reversed either directly picking them in
|
|
the 3D viewer or selecting the edges or groups of edges in the
|
|
Object Browser.
|
|
|
|
\image html mesh_fixedpnt.png "Example of a submesh on the edge built using Fixed points 1D hypothesis"
|
|
|
|
<b>See Also</b> a sample TUI Script of a
|
|
\ref tui_fixed_points "Defining Fixed Points" hypothesis operation.
|
|
|
|
*/
|