diff --git a/docs/documentation/index.md b/docs/documentation/index.md index 263d367..913fb5d 100644 --- a/docs/documentation/index.md +++ b/docs/documentation/index.md @@ -29,6 +29,18 @@ caption: Developer Guide developerguide/index.md ``` +```{toctree} +--- +maxdepth: 4 +caption: Tutorials +--- +tutorials/index_inbuiltmeshgenerators.md +tutorials/index_externalmeshes.md +tutorials/index_agglomeration.md +tutorials/index_postprocessing.md +tutorials/index_visualization.md +``` + ```{toctree} --- maxdepth: 1 diff --git a/docs/documentation/tutorials/blockstructuredmeshes.md b/docs/documentation/tutorials/blockstructuredmeshes.md new file mode 100644 index 0000000..360a86e --- /dev/null +++ b/docs/documentation/tutorials/blockstructuredmeshes.md @@ -0,0 +1,251 @@ +# Block-Structured Meshes +This tutorial shows how to agglomerate block-structured grids with linear elements to get a curved mesh consisting of fully curved hexahedral elements. + +The parameter file can be found in + + tutorials/3-01-agglomeration_NACA/parameter.ini + +## Restrictions on the block-structured mesh readin + +- If meshes are used to create curved elements, a **unique factor** should be present in the i,j,k element count of **all blocks**!! +- Boundary Conditions: + - Attention: **One block face** can only be associated to **one boundary condition**. Block faces with mixed BCs or BC and internal faces a likely to produce wrong mesh topology!! + **Split blocks** in this case, else you will get problems in the mesh connect step! + - Each boundary conditions must be specified in the inifile by its name and an associated Boundary Type: + + BoundaryName = wall_1 + BoundaryType = (/4,0,0,0/) + BoundaryName = wall_2 + BoundaryType = (/4,0,0,0/) + + +You can combine multiple BCs by using only a common part of the boundary name string (here for example `BoundaryName=wall`) + +## Initial Meshes + +The use of block-structured meshes enables the generation of fully three-dimensional curved elements by agglomeration of a specific block of elements, leading to a very simple and robust curving technique. In order to illustrate block-structuring and agglomeration, enabled by the new parameter `MeshIsAlreadyCurved`, two initally fine meshes of a NACA-profile are provided as CGNS files, mesh 1 without boundary layer refinement and mesh 2 with boundary layer refinement: + +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | ++ + | ++ + | +
+ + | +
+ + | ++ + | ++ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +
+ + | ++ + | +