mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Added new periodicHill test case
This commit is contained in:
7
tutorials/incompressible/pimpleFoam/LES/periodicHill/Allrun
Executable file
7
tutorials/incompressible/pimpleFoam/LES/periodicHill/Allrun
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
(cd steadyState && ./Allrun)
|
||||||
|
|
||||||
|
(cd transient && ./Allrun)
|
||||||
|
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volVectorField;
|
||||||
|
object U;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 1 -1 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform (1e-3 0 0);
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
"(inlet|outlet|front|back)"
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(top|hills)"
|
||||||
|
{
|
||||||
|
type noSlip;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
object k;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 2 -2 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 0;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
"(inlet|outlet|front|back)"
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(top|hills)"
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,35 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
object nuTilda;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 2 -1 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 1e-8;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
"(inlet|outlet|front|back)"
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(top|hills)"
|
||||||
|
{
|
||||||
|
type fixedValue;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,35 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
object nut;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 2 -1 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 0;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
"(inlet|outlet|front|back)"
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(top|hills)"
|
||||||
|
{
|
||||||
|
type nutUSpaldingWallFunction;
|
||||||
|
value $internalField;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
object p;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 2 -2 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 0;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
"(inlet|outlet|front|back)"
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(top|hills)"
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
15
tutorials/incompressible/pimpleFoam/LES/periodicHill/steadyState/Allrun
Executable file
15
tutorials/incompressible/pimpleFoam/LES/periodicHill/steadyState/Allrun
Executable file
@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
runApplication blockMesh
|
||||||
|
|
||||||
|
runApplication topoSet
|
||||||
|
|
||||||
|
runApplication decomposePar
|
||||||
|
|
||||||
|
runParallel simpleFoam
|
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object transportProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
transportModel Newtonian;
|
||||||
|
|
||||||
|
nu 2.643e-6;
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object turbulenceProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
simulationType RAS;
|
||||||
|
|
||||||
|
RAS
|
||||||
|
{
|
||||||
|
RASModel SpalartAllmaras;
|
||||||
|
printCoeffs no;
|
||||||
|
turbulence yes;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,186 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object blockMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
scale 0.001;
|
||||||
|
|
||||||
|
vertices
|
||||||
|
(
|
||||||
|
( 0 28 0) // 0
|
||||||
|
(252 28 0) // 1
|
||||||
|
(252 85 0) // 2
|
||||||
|
( 0 85 0) // 3
|
||||||
|
|
||||||
|
( 0 28 126) // 4
|
||||||
|
(252 28 126) // 5
|
||||||
|
(252 85 126) // 6
|
||||||
|
( 0 85 126) // 7
|
||||||
|
);
|
||||||
|
|
||||||
|
blocks
|
||||||
|
(
|
||||||
|
hex (0 1 2 3 4 5 6 7) (200 160 80) simpleGrading (1 ((0.5 0.5 100)(0.5 0.5 0.01)) 1)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
edges #codeStream
|
||||||
|
{
|
||||||
|
codeInclude
|
||||||
|
#{
|
||||||
|
#include "pointField.H"
|
||||||
|
#include "mathematicalConstants.H"
|
||||||
|
#};
|
||||||
|
|
||||||
|
code
|
||||||
|
#{
|
||||||
|
const scalar xMin = 0;
|
||||||
|
const scalar xMax = 252;
|
||||||
|
const label nPoints = 1000;
|
||||||
|
const scalar dx = (xMax - xMin)/scalar(nPoints - 1);
|
||||||
|
|
||||||
|
os << "(" << nl << "spline 0 1" << nl;
|
||||||
|
pointField profile(nPoints, Zero);
|
||||||
|
|
||||||
|
for (label i = 0; i < nPoints; ++i)
|
||||||
|
{
|
||||||
|
scalar x = xMin + i*dx;
|
||||||
|
profile[i].x() = x;
|
||||||
|
if (x > 198) x = 252 - x;
|
||||||
|
|
||||||
|
if (x >= 0 && x < 9)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
28
|
||||||
|
+ 6.775070969851E-03*x*x
|
||||||
|
- 2.124527775800E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 9 && x < 14)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
25.07355893131
|
||||||
|
+ 0.9754803562315*x
|
||||||
|
- 1.016116352781E-01*x*x
|
||||||
|
+ 1.889794677828E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 14 && x < 20)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
2.579601052357E+01
|
||||||
|
+ 8.206693007457E-01*x
|
||||||
|
- 9.055370274339E-02*x*x
|
||||||
|
+ 1.626510569859E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 20 && x < 30)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
4.046435022819E+01
|
||||||
|
- 1.379581654948E+00*x
|
||||||
|
+ 1.945884504128E-02*x*x
|
||||||
|
- 2.070318932190E-04*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 30 && x < 40)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
1.792461334664E+01
|
||||||
|
+ 8.743920332081E-01*x
|
||||||
|
- 5.567361123058E-02*x*x
|
||||||
|
+ 6.277731764683E-04*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 40 && x < 54)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
max
|
||||||
|
(
|
||||||
|
0,
|
||||||
|
5.639011190988E+01
|
||||||
|
- 2.010520359035E+00*x
|
||||||
|
+ 1.644919857549E-02*x*x
|
||||||
|
+ 2.674976141766E-05*x*x*x
|
||||||
|
);
|
||||||
|
}
|
||||||
|
profile[i].z() = 0;
|
||||||
|
}
|
||||||
|
os << profile << nl;
|
||||||
|
|
||||||
|
os << "spline 4 5" << nl;
|
||||||
|
profile.replace(2, 126);
|
||||||
|
os << profile << nl;
|
||||||
|
|
||||||
|
os << ");" << nl;
|
||||||
|
#};
|
||||||
|
};
|
||||||
|
|
||||||
|
boundary
|
||||||
|
(
|
||||||
|
inlet
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch outlet;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(0 4 7 3)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
outlet
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch inlet;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(1 2 6 5)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
top
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(3 7 6 2)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
hills
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(1 5 4 0)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
front
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch back;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(0 3 2 1)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
back
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch front;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(4 5 6 7)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
mergePatchPairs
|
||||||
|
(
|
||||||
|
);
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,49 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object controlDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
application simpleFoam;
|
||||||
|
|
||||||
|
startFrom startTime;
|
||||||
|
|
||||||
|
startTime 0;
|
||||||
|
|
||||||
|
stopAt endTime;
|
||||||
|
|
||||||
|
endTime 1500;
|
||||||
|
|
||||||
|
deltaT 1;
|
||||||
|
|
||||||
|
writeControl timeStep;
|
||||||
|
|
||||||
|
writeInterval 100;
|
||||||
|
|
||||||
|
purgeWrite 3;
|
||||||
|
|
||||||
|
writeFormat binary;
|
||||||
|
|
||||||
|
writePrecision 6;
|
||||||
|
|
||||||
|
writeCompression off;
|
||||||
|
|
||||||
|
timeFormat general;
|
||||||
|
|
||||||
|
timePrecision 6;
|
||||||
|
|
||||||
|
runTimeModifiable true;
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
note "mesh decomposition control dictionary";
|
||||||
|
object decomposeParDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
numberOfSubdomains 16;
|
||||||
|
|
||||||
|
method simple;
|
||||||
|
|
||||||
|
simpleCoeffs
|
||||||
|
{
|
||||||
|
n (4 2 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: plus |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object fvOptions;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
momentumSource
|
||||||
|
{
|
||||||
|
type meanVelocityForce;
|
||||||
|
|
||||||
|
selectionMode cellZone;
|
||||||
|
cellZone inletCellZone;
|
||||||
|
|
||||||
|
fields (U);
|
||||||
|
Ubar (1 0 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,60 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSchemes;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
ddtSchemes
|
||||||
|
{
|
||||||
|
default steadyState;
|
||||||
|
}
|
||||||
|
|
||||||
|
gradSchemes
|
||||||
|
{
|
||||||
|
default Gauss linear;
|
||||||
|
grad(p) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
divSchemes
|
||||||
|
{
|
||||||
|
default none;
|
||||||
|
div(phi,U) Gauss upwind;
|
||||||
|
div(phi,k) Gauss limitedLinear 1;
|
||||||
|
div(phi,nuTilda) Gauss limitedLinear 1;
|
||||||
|
div((nuEff*dev2(T(grad(U))))) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
laplacianSchemes
|
||||||
|
{
|
||||||
|
default Gauss linear corrected;
|
||||||
|
}
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
default linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
snGradSchemes
|
||||||
|
{
|
||||||
|
default corrected;
|
||||||
|
}
|
||||||
|
|
||||||
|
wallDist
|
||||||
|
{
|
||||||
|
method meshWave;
|
||||||
|
nRequired yes;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,59 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSolution;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "controlDict"
|
||||||
|
|
||||||
|
solvers
|
||||||
|
{
|
||||||
|
p
|
||||||
|
{
|
||||||
|
solver GAMG;
|
||||||
|
smoother DICGaussSeidel;
|
||||||
|
tolerance 1e-06;
|
||||||
|
relTol 0.05;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
"(U|k|nuTilda)"
|
||||||
|
{
|
||||||
|
solver PBiCG;
|
||||||
|
preconditioner DILU;
|
||||||
|
tolerance 1e-05;
|
||||||
|
relTol 0.1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SIMPLE
|
||||||
|
{
|
||||||
|
nNonOrthogonalCorrectors 0;
|
||||||
|
consistent yes;
|
||||||
|
pRefCell 0;
|
||||||
|
pRefValue 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
relaxationFactors
|
||||||
|
{
|
||||||
|
equations
|
||||||
|
{
|
||||||
|
U 0.9;
|
||||||
|
nuTilda 0.7;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: plus |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object topoSetDict;
|
||||||
|
}
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
actions
|
||||||
|
(
|
||||||
|
{
|
||||||
|
name inletFaceSet;
|
||||||
|
type faceSet;
|
||||||
|
action new;
|
||||||
|
source patchToFace;
|
||||||
|
sourceInfo
|
||||||
|
{
|
||||||
|
name inlet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name inletCellSet;
|
||||||
|
type cellSet;
|
||||||
|
action new;
|
||||||
|
source faceToCell;
|
||||||
|
sourceInfo
|
||||||
|
{
|
||||||
|
set inletFaceSet;
|
||||||
|
option any;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name inletCellSet;
|
||||||
|
type cellSet;
|
||||||
|
action subset;
|
||||||
|
source boxToCell;
|
||||||
|
sourceInfo
|
||||||
|
{
|
||||||
|
box (-100 -100 -100)(0.1 100 100);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name inletCellZone;
|
||||||
|
type cellZoneSet;
|
||||||
|
action new;
|
||||||
|
source setToCellZone;
|
||||||
|
sourceInfo
|
||||||
|
{
|
||||||
|
set inletCellSet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
10
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/Allclean
Executable file
10
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/Allclean
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
|
||||||
|
# Source tutorial clean functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
|
cleanCase
|
||||||
|
|
||||||
|
rm -rf processor*
|
||||||
9
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/Allrun
Executable file
9
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/Allrun
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
ln -s $(echo ../steadyState/processor*) .
|
||||||
|
|
||||||
|
runParallel pimpleFoam
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object transportProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
transportModel Newtonian;
|
||||||
|
|
||||||
|
nu 2.643e-6;
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object turbulenceProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
simulationType LES;
|
||||||
|
|
||||||
|
LES
|
||||||
|
{
|
||||||
|
LESModel SpalartAllmarasIDDES;
|
||||||
|
printCoeffs no;
|
||||||
|
turbulence yes;
|
||||||
|
delta IDDESDelta;
|
||||||
|
|
||||||
|
IDDESDeltaCoeffs
|
||||||
|
{
|
||||||
|
hmax maxDeltaxyzCubeRoot;
|
||||||
|
maxDeltaxyzCubeRootCoeffs
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
75
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/createPlots
Executable file
75
tutorials/incompressible/pimpleFoam/LES/periodicHill/transient/createPlots
Executable file
@ -0,0 +1,75 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
time=$(foamListTimes -latestTime -processor)
|
||||||
|
|
||||||
|
echo "Creating plots for time $time"
|
||||||
|
|
||||||
|
resultsDir="postProcessing/sample/$time"
|
||||||
|
|
||||||
|
# Mapping between OpenFOAM and experimental datasets
|
||||||
|
declare -A of_vs_exp
|
||||||
|
of_vs_exp[0.05]="001"
|
||||||
|
of_vs_exp[0.5]="002"
|
||||||
|
of_vs_exp[1]="003"
|
||||||
|
of_vs_exp[2]="004"
|
||||||
|
of_vs_exp[3]="005"
|
||||||
|
of_vs_exp[4]="006"
|
||||||
|
of_vs_exp[5]="007"
|
||||||
|
of_vs_exp[6]="008"
|
||||||
|
of_vs_exp[7]="009"
|
||||||
|
of_vs_exp[8]="010"
|
||||||
|
|
||||||
|
|
||||||
|
plotStr() {
|
||||||
|
pos=$1
|
||||||
|
exp=$2
|
||||||
|
|
||||||
|
cat<<EOF
|
||||||
|
set terminal pngcairo enhanced font "arial,16" size 600,600
|
||||||
|
set ylabel "y/H"
|
||||||
|
set yrange [-0.1:3.1]
|
||||||
|
set grid
|
||||||
|
Ub=1
|
||||||
|
h=0.028
|
||||||
|
|
||||||
|
set key left top
|
||||||
|
set xlabel "U_x/U_b"
|
||||||
|
set xrange [-0.4:1.2]
|
||||||
|
set output "U_at_x_by_h${pos}.png"
|
||||||
|
plot \
|
||||||
|
"$resultsDir/xbyh${pos}_U_columnAverage:columnAverage(UMean).xy" \
|
||||||
|
u (\$5/Ub):(\$1/h) w lines lc "black" lw 2 t "OpenFOAM"
|
||||||
|
set key right top
|
||||||
|
set xlabel "<u'u'>/{U_b}^2"
|
||||||
|
set xrange [0:0.1]
|
||||||
|
set output "uu_at_x_by_h${pos}.png"
|
||||||
|
plot \
|
||||||
|
"$resultsDir/xbyh${pos}_columnAverage:columnAverage(UPrime2Mean).xy" \
|
||||||
|
u (\$2/Ub/Ub):(\$1/h) w lines lc "black" lw 2 t "OpenFOAM"
|
||||||
|
|
||||||
|
set key right top
|
||||||
|
set xlabel "<v'v'>/{U_b}^2"
|
||||||
|
set xrange [0:0.06]
|
||||||
|
set output "vv_at_x_by_h${pos}.png"
|
||||||
|
plot \
|
||||||
|
"$resultsDir/xbyh${pos}_columnAverage:columnAverage(UPrime2Mean).xy" \
|
||||||
|
u (\$5/Ub/Ub):(\$1/h) w lines lc "black" lw 2 t "OpenFOAM"
|
||||||
|
|
||||||
|
set key left top
|
||||||
|
set xlabel "<u'v'>/{U_b}^2"
|
||||||
|
set xrange [-0.06:0.02]
|
||||||
|
set output "uv_at_x_by_h${pos}.png"
|
||||||
|
plot \
|
||||||
|
"$resultsDir/xbyh${pos}_columnAverage:columnAverage(UPrime2Mean).xy" \
|
||||||
|
u (\$3/Ub/Ub):(\$1/h) w lines lc "black" lw 2 t "OpenFOAM"
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
for i in "${!of_vs_exp[@]}"
|
||||||
|
do
|
||||||
|
exp=${of_vs_exp[$i]}
|
||||||
|
gnuplot<<<$(plotStr $i $exp)
|
||||||
|
done
|
||||||
|
|
||||||
@ -0,0 +1,187 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object blockMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
scale 0.001;
|
||||||
|
|
||||||
|
vertices
|
||||||
|
(
|
||||||
|
( 0 28 0) // 0
|
||||||
|
(252 28 0) // 1
|
||||||
|
(252 85 0) // 2
|
||||||
|
( 0 85 0) // 3
|
||||||
|
|
||||||
|
( 0 28 126) // 4
|
||||||
|
(252 28 126) // 5
|
||||||
|
(252 85 126) // 6
|
||||||
|
( 0 85 126) // 7
|
||||||
|
);
|
||||||
|
|
||||||
|
blocks
|
||||||
|
(
|
||||||
|
hex (0 1 2 3 4 5 6 7) (200 160 80) simpleGrading (1 ((0.5 0.5 100)(0.5 0.5 0.01)) 1)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
edges #codeStream
|
||||||
|
{
|
||||||
|
codeInclude
|
||||||
|
#{
|
||||||
|
#include "pointField.H"
|
||||||
|
#include "mathematicalConstants.H"
|
||||||
|
#};
|
||||||
|
|
||||||
|
code
|
||||||
|
#{
|
||||||
|
const scalar xMin = 0;
|
||||||
|
const scalar xMax = 252;
|
||||||
|
const label nPoints = 1000;
|
||||||
|
const scalar dx = (xMax - xMin)/scalar(nPoints - 1);
|
||||||
|
|
||||||
|
os << "(" << nl << "spline 0 1" << nl;
|
||||||
|
pointField profile(nPoints);
|
||||||
|
|
||||||
|
for (label i = 0; i < nPoints; ++i)
|
||||||
|
{
|
||||||
|
scalar x = xMin + i*dx;
|
||||||
|
profile[i].x() = x;
|
||||||
|
if (x > 198) x = 252 - x;
|
||||||
|
|
||||||
|
if (x >= 0 && x < 9)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
28
|
||||||
|
+ 6.775070969851E-03*x*x
|
||||||
|
- 2.124527775800E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 9 && x < 14)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
25.07355893131
|
||||||
|
+ 0.9754803562315*x
|
||||||
|
- 1.016116352781E-01*x*x
|
||||||
|
+ 1.889794677828E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 14 && x < 20)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
2.579601052357E+01
|
||||||
|
+ 8.206693007457E-01*x
|
||||||
|
- 9.055370274339E-02*x*x
|
||||||
|
+ 1.626510569859E-03*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 20 && x < 30)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
4.046435022819E+01
|
||||||
|
- 1.379581654948E+00*x
|
||||||
|
+ 1.945884504128E-02*x*x
|
||||||
|
- 2.070318932190E-04*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 30 && x < 40)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
1.792461334664E+01
|
||||||
|
+ 8.743920332081E-01*x
|
||||||
|
- 5.567361123058E-02*x*x
|
||||||
|
+ 6.277731764683E-04*x*x*x;
|
||||||
|
}
|
||||||
|
else if (x >= 40 && x < 54)
|
||||||
|
{
|
||||||
|
profile[i].y() =
|
||||||
|
max
|
||||||
|
(
|
||||||
|
0,
|
||||||
|
5.639011190988E+01
|
||||||
|
- 2.010520359035E+00*x
|
||||||
|
+ 1.644919857549E-02*x*x
|
||||||
|
+ 2.674976141766E-05*x*x*x
|
||||||
|
);
|
||||||
|
}
|
||||||
|
profile[i].z() = 0;
|
||||||
|
}
|
||||||
|
os << profile << nl;
|
||||||
|
|
||||||
|
os << "spline 4 5" << nl;
|
||||||
|
profile.replace(2, 126);
|
||||||
|
os << profile << nl;
|
||||||
|
|
||||||
|
os << ");" << nl;
|
||||||
|
#};
|
||||||
|
};
|
||||||
|
|
||||||
|
boundary
|
||||||
|
(
|
||||||
|
inlet
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch outlet;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(0 4 7 3)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
outlet
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch inlet;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(1 2 6 5)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
top
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(3 7 6 2)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
hills
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(1 5 4 0)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
front
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch back;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(0 3 2 1)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
back
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
neighbourPatch front;
|
||||||
|
faces
|
||||||
|
(
|
||||||
|
(4 5 6 7)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
mergePatchPairs
|
||||||
|
(
|
||||||
|
);
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,193 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object controlDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
libs ("libturbulenceModelSchemes.so");
|
||||||
|
|
||||||
|
application pimpleFoam;
|
||||||
|
|
||||||
|
startFrom startTime;
|
||||||
|
|
||||||
|
startTime 1500;
|
||||||
|
|
||||||
|
stopAt endTime;
|
||||||
|
|
||||||
|
endTime 1510;
|
||||||
|
|
||||||
|
deltaT 1e-4;
|
||||||
|
|
||||||
|
writeControl timeStep;
|
||||||
|
|
||||||
|
writeInterval 500;
|
||||||
|
|
||||||
|
purgeWrite 5;
|
||||||
|
|
||||||
|
writeFormat binary;
|
||||||
|
|
||||||
|
writePrecision 8;
|
||||||
|
|
||||||
|
writeCompression off;
|
||||||
|
|
||||||
|
timeFormat general;
|
||||||
|
|
||||||
|
timePrecision 10;
|
||||||
|
|
||||||
|
runTimeModifiable true;
|
||||||
|
|
||||||
|
adjustTimeStep no;
|
||||||
|
|
||||||
|
functions
|
||||||
|
{
|
||||||
|
fieldAverage1
|
||||||
|
{
|
||||||
|
type fieldAverage;
|
||||||
|
libs ("libfieldFunctionObjects.so");
|
||||||
|
writeControl writeTime;
|
||||||
|
timeStart 1500.5; // approx 2x flow-throughs
|
||||||
|
fields
|
||||||
|
(
|
||||||
|
U
|
||||||
|
{
|
||||||
|
mean on;
|
||||||
|
prime2Mean on;
|
||||||
|
base time;
|
||||||
|
}
|
||||||
|
|
||||||
|
p
|
||||||
|
{
|
||||||
|
mean on;
|
||||||
|
prime2Mean on;
|
||||||
|
base time;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
columnAverage
|
||||||
|
{
|
||||||
|
type columnAverage;
|
||||||
|
libs ("libfieldFunctionObjects.so");
|
||||||
|
|
||||||
|
evaluateControl writeTime;
|
||||||
|
writeControl none;
|
||||||
|
timeStart 1500.5; // approx 2x flow-throughs
|
||||||
|
|
||||||
|
// Note: include processorCyclics!
|
||||||
|
patches (front "proc.*throughfront");
|
||||||
|
fields
|
||||||
|
(
|
||||||
|
p
|
||||||
|
U
|
||||||
|
UMean
|
||||||
|
UPrime2Mean
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
sample
|
||||||
|
{
|
||||||
|
type sets;
|
||||||
|
libs ("libsampling.so");
|
||||||
|
writeControl writeTime;
|
||||||
|
timeStart 1500.5; // approx 2x flow-throughs
|
||||||
|
|
||||||
|
interpolationScheme cellPoint;
|
||||||
|
|
||||||
|
setFormat raw;
|
||||||
|
|
||||||
|
sets
|
||||||
|
(
|
||||||
|
xbyh0.05
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.0014 0 0.063);
|
||||||
|
end (0.0014 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh0.5
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.014 0 0.063);
|
||||||
|
end (0.014 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh1
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.028 0 0.063);
|
||||||
|
end (0.028 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh2
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.056 0 0.063);
|
||||||
|
end (0.056 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh3
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.084 0 0.063);
|
||||||
|
end (0.084 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh4
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.112 0 0.063);
|
||||||
|
end (0.112 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh5
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.140 0 0.063);
|
||||||
|
end (0.140 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh6
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.168 0 0.063);
|
||||||
|
end (0.168 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh7
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.196 0 0.063);
|
||||||
|
end (0.196 1 0.063);
|
||||||
|
}
|
||||||
|
xbyh8
|
||||||
|
{
|
||||||
|
type face;
|
||||||
|
axis y;
|
||||||
|
start (0.224 0 0.063);
|
||||||
|
end (0.224 1 0.063);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
fields
|
||||||
|
(
|
||||||
|
U
|
||||||
|
columnAverage:columnAverage(UMean)
|
||||||
|
columnAverage:columnAverage(UPrime2Mean)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,47 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: plus |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object cuttingPlane;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
functions
|
||||||
|
{
|
||||||
|
cuttingPlane
|
||||||
|
{
|
||||||
|
type surfaces;
|
||||||
|
libs ("libsampling.so");
|
||||||
|
writeControl writeTime;
|
||||||
|
|
||||||
|
surfaceFormat vtk;
|
||||||
|
fields ( p U );
|
||||||
|
|
||||||
|
interpolationScheme cellPoint;
|
||||||
|
|
||||||
|
surfaces
|
||||||
|
(
|
||||||
|
yNormal
|
||||||
|
{
|
||||||
|
type cuttingPlane;
|
||||||
|
planeType pointAndNormal;
|
||||||
|
pointAndNormalDict
|
||||||
|
{
|
||||||
|
point (0 0 0.063);
|
||||||
|
normal (0 0 1);
|
||||||
|
}
|
||||||
|
interpolate true;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
note "mesh decomposition control dictionary";
|
||||||
|
object decomposeParDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
numberOfSubdomains 8;
|
||||||
|
|
||||||
|
method simple;
|
||||||
|
|
||||||
|
simpleCoeffs
|
||||||
|
{
|
||||||
|
n (2 2 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: plus |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object fvOptions;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
momentumSource
|
||||||
|
{
|
||||||
|
type meanVelocityForce;
|
||||||
|
|
||||||
|
selectionMode cellZone;
|
||||||
|
cellZone inletCellZone;
|
||||||
|
|
||||||
|
fields (U);
|
||||||
|
Ubar (1 0 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSchemes;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
ddtSchemes
|
||||||
|
{
|
||||||
|
default backward;
|
||||||
|
}
|
||||||
|
|
||||||
|
gradSchemes
|
||||||
|
{
|
||||||
|
default Gauss linear;
|
||||||
|
grad(p) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
divSchemes
|
||||||
|
{
|
||||||
|
default none;
|
||||||
|
div(phi,U) Gauss DEShybrid
|
||||||
|
linear // scheme 1
|
||||||
|
linearUpwind grad(U) // scheme 2
|
||||||
|
hmax
|
||||||
|
0.65 // DES coefficient, typically = 0.65
|
||||||
|
1 // Reference velocity scale
|
||||||
|
0.028 // Reference length scale
|
||||||
|
0 // Minimum sigma limit (0-1)
|
||||||
|
1 // Maximum sigma limit (0-1)
|
||||||
|
1; // 1.0e-03; // Limiter of B function, typically 1e-03
|
||||||
|
// div(phi,U) Gauss linear;
|
||||||
|
div(phi,k) Gauss limitedLinear 1;
|
||||||
|
div(phi,nuTilda) Gauss limitedLinear 1;
|
||||||
|
div((nuEff*dev2(T(grad(U))))) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
laplacianSchemes
|
||||||
|
{
|
||||||
|
default Gauss linear corrected;
|
||||||
|
}
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
default linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
snGradSchemes
|
||||||
|
{
|
||||||
|
default corrected;
|
||||||
|
}
|
||||||
|
|
||||||
|
wallDist
|
||||||
|
{
|
||||||
|
method meshWave;
|
||||||
|
nRequired yes;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,80 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: v1806 |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSolution;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "controlDict"
|
||||||
|
|
||||||
|
solvers
|
||||||
|
{
|
||||||
|
p
|
||||||
|
{
|
||||||
|
solver GAMG;
|
||||||
|
smoother DICGaussSeidel;
|
||||||
|
tolerance 1e-06;
|
||||||
|
relTol 0.05;
|
||||||
|
}
|
||||||
|
|
||||||
|
pFinal
|
||||||
|
{
|
||||||
|
$p;
|
||||||
|
relTol 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(U|k|nuTilda)"
|
||||||
|
{
|
||||||
|
solver PBiCG;
|
||||||
|
preconditioner DILU;
|
||||||
|
tolerance 1e-05;
|
||||||
|
relTol 0.1;
|
||||||
|
}
|
||||||
|
|
||||||
|
"(U|k|nuTilda)Final"
|
||||||
|
{
|
||||||
|
$U;
|
||||||
|
relTol 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SIMPLE
|
||||||
|
{
|
||||||
|
nNonOrthogonalCorrectors 0;
|
||||||
|
pRefCell 0;
|
||||||
|
pRefValue 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
PIMPLE
|
||||||
|
{
|
||||||
|
nOuterCorrectors 1;
|
||||||
|
nCorrectors 3;
|
||||||
|
nNonOrthogonalCorrectors 1;
|
||||||
|
pRefCell 0;
|
||||||
|
pRefValue 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
relaxationFactors
|
||||||
|
{
|
||||||
|
fields
|
||||||
|
{
|
||||||
|
}
|
||||||
|
equations
|
||||||
|
{
|
||||||
|
".*" 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
Reference in New Issue
Block a user