Salome HOME
#17784 [EDF] MESH-GEMS-2.9.6 Meshers options
[plugins/hybridplugin.git] / doc / salome / gui / HYBRIDPLUGIN / input / hybrid_hypo.doc
1 /*!
2
3 \page hybrid_hypo_page HYBRID Parameters hypothesis
4
5 \anchor hybrid_top
6 HYBRID Parameters hypothesis works only with <b>MeshGems-Hybrid</b> 
7 algorithm. This algorithm is a commercial software.
8
9 To get a licence, visit http://www.distene.com and http://www.meshgems.com/
10
11 \tableofcontents
12
13 \section hybrid_general_parameters General parameters
14
15 \image html hybrid_hypothesis_arguments.png
16
17 - <b>Hybrid parameters</b> - See distene documentation or MeshGems-Hybrid help command:
18
19 \verbatim
20
21 $> mg-hybrid.exe --help
22
23     ==========================================
24     MG-Hybrid -- MeshGems 2.9-6 (August, 2019)
25     ==========================================
26
27         Distene SAS
28            Campus Teratec
29            2, rue de la Piquetterie
30            91680 Bruyeres le Chatel
31            FRANCE
32         Phone: +33(0)970-650-219   Fax: +33(0)169-269-033
33         EMail: <support@distene.com>
34
35         Running MG-Hybrid (Copyright 2014-2019 by Distene SAS)
36            date of run: 07-Oct-2019 AT 17:40:47
37            running on : Linux 3.16.0-4-amd64 x86_64
38            using modules: 
39                 MeshGems-Core 2.9-6
40
41         MeshGems is a Registered Trademark of Distene SAS
42
43
44
45 MG-HYBRID USAGE
46     mg-hybrid.exe [-h] [-v <verbose>] [-i <filein>] [-o <fileout>] \
47         [--global_physical_size <size>] [--max_number_of_threads <maxthreads>] \
48         [--boundary_layer_size_mode <mode>] \
49         [--boundary_layer_height_relative_to_local_surface_size <yes|no>] \
50         [--number_of_boundary_layers <number>] [--boundary_layer_global_initial_height <height>] \
51         [--boundary_layer_surface_tags <list>] \
52         [--boundary_layer_initial_height_on_surface_tags <list>] \
53         [--boundary_layer_geometric_progression <real>] \
54         [--boundary_layer_max_element_angle <size>] [--boundary_layer_imprinting <boolean>] \
55         [--boundary_layer_imprinting_tags <list>] [--boundary_layer_snapping <boolean>] \
56         [--boundary_layer_snapping_tags <list>] [--normal_direction <dir>] [--gradation <real>] \
57         [--element_generation <type>] [--collision_mode <mode>] [--add_multinormals <yes|no>] \
58         [--multinormal_angle_threshold <angle>] [--smooth_normals <yes|no>] \
59         [--optimisation <type>]
60
61   -h --help
62           prints this help.
63
64   -v --verbose <verbose>
65           Sets the verbosity level parameter.
66           The <verbose> parameter must be in the range 0 to 10:
67             0 : no detail
68             10 : very detailed
69           Default: 3
70
71   -i --in <filein>
72           Sets the input file.
73           (MANDATORY)
74
75   -o --out <fileout>
76           Sets the output file.
77           If unset, _hybrid is appended to the input file basename.
78           Using an existing file is forbidden.
79           Using the same file as --in is forbidden.
80
81      --global_physical_size <size>
82           Sets the global physical size.
83           Default: no default.
84
85      --max_number_of_threads <maxthreads>
86           Sets the maximum number of threads to be used in parallel.
87           Default: 4
88
89      --boundary_layer_size_mode <mode>
90           Sets the behavior for the boundary layer sizes.
91           If <mode> is:
92             global: the boundary_layer_global_initial_height is used to compute the layer heights
93             local: the boundary_layer_surface_tags and
94              boundary_layer_initial_height_on_surface_tags are used to compute the layer heights
95           Default: global
96
97      --boundary_layer_height_relative_to_local_surface_size <yes|no>
98           If set to yes, the given sizes are relative to the surface size
99           Default: no
100
101      --number_of_boundary_layers <number>
102           Sets the number of boundary layers.
103           Default: 0
104
105      --boundary_layer_global_initial_height <height>
106           Sets the height of the first layer.
107
108      --boundary_layer_surface_tags <list>
109           Comma separated list of surface references to be used to grow boundary layers.
110
111      --boundary_layer_initial_height_on_surface_tags <list>
112           Comma separated list of initial heights to be used to grow boundary layers.
113
114      --boundary_layer_geometric_progression <real>
115           Sets the geometric progression for all the boundary layer growths (position of layer
116           number i is h * g^(i-1)).
117           Default: 1.0
118
119      --boundary_layer_max_element_angle <size>
120           Sets the maximum internal angles of elements (in degree). This setting applies to the
121           boundary layer elements only.
122           Default: 165.
123
124      --boundary_layer_imprinting <boolean>
125           Activates the imprinting of the boundary layers. The parts of the surface where the
126           layers have to be imprinted are defined through the option
127           --boundary_layer_imprinting_tags
128           Default: no imprinting
129
130      --boundary_layer_imprinting_tags <list>
131           Comma separated list of surface references that have to be imprinted by boundary layers.
132
133      --boundary_layer_snapping <boolean>
134           Activates the snapping of the generated boundary layers on the surface. The parts of the
135           surface where the layers have to be snapped into are defined through the option
136           --boundary_layer_snapping_tags
137           Default: no snapping
138
139      --boundary_layer_snapping_tags <list>
140           Comma separated list of surface references that are imprinted by boundary layers.
141
142      --normal_direction <dir>
143           Specifies whether mg-hybrid should use the surface normals or the inverse of the surface
144           normals.
145           if <dir> is:
146              1 : means the layers grow in the same direction as the normals to the surface
147             -1 : means the layers grow in the opposite direction to the normals of the surface
148           Default: 1
149
150      --gradation <real>
151           Sets the desired maximum ratio between 2 adjacent edges. It applies only to the edges
152           which belong to the tetrahedra.
153           Default: 2.0
154
155      --element_generation <type>
156           Sets the element type for the mesh generation.
157           If <type> is:
158             tetra_dominant : prismatic or hexahedral elements in the boundary layers, tetrahedra in
159              the remaining volume
160             hexa_dominant : prismatic or hexahedral elements in the boundary layers, mixture of
161              hexahedra and tetrahedra in the remaining volume
162             cartesian_core : cartesian hexa core with tetrahedra and pyramids in the remaining
163              volume
164             extrusion_only : only prismatic or hexahedral elements near the boundary are generated.
165              The remaining volume is not filled.
166           Default: tetra_dominant
167
168      --collision_mode <mode>
169           Sets the behavior in case of collision between layers.
170           If <mode> is:
171             decrease : keeps the number of desired layer but decreases the height of the layers to
172              avoid any collision
173             stop : stops locally the generation of layers to avoid collisions; the number of
174              generated layers may differ from the specified desired number
175           Default: stop
176
177      --add_multinormals <yes|no>
178           Add extra normals at opening ridges and corners.
179           Default: no
180
181      --multinormal_angle_threshold <angle>
182           Set the maximum angle between the multiple normals at opening ridges.
183           Default: 30
184
185      --smooth_normals <yes|no>
186           Smooth normals at closed ridges and corners.
187           Default: no
188
189      --optimisation <type>
190           sets the optimisation type.
191           If <type> is:
192               no : no optimisation is applied
193              yes : optimisation is performed upon mesh generation 
194             only : only optimisation is performed to an existing volume mesh.
195           Default: yes.
196
197
198 ================================================================================
199                    MG-Hybrid -- MeshGems 2.9-6 (August, 2019)
200         END OF SESSION - MG-Hybrid (Copyright 2014-2019 by Distene SAS)
201                    compiled Sep  2 2019 23:42:41 on Linux_64
202                MeshGems is a Registered Trademark of Distene SAS
203 ================================================================================
204        ( Distene SAS
205         Phone: +33(0)970-650-219   Fax: +33(0)169-269-033
206         EMail: <support@distene.com> )
207
208 \endverbatim
209
210 \ref hybrid_top "Back to top"
211
212 \section hybrid_advanced_parameters Advanced parameters
213
214 \image html hybrid_hypothesis_advanced.png
215
216 \subsection advanced_meshing_options Advanced meshing options
217
218 - A table allows to input in the command line any text
219   for hybrid argument from "mg-hybrid.exe help", and future advanced options... <br> 
220 <b>Add option</b> - adds a line to the table where you can type an option and its value as text.
221 A check box in the first column activates/deactivates the option of the current row. A deactivated option will be erased upon pressing \a Ok.
222
223 - <b>Add multi normals</b> - Add extra normals at opening ridges and
224 corners.
225
226 - <b>Collision mode</b> - Sets the behavior in case of collision between layers.
227
228   - <b>decrease</b> - keeps the number of desired layer but decreases the height of the layers to
229              avoid any collision
230
231   - <b>stop</b> - stops locally the generation of layers to avoid collisions; the number of
232              generated layers may differ from the specified desired number
233
234 - <b>Gradation</b> - Sets the desired maximum ratio between 2 adjacent edges. 
235   It applies only to the edges which belong to the tetrahedra.
236
237 - <b>Maximum number of threads</b> - Sets the maximum number of threads to be used in parallel.
238
239 - <b>Multi normal angle threshold</b> - Set the maximum angle (in
240   degrees) between the multiple normals at opening ridges.
241
242 - <b>Smooth normals</b> - Smooth normals at closed ridges and corners.
243
244 \subsection log Logs and debug
245
246 - <b>Working directory</b> - allows defining the folder for input and output
247 files of hybrid software, which are the files starting with "HYBRID_" prefix.
248
249 - <b>Verbose level</b> - to choose verbosity level in the range from
250 0 to 10.
251
252   - 0, no standard output,
253
254   - 2, prints the data, quality statistics of the skin and final
255   meshes and indicates when the final mesh is being saved. In addition
256   the software gives indication regarding the CPU time.
257
258   - 10, same as 2 plus the main steps in the computation, quality
259   statistics histogram of the skin mesh, quality statistics histogram
260   together with the characteristics of the final mesh.
261   
262 - <b>Print log in a file</b> - if this option is checked on the log is printed in a 
263 file placed in the working directory, otherwise it is printed on the standard output.
264
265 - <b>Remove log on success</b> - if this option is checked on the log file is kept only
266 if an error occurs during the computation. This option is only available if <b>Print log in a file</b>
267 is enabled (there must be a log file to delete it) and <b>Keep all working files</b> is disabled 
268 (in this case the log file is always kept). 
269
270 - <b>Keep all working files</b> - allows checking input and output files
271 of hybrid software, while usually these files are removed after the
272 launch of the mesher. The log file (if any) is also kept if this option is checked.
273
274 \ref hybrid_top "Back to top"
275
276 \section hybrid_layers_meshes Layers meshes
277
278 \image html hybrid_hypothesis_layers.png
279
280 HYBRID algorithm mesh layers on groups of faces. If <b>Mesh layers on all wrap</b>
281 is checked, all wrap is meshed as layers (as boundary_layers_surface_ids 5), else
282 only submeshes selected an added are meshed as layers (as boundary_layers_surface_ids 6).
283 Pay attention: theses groups should be defined
284 into the shell mesh from a previous group defined in the geometry.
285
286
287 \ref hybrid_top "Back to top"
288
289 \section hybrid_layers_faces Faces with layers
290
291 \image html hybrid_hypothesis_faces.png
292
293 In case of a mesh based on geometry, if <b>Mesh layers on all wrap</b>
294 on <b>Layers meshes</b> tab is unchecked, you can specify geometrical
295 faces on which boundary layers should be constructed. After clicking
296 \a Selection button (arrow) you can select faces either in the
297 Viewer or in the Object Browser. \b Add button adds IDs of the
298 selected faces to the <b>Face IDs</b> list. \b Remove button removes
299 selected IDs from the list.
300
301 <br><b>See Also</b> a sample TUI Script of the \ref tui_hybrid "creation of a MG-Hybrid hypothesis".
302
303 \ref hybrid_top "Back to top"
304
305 */