mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-15 10:08:34 +05:00
d3c3260cd9
Delete .vscode/settings.json Publish shrinkGeometry. Refactor StdMeshers_Cartesian_3D and StdMeshers_Cartesian_VL classes to allow passing an arbitrary shrink mesh to the viscous layer builder. Use StdMeshers_Cartesian_VL in StdMeshers_ViscousLayerBuilder to handle geometry shrinking and viscous layer building. Create maps to link shrink solid and the solid assign to the shrink mesh. Code cleanup. Defining map btw original shape (TopAbs_COMPOUND) and result shrink object. Refactor to support viscous layer of faces. Code clean up and add of tests. Documentation and code cleanup erase debug comment. Modif after code review. Avoid compilation warning from ViscousLayerBuilder and ViscousLayerBuilder_i classes.
341 lines
8.6 KiB
ReStructuredText
341 lines
8.6 KiB
ReStructuredText
.. _tui_defining_hypotheses_page:
|
|
|
|
**********************************
|
|
Defining Hypotheses and Algorithms
|
|
**********************************
|
|
|
|
This page provides example codes of :ref:`defining algorithms <tui_defining_meshing_algos>`
|
|
and hypotheses.
|
|
|
|
* Wire discretisation 1D algorithm
|
|
|
|
* :ref:`tui_1d_adaptive` hypothesis
|
|
* :ref:`Arithmetic Progression <tui_1d_arithmetic>` hypothesis
|
|
* :ref:`Geometric Progression <tui_1d_arithmetic>` hypothesis
|
|
* :ref:`Deflection and Number of Segments <tui_deflection_1d>` hypotheses
|
|
* :ref:`Start and End Length <tui_start_and_end_length>` hypothesis
|
|
* :ref:`tui_average_length` hypothesis
|
|
* :ref:`tui_propagation` additional hypotheses
|
|
* :ref:`Fixed Points 1D <tui_fixed_points>` hypothesis
|
|
|
|
|
|
* Triangle: NETGEN 2D algorithm
|
|
|
|
* :ref:`tui_max_element_area` hypothesis
|
|
* :ref:`tui_length_from_edges` hypothesis
|
|
|
|
* Quadrangle: Mapping 2D algorithm
|
|
|
|
* :ref:`Quadrangle Parameters <tui_quadrangle_parameters>` hypothesis
|
|
|
|
* :ref:`Radial Quadrangle 1D-2D <tui_radial_quadrangle>` algorithm
|
|
* NETGEN 3D algorithm
|
|
|
|
* :ref:`tui_max_element_volume` hypothesis
|
|
* :ref:`Viscous layers <tui_viscous_layers>` hypotheses
|
|
|
|
* Hexahedron (i,j,k) 3D algorithm
|
|
|
|
* :ref:`tui_block_renumber`
|
|
|
|
* :ref:`tui_projection`
|
|
* :ref:`Extrusion 3D <tui_prism_3d_algo>` algorithm
|
|
* :ref:`Radial Prism <tui_radial_prism>` algorithm
|
|
* :ref:`Body Fitting <tui_cartesian_algo>` algorithm
|
|
* :ref:`Import 1D-2D Elements from Another Mesh <tui_import>` algorithm
|
|
* :ref:`Use Faces to be Created Manually <tui_use_existing_faces>` algorithm
|
|
* :ref:`Segments around Vertex <tui_segments_around_vertex>` algorithm
|
|
|
|
|
|
|
|
Defining 1D Hypotheses
|
|
######################
|
|
|
|
.. _tui_1d_arithmetic:
|
|
|
|
Arithmetic Progression and Geometric Progression
|
|
================================================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex01.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex01.py>`
|
|
|
|
.. _tui_1d_adaptive:
|
|
|
|
Adaptive
|
|
========
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_adaptive1d.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_adaptive1d.py>`
|
|
|
|
|
|
.. _tui_deflection_1d:
|
|
|
|
Deflection and Number of Segments
|
|
=================================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex02.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex02.py>`
|
|
|
|
|
|
.. _tui_start_and_end_length:
|
|
|
|
Start and End Length
|
|
====================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex03.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex03.py>`
|
|
|
|
|
|
.. _tui_average_length:
|
|
|
|
Local Length
|
|
============
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex04.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex04.py>`
|
|
|
|
Defining 2D and 3D hypotheses
|
|
#############################
|
|
|
|
|
|
.. _tui_max_element_area:
|
|
|
|
Maximum Element Area
|
|
====================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex05.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex05.py>`
|
|
|
|
|
|
.. _tui_max_element_volume:
|
|
|
|
Maximum Element Volume
|
|
======================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex06.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex06.py>`
|
|
|
|
|
|
.. _tui_length_from_edges:
|
|
|
|
Length from Edges
|
|
=================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex07.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex07.py>`
|
|
|
|
.. _tui_block_renumber:
|
|
|
|
Renumber 3D hypothesis
|
|
======================
|
|
|
|
.. literalinclude:: ../../examples/filters_ex39.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/filters_ex39.py>`
|
|
|
|
Defining Additional Hypotheses
|
|
##############################
|
|
|
|
.. _tui_propagation:
|
|
|
|
Propagation
|
|
===========
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex08.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex08.py>`
|
|
|
|
|
|
.. _tui_defining_meshing_algos:
|
|
|
|
Defining Meshing Algorithms
|
|
###########################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex09.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex09.py>`
|
|
|
|
|
|
.. _tui_projection:
|
|
|
|
Projection Algorithms
|
|
=====================
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex10.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex10.py>`
|
|
|
|
Projection 1D2D
|
|
===============
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex11.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex11.py>`
|
|
|
|
.. _tui_fixed_points:
|
|
|
|
1D Mesh with Fixed Points example
|
|
#################################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex12.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex12.py>`
|
|
|
|
.. _tui_radial_quadrangle:
|
|
|
|
Radial Quadrangle 1D-2D example
|
|
###############################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex13.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex13.py>`
|
|
|
|
.. _tui_quadrangle_parameters:
|
|
|
|
Quadrangle Parameters example 1 (meshing a face with 3 edges)
|
|
##############################################################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex14.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex14.py>`
|
|
|
|
Quadrangle Parameters example 2 (using different types)
|
|
#######################################################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex15.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex15.py>`
|
|
|
|
.. _tui_import:
|
|
|
|
"Import 1D-2D Elements from Another Mesh" example
|
|
#################################################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex16.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex16.py>`
|
|
|
|
.. _tui_viscous_layers:
|
|
|
|
Viscous layers construction
|
|
###########################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_ex17.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_ex17.py>`
|
|
|
|
.. _tui_viscous_layers_api:
|
|
|
|
Viscous layers API construction
|
|
###########################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_vlapi_ex17.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_vlapi_ex17.py>`
|
|
|
|
.. _tui_radial_prism:
|
|
|
|
Radial Prism example
|
|
####################
|
|
|
|
.. literalinclude:: ../../examples/radial_prism_3d_algo.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/radial_prism_3d_algo.py>`
|
|
|
|
.. _tui_cartesian_algo:
|
|
|
|
Usage of Body Fitting algorithm
|
|
###############################
|
|
|
|
.. literalinclude:: ../../examples/cartesian_algo.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/cartesian_algo.py>`
|
|
|
|
.. _tui_use_existing_faces:
|
|
|
|
Usage of "Use Faces to be Created Manually" algorithm
|
|
#####################################################
|
|
|
|
This sample demonstrates how to use **Use Faces to be Created Manually** algorithm,
|
|
which is actually just a stub allowing to use your own 2D algorithm
|
|
implemented in Python.
|
|
|
|
.. literalinclude:: ../../examples/use_existing_faces.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/use_existing_faces.py>`
|
|
|
|
Resulting mesh:
|
|
|
|
.. image:: ../images/use_existing_face_sample_mesh.png
|
|
:align: center
|
|
|
|
|
|
.. _tui_prism_3d_algo:
|
|
|
|
Usage of Extrusion 3D meshing algorithm
|
|
########################################
|
|
|
|
.. literalinclude:: ../../examples/prism_3d_algo.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/prism_3d_algo.py>`
|
|
|
|
The result geometry and mesh is shown below
|
|
|
|
.. image:: ../images/prism_tui_sample.png
|
|
:align: center
|
|
|
|
|
|
.. _tui_quad_ma_proj_algo:
|
|
|
|
Usage of Medial Axis Projection algorithm
|
|
#########################################
|
|
|
|
.. literalinclude:: ../../examples/quad_medial_axis_algo.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/quad_medial_axis_algo.py>`
|
|
|
|
|
|
.. _tui_segments_around_vertex:
|
|
|
|
Usage of Segments around Vertex algorithm
|
|
#########################################
|
|
|
|
.. literalinclude:: ../../examples/defining_hypotheses_len_near_vertex.py
|
|
:language: python
|
|
|
|
:download:`Download this script <../../examples/defining_hypotheses_len_near_vertex.py>`
|
|
|