\page a2d_meshing_hypo_page 2D Meshing Hypotheses
-<br>
-<ul>
-<li>\ref max_element_area_anchor "Max Element Area"</li>
-<li>\ref length_from_edges_anchor "Length from Edges"</li>
-<li>\ref hypo_quad_params_anchor "Quadrangle parameters"</li>
-</ul>
+- \ref max_element_area_anchor "Max Element Area"
+- \ref length_from_edges_anchor "Length from Edges"
+- \ref hypo_quad_params_anchor "Quadrangle parameters"
-<br>
\anchor max_element_area_anchor
<h2>Max Element Area</h2>
-<b>Max Element Area</b> hypothesis is applied for meshing of 2D faces
+<b>Max Element Area</b> hypothesis is applied for meshing of faces
composing your geometrical object. Definition of this hypothesis
-consists of setting the <b>maximum area</b> of meshing elements (depending on
-the chosen meshing algorithm it can be <b>triangles</b> or <b>quadrangles</b>),
-which will compose the mesh of these 2D faces.
+consists of setting the <b>maximum area</b> of mesh faces,
+which will compose the mesh of these faces.
\image html a-maxelarea.png
\image html max_el_area.png "In this example, Max. element area is very small compared to the 1D hypothesis"
<b>See Also</b> a sample TUI Script of a
-\ref tui_max_element_area "Maximum Element Area" hypothesis
-operation.
+\ref tui_max_element_area "Maximum Element Area" hypothesis operation.
-<br>
\anchor length_from_edges_anchor
<h2>Length from Edges</h2>
-<b>Length from edges</b> hypothesis builds 2D mesh segments having a
-length calculated as an average edge length for a given wire.
+<b>Length from edges</b> hypothesis defines the maximum linear size of
+mesh faces as an average length of mesh edges approximating
+the meshed face boundary.
<b>See Also</b> a sample TUI Script of a
\ref tui_length_from_edges "Length from Edges" hypothesis operation.
-<br>
\anchor hypo_quad_params_anchor
<h2>Quadrangle parameters</h2>
-\image html hypo_quad_params_dialog.png "Quadrangle parameters creation/edition dialog"
-
-<b>Quadrangle parameters</b> is a hypothesis for Quadrangle (Mapping).
-
-<b>Base vertex</b> parameter allows using Quadrangle (Mapping)
-algorithm for meshing of triangular faces. In this case it is
-necessary to select the vertex, which will be used as the fourth edge
-(degenerated).
+\image html hypo_quad_params_dialog.png "Quadrangle parameters: Transition"
+
+<b>Quadrangle parameters</b> is a hypothesis for \ref quad_ijk_algo_page.
+
+<b>Transition</b> tab is used to define the algorithm of transition
+between opposite sides of the face with a different number of
+segments on them. The following types of transition
+algorithms are available:
+
+- <b>Standard</b> is the default case, when both triangles and quadrangles
+ are possible in the transition area along the finer meshed sides.
+- <b>Triangle preference</b> forces building only triangles in the
+ transition area along the finer meshed sides.
+ \note This type corresponds to <b>Triangle Preference</b> additional hypothesis,
+ which is obsolete now.
+- <b>Quadrangle preference</b> forces building only quadrangles in the
+ transition area along the finer meshed sides. This hypothesis has a
+ restriction: the total quantity of segments on all
+ four face sides must be even (divisible by 2).
+ \note This type corresponds to <b>Quadrangle Preference</b> additional hypothesis,
+ which is obsolete now.
+- <b>Quadrangle preference (reversed)</b> works in the same way and
+ with the same restriction as <b>Quadrangle preference</b>, but
+ the transition area is located along the coarser meshed sides.
+- <b>Reduced</b> type forces building only quadrangles and the transition
+ between the sides is made gradually, layer by layer. This type has
+ a limitation on the number of segments: one pair of opposite sides must have
+ the same number of segments, the other pair must have an even total
+ number of segments. In addition, the number of rows
+ between sides with different discretization
+ should be enough for the transition. Following the fastest transition
+ pattern, three segments become one (see the image below), hence
+ the least number of face rows needed to reduce from Nmax segments
+ to Nmin segments is log<sub>3</sub>( Nmax / Nmin ). The number of
+ face rows is equal to the number of segments on each of equally
+ discretized sides.
+
+\image html reduce_three_to_one.png "The fastest transition pattern: 3 to 1"
+
+<b>Base vertex</b> tab allows using Quadrangle (Mapping)
+algorithm for meshing of trilateral faces. In this case it is
+necessary to select the vertex, which will be used as the forth
+degenerated side of quadrangle.
+
+\image html hypo_quad_params_dialog_vert.png "Quadrangle parameters: Base Vertex"
\image html hypo_quad_params_1.png "A face built from 3 edges"
\image html hypo_quad_params_res_2.png "The resulting meshes"
-<b>Type</b> parameter is used on faces with a different number of
-segments on opposite sides to define the algorithm of transition
-between them. The following types are available:
+\image html hypo_quad_params_dialog_enf.png "Quadrangle parameters: Enforced nodes"
+
+<b>Enforced nodes</b> tab allows defining points, where the
+algorithm should create nodes. There are two ways to define positions
+of the enforced nodes.
+<ul>
+ <li>\b Vertices group allows to set up shapes whose vertices will
+ define positions of the enforced nodes. Only vertices successfully
+ projected to the meshed face and located close enough to the
+ meshed face will be used to create the enforced nodes.</li>
+ <li> \b Points group allows to explicitly define coordinates of
+ points used to create the enforced nodes. Only points successfully
+ projected to the meshed face and located close enough to the
+ meshed face will be used to create the enforced nodes.</li>
+</ul>
+\note <b>Enforced nodes</b> cannot be created at \b Reduced transition type.
+Let us see how the algorithm works:
<ul>
-<li><b>Standard</b> is the default case, when both triangles and quadrangles
- are possible in the transition area along the finer meshed sides.</li>
-<li><b>Triangle preference</b> forces building only triangles in the
- transition area along the finer meshed sides.
- <i>This type corresponds to <b>Triangle Preference</b> additional
- hypothesis, which is obsolete now.</i></li>
-<li><b>Quadrangle preference</b> forces building only quadrangles in the
- transition area along the finer meshed sides. This hypothesis has a
- restriction: the total quantity of segments on all
- four sides of the face must be even (divisible by 2).</li>
- <i>This type corresponds to <b>Quadrangle Preference</b>
- additional hypothesis, which is obsolete now.</i></li>
-<li><b>Quadrangle preference (reversed)</b> works in the same way and
-with the same restriction as <b>Quadrangle preference</b>, but
- the transition area is located along the coarser meshed sides.</li>
-<li><b>Reduced</b> type forces building only quadrangles and the transition
- between the sides is made gradually, layer by layer. This type has
- a limitation on the number of segments: one pair of opposite sides must have
- the same number of segments, the other pair must have an even difference
- between the numbers of segments on the sides.</li>
+ <li> Initially positions of nodes are computed without taking into
+ account the enforced vertex (yellow point).</li>
+\image html hypo_quad_params_enfnodes_algo1.png "Initial mesh"
+
+ <li> Then the node closest to the enforced vertex is
+ detected. Extreme nodes of the row and column of the detected node
+ are used to create virtual edges (yellow lines) ending at the
+ enforced vertex. </li>
+\image html hypo_quad_params_enfnodes_algo2.png "Creation of virtual edges"
+
+ <li> Consequently, the meshed face is divided by the virtual
+ edges into four quadrilateral sub-domains each of which is meshed
+ as usually: the nodes of the row and column of the detected node are
+ moved to the virtual edges and the quadrilateral elements are
+ constructed.
+
+\image html hypo_quad_params_enfnodes_algo3.png "Final mesh"
+
</ul>
+If there are several enforced vertices, the algorithm is applied
+recursively to the formed sub-domains.
<b>See Also</b> a sample TUI Script of a
\ref tui_quadrangle_parameters "Quadrangle Parameters" hypothesis.