An extruded region is now contiguous even when specified with multiple face zones. Edges that border faces in different zones now extrude into internal faces, rather than a pair of boundary faces. Different zones now result only in different mapped patches in the extruded and primary meshes. This means a mesh can be created for a single contiguous extruded region spanning multiple patches. This might be necessary if, for example, a film region is needed across multiple walls with differing thermal boundary conditions. Disconnected extruded regions can still be constructed by running the extrudeToRegionMesh utility muiliple times. The mapped patches created to couple the extruded regions now have symmetric names similar to those created by splitMeshRegions. For example, if the mapped patch in the primary region is called "region0_to_extrudedRegion_f0", then the corresponding patch in the extruded region is called "extrudedRegion_to_region0_f0" (f0, in this example is the face zone from which the region was extruded). Offsetting of the top patch is now handled automatically by a new mappedExtrudedWallPolyPatch. This refers to the bottom patch and automatically calculates the sampling offsets by doing a wave across the extruded mesh layers. This prevents the need to store the offsets in the patch itself, and makes it possible for the patch to undergo mesh changes without adding additional functions to the polyPatch (mapping constructors, autoMap and rmap methods, etc ...).
150 lines
3.4 KiB
C++
150 lines
3.4 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class dictionary;
|
|
object blockMeshDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
convertToMeters 1;
|
|
|
|
vertices
|
|
(
|
|
(0.5 0 -0.5)
|
|
(1 0 -0.5)
|
|
(2 0 -0.5)
|
|
(2 0.707107 -0.5)
|
|
(0.707107 0.707107 -0.5)
|
|
(0.353553 0.353553 -0.5)
|
|
(2 2 -0.5)
|
|
(0.707107 2 -0.5)
|
|
(0 2 -0.5)
|
|
(0 1 -0.5)
|
|
(0 0.5 -0.5)
|
|
(-0.5 0 -0.5)
|
|
(-1 0 -0.5)
|
|
(-2 0 -0.5)
|
|
(-2 0.707107 -0.5)
|
|
(-0.707107 0.707107 -0.5)
|
|
(-0.353553 0.353553 -0.5)
|
|
(-2 2 -0.5)
|
|
(-0.707107 2 -0.5)
|
|
(0.5 0 0.5)
|
|
(1 0 0.5)
|
|
(2 0 0.5)
|
|
(2 0.707107 0.5)
|
|
(0.707107 0.707107 0.5)
|
|
(0.353553 0.353553 0.5)
|
|
(2 2 0.5)
|
|
(0.707107 2 0.5)
|
|
(0 2 0.5)
|
|
(0 1 0.5)
|
|
(0 0.5 0.5)
|
|
(-0.5 0 0.5)
|
|
(-1 0 0.5)
|
|
(-2 0 0.5)
|
|
(-2 0.707107 0.5)
|
|
(-0.707107 0.707107 0.5)
|
|
(-0.353553 0.353553 0.5)
|
|
(-2 2 0.5)
|
|
(-0.707107 2 0.5)
|
|
);
|
|
|
|
blocks
|
|
(
|
|
hex (5 4 9 10 24 23 28 29) (10 10 11) simpleGrading (1 1 1)
|
|
hex (0 1 4 5 19 20 23 24) (10 10 11) simpleGrading (1 1 1)
|
|
hex (1 2 3 4 20 21 22 23) (20 10 11) simpleGrading (1 1 1)
|
|
hex (4 3 6 7 23 22 25 26) (20 20 11) simpleGrading (1 1 1)
|
|
hex (9 4 7 8 28 23 26 27) (10 20 11) simpleGrading (1 1 1)
|
|
hex (15 16 10 9 34 35 29 28) (10 10 11) simpleGrading (1 1 1)
|
|
hex (12 11 16 15 31 30 35 34) (10 10 11) simpleGrading (1 1 1)
|
|
hex (13 12 15 14 32 31 34 33) (20 10 11) simpleGrading (1 1 1)
|
|
hex (14 15 18 17 33 34 37 36) (20 20 11) simpleGrading (1 1 1)
|
|
hex (15 9 8 18 34 28 27 37) (10 20 11) simpleGrading (1 1 1)
|
|
);
|
|
|
|
edges
|
|
(
|
|
arc 0 5 (0.469846 0.17101 -0.5)
|
|
arc 5 10 (0.17101 0.469846 -0.5)
|
|
arc 1 4 (0.939693 0.34202 -0.5)
|
|
arc 4 9 (0.34202 0.939693 -0.5)
|
|
arc 19 24 (0.469846 0.17101 0.5)
|
|
arc 24 29 (0.17101 0.469846 0.5)
|
|
arc 20 23 (0.939693 0.34202 0.5)
|
|
arc 23 28 (0.34202 0.939693 0.5)
|
|
arc 11 16 (-0.469846 0.17101 -0.5)
|
|
arc 16 10 (-0.17101 0.469846 -0.5)
|
|
arc 12 15 (-0.939693 0.34202 -0.5)
|
|
arc 15 9 (-0.34202 0.939693 -0.5)
|
|
arc 30 35 (-0.469846 0.17101 0.5)
|
|
arc 35 29 (-0.17101 0.469846 0.5)
|
|
arc 31 34 (-0.939693 0.34202 0.5)
|
|
arc 34 28 (-0.34202 0.939693 0.5)
|
|
);
|
|
|
|
defaultPatch
|
|
{
|
|
name frontAndBack;
|
|
type wall;
|
|
}
|
|
|
|
boundary
|
|
(
|
|
walls
|
|
{
|
|
type wall;
|
|
faces
|
|
(
|
|
(0 1 20 19)
|
|
(1 2 21 20)
|
|
(12 11 30 31)
|
|
(13 12 31 32)
|
|
);
|
|
}
|
|
cylinder
|
|
{
|
|
type wall;
|
|
faces
|
|
(
|
|
(5 0 19 24)
|
|
(10 5 24 29)
|
|
(16 10 29 35)
|
|
(11 16 35 30)
|
|
);
|
|
}
|
|
sides
|
|
{
|
|
type patch;
|
|
faces
|
|
(
|
|
(2 3 22 21)
|
|
(3 6 25 22)
|
|
(14 13 32 33)
|
|
(17 14 33 36)
|
|
);
|
|
}
|
|
top
|
|
{
|
|
type patch;
|
|
faces
|
|
(
|
|
(6 7 26 25)
|
|
(7 8 27 26)
|
|
(8 18 37 27)
|
|
(18 17 36 37)
|
|
);
|
|
}
|
|
);
|
|
|
|
|
|
// ************************************************************************* //
|