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