From ec81436ccee827f04c0abad8c0310ef1e70200f4 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 17 May 2021 14:41:39 +0200 Subject: [PATCH] TUT: generalize (parameterize) blockMeshDict for half-cylinder geometries - profit from some of the recent modifications to parser expansion TUT: adjust some #eval statements for less clutter --- .../cylinder/system/blockMeshDict | 87 +++++++----- .../cylinder/system/decomposeParDict | 27 ++++ .../RAS/squareBendLiq/system/blockMeshDict | 30 ++--- .../squareBendLiq/system/blockMeshDict | 30 ++--- .../system/blockMeshDict | 22 ++- .../cylinder/system/blockMeshDict | 127 +++++++++++------- .../cylinder/system/decomposeParDict | 27 ++++ .../LES/channel395DFSEM/system/controlDict | 2 +- .../squareBend/system/blockMeshDict | 30 ++--- .../cylinder/system/blockMeshDict | 125 ++++++++++------- .../blockMesh/sphere/system/blockMeshDict | 17 ++- .../blockMesh/sphere7/system/blockMeshDict | 34 +++-- .../system/blockMeshDict | 34 +++-- .../spheroid7Projected/system/blockMeshDict | 47 +++---- .../spheroidProjected/system/blockMeshDict | 20 +-- .../laminar/climbingRod/0.orig/U | 2 +- .../laminar/climbingRod/0.orig/U | 2 +- .../background/constant/dynamicMeshDict | 2 +- .../PCF/system/controlDict.template | 2 +- 19 files changed, 384 insertions(+), 283 deletions(-) create mode 100644 tutorials/basic/potentialFoam/cylinder/system/decomposeParDict create mode 100644 tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict diff --git a/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict b/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict index 808a4a6f9f..77d142f3f5 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict +++ b/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict @@ -16,9 +16,27 @@ FoamFile scale 1; -// Front/back locations -zmin -0.5; -zmax 0.5; +// Geometric parameters +rInner 0.5; +rOuter 1; +xmax 2; +ymax 2; + +zmin -0.5; // Back/front locations +zmax 0.5; + +// Divisions: Radial, quarter circumference, outer region and z-directions. +nRadial 10; +nQuarter 10; +nxOuter 20; +nyOuter 20; +nz 1; + +// ---------------- + +// Derived quantities +rInner45 ${{ $rInner * sqrt(0.5) }}; +rOuter45 ${{ $rOuter * sqrt(0.5) }}; vertices #codeStream { @@ -29,30 +47,27 @@ vertices #codeStream code #{ - // sin(45), cos(45) - const scalar sqrt05 = sqrt(0.5); - pointField points ({ - /* 0*/ {0.5, 0, $zmin}, - /* 1*/ {1, 0, $zmin}, - /* 2*/ {2, 0, $zmin}, - /* 3*/ {2, sqrt05, $zmin}, - /* 4*/ {sqrt05, sqrt05, $zmin}, - /* 5*/ {sqrt05/2, sqrt05/2, $zmin}, - /* 6*/ {2, 2, $zmin}, - /* 7*/ {sqrt05, 2, $zmin}, - /* 8*/ {0, 2, $zmin}, - /* 9*/ {0, 1, $zmin}, - /*10*/ {0, 0.5, $zmin}, - /*11*/ {-0.5, 0, $zmin}, - /*12*/ {-1, 0, $zmin}, - /*13*/ {-2, 0, $zmin}, - /*14*/ {-2, sqrt05, $zmin}, - /*15*/ {-sqrt05, sqrt05, $zmin}, - /*16*/ {-sqrt05/2, sqrt05/2, $zmin}, - /*17*/ {-2, 2, $zmin}, - /*18*/ {-sqrt05, 2, $zmin} + /* 0*/ { $rInner, 0, $zmin }, + /* 1*/ { $rOuter, 0, $zmin }, + /* 2*/ { $xmax, 0, $zmin }, + /* 3*/ { $xmax, $rOuter45, $zmin }, + /* 4*/ { $rOuter45, $rOuter45, $zmin }, + /* 5*/ { $rInner45, $rInner45, $zmin }, + /* 6*/ { $xmax, $ymax, $zmin }, + /* 7*/ { $rOuter45, $ymax, $zmin }, + /* 8*/ { 0, $ymax, $zmin }, + /* 9*/ { 0, $rOuter, $zmin }, + /*10*/ { 0, $rInner, $zmin }, + /*11*/ { -$rInner, 0, $zmin }, + /*12*/ { -$rOuter, 0, $zmin }, + /*13*/ { -$xmax, 0, $zmin }, + /*14*/ { -$xmax, $rOuter45, $zmin }, + /*15*/ { -$rOuter45, $rOuter45, $zmin }, + /*16*/ { -$rInner45, $rInner45, $zmin }, + /*17*/ { -$xmax, $ymax, $zmin }, + /*18*/ { -$rOuter45, $ymax, $zmin } }); // Duplicate z points for zmax @@ -68,19 +83,21 @@ vertices #codeStream #}; }; +// Can remove unneeded variables +#remove ( "r(Inner|Outer).*" "[xy](min|max)" ) blocks ( - hex (5 4 9 10 24 23 28 29) (10 10 1) simpleGrading (1 1 1) - hex (0 1 4 5 19 20 23 24) (10 10 1) simpleGrading (1 1 1) - hex (1 2 3 4 20 21 22 23) (20 10 1) simpleGrading (1 1 1) - hex (4 3 6 7 23 22 25 26) (20 20 1) simpleGrading (1 1 1) - hex (9 4 7 8 28 23 26 27) (10 20 1) simpleGrading (1 1 1) - hex (15 16 10 9 34 35 29 28) (10 10 1) simpleGrading (1 1 1) - hex (12 11 16 15 31 30 35 34) (10 10 1) simpleGrading (1 1 1) - hex (13 12 15 14 32 31 34 33) (20 10 1) simpleGrading (1 1 1) - hex (14 15 18 17 33 34 37 36) (20 20 1) simpleGrading (1 1 1) - hex (15 9 8 18 34 28 27 37) (10 20 1) simpleGrading (1 1 1) + hex (5 4 9 10 24 23 28 29) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (0 1 4 5 19 20 23 24) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (1 2 3 4 20 21 22 23) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (4 3 6 7 23 22 25 26) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (9 4 7 8 28 23 26 27) ($nQuarter $nyOuter $nz) grading (1 1 1) + hex (15 16 10 9 34 35 29 28) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (12 11 16 15 31 30 35 34) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (13 12 15 14 32 31 34 33) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (14 15 18 17 33 34 37 36) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (15 9 8 18 34 28 27 37) ($nQuarter $nyOuter $nz) grading (1 1 1) ); edges diff --git a/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict b/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict new file mode 100644 index 0000000000..bf5148c5d8 --- /dev/null +++ b/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict @@ -0,0 +1,27 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: v2012 | +| \\ / A nd | Website: www.openfoam.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 4; + +method simple; + +coeffs +{ + n ( 2 2 1 ); +} + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict index 05f716b259..65973db771 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict @@ -40,22 +40,20 @@ nz #eval{ round($nz / 5) }; #endif zmin #eval{ -$zmax }; -mrad0 #eval{ -$rad0 }; -mrad1 #eval{ -$rad1 }; vertices ( // back-plane: // inlet region - ( $xin $rad0 $zmin) // pt 0 - ( 0 $rad0 $zmin) // pt 1 - ( 0 $rad1 $zmin) // pt 2 - ( $xin $rad1 $zmin) // pt 3 + ( $xin $rad0 $zmin) // pt 0 + ( 0 $rad0 $zmin) // pt 1 + ( 0 $rad1 $zmin) // pt 2 + ( $xin $rad1 $zmin) // pt 3 // outlet region - ( $xout $mrad1 $zmin) // pt 4 - ( 0 $mrad1 $zmin) // pt 5 - ( 0 $mrad0 $zmin) // pt 6 - ( $xout $mrad0 $zmin) // pt 7 + ( $xout -$rad1 $zmin) // pt 4 + ( 0 -$rad1 $zmin) // pt 5 + ( 0 -$rad0 $zmin) // pt 6 + ( $xout -$rad0 $zmin) // pt 7 // bend mid-points ( $rad0 0 $zmin) // pt 8 ( $rad1 0 $zmin) // pt 9 @@ -66,13 +64,13 @@ vertices ( 0 $rad1 $zmax) // pt 2 + 10 ( $xin $rad1 $zmax) // pt 3 + 10 // outlet region - ( $xout $mrad1 $zmax) // pt 4 + 10 - ( 0 $mrad1 $zmax) // pt 5 + 10 - ( 0 $mrad0 $zmax) // pt 6 + 10 - ( $xout $mrad0 $zmax) // pt 7 + 10 + ( $xout -$rad1 $zmax) // pt 4 + 10 + ( 0 -$rad1 $zmax) // pt 5 + 10 + ( 0 -$rad0 $zmax) // pt 6 + 10 + ( $xout -$rad0 $zmax) // pt 7 + 10 // bend mid-points - ( $rad0 0 $zmax) // pt 8 + 10 - ( $rad1 0 $zmax) // pt 9 + 10 + ( $rad0 0 $zmax) // pt 8 + 10 + ( $rad1 0 $zmax) // pt 9 + 10 ); blocks diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict index 05f716b259..65973db771 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict @@ -40,22 +40,20 @@ nz #eval{ round($nz / 5) }; #endif zmin #eval{ -$zmax }; -mrad0 #eval{ -$rad0 }; -mrad1 #eval{ -$rad1 }; vertices ( // back-plane: // inlet region - ( $xin $rad0 $zmin) // pt 0 - ( 0 $rad0 $zmin) // pt 1 - ( 0 $rad1 $zmin) // pt 2 - ( $xin $rad1 $zmin) // pt 3 + ( $xin $rad0 $zmin) // pt 0 + ( 0 $rad0 $zmin) // pt 1 + ( 0 $rad1 $zmin) // pt 2 + ( $xin $rad1 $zmin) // pt 3 // outlet region - ( $xout $mrad1 $zmin) // pt 4 - ( 0 $mrad1 $zmin) // pt 5 - ( 0 $mrad0 $zmin) // pt 6 - ( $xout $mrad0 $zmin) // pt 7 + ( $xout -$rad1 $zmin) // pt 4 + ( 0 -$rad1 $zmin) // pt 5 + ( 0 -$rad0 $zmin) // pt 6 + ( $xout -$rad0 $zmin) // pt 7 // bend mid-points ( $rad0 0 $zmin) // pt 8 ( $rad1 0 $zmin) // pt 9 @@ -66,13 +64,13 @@ vertices ( 0 $rad1 $zmax) // pt 2 + 10 ( $xin $rad1 $zmax) // pt 3 + 10 // outlet region - ( $xout $mrad1 $zmax) // pt 4 + 10 - ( 0 $mrad1 $zmax) // pt 5 + 10 - ( 0 $mrad0 $zmax) // pt 6 + 10 - ( $xout $mrad0 $zmax) // pt 7 + 10 + ( $xout -$rad1 $zmax) // pt 4 + 10 + ( 0 -$rad1 $zmax) // pt 5 + 10 + ( 0 -$rad0 $zmax) // pt 6 + 10 + ( $xout -$rad0 $zmax) // pt 7 + 10 // bend mid-points - ( $rad0 0 $zmax) // pt 8 + 10 - ( $rad1 0 $zmax) // pt 9 + 10 + ( $rad0 0 $zmax) // pt 8 + 10 + ( $rad1 0 $zmax) // pt 9 + 10 ); blocks diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict index 05f716b259..adc941d802 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict @@ -40,8 +40,6 @@ nz #eval{ round($nz / 5) }; #endif zmin #eval{ -$zmax }; -mrad0 #eval{ -$rad0 }; -mrad1 #eval{ -$rad1 }; vertices ( @@ -52,13 +50,13 @@ vertices ( 0 $rad1 $zmin) // pt 2 ( $xin $rad1 $zmin) // pt 3 // outlet region - ( $xout $mrad1 $zmin) // pt 4 - ( 0 $mrad1 $zmin) // pt 5 - ( 0 $mrad0 $zmin) // pt 6 - ( $xout $mrad0 $zmin) // pt 7 + ( $xout -$rad1 $zmin) // pt 4 + ( 0 -$rad1 $zmin) // pt 5 + ( 0 -$rad0 $zmin) // pt 6 + ( $xout -$rad0 $zmin) // pt 7 // bend mid-points - ( $rad0 0 $zmin) // pt 8 - ( $rad1 0 $zmin) // pt 9 + ( $rad0 0 $zmin) // pt 8 + ( $rad1 0 $zmin) // pt 9 // front-plane: // inlet region ( $xin $rad0 $zmax) // pt 0 + 10 @@ -66,10 +64,10 @@ vertices ( 0 $rad1 $zmax) // pt 2 + 10 ( $xin $rad1 $zmax) // pt 3 + 10 // outlet region - ( $xout $mrad1 $zmax) // pt 4 + 10 - ( 0 $mrad1 $zmax) // pt 5 + 10 - ( 0 $mrad0 $zmax) // pt 6 + 10 - ( $xout $mrad0 $zmax) // pt 7 + 10 + ( $xout -$rad1 $zmax) // pt 4 + 10 + ( 0 -$rad1 $zmax) // pt 5 + 10 + ( 0 -$rad0 $zmax) // pt 6 + 10 + ( $xout -$rad0 $zmax) // pt 7 + 10 // bend mid-points ( $rad0 0 $zmax) // pt 8 + 10 ( $rad1 0 $zmax) // pt 9 + 10 diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict index dd82d442ee..9828c2e62c 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict @@ -18,66 +18,91 @@ FoamFile scale 0.016; -// Front/back locations -zmin 0; -zmax 0.5; +// Geometric parameters +rInner 0.5; +rOuter 1; +xmax 2; +ymax 2; + +zmin 0; // Back/front locations +zmax 0.5; + +// Divisions: Radial, quarter circumference, outer region and z-directions. +nRadial 10; +nQuarter 10; +nxOuter 20; +nyOuter 20; +nz 1; + +// ---------------- + +// Derived quantities +rInner45 ${{ $rInner * sqrt(0.5) }}; +rOuter45 ${{ $rOuter * sqrt(0.5) }}; +xmin ${{ -$xmax }}; vertices ( - (0.5 0 $zmin) - (1 0 $zmin) - (2 0 $zmin) - (2 0.707107 $zmin) - (0.707107 0.707107 $zmin) - (0.353553 0.353553 $zmin) - (2 2 $zmin) - (0.707107 2 $zmin) - (0 2 $zmin) - (0 1 $zmin) - (0 0.5 $zmin) - (-0.5 0 $zmin) - (-1 0 $zmin) - (-2 0 $zmin) - (-2 0.707107 $zmin) - (-0.707107 0.707107 $zmin) - (-0.353553 0.353553 $zmin) - (-2 2 $zmin) - (-0.707107 2 $zmin) - (0.5 0 $zmax) - (1 0 $zmax) - (2 0 $zmax) - (2 0.707107 $zmax) - (0.707107 0.707107 $zmax) - (0.353553 0.353553 $zmax) - (2 2 $zmax) - (0.707107 2 $zmax) - (0 2 $zmax) - (0 1 $zmax) - (0 0.5 $zmax) - (-0.5 0 $zmax) - (-1 0 $zmax) - (-2 0 $zmax) - (-2 0.707107 $zmax) - (-0.707107 0.707107 $zmax) - (-0.353553 0.353553 $zmax) - (-2 2 $zmax) - (-0.707107 2 $zmax) + /* 0*/ ( $rInner 0 $zmin ) + /* 1*/ ( $rOuter 0 $zmin ) + /* 2*/ ( $xmax 0 $zmin ) + /* 3*/ ( $xmax $rOuter45 $zmin ) + /* 4*/ ( $rOuter45 $rOuter45 $zmin ) + /* 5*/ ( $rInner45 $rInner45 $zmin ) + /* 6*/ ( $xmax $ymax $zmin ) + /* 7*/ ( $rOuter45 $ymax $zmin ) + /* 8*/ ( 0 $ymax $zmin ) + /* 9*/ ( 0 $rOuter $zmin ) + /*10*/ ( 0 $rInner $zmin ) + /*11*/ ( -$rInner 0 $zmin ) + /*12*/ ( -$rOuter 0 $zmin ) + /*13*/ ( -$xmax 0 $zmin ) + /*14*/ ( -$xmax $rOuter45 $zmin ) + /*15*/ ( -$rOuter45 $rOuter45 $zmin ) + /*16*/ ( -$rInner45 $rInner45 $zmin ) + /*17*/ ( -$xmax $ymax $zmin ) + /*18*/ ( -$rOuter45 $ymax $zmin ) + + /*19*/ ( $rInner 0 $zmax ) + /*20*/ ( $rOuter 0 $zmax ) + /*21*/ ( $xmax 0 $zmax ) + /*22*/ ( $xmax $rOuter45 $zmax ) + /*23*/ ( $rOuter45 $rOuter45 $zmax ) + /*24*/ ( $rInner45 $rInner45 $zmax ) + /*25*/ ( $xmax $ymax $zmax ) + /*26*/ ( $rOuter45 $ymax $zmax ) + /*27*/ ( 0 $ymax $zmax ) + /*28*/ ( 0 $rOuter $zmax ) + /*29*/ ( 0 $rInner $zmax ) + /*30*/ ( -$rInner 0 $zmax ) + /*31*/ ( -$rOuter 0 $zmax ) + /*32*/ ( -$xmax 0 $zmax ) + /*33*/ ( -$xmax $rOuter45 $zmax ) + /*34*/ ( -$rOuter45 $rOuter45 $zmax ) + /*35*/ ( -$rInner45 $rInner45 $zmax ) + /*36*/ ( -$xmax $ymax $zmax ) + /*37*/ ( -$rOuter45 $ymax $zmax ) ); +// Can remove some unneeded variables +#remove ( "r(Inner|Outer).*" "[xy](min|max)" ) + + blocks ( - hex (5 4 9 10 24 23 28 29) (10 10 1) simpleGrading (1 1 1) - hex (0 1 4 5 19 20 23 24) (10 10 1) simpleGrading (1 1 1) - hex (1 2 3 4 20 21 22 23) (20 10 1) simpleGrading (1 1 1) - hex (4 3 6 7 23 22 25 26) (20 20 1) simpleGrading (1 1 1) - hex (9 4 7 8 28 23 26 27) (10 20 1) simpleGrading (1 1 1) - hex (15 16 10 9 34 35 29 28) (10 10 1) simpleGrading (1 1 1) - hex (12 11 16 15 31 30 35 34) (10 10 1) simpleGrading (1 1 1) - hex (13 12 15 14 32 31 34 33) (20 10 1) simpleGrading (1 1 1) - hex (14 15 18 17 33 34 37 36) (20 20 1) simpleGrading (1 1 1) - hex (15 9 8 18 34 28 27 37) (10 20 1) simpleGrading (1 1 1) + hex (5 4 9 10 24 23 28 29) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (0 1 4 5 19 20 23 24) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (1 2 3 4 20 21 22 23) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (4 3 6 7 23 22 25 26) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (9 4 7 8 28 23 26 27) ($nQuarter $nyOuter $nz) grading (1 1 1) + hex (15 16 10 9 34 35 29 28) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (12 11 16 15 31 30 35 34) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (13 12 15 14 32 31 34 33) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (14 15 18 17 33 34 37 36) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (15 9 8 18 34 28 27 37) ($nQuarter $nyOuter $nz) grading (1 1 1) ); + edges ( // Inner cylinder diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict new file mode 100644 index 0000000000..bf5148c5d8 --- /dev/null +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict @@ -0,0 +1,27 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: v2012 | +| \\ / A nd | Website: www.openfoam.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 4; + +method simple; + +coeffs +{ + n ( 2 2 1 ); +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/controlDict b/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/controlDict index a5e63be1f5..2e0e3f8c4e 100644 --- a/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/controlDict +++ b/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/controlDict @@ -46,7 +46,7 @@ timePrecision 6; runTimeModifiable true; // Allow 10% run-up before calculating mean -timeStart #eval #{ 0.1 * ${/endTime} #}; +timeStart #eval{ 0.1 * ${/endTime} }; functions diff --git a/tutorials/incompressible/simpleFoam/squareBend/system/blockMeshDict b/tutorials/incompressible/simpleFoam/squareBend/system/blockMeshDict index 05f716b259..65973db771 100644 --- a/tutorials/incompressible/simpleFoam/squareBend/system/blockMeshDict +++ b/tutorials/incompressible/simpleFoam/squareBend/system/blockMeshDict @@ -40,22 +40,20 @@ nz #eval{ round($nz / 5) }; #endif zmin #eval{ -$zmax }; -mrad0 #eval{ -$rad0 }; -mrad1 #eval{ -$rad1 }; vertices ( // back-plane: // inlet region - ( $xin $rad0 $zmin) // pt 0 - ( 0 $rad0 $zmin) // pt 1 - ( 0 $rad1 $zmin) // pt 2 - ( $xin $rad1 $zmin) // pt 3 + ( $xin $rad0 $zmin) // pt 0 + ( 0 $rad0 $zmin) // pt 1 + ( 0 $rad1 $zmin) // pt 2 + ( $xin $rad1 $zmin) // pt 3 // outlet region - ( $xout $mrad1 $zmin) // pt 4 - ( 0 $mrad1 $zmin) // pt 5 - ( 0 $mrad0 $zmin) // pt 6 - ( $xout $mrad0 $zmin) // pt 7 + ( $xout -$rad1 $zmin) // pt 4 + ( 0 -$rad1 $zmin) // pt 5 + ( 0 -$rad0 $zmin) // pt 6 + ( $xout -$rad0 $zmin) // pt 7 // bend mid-points ( $rad0 0 $zmin) // pt 8 ( $rad1 0 $zmin) // pt 9 @@ -66,13 +64,13 @@ vertices ( 0 $rad1 $zmax) // pt 2 + 10 ( $xin $rad1 $zmax) // pt 3 + 10 // outlet region - ( $xout $mrad1 $zmax) // pt 4 + 10 - ( 0 $mrad1 $zmax) // pt 5 + 10 - ( 0 $mrad0 $zmax) // pt 6 + 10 - ( $xout $mrad0 $zmax) // pt 7 + 10 + ( $xout -$rad1 $zmax) // pt 4 + 10 + ( 0 -$rad1 $zmax) // pt 5 + 10 + ( 0 -$rad0 $zmax) // pt 6 + 10 + ( $xout -$rad0 $zmax) // pt 7 + 10 // bend mid-points - ( $rad0 0 $zmax) // pt 8 + 10 - ( $rad1 0 $zmax) // pt 9 + 10 + ( $rad0 0 $zmax) // pt 8 + 10 + ( $rad1 0 $zmax) // pt 9 + 10 ); blocks diff --git a/tutorials/lagrangian/reactingParcelFoam/cylinder/system/blockMeshDict b/tutorials/lagrangian/reactingParcelFoam/cylinder/system/blockMeshDict index c6fd7ca822..b6699f6d12 100644 --- a/tutorials/lagrangian/reactingParcelFoam/cylinder/system/blockMeshDict +++ b/tutorials/lagrangian/reactingParcelFoam/cylinder/system/blockMeshDict @@ -18,64 +18,87 @@ FoamFile scale 1; -// Front/back locations -zmin -0.5; -zmax 0.5; +// Geometric parameters +rInner 0.5; +rOuter 1; +xmax 2; +ymax 2; + +zmin -0.5; // Back/front locations +zmax 0.5; + +// Divisions: Radial, quarter circumference, outer region and z-directions. +nRadial 10; +nQuarter 10; +nxOuter 20; +nyOuter 20; +nz 11; + +// ---------------- + +// Derived quantities +rInner45 ${{ $rInner * sqrt(0.5) }}; +rOuter45 ${{ $rOuter * sqrt(0.5) }}; vertices ( - (0.5 0 $zmin) - (1 0 $zmin) - (2 0 $zmin) - (2 0.707107 $zmin) - (0.707107 0.707107 $zmin) - (0.353553 0.353553 $zmin) - (2 2 $zmin) - (0.707107 2 $zmin) - (0 2 $zmin) - (0 1 $zmin) - (0 0.5 $zmin) - (-0.5 0 $zmin) - (-1 0 $zmin) - (-2 0 $zmin) - (-2 0.707107 $zmin) - (-0.707107 0.707107 $zmin) - (-0.353553 0.353553 $zmin) - (-2 2 $zmin) - (-0.707107 2 $zmin) - (0.5 0 $zmax) - (1 0 $zmax) - (2 0 $zmax) - (2 0.707107 $zmax) - (0.707107 0.707107 $zmax) - (0.353553 0.353553 $zmax) - (2 2 $zmax) - (0.707107 2 $zmax) - (0 2 $zmax) - (0 1 $zmax) - (0 0.5 $zmax) - (-0.5 0 $zmax) - (-1 0 $zmax) - (-2 0 $zmax) - (-2 0.707107 $zmax) - (-0.707107 0.707107 $zmax) - (-0.353553 0.353553 $zmax) - (-2 2 $zmax) - (-0.707107 2 $zmax) + /* 0*/ ( $rInner 0 $zmin ) + /* 1*/ ( $rOuter 0 $zmin ) + /* 2*/ ( $xmax 0 $zmin ) + /* 3*/ ( $xmax $rOuter45 $zmin ) + /* 4*/ ( $rOuter45 $rOuter45 $zmin ) + /* 5*/ ( $rInner45 $rInner45 $zmin ) + /* 6*/ ( $xmax $ymax $zmin ) + /* 7*/ ( $rOuter45 $ymax $zmin ) + /* 8*/ ( 0 $ymax $zmin ) + /* 9*/ ( 0 $rOuter $zmin ) + /*10*/ ( 0 $rInner $zmin ) + /*11*/ ( -$rInner 0 $zmin ) + /*12*/ ( -$rOuter 0 $zmin ) + /*13*/ ( -$xmax 0 $zmin ) + /*14*/ ( -$xmax $rOuter45 $zmin ) + /*15*/ ( -$rOuter45 $rOuter45 $zmin ) + /*16*/ ( -$rInner45 $rInner45 $zmin ) + /*17*/ ( -$xmax $ymax $zmin ) + /*18*/ ( -$rOuter45 $ymax $zmin ) + + /*19*/ ( $rInner 0 $zmax ) + /*20*/ ( $rOuter 0 $zmax ) + /*21*/ ( $xmax 0 $zmax ) + /*22*/ ( $xmax $rOuter45 $zmax ) + /*23*/ ( $rOuter45 $rOuter45 $zmax ) + /*24*/ ( $rInner45 $rInner45 $zmax ) + /*25*/ ( $xmax $ymax $zmax ) + /*26*/ ( $rOuter45 $ymax $zmax ) + /*27*/ ( 0 $ymax $zmax ) + /*28*/ ( 0 $rOuter $zmax ) + /*29*/ ( 0 $rInner $zmax ) + /*30*/ ( -$rInner 0 $zmax ) + /*31*/ ( -$rOuter 0 $zmax ) + /*32*/ ( -$xmax 0 $zmax ) + /*33*/ ( -$xmax $rOuter45 $zmax ) + /*34*/ ( -$rOuter45 $rOuter45 $zmax ) + /*35*/ ( -$rInner45 $rInner45 $zmax ) + /*36*/ ( -$xmax $ymax $zmax ) + /*37*/ ( -$rOuter45 $ymax $zmax ) ); +// Can remove some unneeded variables +#remove ( "r(Inner|Outer).*" "[xy](min|max)" ) + + 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) + hex (5 4 9 10 24 23 28 29) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (0 1 4 5 19 20 23 24) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (1 2 3 4 20 21 22 23) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (4 3 6 7 23 22 25 26) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (9 4 7 8 28 23 26 27) ($nQuarter $nyOuter $nz) grading (1 1 1) + hex (15 16 10 9 34 35 29 28) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (12 11 16 15 31 30 35 34) ($nRadial $nQuarter $nz) grading (1 1 1) + hex (13 12 15 14 32 31 34 33) ($nxOuter $nQuarter $nz) grading (1 1 1) + hex (14 15 18 17 33 34 37 36) ($nxOuter $nyOuter $nz) grading (1 1 1) + hex (15 9 8 18 34 28 27 37) ($nQuarter $nyOuter $nz) grading (1 1 1) ); edges diff --git a/tutorials/mesh/blockMesh/sphere/system/blockMeshDict b/tutorials/mesh/blockMesh/sphere/system/blockMeshDict index a6921b058c..419ef25276 100644 --- a/tutorials/mesh/blockMesh/sphere/system/blockMeshDict +++ b/tutorials/mesh/blockMesh/sphere/system/blockMeshDict @@ -34,20 +34,19 @@ geometry } } -// Box sizes +// Box size vo #eval{ sqrt($outerRadius/3) }; -mvo #eval{ -$vo }; vertices ( - ($mvo $mvo $mvo) - ( $vo $mvo $mvo) - ( $vo $vo $mvo) - ($mvo $vo $mvo) - ($mvo $mvo $vo) - ( $vo $mvo $vo) + (-$vo -$vo -$vo) + ( $vo -$vo -$vo) + ( $vo $vo -$vo) + (-$vo $vo -$vo) + (-$vo -$vo $vo) + ( $vo -$vo $vo) ( $vo $vo $vo) - ($mvo $vo $vo) + (-$vo $vo $vo) ); blocks diff --git a/tutorials/mesh/blockMesh/sphere7/system/blockMeshDict b/tutorials/mesh/blockMesh/sphere7/system/blockMeshDict index 2a42bbdb0c..b5a57166ac 100644 --- a/tutorials/mesh/blockMesh/sphere7/system/blockMeshDict +++ b/tutorials/mesh/blockMesh/sphere7/system/blockMeshDict @@ -37,35 +37,33 @@ geometry } } -// Outer box sizes +// Outer box size vo #eval{ sqrt($outerRadius/3) }; -mvo #eval{ -$vo }; -// Inner box sizes - % of overall dimension +// Inner box size - % of overall dimension vi #eval{ $vo * $innerRatio }; -mvi #eval{ -$vi }; vertices ( // Inner block - ($mvi $mvi $mvi) - ( $vi $mvi $mvi) - ( $vi $vi $mvi) - ($mvi $vi $mvi) - ($mvi $mvi $vi) - ( $vi $mvi $vi) + (-$vi -$vi -$vi) + ( $vi -$vi -$vi) + ( $vi $vi -$vi) + (-$vi $vi -$vi) + (-$vi -$vi $vi) + ( $vi -$vi $vi) ( $vi $vi $vi) - ($mvi $vi $vi) + (-$vi $vi $vi) // Outer blocks - ($mvo $mvo $mvo) - ( $vo $mvo $mvo) - ( $vo $vo $mvo) - ($mvo $vo $mvo) - ($mvo $mvo $vo) - ( $vo $mvo $vo) + (-$vo -$vo -$vo) + ( $vo -$vo -$vo) + ( $vo $vo -$vo) + (-$vo $vo -$vo) + (-$vo -$vo $vo) + ( $vo -$vo $vo) ( $vo $vo $vo) - ($mvo $vo $vo) + (-$vo $vo $vo) ); blocks diff --git a/tutorials/mesh/blockMesh/sphere7ProjectedEdges/system/blockMeshDict b/tutorials/mesh/blockMesh/sphere7ProjectedEdges/system/blockMeshDict index a7e0206d73..a8ff9851b4 100644 --- a/tutorials/mesh/blockMesh/sphere7ProjectedEdges/system/blockMeshDict +++ b/tutorials/mesh/blockMesh/sphere7ProjectedEdges/system/blockMeshDict @@ -44,35 +44,33 @@ geometry } -// Outer box sizes (approximate) +// Outer box size (approximate) vo #eval{ sqrt($outerRadius/3) }; -mvo #eval{ -$vo }; -// Inner box sizes - % of overall dimension +// Inner box size - % of overall dimension vi #eval{ $vo * $innerRatio }; -mvi #eval{ -$vi }; vertices ( // Inner block points - project ($mvi $mvi $mvi) (innerSphere) - project ( $vi $mvi $mvi) (innerSphere) - project ( $vi $vi $mvi) (innerSphere) - project ($mvi $vi $mvi) (innerSphere) - project ($mvi $mvi $vi) (innerSphere) - project ( $vi $mvi $vi) (innerSphere) + project (-$vi -$vi -$vi) (innerSphere) + project ( $vi -$vi -$vi) (innerSphere) + project ( $vi $vi -$vi) (innerSphere) + project (-$vi $vi -$vi) (innerSphere) + project (-$vi -$vi $vi) (innerSphere) + project ( $vi -$vi $vi) (innerSphere) project ( $vi $vi $vi) (innerSphere) - project ($mvi $vi $vi) (innerSphere) + project (-$vi $vi $vi) (innerSphere) // Outer block points - project ($mvo $mvo $mvo) (sphere) - project ( $vo $mvo $mvo) (sphere) - project ( $vo $vo $mvo) (sphere) - project ($mvo $vo $mvo) (sphere) - project ($mvo $mvo $vo) (sphere) - project ( $vo $mvo $vo) (sphere) + project (-$vo -$vo -$vo) (sphere) + project ( $vo -$vo -$vo) (sphere) + project ( $vo $vo -$vo) (sphere) + project (-$vo $vo -$vo) (sphere) + project (-$vo -$vo $vo) (sphere) + project ( $vo -$vo $vo) (sphere) project ( $vo $vo $vo) (sphere) - project ($mvo $vo $vo) (sphere) + project (-$vo $vo $vo) (sphere) ); blocks diff --git a/tutorials/mesh/blockMesh/spheroid7Projected/system/blockMeshDict b/tutorials/mesh/blockMesh/spheroid7Projected/system/blockMeshDict index 56c5cd353f..04124d614e 100644 --- a/tutorials/mesh/blockMesh/spheroid7Projected/system/blockMeshDict +++ b/tutorials/mesh/blockMesh/spheroid7Projected/system/blockMeshDict @@ -44,47 +44,42 @@ geometry innerSphere { $sphere - radius - ( - #eval{ $rxo * $innerRatio } - #eval{ $ryo * $innerRatio } - #eval{ $rzo * $innerRatio } - ); + radius #eval{ $innerRatio*$[(vector) ../sphere/radius] }; } } // Outer box sizes (approximate) -vxo #eval{ sqrt(1.0/3.0) * $rxo }; mvxo #eval{ -$vxo }; -vyo #eval{ sqrt(1.0/3.0) * $ryo }; mvyo #eval{ -$vyo }; -vzo #eval{ sqrt(1.0/3.0) * $rzo }; mvzo #eval{ -$vzo }; +vxo #eval{ sqrt(1.0/3.0) * $rxo }; +vyo #eval{ sqrt(1.0/3.0) * $ryo }; +vzo #eval{ sqrt(1.0/3.0) * $rzo }; // Inner box sizes - % of overall dimension -vxi #eval{ $vxo * $innerRatio }; mvxi #eval{ -$vxi }; -vyi #eval{ $vyo * $innerRatio }; mvyi #eval{ -$vyi }; -vzi #eval{ $vzo * $innerRatio }; mvzi #eval{ -$vzi }; +vxi #eval{ $vxo * $innerRatio }; +vyi #eval{ $vyo * $innerRatio }; +vzi #eval{ $vzo * $innerRatio }; vertices ( // Inner block points - project ($mvxi $mvyi $mvzi) (innerSphere) - project ( $vxi $mvyi $mvzi) (innerSphere) - project ( $vxi $vyi $mvzi) (innerSphere) - project ($mvxi $vyi $mvzi) (innerSphere) - project ($mvxi $mvyi $vzi) (innerSphere) - project ( $vxi $mvyi $vzi) (innerSphere) + project (-$vxi -$vyi -$vzi) (innerSphere) + project ( $vxi -$vyi -$vzi) (innerSphere) + project ( $vxi $vyi -$vzi) (innerSphere) + project (-$vxi $vyi -$vzi) (innerSphere) + project (-$vxi -$vyi $vzi) (innerSphere) + project ( $vxi -$vyi $vzi) (innerSphere) project ( $vxi $vyi $vzi) (innerSphere) - project ($mvxi $vyi $vzi) (innerSphere) + project (-$vxi $vyi $vzi) (innerSphere) // Outer block points - project ($mvxo $mvyo $mvzo) (sphere) - project ( $vxo $mvyo $mvzo) (sphere) - project ( $vxo $vyo $mvzo) (sphere) - project ($mvxo $vyo $mvzo) (sphere) - project ($mvxo $mvyo $vzo) (sphere) - project ( $vxo $mvyo $vzo) (sphere) + project (-$vxo -$vyo -$vzo) (sphere) + project ( $vxo -$vyo -$vzo) (sphere) + project ( $vxo $vyo -$vzo) (sphere) + project (-$vxo $vyo -$vzo) (sphere) + project (-$vxo -$vyo $vzo) (sphere) + project ( $vxo -$vyo $vzo) (sphere) project ( $vxo $vyo $vzo) (sphere) - project ($mvxo $vyo $vzo) (sphere) + project (-$vxo $vyo $vzo) (sphere) ); blocks diff --git a/tutorials/mesh/blockMesh/spheroidProjected/system/blockMeshDict b/tutorials/mesh/blockMesh/spheroidProjected/system/blockMeshDict index e9ed486e88..18bd20e7c9 100644 --- a/tutorials/mesh/blockMesh/spheroidProjected/system/blockMeshDict +++ b/tutorials/mesh/blockMesh/spheroidProjected/system/blockMeshDict @@ -37,21 +37,21 @@ geometry } // Box sizes -vxo #eval{sqrt(1.0/3.0) * $rxo}; mvxo #eval{-$vxo}; -vyo #eval{sqrt(1.0/3.0) * $ryo}; mvyo #eval{-$vyo}; -vzo #eval{sqrt(1.0/3.0) * $rzo}; mvzo #eval{-$vzo}; +vxo ${{sqrt(1.0/3.0) * $rxo}}; +vyo ${{sqrt(1.0/3.0) * $ryo}}; +vzo ${{sqrt(1.0/3.0) * $rzo}}; vertices ( // Outer block points - project ($mvxo $mvyo $mvzo) (sphere) - project ( $vxo $mvyo $mvzo) (sphere) - project ( $vxo $vyo $mvzo) (sphere) - project ($mvxo $vyo $mvzo) (sphere) - project ($mvxo $mvyo $vzo) (sphere) - project ( $vxo $mvyo $vzo) (sphere) + project (-$vxo -$vyo -$vzo) (sphere) + project ( $vxo -$vyo -$vzo) (sphere) + project ( $vxo $vyo -$vzo) (sphere) + project (-$vxo $vyo -$vzo) (sphere) + project (-$vxo -$vyo $vzo) (sphere) + project ( $vxo -$vyo $vzo) (sphere) project ( $vxo $vyo $vzo) (sphere) - project ($mvxo $vyo $vzo) (sphere) + project (-$vxo $vyo $vzo) (sphere) ); blocks diff --git a/tutorials/multiphase/compressibleInterFoam/laminar/climbingRod/0.orig/U b/tutorials/multiphase/compressibleInterFoam/laminar/climbingRod/0.orig/U index 858ce07968..ace57af207 100644 --- a/tutorials/multiphase/compressibleInterFoam/laminar/climbingRod/0.orig/U +++ b/tutorials/multiphase/compressibleInterFoam/laminar/climbingRod/0.orig/U @@ -25,7 +25,7 @@ boundaryField type rotatingWallVelocity; axis (0 1 0); origin (0 0 0); - omega constant #eval{ 2.1 * (2*pi()) }; // rev/s -> rads/s + omega constant ${{ 2.1 * (2*pi()) }}; // rev/s -> rads/s value uniform (0 0 0); } diff --git a/tutorials/multiphase/compressibleInterIsoFoam/laminar/climbingRod/0.orig/U b/tutorials/multiphase/compressibleInterIsoFoam/laminar/climbingRod/0.orig/U index 7a6040e942..db516bfd91 100644 --- a/tutorials/multiphase/compressibleInterIsoFoam/laminar/climbingRod/0.orig/U +++ b/tutorials/multiphase/compressibleInterIsoFoam/laminar/climbingRod/0.orig/U @@ -26,7 +26,7 @@ boundaryField type rotatingWallVelocity; axis (0 1 0); origin (0 0 0); - omega constant #eval{ 2.1 * (2*pi()) }; // rev/s -> rads/s + omega constant ${{ 2.1 * (2*pi()) }}; // rev/s -> rads/s value uniform (0 0 0); } vessel diff --git a/tutorials/multiphase/overInterDyMFoam/floatingBodyWithSpring/background/constant/dynamicMeshDict b/tutorials/multiphase/overInterDyMFoam/floatingBodyWithSpring/background/constant/dynamicMeshDict index 684b78be93..c3cbcfb6a6 100644 --- a/tutorials/multiphase/overInterDyMFoam/floatingBodyWithSpring/background/constant/dynamicMeshDict +++ b/tutorials/multiphase/overInterDyMFoam/floatingBodyWithSpring/background/constant/dynamicMeshDict @@ -42,7 +42,7 @@ solvers centreOfMass (0.5 0.5 0.4); cOfGdisplacement CofG; - + // Cuboid dimensions Lx 0.24; Ly 0.24; diff --git a/tutorials/verificationAndValidation/turbulentInflow/PCF/system/controlDict.template b/tutorials/verificationAndValidation/turbulentInflow/PCF/system/controlDict.template index f010175151..9361a6ac61 100644 --- a/tutorials/verificationAndValidation/turbulentInflow/PCF/system/controlDict.template +++ b/tutorials/verificationAndValidation/turbulentInflow/PCF/system/controlDict.template @@ -49,7 +49,7 @@ adjustTimeStep false; // Allow 10% of time for initialisation before sampling -timeStart #eval #{ 0.1 * ${/endTime} #}; +timeStart #eval{ 0.1 * ${/endTime} }; functions {