]> SALOME platform Git repositories - plugins/netgenplugin.git/commitdiff
Salome HOME
0021308: EDF 1923 SMESH: Remove hard-coded dependency of the external mesh plugins...
authorrnv <rnv@opencascade.com>
Tue, 27 Mar 2012 13:30:22 +0000 (13:30 +0000)
committerrnv <rnv@opencascade.com>
Tue, 27 Mar 2012 13:30:22 +0000 (13:30 +0000)
doc/salome/gui/NETGENPLUGIN/input/additional_hypo.doc [new file with mode: 0644]
doc/salome/gui/NETGENPLUGIN/input/index.doc [new file with mode: 0644]
doc/salome/gui/NETGENPLUGIN/input/netgen_2d_3d_hypo.doc [new file with mode: 0644]
doc/salome/gui/NETGENPLUGIN/input/netgenplugin_python_interface.doc [new file with mode: 0644]

diff --git a/doc/salome/gui/NETGENPLUGIN/input/additional_hypo.doc b/doc/salome/gui/NETGENPLUGIN/input/additional_hypo.doc
new file mode 100644 (file)
index 0000000..6c91730
--- /dev/null
@@ -0,0 +1,28 @@
+/*!
+
+\page additional_hypo_page Additional Hypotheses
+
+\n <b>Additional Hypotheses</b> can be applied as a supplement to the
+main hypotheses, introducing additional concepts to mesh creation.
+
+Following additional hypotheses can be used together with NETGEN algoritm:
+<ul>
+
+<li><b>Quadrangle Preference</b> - This additional hypothesis can be used together with Netgen 2D algorithm.
+It allows Netgen 2D to build quadrangular meshes.</li>
+<br>
+This hypothesis has one restriction on its work: the total quantity of
+segments on all four sides of the face must be even (divisible by 2).
+
+
+<li><b>Viscous Layers</b> additional hypothesis can be used together with NETGEN 3D.
+This hypothesis allows creation of layers of highly stretched prisms near
+mesh boundary, which is beneficial for high quality viscous
+computations. The prisms constructed on the quadrangular mesh faces are
+actually the hexahedrons.</li>
+</ul>
+
+For more detailed description of the described above hypothesis please refer SALOME Mesh User's Guide.
+*/
+
+
diff --git a/doc/salome/gui/NETGENPLUGIN/input/index.doc b/doc/salome/gui/NETGENPLUGIN/input/index.doc
new file mode 100644 (file)
index 0000000..df3ed3a
--- /dev/null
@@ -0,0 +1,20 @@
+/*!
+
+\mainpage Introduction to NETGENPLUGIN
+
+\b NETGENPLUGIN plugin is destined for:
+- Meshing 1D, 2D and 3D geometric entities.
+  - Faces are split into triangular elements.
+  - Volumes are split into tetrahedral (pyramidal) elements.
+- Generating 3D meshes from 2D meshes, working without geometrical objects.
+
+To manage parameters of the NETGENPLUGIN use \subpage netgen_2d_3d_hypo_page and \subpage additional_hypo_page.
+
+Also all NETGENPLUGIN functionalities are accessible via
+\subpage netgenplugin_python_interface_page "NETGENPLUGIN Python interface".
+
+\image html image1.png "Example of a triangular 2D mesh"
+
+\image html image2.gif "Example of a tetrahedral 3D mesh"
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/NETGENPLUGIN/input/netgen_2d_3d_hypo.doc b/doc/salome/gui/NETGENPLUGIN/input/netgen_2d_3d_hypo.doc
new file mode 100644 (file)
index 0000000..7a75cdd
--- /dev/null
@@ -0,0 +1,100 @@
+/*!
+
+\page netgen_2d_3d_hypo_page Netgen 2D and 3D hypotheses
+
+<b>Netgen 2D Parameters</b> and <b>Netgen 3D  Parameters</b> hypotheses work only with
+<b>Netgen 1D-2D</b>, <b>Netgen 2D</b>, <b>Netgen 1D-2D-3D</b> and
+<b>Netgen 3D</b> algorithms. <b>Netgen 1D-2D</b> and <b>Netgen
+1D-2D-3D</b>  algorithms do not require definition of lower-level
+hypotheses and algorithms (2D and 1D for meshing 3D objects and 1D for
+meshing 2D objects).
+
+\image html netgen2d3d.png
+<center><em>Dialog boxes of <b>Netgen 1D-2D</b> and <b>Netgen
+1D-2D-3D</b> algorithms </em></center>
+<br>
+
+\image html netgen2d3d_only.png
+<center><em>Dialog boxes of <b>Netgen 2D</b> and <b>Netgen 3D</b>
+algorithms </em></center>
+
+- <b>Name</b> - allows to define the name for the algorithm (Netgen
+2D (or 3D) Parameters by default).
+- <b>Max Size</b> - maximum linear dimensions for mesh cells.
+- <b>Min Size</b> - minimum linear dimensions for mesh cells. It is
+ignored if it is more than <b>Max Size</b>.
+- <b>Second Order</b> - if this box is checked in, the algorithm will
+create second order nodes on the mesh, which actually will become
+\ref adding_quadratic_elements_page "Quadratic".
+- <b>Fineness</b> - ranging from Very Coarse to Very Fine allows to set the
+level of meshing detalization using the three parameters below. You
+can select Custom to define them manually.
+- <b>Growth rate</b> - allows to define how much the linear dimensions of
+two adjacent cells can differ (i.e. 0.3 means 30%).
+- <b>Nb. Segs per Edge</b> and <b>Nb Segs per Radius</b> - allows to define the
+minimum number of mesh segments in which edges and radiuses will be
+split.
+- <b>Allow Quadrangles</b> - allows to use quadrangle elements in a
+triangle 2D mesh. This checkbox is not present in Netgen 3D parameters
+because currently building a tetrahedral mesh with quadrangle faces is
+not possible.
+- <b>Optimize</b> - if this box is checked in, the algorithm will try to
+create regular (possessing even sides) elements.
+
+\image html netgen3d_local_size.png
+
+- <b>Local sizes</b> - allows to define size of elements on and
+around specified geometrical edges and vertices. To define the local
+size it is necessary to select a geometrical edge or vertex in the
+object browser or in the viewer, and to click <b>On Edge</b> or <b>On
+Vertex</b> correspondingly. <b>Name</b> of the geometrical object and
+a default <b>Value</b> will be added in the table where the
+<b>Value</b> can be changed.
+- <b>Remove</b> - deletes a selected row from the table.
+
+\image html netgen2d3d_simple.png
+
+<b>Netgen 2D simple parameters</b> and <b>Netgen 3D simple
+parameters</b> allow defining the size of elements for each
+dimension.
+
+\b 1D group allows defining the size of 1D elements in either of two ways: 
+- <b>Number of Segments</b> has the same sense as \ref
+number_of_segments_anchor "Number of segments" hypothesis with
+equidistant distribution.
+- <b>Local Length</b> has the same sense as \ref 
+average_length_anchor "Local Length" hypothesis.
+
+\b 2D group allows defining the size of 2D elements 
+- <b>Length from edges</b> if checked in, acts like \ref
+length_from_edges_anchor "Length from Edges" hypothesis, else
+- <b>Max. Element Area</b> defines the maximum element area like \ref
+max_element_area_anchor "Max Element Area" hypothesis.
+- <b>Allow Quadrangles</b> - allows to use quadrangle elements in a
+triangle 2D mesh. This checkbox is not present in Netgen 3D simple parameters
+because currently building a tetrahedral mesh with quadrangle faces is
+not possible.
+
+\b 3D groups allows defining the size of 3D elements.
+- <b>Length from faces</b> if checked in, the area of sides of
+volumic elements will be equal to an average area of 2D elements, else
+- <b>Max. Element Volume</b> defines the maximum element volume like
+\ref max_element_volume_hypo_page "Max Element Volume"
+hypothesis.
+
+\note Netgen algorithm does not strictly follow the input
+parameters. The actual mesh can be more or less dense than
+required. There are several factors in it:
+- NETGEN does not actually use "NbOfSegments" parameter for discretization of
+edge. This parameter is used  only to define the local element size
+(size at the given point), so local sizes of adjacent edges influence
+each other.
+- NETGEN additionally restricts the element size according to edge curvature.
+- The local size of edges influences the size of close triangles.
+- The order of elements and their size in the 1D mesh generated by
+NETGEN differ from those in the 1D mesh generated by Regular_1D
+algorithm, resulting in different 2D and 3D meshes.
+
+*/
+
+
diff --git a/doc/salome/gui/NETGENPLUGIN/input/netgenplugin_python_interface.doc b/doc/salome/gui/NETGENPLUGIN/input/netgenplugin_python_interface.doc
new file mode 100644 (file)
index 0000000..d1e70a4
--- /dev/null
@@ -0,0 +1,59 @@
+/*!
+
+\page netgenplugin_python_intarface_page Python Interface
+
+Python package \ref NETGENPluginDC "NETGENPlugin" defines several classes, destined for creation of the 2D and 3D meshes.
+
+Documentation for NETGENPlugin package is available in linear form grouped by classes, declared in the NETGENPluginDC.py file.
+
+Below you can see an example of usage of the NETGENPlugin package for mesh generation:
+
+\code
+
+import geompy
+import smesh
+
+# create a box
+box = geompy.MakeBoxDXDYDZ(10., 10., 10.)
+geompy.addToStudy(box, "Box")
+
+
+# 1. Create a triangular 2D mesh on the box with NETGEN_1D2D algorithm
+triaN = smesh.Mesh(box, "Box : triangular mesh by NETGEN_1D2D")
+
+# create a Netgen_1D2D algorithm for solids
+algo2D = triaN.Triangle(smesh.NETGEN_1D2D)
+
+# define hypotheses
+n12_params = algo2D.Parameters()
+
+# define number of segments
+n12_params.SetNbSegPerEdge(19)
+
+# define max element
+n12_params.SetMaxSize(300)
+
+# 2. Create a tetrahedral mesh on the box with NETGEN_1D2D3D algorithm (full netgen)
+tetraN = smesh.Mesh(box, "Box : tetrahedrical mesh by NETGEN_1D2D3D")
+
+# create a Netgen_1D2D3D algorithm for solids
+algo3D = tetraN.Tetrahedron(smesh.FULL_NETGEN)
+
+# define hypotheses
+n123_params = algo3D.Parameters()
+
+# define number of segments
+n123_params.SetNbSegPerEdge(11)
+
+# define max element size
+n123_params.SetMaxSize(300)
+
+# compute the meshes
+triaN.Compute()
+tetraN.Compute()
+
+\endcode
+
+*/
+
+