mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
TUT: Added new bump2D case
This commit is contained in:
57
tutorials/incompressible/simpleFoam/bump2D/0/U
Normal file
57
tutorials/incompressible/simpleFoam/bump2D/0/U
Normal file
@ -0,0 +1,57 @@
|
||||
/*--------------------------------*- 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 (69.44 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform (0 0 0);
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
"(symUp|symDown)"
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type noSlip;
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
59
tutorials/incompressible/simpleFoam/bump2D/0/nuTilda
Normal file
59
tutorials/incompressible/simpleFoam/bump2D/0/nuTilda
Normal file
@ -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 volScalarField;
|
||||
object nuTilda;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -1 0 0 0 0];
|
||||
|
||||
internalField uniform 6.93e-5; // 3*nu_inf
|
||||
|
||||
boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue $internalField;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
"(symUp|symDown)"
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
58
tutorials/incompressible/simpleFoam/bump2D/0/nut
Normal file
58
tutorials/incompressible/simpleFoam/bump2D/0/nut
Normal file
@ -0,0 +1,58 @@
|
||||
/*--------------------------------*- 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 4.86e-6;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
"(symUp|symDown)"
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
60
tutorials/incompressible/simpleFoam/bump2D/0/omega
Normal file
60
tutorials/incompressible/simpleFoam/bump2D/0/omega
Normal file
@ -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 volScalarField;
|
||||
location "0";
|
||||
object omega;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [ 0 0 -1 0 0 0 0 ];
|
||||
|
||||
internalField uniform 5220.8;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue $internalField;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
"(symUp|symDown)"
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type omegaWallFunction;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
56
tutorials/incompressible/simpleFoam/bump2D/0/p
Normal file
56
tutorials/incompressible/simpleFoam/bump2D/0/p
Normal file
@ -0,0 +1,56 @@
|
||||
/*--------------------------------*- 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
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
"(symUp|symDown)"
|
||||
{
|
||||
type symmetryPlane;
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
9
tutorials/incompressible/simpleFoam/bump2D/Allrun
Executable file
9
tutorials/incompressible/simpleFoam/bump2D/Allrun
Executable file
@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions # Tutorial run functions
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication $(getApplication)
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -0,0 +1,22 @@
|
||||
/*--------------------------------*- 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.31e-5;
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,31 @@
|
||||
/*--------------------------------*- 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 kOmegaSST;
|
||||
RASModel SpalartAllmaras;
|
||||
|
||||
turbulence on;
|
||||
|
||||
printCoeffs on;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
104
tutorials/incompressible/simpleFoam/bump2D/createPlots
Executable file
104
tutorials/incompressible/simpleFoam/bump2D/createPlots
Executable file
@ -0,0 +1,104 @@
|
||||
#!/bin/sh
|
||||
# Note: CFL3D data available from:
|
||||
# https://turbmodels.larc.nasa.gov/bump_sa.html
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions # Tutorial run functions
|
||||
|
||||
#set -x
|
||||
|
||||
plotTau() {
|
||||
graphNameTau="hill2D_tau.png"
|
||||
echo "Creating wallshear stress graph to $graphNameTau"
|
||||
gnuplot<<PLT_TAU
|
||||
set terminal pngcairo font "helvetica,20" size 1000, 1000
|
||||
set xrange [0:1.5]
|
||||
set yrange [0:0.008]
|
||||
set grid
|
||||
set key bottom right
|
||||
set xlabel "x"
|
||||
set ylabel "c_f"
|
||||
set output "$graphNameTau"
|
||||
|
||||
Uref = 69.44
|
||||
|
||||
set lmargin 10
|
||||
set rmargin 1.5
|
||||
set bmargin 3.2
|
||||
|
||||
# plot \
|
||||
# "profiles.dat" u 1:(sqrt(\$2*\$2+\$3*\$3+\$4*\$4)/(0.5*Uref*Uref)) \
|
||||
# t "simpleFoam" w l lw 2 lc rgb "black", \
|
||||
# "cf_bump_cfl3d_sa.dat" every 10 u 1:2 \
|
||||
# t "CFL3D" w p ps 3 pt 6 lw 2 lc rgb "red"
|
||||
|
||||
plot \
|
||||
"profiles.dat" u 1:(sqrt(\$2*\$2+\$3*\$3+\$4*\$4)/(0.5*Uref*Uref)) \
|
||||
t "simpleFoam" w l lw 2 lc rgb "black"
|
||||
PLT_TAU
|
||||
}
|
||||
|
||||
plotCp() {
|
||||
graphNameCp="hill2D_cp.png"
|
||||
echo "Creating pressure coefficient graph to $graphNameCp"
|
||||
gnuplot<<PLT_CP
|
||||
set terminal pngcairo font "helvetica,20" size 1000, 1000
|
||||
set xrange [0:1.5]
|
||||
set yrange [0.4:-0.8]
|
||||
set grid
|
||||
set key bottom right
|
||||
set xlabel "x"
|
||||
set ylabel "c_p"
|
||||
set output "$graphNameCp"
|
||||
|
||||
Uref = 69.44
|
||||
|
||||
set lmargin 10
|
||||
set rmargin 1.5
|
||||
set bmargin 3.2
|
||||
|
||||
# plot \
|
||||
# "profiles.dat" u 1:5 \
|
||||
# t "simpleFoam" w l lw 2 lc rgb "black", \
|
||||
# "cp_bump_cfl3d_sa.dat" every 10 u 1:2 \
|
||||
# t "CFL3D" w p ps 3 pt 6 lw 2 lc rgb "red"
|
||||
|
||||
plot \
|
||||
"profiles.dat" u 1:5 \
|
||||
t "simpleFoam" w l lw 2 lc rgb "black"
|
||||
PLT_CP
|
||||
}
|
||||
|
||||
|
||||
if notTest $@
|
||||
then
|
||||
# Create validation plots
|
||||
|
||||
# Test if gnuplot exists on the system
|
||||
command -v gnuplot >/dev/null 2>&1 || {
|
||||
echo "gnuplot not found - skipping graph creation" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Test if awk exists on the system
|
||||
command -v awk >/dev/null 2>&1 || {
|
||||
echo "awk not found - skipping graph creation" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
timeDir=$(foamListTimes -latestTime)
|
||||
|
||||
echo "# ccx tau_xx tau_yy tau_zz cp" > profiles.dat
|
||||
foamDictionary -entry boundaryField.bump.value -value $timeDir/Cx | \
|
||||
sed -n '/(/,/)/p' | sed -e 's/[()]//g;/^\s*$/d' > Cx.$$
|
||||
foamDictionary -entry boundaryField.bump.value -value $timeDir/wallShearStress | \
|
||||
sed -n '/(/,/)/p' | sed -e 's/[()]//g;/^\s*$/d' > tau.$$
|
||||
foamDictionary -entry boundaryField.bump.value -value $timeDir/Cp | \
|
||||
sed -n '/(/,/)/p' | sed -e 's/[()]//g;/^\s*$/d' > cp.$$
|
||||
paste -d ' ' Cx.$$ tau.$$ cp.$$ >> profiles.dat
|
||||
|
||||
plotTau
|
||||
plotCp
|
||||
|
||||
\rm -f Cx.$$ tau.$$ cp.$$ profiles.dat
|
||||
fi
|
||||
191
tutorials/incompressible/simpleFoam/bump2D/system/blockMeshDict
Normal file
191
tutorials/incompressible/simpleFoam/bump2D/system/blockMeshDict
Normal file
@ -0,0 +1,191 @@
|
||||
/*--------------------------------*- 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 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
( -25.0 0 1 ) // 0
|
||||
( 0 0 1 ) // 1
|
||||
( 0.3 0 1 ) // 2
|
||||
( 1.2 0 1 ) // 3
|
||||
( 1.5 0 1 ) // 4
|
||||
( 26.5 0 1 ) // 5
|
||||
|
||||
( 26.5 5 1 ) // 6
|
||||
( 1.5 5 1 ) // 7
|
||||
( 1.2 5 1 ) // 8
|
||||
( 0.3 5 1 ) // 9
|
||||
( 0 5 1 ) // 10
|
||||
( -25.0 5 1 ) // 11
|
||||
|
||||
( -25.0 0 -1 ) // 12
|
||||
( 0 0 -1 ) // 13
|
||||
( 0.3 0 -1 ) // 14
|
||||
( 1.2 0 -1 ) // 15
|
||||
( 1.5 0 -1 ) // 16
|
||||
( 26.5 0 -1 ) // 17
|
||||
|
||||
( 26.5 5 -1 ) // 18
|
||||
( 1.5 5 -1 ) // 19
|
||||
( 1.2 5 -1 ) // 20
|
||||
( 0.3 5 -1 ) // 21
|
||||
( 0 5 -1 ) // 22
|
||||
( -25.0 5 -1 ) // 23
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
// Medium level for tutorial
|
||||
hex ( 0 1 13 12 11 10 22 23) (30 1 81) simpleGrading (0.002 1 20000)
|
||||
hex ( 1 2 14 13 10 9 21 22) (25 1 81) simpleGrading (2 1 20000)
|
||||
hex ( 2 3 15 14 9 8 20 21) (60 1 81) simpleGrading (1 1 20000)
|
||||
hex ( 3 4 16 15 8 7 19 20) (25 1 81) simpleGrading (0.5 1 20000)
|
||||
hex ( 4 5 17 16 7 6 18 19) (30 1 81) simpleGrading (500 1 20000)
|
||||
|
||||
// Fine
|
||||
//hex ( 0 1 13 12 11 10 22 23) (240 1 648) simpleGrading (0.002 1 20000)
|
||||
//hex ( 1 2 14 13 10 9 21 22) (200 1 648) simpleGrading (2 1 20000)
|
||||
//hex ( 2 3 15 14 9 8 20 21) (480 1 648) simpleGrading (1 1 20000)
|
||||
//hex ( 3 4 16 15 8 7 19 20) (200 1 648) simpleGrading (0.5 1 20000)
|
||||
//hex ( 4 5 17 16 7 6 18 19) (240 1 648) simpleGrading (500 1 20000)
|
||||
);
|
||||
|
||||
edges #codeStream
|
||||
{
|
||||
codeInclude
|
||||
#{
|
||||
#include "pointField.H"
|
||||
#include "mathematicalConstants.H"
|
||||
#};
|
||||
|
||||
code
|
||||
#{
|
||||
const scalar xMin = 0.3;
|
||||
const scalar xMax = 1.2;
|
||||
const label nPoints = 100;
|
||||
const scalar dx = (xMax - xMin)/scalar(nPoints - 1);
|
||||
|
||||
os << "(" << nl << "spline 2 3" << nl;
|
||||
pointField profile(nPoints);
|
||||
const scalar pi = constant::mathematical::pi;
|
||||
|
||||
for (label i = 0; i < nPoints; ++i)
|
||||
{
|
||||
scalar x = xMin + i*dx;
|
||||
profile[i].x() = x;
|
||||
profile[i].y() = 0.05*pow4(sin(pi*x/0.9 - (pi/3)));
|
||||
profile[i].z() = 1;
|
||||
}
|
||||
os << profile << nl;
|
||||
|
||||
os << "spline 14 15" << nl;
|
||||
profile.replace(2, -1);
|
||||
os << profile << nl;
|
||||
|
||||
os << ");" << nl;
|
||||
#};
|
||||
};
|
||||
|
||||
|
||||
boundary
|
||||
(
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 11 23 12)
|
||||
);
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(17 18 6 5)
|
||||
);
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type symmetryPlane;
|
||||
faces
|
||||
(
|
||||
(11 10 22 23)
|
||||
(10 9 21 22)
|
||||
( 9 8 20 21)
|
||||
( 8 7 19 20)
|
||||
( 7 6 18 19)
|
||||
);
|
||||
}
|
||||
|
||||
symUp
|
||||
{
|
||||
type symmetryPlane;
|
||||
faces
|
||||
(
|
||||
( 0 12 13 1)
|
||||
);
|
||||
}
|
||||
|
||||
bump
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
( 1 13 14 2)
|
||||
( 2 14 15 3)
|
||||
( 3 15 16 4)
|
||||
);
|
||||
}
|
||||
|
||||
symDown
|
||||
{
|
||||
type symmetryPlane;
|
||||
faces
|
||||
(
|
||||
( 4 16 17 5)
|
||||
);
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type empty;
|
||||
faces
|
||||
(
|
||||
(12 23 22 13)
|
||||
(13 22 21 14)
|
||||
(14 21 20 15)
|
||||
(15 20 19 16)
|
||||
(16 19 18 17)
|
||||
|
||||
( 0 11 10 1)
|
||||
( 1 10 9 2)
|
||||
( 2 9 8 3)
|
||||
( 3 8 7 4)
|
||||
( 4 7 6 5)
|
||||
);
|
||||
}
|
||||
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
(
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
113
tutorials/incompressible/simpleFoam/bump2D/system/controlDict
Normal file
113
tutorials/incompressible/simpleFoam/bump2D/system/controlDict
Normal file
@ -0,0 +1,113 @@
|
||||
/*--------------------------------*- 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 10000;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 100;
|
||||
|
||||
purgeWrite 3;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 8;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 8;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
functions
|
||||
{
|
||||
pressure
|
||||
{
|
||||
type pressure;
|
||||
libs ("libfieldFunctionObjects.so");
|
||||
writeControl writeTime;
|
||||
result Cp;
|
||||
calcTotal no;
|
||||
calcCoeff yes;
|
||||
rho rhoInf;
|
||||
rhoInf 1;
|
||||
U UInf;
|
||||
UInf (69.44 0 0);
|
||||
pInf 0;
|
||||
}
|
||||
|
||||
forceCoeffs
|
||||
{
|
||||
libs ("libforces.so");
|
||||
type forceCoeffs;
|
||||
writeControl writeTime;
|
||||
rho rhoInf;
|
||||
rhoInf 1;
|
||||
liftDir (0 1 0);
|
||||
dragDir (1 0 0);
|
||||
CofR (0.75 0 0); // bump midpoint
|
||||
pitchAxis (0 0 1);
|
||||
magUInf 69.44;
|
||||
lRef 0.9; // length of bump
|
||||
Aref 0.1; // mesh span = 2, bump height = 0.05; 2*0.05=0.1
|
||||
patches (bump);
|
||||
}
|
||||
|
||||
wallShearStress
|
||||
{
|
||||
type wallShearStress;
|
||||
libs ("libfieldFunctionObjects.so");
|
||||
writeControl writeTime;
|
||||
patches (bump);
|
||||
}
|
||||
|
||||
yPlus
|
||||
{
|
||||
type yPlus;
|
||||
libs ("libfieldFunctionObjects.so");
|
||||
writeControl writeTime;
|
||||
patches (bump);
|
||||
}
|
||||
|
||||
cellCentres
|
||||
{
|
||||
type writeCellCentres;
|
||||
libs ("libfieldFunctionObjects.so");
|
||||
writeControl writeTime;
|
||||
}
|
||||
|
||||
residuals
|
||||
{
|
||||
type residuals;
|
||||
libs ("libutilityFunctionObjects.so");
|
||||
fields (".*");
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -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 hierarchical;
|
||||
|
||||
hierarchicalCoeffs
|
||||
{
|
||||
n (8 1 1);
|
||||
// delta 0.001; //< default value = 0.001
|
||||
// order xyz; //< default order = xyz
|
||||
}
|
||||
|
||||
60
tutorials/incompressible/simpleFoam/bump2D/system/fvSchemes
Normal file
60
tutorials/incompressible/simpleFoam/bump2D/system/fvSchemes
Normal file
@ -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;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
div(phi,U) bounded Gauss linearUpwind grad(U);
|
||||
div(phi,epsilon) bounded Gauss upwind;
|
||||
div(phi,omega) bounded Gauss upwind;
|
||||
div(phi,k) bounded Gauss upwind;
|
||||
div(phi,nuTilda) bounded Gauss upwind;
|
||||
div((nuEff*dev2(T(grad(U))))) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
}
|
||||
|
||||
wallDist
|
||||
{
|
||||
method meshWave;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
64
tutorials/incompressible/simpleFoam/bump2D/system/fvSolution
Normal file
64
tutorials/incompressible/simpleFoam/bump2D/system/fvSolution
Normal file
@ -0,0 +1,64 @@
|
||||
/*--------------------------------*- 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;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
p
|
||||
{
|
||||
solver GAMG;
|
||||
smoother DICGaussSeidel;
|
||||
tolerance 1e-08;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
"(U|k|epsilon|omega|nuTilda)"
|
||||
{
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
}
|
||||
}
|
||||
|
||||
SIMPLE
|
||||
{
|
||||
nNonOrthogonalCorrectors 0;
|
||||
consistent yes;
|
||||
residualControl
|
||||
{
|
||||
p 1e-5;
|
||||
U 1e-5;
|
||||
"(k|epsilon|omega|nuTilda)" 1e-5;
|
||||
}
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
equations
|
||||
{
|
||||
U 0.9;
|
||||
"(k|epsilon|omega|nuTilda)" 0.7;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
cache
|
||||
{
|
||||
grad(U);
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
Reference in New Issue
Block a user