Salome HOME
Merge remote-tracking branch 'origin/master'
[modules/smesh.git] / doc / salome / gui / SMESH / input / additional_hypo.doc
1 /*!
2
3 \page additional_hypo_page Additional Hypotheses
4
5 \n <b>Additional Hypotheses</b> can be applied as a supplement to the
6 main hypotheses, introducing additional concepts to mesh creation.
7
8 An <b>Additional Hypothesis</b> can be defined in the same way as any
9 main hypothesis in \ref create_mesh_anchor "Create Mesh" or 
10 \ref constructing_submeshes_page "Create Sub-Mesh" dialog.
11
12 The following additional hypothesis are available:
13 <ul> 
14 <li>\ref propagation_anchor "Propagation of 1D Hypothesis on opposite edges" 
15   and \ref propagofdistribution_anchor "Propagation of Node Distribution on Opposite Edges"
16   hypotheses are useful for creation of quadrangle and hexahedral
17   meshes.</li>
18 <li>\ref viscous_layers_anchor "Viscous Layers" and 
19   \ref viscous_layers_anchor "Viscous Layers 2D"
20   hypotheses allow creation of layers of highly stretched
21   elements near mesh boundary, which is beneficial for high quality
22   viscous computations.</li>
23 <li>\ref quadratic_mesh_anchor "Quadratic Mesh" hypothesis allows
24   generation of second order meshes.</li> 
25 <li>\ref quadrangle_preference_anchor "Quadrangle Preference"
26   enables generation of quadrangles.</li>
27 </ul>
28
29
30 \anchor propagation_anchor
31 <h2>Propagation of 1D Hypothesis on opposite edges</h2>
32
33 <b>Propagation of 1D Hypothesis on opposite edges</b> allows to mesh
34 opposite sides of a quadrangle face and other adjacent quadrangles,
35 using the same hypothesis assigned to only one edge.<br>
36 Thus you define a sub-mesh on the edge where you define 1D meshing
37 parameters and the \b Propagation hypothesis. These local meshing
38 parameters will be propagated via opposite sides of quadrangles to the
39 whole geometry, and this propagation stops at an edge with other local
40 meshing parameters.
41
42 This hypothesis can be taken into account by 
43 \ref a1d_algos_anchor "Wire Discretization" and 
44 \ref a1d_algos_anchor "Composite Side Discretization" algorithms.
45
46 <b>See Also</b> a sample TUI Script of a 
47 \ref tui_propagation "Propagation hypothesis" operation
48
49 \anchor propagofdistribution_anchor
50 <h2>Propagation of Node Distribution on Opposite Edges</h2>
51
52 <b>Propagation of Node Distribution on Opposite Edges</b> allows to propagate
53 distribution of nodes onto an opposite edge. If a local hypothesis and
54 propagation are defined on an edge of a quadrangular face, the
55 opposite edge will have the same number of nodes and the same
56 relations between segment lengths, unless another hypothesis
57 has been locally defined on the opposite edge.
58  
59 This hypothesis can be taken into account by 
60 \ref a1d_algos_anchor "Wire Discretization" and 
61 \ref a1d_algos_anchor "Composite Side Discretization" algorithms.
62
63 <b>See Also</b> a sample TUI Script of a 
64 \ref tui_propagation "Propagation hypothesis" operation
65
66 \anchor viscous_layers_anchor
67 <h2>Viscous Layers and Viscous Layers 2D</h2>
68
69 <b>Viscous Layers</b> and <b>Viscous Layers 2D </b> additional
70 hypotheses can be used by several 3D algorithms, for example
71 Hexahedron(i,j,k), or 2D algorithms, for example Triangle
72 (MEFISTO), correspondingly. These hypotheses allow creation of layers
73 of highly stretched elements, prisms in 3D and quadrilaterals in 2D,
74 near mesh boundary, which is beneficial for high quality viscous
75 computations.
76
77 \image html viscous_layers_hyp.png
78
79 \image html viscous_layers_2d_hyp.png
80
81 <ul>
82 <li><b>Name</b> - allows to define the name of the hypothesis.</li>
83 <li><b>Total thickness</b> - gives the total thickness of element layers.</li>
84 <li><b>Number of layers</b> - defines the number of element layers.</li>
85 <li><b>Stretch factor</b> - defines the growth factor of element height
86   from the mesh boundary inwards.</li>
87 <li><b>Extrusion method</b> (available in 3D only) - defines how
88   positions of nodes are found during prism construction and how
89   the creation of distorted and intersecting prisms is prevented.
90 <ul><li><b>Surface offset + smooth</b> method extrudes nodes along the normal
91     to the underlying geometrical surface. Smoothing of the internal surface of
92     element layers is possible to avoid creation of invalid prisms.</li>
93   <li><b>Face offset</b> method extrudes nodes along the average normal of
94     surrounding mesh faces to the intersection with a neighbor mesh face
95     translated along its own normal by the thickness of layers. The thickness
96     of layers can be limited to avoid creation of invalid prisms.</li>
97   <li><b>Node offset</b> method extrudes nodes along the average normal of
98     surrounding mesh faces by the thickness of layers. The thickness of
99     layers can be limited to avoid creation of invalid prisms.</li> 
100 \image html viscous_layers_extrusion_method.png "Prisms created by the tree extrusion methods at the same other parameters"
101 </ul></li>
102 <li><b>Specified Faces/Edges are</b> - defines how the shapes specified by
103   the next parameter are used.
104 <li><b> Faces/Edges with/without layers</b> - 
105   defines geometrical faces or edges on which element layers
106   either should be or should not be constructed, depending on the
107   value of the previous parameter (<b>Specified Faces/Edges are</b>). 
108   Faces (or edges) can be selected either in the Object Browser or in
109   the VTK Viewer. \b Add button becomes active as soon as a suitable
110   sub-shape is selected.
111   \note A mesh shown in the 3D Viewer can prevent selection of faces
112   and edges, just hide the mesh to avoid this. If a face, which should be
113   selected, is hidden by other faces, consider creating a
114   group of faces to be selected in the Geometry module.<br>
115   To avoid a long wait when a
116   geometry with many faces (or edges) is displayed, the number of faces
117   (edges) shown at a time is limited by the value of "Sub-shapes
118   preview chunk size" preference (in Preferences/Mesh/General tab).
119
120
121   If faces/edges without layers are specified, the element layers are
122   not constructed on geometrical faces shared by several solids in 3D
123   case and edges shared by several faces in 2D case. In other words,
124   in this mode the element layers can be constructed on boundary faces
125   and edges only, and are not constructed on internal faces and
126   edges. There is an exception to this rule: if a hypothesis is
127   assigned to a sub-mesh, the element layers can be constructed on
128   boundary faces/edges of the shape of this sub-mesh, at same time
129   possibly being internal faces/edges within the whole model.
130   \image html viscous_layers_on_submesh.png 2D viscous layers constructed on boundary edges of a sub-mesh on a disk face.
131
132   If you use \b several hypotheses to define viscous layers on faces of
133   one solid, keep in mind the following. Each hypothesis defines a set
134   of faces with viscous layers (even if you specify faces without
135   layers). The sets of faces with viscous layers defined by several
136   hypotheses should not intersect, else the module won't add an
137   hypothesis that is incompatible with another one. <br>
138   Also you can't define different number of layers on adjacent faces
139   of a solid.<br>
140   This logic is also valid for the 2D hypothesis.
141 </li>
142 </ul>
143
144 \image html viscous_layers_mesh.png A group containing viscous layer prisms.
145
146 <br><b>See also</b> a sample TUI script of a \ref tui_viscous_layers
147 "Viscous layers construction".
148
149
150 \anchor quadratic_mesh_anchor
151 <h2>Quadratic Mesh</h2>
152
153 Quadratic Mesh hypothesis allows to build a quadratic mesh (in which
154 links between element nodes are not straight but curved lines due to
155 presence of an additional mid-side node).
156
157 This 1D hypothesis can be taken into account by 
158 \ref a1d_algos_anchor "Wire Discretization" and 
159 \ref a1d_algos_anchor "Composite Side Discretization" algorithms. To
160 create a quadratic mesh assign this hypothesis at 
161 \ref constructing_meshes_page "mesh construction".
162
163 See \ref adding_quadratic_elements_page
164 for more information about quadratic meshes.
165
166
167 \anchor quadrangle_preference_anchor
168 <h2>Quadrangle Preference</h2>
169
170 This additional hypothesis can be used together with 2D triangulation algorithms.
171 It allows 2D triangulation algorithms to build quadrangular meshes.
172
173 Usage of this hypothesis with "Quadrangle: Mapping" meshing algorithm
174 is obsolete since introducing
175 \ref hypo_quad_params_anchor "Quadrangle parameters" hypothesis.
176 Usage of this hypothesis with "Quadrangle: Mapping" meshing algorithm
177 corresponds to specifying "Quadrangle Preference" transition type of
178 \ref hypo_quad_params_anchor "Quadrangle parameters" hypothesis.
179 \note "Quadrangle Preference" transition type can be used only if the
180 total quantity of segments on all sides of the face is even (divisible
181 by 2), else "Standard" transition type is used.
182 */