Salome HOME
Merge from BR_V5_DEV 16Feb09
[modules/smesh.git] / doc / salome / gui / SMESH / input / blsurf_hypo.doc
1 /*!
2
3 \page blsurf_hypo_page BLSURF Parameters hypothesis
4
5 \n BLSURF Parameters hypothesis works only with <b>BLSURF</b> 2d
6 algorithm. This algorithm is a commercial software.
7
8 \image html blsurf_parameters.png
9
10 <ul>
11 <li><b>Name</b> - allows defining the name of the hypothesis (BLSURF
12 Parameters_n by default).</li>
13
14 <li><b>Physical Mesh</b> - if set to "Custom", allows user input in te
15 in <b>User size</b>, <b>Max Physical Size</b> and <b>Min Physical
16 Size</b> fields.
17 </li>
18
19 <li><b>User size</b> - defines the size of the generated mesh elements. </li>
20
21 <li><b>Max Physical Size</b> - defines the upper limit of mesh element size. </li>
22
23 <li><b>Min Physical Size</b> - defines the lower limit of mesh element size. </li>
24
25 <li><b>Geometrical mesh</b> - if set to "Custom", allows user input in
26  <b>Angle Mesh S</b>, <b>Angle Mesh C</b> and
27 <b>Gradation</b> fields. These fields control
28 computation of the element size, so called <i>geometrical size</i>, conform to
29 the surface geometry considering local curvatures. \n
30 If both the <b>User size</b> and the <i>geometrical size</i> are defined, the
31  eventual element size correspond to the least of the two. </li>
32
33 <li><b>Angle Mesh S</b> - maximum angle between the mesh face and the
34 tangent to the geometrical surface at each mesh node, in degrees. </li>
35
36 <li><b>Angle Mesh C</b> - maximum angle between the mesh edge and the
37 tangent to the geometrical curve at each mesh node, in degrees. </li>
38
39 <li><b>Max Geometrical Size</b> - defines the upper limit of the <i>geometrical size</i>.</li>
40
41 <li><b>Min Geometrical Size</b> - defines the lower limit of the <i>geometrical size</i>.</li>
42
43 <li><b>Gradation</b> - maximum ratio between the lengths of
44 two adjacent edges. </li>
45
46 <li><b>Allow Quadrangles</b> - if checked, allows the creation of quadrilateral elements.</li>
47
48 <li><b>Patch independent</b> - if checked, geometrical
49 edges are not respected and all geometrical faces are meshed as one
50 hyper-face.</li>
51
52 \image html blsurf_parameters_advanced.png
53
54 <li><b>Topology</b> - allows creation of a conform mesh on a shell of
55 not sewed faces. 
56 <ul>
57   <li>"From CAD" means that mesh conformity is assured by conformity
58   of a shape.</li>
59   <li>"Pre-process" and "Pre-process++" allow the BLSURF software to
60   pre-process the geometrical model to eventually produce a conform
61   mesh. </li>
62 </ul>
63
64 <li><b>Verbosity level</b> - Defines the percentage of "verbosity" of
65 BLSURF [0-100].</li>
66
67 <li><b>Add option</b> - provides the choice of multiple advanced
68 options, which appear, if selected, in a table where it is possible to
69 input the value of the option and to edit it later.</li>
70
71 <li><b>Clear option</b> - removes the option selected in the table.
72
73 </ul>
74
75 \n
76 The following options are commonly usable. The notion of <i>diag</i>
77 used in the descriptions means
78 the diagonal of the bounding box of the geometrical object to mesh.
79
80 <ul>
81 <li><b>topo_eps1</b> (real) - is the tolerance level inside a CAD
82 patch. By default is equal to <i>diag</i> × 10-4. This tolerance is used to
83 identify nodes to merge within one geometrical face when \b Topology
84 option is to pre-process. Default is <i>diag</i>/10.0.</li>
85
86 <li><b>topo_eps2</b> (real) - is the tolerance level between two CAD
87 patches. By default is equal to <i>diag</i> × 10-4. This tolerance is used to
88 identify nodes to merge over different geometrical faces when
89 \b Topology option is to pre-process. Default is <i>diag</i>/10.0.</li>
90
91 <li>\b LSS (real) - is an abbreviation for "length of sub-segment". It is
92 a maximal allowed length of a mesh edge. Default is 0.5.</li>
93
94 <li>\b frontal (integer)
95 <ul>
96 <li> 1 - the mesh generator inserts points with an advancing front method.</li>
97 <li> 0 - it inserts them with an algebraic method (on internal edges). This method is
98 slightly faster but generates less regular meshes. </li>
99 </ul>
100 Default is 0.</li>
101
102 <li>\b hinterpol_flag (integer) - determines the computation of an
103 interpolated value <i>v</i> between two points <i>P1</i> and <i>P2</i> on a
104 curve. Let <i>h1</i> be the value at point <i>P1,</i> <i>h2</i> be the value at point
105 <i>P2,</i> and <i>t</i> be a parameter varying from 0 to 1 when moving from <i>P1
106 to</i> <i>P2</i> . 
107 <ul>
108 <li>0 - the interpolation is linear: <i>v = h1 + t (h2 - h1 )</i></li>
109 <li>1 - the interpolation is geometric: <i>v = h1 * pow( h2/h1, t)</i></li>
110 <li>2 - the interpolation is sinusoidal: <i>v = (h1+h2)/2 +
111 (h1-h2)/2*cos(PI*t)</i></li>
112 </ul>
113 Default is 0.</li>
114
115 <li>\b hmean_flag (integer) - determines the computation of the average of several
116 values:<ul>
117 <li>-1 - the minimum is computed.</li>
118 <li>0 or 2 - the arithmetic average computed.
119 <li>1 - the geometric average is computed.</li>
120 </ul>
121 Default is 0.</li>
122
123 <li>\b CheckAdjacentEdges, \b CheckCloseEdges and \b CheckWellDefined
124 (integers) - gives the number of calls of equally named subroutines the
125 purpose of which is to improve the mesh of domains having narrow
126 parts. At each iteration,\b CheckCloseEdges decreases the sizes of the
127 edges when two boundary curves are neighboring,\b CheckAdjacentEdges
128 balances the sizes of adjacent edges, and \b CheckWellDefined checks if
129 the parametric domain is well defined. Default values are 0.</li>
130
131
132 <li>\b CoefRectangle (real)- defines the relative thickness of the rectangles
133 used by subroutine \b CheckCloseEdges (see above). Default is 0.25.</li>
134
135 <li>\b eps_collapse (real) - if more than 0.0, BLSURF removes
136 curves whose lengths are less than \b eps_collapse. To obtain an
137 approximate value of the length of a curve, it is arbitrarily
138 split into 20 edges. Default is 0.0.</li>
139
140 <li>\b eps_ends (real) - is used to detect the curves whose lengths are very
141 small, which sometimes constitutes an error. A message is printed
142 if<i> fabs(P2-P1) < eps_ends</i>, where <i>P1</i> and <i>P2</i> are the
143 extremities of a curve. Default is <i>diag</i>/500.0.</li>
144
145 <li>\b prefix (char) - is a prefix of the files generated by
146 BLSURF. Default is "x".</li>
147
148 <li>\b refs (integer) - reference of a surface, used when exporting
149 files. Default is 1.</li>
150 </ul>
151
152 \n
153 The following advanced options are not documented and you can use them
154 at your own risk.
155 \n\n Interger variables:
156 <ul>
157 <li>    addsurf_ivertex</li>
158 <li>    background     </li>
159 <li>    coiter         </li>
160 <li>    communication  </li>
161 <li>    decim          </li>
162 <li>    export_flag    </li>
163 <li>    file_h         </li>
164 <li>    gridnu         </li>
165 <li>    gridnv         </li>
166 <li>    intermedfile   </li>
167 <li>    memory         </li>
168 <li>    normals        </li>
169 <li>    optim          </li>
170 <li>    pardom_flag    </li>
171 <li>    pinch          </li>
172 <li>    rigid          </li>
173 <li>    surforient     </li>
174 <li>    tconf          </li>
175 <li>    topo_collapse  </li>
176 </ul>
177 Real variables:
178 <ul>
179 <li>    addsurf_angle  </li>
180 <li>    addsurf_R      </li>
181 <li>    addsurf_H      </li>
182 <li>    addsurf_FG     </li>
183 <li>    addsurf_r      </li>
184 <li>    addsurf_PA     </li>
185 <li>    angle_compcurv </li>
186 <li>    angle_ridge    </li>
187 <li>    eps_pardom     </li>
188 </ul>
189 String variables:
190 <ul>
191 <li>    export_format  </li>
192 <li>    export_option  </li>
193 <li>    import_option  </li>  
194 </ul>
195
196
197 \n
198 Currently BLSURF plugin has the following limitations.
199 <ul>
200   <li>The created mesh will contain inverted elements if it is based on a shape,
201       consisting of more than one face (box, cone, torus...) and if
202       the option "Allow Quadrangles (Test)" has been checked before
203       computation.</li>
204
205   <li>SIGFPE exception is raised at the attempt to compute the mesh
206       based on a box when the option "Patch independent" is checked.</li>
207
208   <li>BLSURF algorithm cannot be used as a local algorithm (on
209       sub-meshes) or as a provider of a low-level
210       mesh for some 3D algorithms, because the BLSURF mesher (and
211       consequently plugin) does not provide the information on node
212       parameters on edges (U) and faces (U,V). For example the
213       following combinations of algorithms are impossible:
214       <ul>
215         <li> global MEFISTO or Quadrangle(mapping) + local BLSURF;</li>
216         <li> BLSUFR + Projection 2D from faces meshed by BLSURF;</li>
217         <li> local BLSURF + Extrusion 3D;</li>
218       </ul>
219       </li>
220 </ul>
221
222 */