Salome HOME
23189: EDF 11603 - Dyssymetry in meshing
[modules/smesh.git] / doc / salome / gui / SMESH / input / 1d_meshing_hypo.doc
index 6ba10611e7be1dfa8f24f37d0a3c4ef1be2ae17a..0995673b393d94a7a7b94b08a1b279c9457b160c 100644 (file)
@@ -2,18 +2,39 @@
 
 \page a1d_meshing_hypo_page 1D Meshing Hypotheses
 
-<br>
+Basic 1D hypothesis specifies:
 <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>
+<li>how \ref a1d_algos_anchor "Wire Discretization" should divide the edge;</li>
+<li>how \ref a1d_algos_anchor "Composite Side Discretization" should divide the group of C1-continuous edges.</li>
+</ul>
+
+1D hypotheses can be categorized by type of nodes distribution as follows:
+<ul>
+<li>Uniform distribution:
+  <ul>
+    <li>\ref average_length_anchor "Local Length"</li>
+    <li>\ref max_length_anchor "Max Size"</li>
+    <li>\ref number_of_segments_anchor "Number of segments" with Equidistant distribution</li>
+    <li>\ref automatic_length_anchor "Automatic Length"</li>
+</ul></li>
+<li>Constantly increasing or decreasing length of segments:
+  <ul>
+    <li>\ref arithmetic_1d_anchor "Arithmetic 1D"</li>
+    <li>\ref geometric_1d_anchor "Geometric Progression"</li>
+    <li>\ref start_and_end_length_anchor "Start and end length"</li>
+    <li>\ref number_of_segments_anchor "Number of segments" with Scale distribution</li>
+</ul></li>
+<li>Distribution depending on curvature:
+  <ul>
+    <li>\ref adaptive_1d_anchor "Adaptive"</li>
+    <li>\ref deflection_1d_anchor "Deflection 1D"</li>
+</ul></li>
+<li>Arbitrary distribution:
+  <ul>
+    <li>\ref fixed_points_1d_anchor "Fixed points 1D"</li>
+    <li>\ref number_of_segments_anchor "Number of segments" with
+    \ref analyticdensity_anchor "Analytic Density Distribution" or Table Density Distribution</li>
+</ul></li>
 </ul>
 
 <br>
@@ -55,6 +76,10 @@ 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.
 
+\ref reversed_edges_helper_anchor "Helper" group assists you in
+defining <b>Reversed Edges</b> parameter.
+
+
 \image html a-arithmetic1d.png
 
 \image html b-ithmetic1d.png "Arithmetic 1D hypothesis - the size of mesh elements gradually increases"
@@ -81,6 +106,9 @@ 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.
 
+\ref reversed_edges_helper_anchor "Helper" group assists you in
+defining <b>Reversed Edges</b> parameter.
+
 \image html a-geometric1d.png
 
 <b>See Also</b> a sample TUI Script of a 
@@ -91,13 +119,14 @@ Add button to add the selected edges to the list.
 <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.
+composing your geometrical object. It defines only one parameter: the
+value of deflection (or chord error).
+
+A geometrical edge is divided into segments of length depending on
+edge curvature. The more curved the edge, the shorter the
+segment. Nodes on the edge are placed so that the maximum distance
+between the edge and a segment approximating a part of edge between
+two nodes should not exceed the value of deflection.
 
 \image html a-deflection1d.png
 
@@ -112,25 +141,26 @@ locations and 1D mesh elements are constructed on segments.
 
 <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.
+consists of setting the \b length of segments, which will approximate these
+edges, and the \b precision of rounding.
+
+The \b precision parameter is used to round a <em>number of segments</em>,
+calculated by dividing the <em>edge length</em> by the specified \b length of
+segment, to the higher integer if the \a remainder exceeds the \b precision
+and to the lower integer otherwise. <br>
+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.
+
+For example: if <em>edge length</em> is 10.0 and the segment \b length
+is 3.0 then their division gives 10./3. = 3.33(3) and the \a remainder is 0.33(3).
+If \b precision is less than 0.33(3) then the edge is divided into 3 segments.
+If \b precision is more than 0.33(3) then the edge is divided into 4 segments.
+
 
 \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"
+\image html b-erage_length.png "Local Length hypothesis - all 1D mesh segments are equal"
 
 <b>See Also</b> a sample TUI Script of a 
 \ref tui_average_length "Defining Local Length" hypothesis
@@ -141,7 +171,7 @@ operation.
 <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
+<b>Use preestimated length</b> check box lets you use \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"
@@ -155,17 +185,12 @@ geometrical object has been selected before hypothesis definition.
 \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.
+<b>Number of segments</b> hypothesis can be applied for approximating
+edges by a definite number of mesh segments with length depending on
+the selected type of distribution of nodes.
 
 The direction of the splitting is defined by the orientation of the
-underlying geometrical edge. <b>"Reverse Edges"</b> list box allows to
+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 it is 
@@ -173,9 +198,10 @@ possible to 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
+\ref reversed_edges_helper_anchor "Helper" group assists you in
+defining <b>Reversed Edges</b> parameter.
 
-You can set the type of distribution for this hypothesis in the
+You can set the type of node distribution for this hypothesis in the
 <b>Hypothesis Construction</b> dialog bog :
 
 \image html a-nbsegments1.png
@@ -215,8 +241,8 @@ in the plot the density function curve in red and the node
 distribution as blue crosses. The node distribution is computed in 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>. 
+can select the <b>Conversion mode</b> from \b Exponent and <b>Cut
+negative</b>.
 
 \image html distributionwithtabledensity.png
 
@@ -224,6 +250,7 @@ negative</b>.
 \ref tui_deflection_1d "Defining Number of Segments" hypothesis
 operation.
 
+\note The plot functionality is available only if GUI module is builded with Plot 2D Viewer (set option SALOME_USE_PLOT2DVIEWER to ON when building GUI module).
 
 <br>
 \anchor start_and_end_length_anchor
@@ -232,12 +259,10 @@ operation.
 <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.
+geometric progression.
 
 The direction of the splitting is defined by the orientation of the
-underlying geometrical edge. <b>"Reverse Edges"</b> list box allows to
+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 it is 
@@ -245,6 +270,10 @@ possible to 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.
 
+\ref reversed_edges_helper_anchor "Helper" group assists you in
+defining <b>Reversed Edges</b> parameter.
+
+
 \image html a-startendlength.png
 
 \image html b-art_end_length.png "The lengths of the first and the last segment are strictly defined"
@@ -259,33 +288,33 @@ hypothesis operation.
 
 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). 
+low number of segments) to 1 (extremely fine mesh, great number of
+segments). 
 
 \image html automaticlength.png
 
 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 image147.gif "Example of a rough mesh at Automatic Length Fineness of 0."
 
-\image html image148.gif "Example of a very fine mesh. Automatic Length works for 1."
+\image html image148.gif "Example of a fine mesh at Automatic Length Fineness of 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.
+set of points parametrized 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 
+\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
+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
@@ -293,9 +322,46 @@ 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"
+\ref reversed_edges_helper_anchor "Helper" group assists in
+defining <b>Reversed Edges</b> parameter.
+
+
+\image html mesh_fixedpnt.png "Example of a sub-mesh 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.
 
+\anchor reversed_edges_helper_anchor
+<h2>Reversed Edges Helper</h2>
+
+\image html rev_edges_helper_dlg.png
+
+\b Helper group assists in defining <b>Reversed Edges</b>
+parameter of the hypotheses depending on edge direction.
+
+<b>Show whole geometry</b> check-box allows seeing the whole
+geometrical model in the 3D Viewer, which can help to understand the
+location of a set of edges within the model.
+
+<b>Propagation chains</b> group allows defining <b>Reversed Edges</b>
+for splitting opposite edges of quadrilateral faces in a logically
+uniform direction. When this group is activated, the list is filled
+with propagation chains found within the shape on which a hypothesis
+is assigned. When a chain is selected in the list its edges are shown
+in the Viewer with arrows, which enables choosing a common direction
+for all chain edges. \b Reverse button inverts the common direction of
+chain edges. \b Add button is active if some edges of a chain have a
+different direction, so you can click \b Add button to add them
+to <b>Reversed Edges</b> list.
+
+\image html propagation_chain.png "The whole geometry and a propagation chain"
+
+\note Alternatively, uniform direction of edges of one propagation
+chain can be achieved by 
+\ref constructing_submeshes_page "definition of a sub-mesh" on one
+edge of the chain and assigning a 
+\ref propagation_anchor "Propagation" additional hypothesis.
+Orientation of this edge (and hence of all the rest edges of the chain) can be
+controlled by using <b>Reversed Edges</b> field.
+
 */