mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Renamed simpleSRFFoam -> SRFSimpleFoam and simpleWindFoam -> windSimpleFoam
This commit is contained in:
@ -3,6 +3,10 @@ cd ${0%/*} || exit 1 # run from this directory
|
|||||||
set -x
|
set -x
|
||||||
|
|
||||||
wmake
|
wmake
|
||||||
|
|
||||||
|
wmake SRFSimpleFoam
|
||||||
|
wmake MRFSimpleFoam
|
||||||
|
wmake windSimpleFoam
|
||||||
wmake porousSimpleFoam
|
wmake porousSimpleFoam
|
||||||
|
|
||||||
# ----------------------------------------------------------------- end-of-file
|
# ----------------------------------------------------------------- end-of-file
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Solve the Momentum equation
|
// Momentum predictor
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
|
{
|
||||||
p.boundaryField().updateCoeffs();
|
p.boundaryField().updateCoeffs();
|
||||||
|
|
||||||
volScalarField AU(UEqn().A());
|
volScalarField rAU(1.0/UEqn().A());
|
||||||
U = UEqn().H()/AU;
|
U = rAU*UEqn().H();
|
||||||
UEqn.clear();
|
UEqn.clear();
|
||||||
phi = fvc::interpolate(U) & mesh.Sf();
|
|
||||||
|
phi = fvc::interpolate(U, "interpolate(HbyA)") & mesh.Sf();
|
||||||
adjustPhi(phi, U, p);
|
adjustPhi(phi, U, p);
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
// Non-orthogonal pressure corrector loop
|
||||||
@ -11,7 +13,7 @@
|
|||||||
{
|
{
|
||||||
fvScalarMatrix pEqn
|
fvScalarMatrix pEqn
|
||||||
(
|
(
|
||||||
fvm::laplacian(1.0/AU, p) == fvc::div(phi)
|
fvm::laplacian(rAU, p) == fvc::div(phi)
|
||||||
);
|
);
|
||||||
|
|
||||||
pEqn.setReference(pRefCell, pRefValue);
|
pEqn.setReference(pRefCell, pRefValue);
|
||||||
@ -30,5 +32,6 @@
|
|||||||
p.relax();
|
p.relax();
|
||||||
|
|
||||||
// Momentum corrector
|
// Momentum corrector
|
||||||
U -= fvc::grad(p)/AU;
|
U -= rAU*fvc::grad(p);
|
||||||
U.correctBoundaryConditions();
|
U.correctBoundaryConditions();
|
||||||
|
}
|
||||||
|
|||||||
@ -56,7 +56,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
p.storePrevIter();
|
p.storePrevIter();
|
||||||
|
|
||||||
// Pressure-velocity SIMPLE corrector
|
// --- Pressure-velocity SIMPLE corrector
|
||||||
{
|
{
|
||||||
#include "UEqn.H"
|
#include "UEqn.H"
|
||||||
#include "pEqn.H"
|
#include "pEqn.H"
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
datToFoam.C
|
datToFoam.C
|
||||||
|
|
||||||
EXE = $(FOAM_USER_APPBIN)/datToFoam
|
EXE = $(FOAM_APPBIN)/datToFoam
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
|
|||||||
@ -1,3 +1,6 @@
|
|||||||
|
fileName path(UMean.rootPath()/UMean.caseName()/"graphs"/UMean.instance());
|
||||||
|
mkDir(path);
|
||||||
|
|
||||||
scalarField UMeanXvalues
|
scalarField UMeanXvalues
|
||||||
(
|
(
|
||||||
channelIndexing.collapse(UMean.component(vector::X)())
|
channelIndexing.collapse(UMean.component(vector::X)())
|
||||||
@ -42,19 +45,19 @@
|
|||||||
|
|
||||||
const scalarField& y = channelIndexing.y();
|
const scalarField& y = channelIndexing.y();
|
||||||
|
|
||||||
makeGraph(y, UMeanXvalues, "Uf", UMean.path(), gFormat);
|
makeGraph(y, UMeanXvalues, "Uf", path, gFormat);
|
||||||
makeGraph(y, urmsValues, "u", UMean.path(), gFormat);
|
makeGraph(y, urmsValues, "u", path, gFormat);
|
||||||
makeGraph(y, vrmsValues, "v", UMean.path(), gFormat);
|
makeGraph(y, vrmsValues, "v", path, gFormat);
|
||||||
makeGraph(y, wrmsValues, "w", UMean.path(), gFormat);
|
makeGraph(y, wrmsValues, "w", path, gFormat);
|
||||||
makeGraph(y, RxyValues, "uv", UMean.path(), gFormat);
|
makeGraph(y, RxyValues, "uv", path, gFormat);
|
||||||
makeGraph(y, kValues, "k", UMean.path(), gFormat);
|
makeGraph(y, kValues, "k", path, gFormat);
|
||||||
|
|
||||||
makeGraph(y, pPrime2MeanValues, "pPrime2Mean", UMean.path(), gFormat);
|
makeGraph(y, pPrime2MeanValues, "pPrime2Mean", path, gFormat);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
makeGraph(y, epsilonValues, "epsilon", UMean.path(), gFormat);
|
makeGraph(y, epsilonValues, "epsilon", path, gFormat);
|
||||||
makeGraph(y, nuMeanValues, "nu", UMean.path(), gFormat);
|
makeGraph(y, nuMeanValues, "nu", path, gFormat);
|
||||||
makeGraph(y, nuPrimeValues, "nuPrime", UMean.path(), gFormat);
|
makeGraph(y, nuPrimeValues, "nuPrime", path, gFormat);
|
||||||
makeGraph(y, gammaDotMeanValues, "gammaDot", UMean.path(), gFormat);
|
makeGraph(y, gammaDotMeanValues, "gammaDot", path, gFormat);
|
||||||
makeGraph(y, gammaDotPrimeValues, "gammaDotPrime", UMean.path(), gFormat);
|
makeGraph(y, gammaDotPrimeValues, "gammaDotPrime", path, gFormat);
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -76,6 +76,7 @@ cleanCase()
|
|||||||
rm -rf processor* > /dev/null 2>&1
|
rm -rf processor* > /dev/null 2>&1
|
||||||
rm -rf probes* > /dev/null 2>&1
|
rm -rf probes* > /dev/null 2>&1
|
||||||
rm -rf forces* > /dev/null 2>&1
|
rm -rf forces* > /dev/null 2>&1
|
||||||
|
rm -rf graphs* > /dev/null 2>&1
|
||||||
rm -rf sets > /dev/null 2>&1
|
rm -rf sets > /dev/null 2>&1
|
||||||
rm -rf system/machines > /dev/null 2>&1
|
rm -rf system/machines > /dev/null 2>&1
|
||||||
|
|
||||||
|
|||||||
@ -62,7 +62,17 @@ void makeGraph
|
|||||||
const word& graphFormat
|
const word& graphFormat
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
makeGraph(x, vsf.internalField(), name, vsf.path(), graphFormat);
|
fileName path(vsf.rootPath()/vsf.caseName()/"graphs"/vsf.instance());
|
||||||
|
mkDir(path);
|
||||||
|
|
||||||
|
makeGraph
|
||||||
|
(
|
||||||
|
x,
|
||||||
|
vsf.internalField(),
|
||||||
|
name,
|
||||||
|
path,
|
||||||
|
graphFormat
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,127 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
|
||||||
\\/ M anipulation |
|
|
||||||
-------------------------------------------------------------------------------
|
|
||||||
License
|
|
||||||
This file is part of OpenFOAM.
|
|
||||||
|
|
||||||
OpenFOAM is free software: you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
Application
|
|
||||||
MRFSimpleFoam
|
|
||||||
|
|
||||||
Description
|
|
||||||
Steady-state solver for incompressible, turbulent flow of non-Newtonian
|
|
||||||
fluids with MRF regions.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "singlePhaseTransportModel.H"
|
|
||||||
#include "RASModel.H"
|
|
||||||
#include "MRFZones.H"
|
|
||||||
#include "simpleControl.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "setRootCase.H"
|
|
||||||
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
simpleControl simple(mesh);
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (simple.loop())
|
|
||||||
{
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
p.storePrevIter();
|
|
||||||
|
|
||||||
// Pressure-velocity SIMPLE corrector
|
|
||||||
{
|
|
||||||
// Momentum predictor
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
|
||||||
(
|
|
||||||
fvm::div(phi, U)
|
|
||||||
+ turbulence->divDevReff(U)
|
|
||||||
);
|
|
||||||
mrfZones.addCoriolis(UEqn());
|
|
||||||
|
|
||||||
UEqn().relax();
|
|
||||||
|
|
||||||
solve(UEqn() == -fvc::grad(p));
|
|
||||||
|
|
||||||
p.boundaryField().updateCoeffs();
|
|
||||||
volScalarField rAU(1.0/UEqn().A());
|
|
||||||
U = rAU*UEqn().H();
|
|
||||||
UEqn.clear();
|
|
||||||
|
|
||||||
phi = fvc::interpolate(U, "interpolate(HbyA)") & mesh.Sf();
|
|
||||||
mrfZones.relativeFlux(phi);
|
|
||||||
adjustPhi(phi, U, p);
|
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
|
||||||
for (int nonOrth=0; nonOrth<=simple.nNonOrthCorr(); nonOrth++)
|
|
||||||
{
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::laplacian(rAU, p) == fvc::div(phi)
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.setReference(pRefCell, pRefValue);
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
if (nonOrth == simple.nNonOrthCorr())
|
|
||||||
{
|
|
||||||
phi -= pEqn.flux();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "continuityErrs.H"
|
|
||||||
|
|
||||||
// Explicitly relax pressure for momentum corrector
|
|
||||||
p.relax();
|
|
||||||
|
|
||||||
// Momentum corrector
|
|
||||||
U -= rAU*fvc::grad(p);
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
}
|
|
||||||
|
|
||||||
turbulence->correct();
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
MRFSimpleFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_USER_APPBIN)/MRFSimpleFoam
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels/incompressible/RAS/RASModel \
|
|
||||||
-I$(LIB_SRC)/transportModels \
|
|
||||||
-I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lincompressibleRASModels \
|
|
||||||
-lincompressibleTransportModels \
|
|
||||||
-lfiniteVolume
|
|
||||||
@ -1,46 +0,0 @@
|
|||||||
Info<< "Reading field p\n" << endl;
|
|
||||||
volScalarField p
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"p",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Reading field U\n" << endl;
|
|
||||||
volVectorField U
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"U",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
# include "createPhi.H"
|
|
||||||
|
|
||||||
|
|
||||||
label pRefCell = 0;
|
|
||||||
scalar pRefValue = 0.0;
|
|
||||||
setRefCell(p, mesh.solutionDict().subDict("SIMPLE"), pRefCell, pRefValue);
|
|
||||||
|
|
||||||
|
|
||||||
singlePhaseTransportModel laminarTransport(U, phi);
|
|
||||||
|
|
||||||
autoPtr<incompressible::RASModel> turbulence
|
|
||||||
(
|
|
||||||
incompressible::RASModel::New(U, phi, laminarTransport)
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
MRFZones mrfZones(mesh);
|
|
||||||
mrfZones.correctBoundaryVelocity(U);
|
|
||||||
@ -19,7 +19,7 @@ Ubar Ubar [ 0 1 -1 0 0 0 0 ] ( 10 0 0 );
|
|||||||
|
|
||||||
transportModel Newtonian;
|
transportModel Newtonian;
|
||||||
|
|
||||||
nu nu [ 0 2 -1 0 0 0 0 ] 1e-3;
|
nu nu [ 0 2 -1 0 0 0 0 ] 1e-8;
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
FoamFile
|
FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format binary;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
location "constant/polyMesh";
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
|
|||||||
@ -25,6 +25,8 @@ boundaryField
|
|||||||
{
|
{
|
||||||
type turbulentMixingLengthDissipationRateInlet;
|
type turbulentMixingLengthDissipationRateInlet;
|
||||||
mixingLength 0.01;
|
mixingLength 0.01;
|
||||||
|
phi phi;
|
||||||
|
k k;
|
||||||
value uniform 1;
|
value uniform 1;
|
||||||
}
|
}
|
||||||
outlet1
|
outlet1
|
||||||
@ -45,7 +47,7 @@ boundaryField
|
|||||||
Cmu 0.09;
|
Cmu 0.09;
|
||||||
kappa 0.41;
|
kappa 0.41;
|
||||||
E 9.8;
|
E 9.8;
|
||||||
value uniform 0;
|
value uniform 1;
|
||||||
}
|
}
|
||||||
fan_half0
|
fan_half0
|
||||||
{
|
{
|
||||||
|
|||||||
@ -25,6 +25,8 @@ boundaryField
|
|||||||
{
|
{
|
||||||
type turbulentIntensityKineticEnergyInlet;
|
type turbulentIntensityKineticEnergyInlet;
|
||||||
intensity 0.05;
|
intensity 0.05;
|
||||||
|
U U;
|
||||||
|
phi phi;
|
||||||
value uniform 1;
|
value uniform 1;
|
||||||
}
|
}
|
||||||
outlet1
|
outlet1
|
||||||
@ -42,7 +44,7 @@ boundaryField
|
|||||||
baffles
|
baffles
|
||||||
{
|
{
|
||||||
type kqRWallFunction;
|
type kqRWallFunction;
|
||||||
value uniform 0;
|
value uniform 1;
|
||||||
}
|
}
|
||||||
fan_half0
|
fan_half0
|
||||||
{
|
{
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
FoamFile
|
FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format binary;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
location "constant/polyMesh";
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
|
|||||||
@ -21,433 +21,433 @@ FoamFile
|
|||||||
{
|
{
|
||||||
type patch;
|
type patch;
|
||||||
nFaces 320;
|
nFaces 320;
|
||||||
startFace 1027872;
|
startFace 1028059;
|
||||||
}
|
}
|
||||||
inlet
|
inlet
|
||||||
{
|
{
|
||||||
type patch;
|
type patch;
|
||||||
nFaces 64;
|
nFaces 64;
|
||||||
startFace 1028192;
|
startFace 1028379;
|
||||||
}
|
}
|
||||||
outlet
|
outlet
|
||||||
{
|
{
|
||||||
type patch;
|
type patch;
|
||||||
nFaces 64;
|
nFaces 64;
|
||||||
startFace 1028256;
|
startFace 1028443;
|
||||||
}
|
}
|
||||||
lowerWall
|
lowerWall
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 5330;
|
nFaces 5330;
|
||||||
startFace 1028320;
|
startFace 1028507;
|
||||||
}
|
}
|
||||||
upperWall
|
upperWall
|
||||||
{
|
{
|
||||||
type patch;
|
type patch;
|
||||||
nFaces 160;
|
nFaces 160;
|
||||||
startFace 1033650;
|
startFace 1033837;
|
||||||
}
|
}
|
||||||
motorBike_frt-fairing:001%1
|
motorBike_frt-fairing:001%1
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 5416;
|
nFaces 5410;
|
||||||
startFace 1033810;
|
startFace 1033997;
|
||||||
}
|
}
|
||||||
motorBike_windshield:002%2
|
motorBike_windshield:002%2
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 50;
|
nFaces 50;
|
||||||
startFace 1039226;
|
startFace 1039407;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-rim:005%5
|
motorBike_rr-wh-rim:005%5
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 137;
|
nFaces 136;
|
||||||
startFace 1039276;
|
startFace 1039457;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-rim:010%10
|
motorBike_rr-wh-rim:010%10
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 340;
|
nFaces 340;
|
||||||
startFace 1039413;
|
startFace 1039593;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-rim:011%11
|
motorBike_fr-wh-rim:011%11
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 473;
|
nFaces 473;
|
||||||
startFace 1039753;
|
startFace 1039933;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-brake-disk:012%12
|
motorBike_fr-wh-brake-disk:012%12
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 54;
|
nFaces 54;
|
||||||
startFace 1040226;
|
startFace 1040406;
|
||||||
}
|
}
|
||||||
motorBike_frame:016-shadow%13
|
motorBike_frame:016-shadow%13
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 98;
|
nFaces 98;
|
||||||
startFace 1040280;
|
startFace 1040460;
|
||||||
}
|
}
|
||||||
motorBike_rear-susp:014%14
|
motorBike_rear-susp:014%14
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 844;
|
nFaces 847;
|
||||||
startFace 1040378;
|
startFace 1040558;
|
||||||
}
|
}
|
||||||
motorBike_rear-susp:014-shadow%15
|
motorBike_rear-susp:014-shadow%15
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 461;
|
nFaces 462;
|
||||||
startFace 1041222;
|
startFace 1041405;
|
||||||
}
|
}
|
||||||
motorBike_frame:016%16
|
motorBike_frame:016%16
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 67;
|
nFaces 64;
|
||||||
startFace 1041683;
|
startFace 1041867;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-rim:005-shadow%17
|
motorBike_rr-wh-rim:005-shadow%17
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 70;
|
nFaces 70;
|
||||||
startFace 1041750;
|
startFace 1041931;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-chain-hub:022%22
|
motorBike_rr-wh-chain-hub:022%22
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 141;
|
nFaces 141;
|
||||||
startFace 1041820;
|
startFace 1042001;
|
||||||
}
|
}
|
||||||
motorBike_rearseat%24
|
motorBike_rearseat%24
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 430;
|
nFaces 430;
|
||||||
startFace 1041961;
|
startFace 1042142;
|
||||||
}
|
}
|
||||||
motorBike_frt-fairing%25
|
motorBike_frt-fairing%25
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 626;
|
nFaces 626;
|
||||||
startFace 1042391;
|
startFace 1042572;
|
||||||
}
|
}
|
||||||
motorBike_windshield%26
|
motorBike_windshield%26
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 368;
|
nFaces 379;
|
||||||
startFace 1043017;
|
startFace 1043198;
|
||||||
}
|
}
|
||||||
motorBike_headlights%27
|
motorBike_headlights%27
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 161;
|
nFaces 161;
|
||||||
startFace 1043385;
|
startFace 1043577;
|
||||||
}
|
}
|
||||||
motorBike_driversseat%28
|
motorBike_driversseat%28
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 368;
|
nFaces 368;
|
||||||
startFace 1043546;
|
startFace 1043738;
|
||||||
}
|
}
|
||||||
motorBike_rear-body%29
|
motorBike_rear-body%29
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 2077;
|
nFaces 2077;
|
||||||
startFace 1043914;
|
startFace 1044106;
|
||||||
}
|
}
|
||||||
motorBike_fuel-tank%30
|
motorBike_fuel-tank%30
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 912;
|
nFaces 912;
|
||||||
startFace 1045991;
|
startFace 1046183;
|
||||||
}
|
}
|
||||||
motorBike_exhaust%31
|
motorBike_exhaust%31
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 2392;
|
nFaces 2392;
|
||||||
startFace 1046903;
|
startFace 1047095;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-rim%32
|
motorBike_rr-wh-rim%32
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1430;
|
nFaces 1430;
|
||||||
startFace 1049295;
|
startFace 1049487;
|
||||||
}
|
}
|
||||||
motorBike_fr-mud-guard%33
|
motorBike_fr-mud-guard%33
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 624;
|
nFaces 634;
|
||||||
startFace 1050725;
|
startFace 1050917;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-rim%34
|
motorBike_fr-wh-rim%34
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 591;
|
nFaces 591;
|
||||||
startFace 1051349;
|
startFace 1051551;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-brake-disk%35
|
motorBike_fr-wh-brake-disk%35
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 427;
|
nFaces 426;
|
||||||
startFace 1051940;
|
startFace 1052142;
|
||||||
}
|
}
|
||||||
motorBike_fr-brake-caliper%36
|
motorBike_fr-brake-caliper%36
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 164;
|
nFaces 164;
|
||||||
startFace 1052367;
|
startFace 1052568;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-tyre%37
|
motorBike_fr-wh-tyre%37
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1116;
|
nFaces 1116;
|
||||||
startFace 1052531;
|
startFace 1052732;
|
||||||
}
|
}
|
||||||
motorBike_hbars%38
|
motorBike_hbars%38
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 535;
|
nFaces 535;
|
||||||
startFace 1053647;
|
startFace 1053848;
|
||||||
}
|
}
|
||||||
motorBike_fr-forks%39
|
motorBike_fr-forks%39
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1140;
|
nFaces 1140;
|
||||||
startFace 1054182;
|
startFace 1054383;
|
||||||
}
|
}
|
||||||
motorBike_chain%40
|
motorBike_chain%40
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 474;
|
nFaces 474;
|
||||||
startFace 1055322;
|
startFace 1055523;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-tyre%41
|
motorBike_rr-wh-tyre%41
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1787;
|
nFaces 1787;
|
||||||
startFace 1055796;
|
startFace 1055997;
|
||||||
}
|
}
|
||||||
motorBike_square-dial%42
|
motorBike_square-dial%42
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 6;
|
nFaces 6;
|
||||||
startFace 1057583;
|
startFace 1057784;
|
||||||
}
|
}
|
||||||
motorBike_round-dial%43
|
motorBike_round-dial%43
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 17;
|
nFaces 17;
|
||||||
startFace 1057589;
|
startFace 1057790;
|
||||||
}
|
}
|
||||||
motorBike_dial-holder%44
|
motorBike_dial-holder%44
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 87;
|
nFaces 87;
|
||||||
startFace 1057606;
|
startFace 1057807;
|
||||||
}
|
}
|
||||||
motorBike_rear-susp%45
|
motorBike_rear-susp%45
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1786;
|
nFaces 1786;
|
||||||
startFace 1057693;
|
startFace 1057894;
|
||||||
}
|
}
|
||||||
motorBike_rear-brake-lights%46
|
motorBike_rear-brake-lights%46
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 53;
|
nFaces 53;
|
||||||
startFace 1059479;
|
startFace 1059680;
|
||||||
}
|
}
|
||||||
motorBike_rear-light-bracket%47
|
motorBike_rear-light-bracket%47
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 163;
|
nFaces 163;
|
||||||
startFace 1059532;
|
startFace 1059733;
|
||||||
}
|
}
|
||||||
motorBike_frame%48
|
motorBike_frame%48
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 2040;
|
nFaces 2040;
|
||||||
startFace 1059695;
|
startFace 1059896;
|
||||||
}
|
}
|
||||||
motorBike_rear-mud-guard%49
|
motorBike_rear-mud-guard%49
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 663;
|
nFaces 660;
|
||||||
startFace 1061735;
|
startFace 1061936;
|
||||||
}
|
}
|
||||||
motorBike_rear-susp-spring-damp%50
|
motorBike_rear-susp-spring-damp%50
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 107;
|
nFaces 107;
|
||||||
startFace 1062398;
|
startFace 1062596;
|
||||||
}
|
}
|
||||||
motorBike_fairing-inner-plate%51
|
motorBike_fairing-inner-plate%51
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 445;
|
nFaces 445;
|
||||||
startFace 1062505;
|
startFace 1062703;
|
||||||
}
|
}
|
||||||
motorBike_clutch-housing%52
|
motorBike_clutch-housing%52
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 970;
|
nFaces 970;
|
||||||
startFace 1062950;
|
startFace 1063148;
|
||||||
}
|
}
|
||||||
motorBike_radiator%53
|
motorBike_radiator%53
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 39;
|
nFaces 40;
|
||||||
startFace 1063920;
|
startFace 1064118;
|
||||||
}
|
}
|
||||||
motorBike_water-pipe%54
|
motorBike_water-pipe%54
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 104;
|
nFaces 104;
|
||||||
startFace 1063959;
|
startFace 1064158;
|
||||||
}
|
}
|
||||||
motorBike_water-pump%55
|
motorBike_water-pump%55
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 74;
|
nFaces 74;
|
||||||
startFace 1064063;
|
startFace 1064262;
|
||||||
}
|
}
|
||||||
motorBike_engine%56
|
motorBike_engine%56
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 2389;
|
nFaces 2389;
|
||||||
startFace 1064137;
|
startFace 1064336;
|
||||||
}
|
}
|
||||||
motorBike_rear-shock-link%57
|
motorBike_rear-shock-link%57
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 26;
|
nFaces 25;
|
||||||
startFace 1066526;
|
startFace 1066725;
|
||||||
}
|
}
|
||||||
motorBike_rear-brake-fluid-pot-bracket%58
|
motorBike_rear-brake-fluid-pot-bracket%58
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 44;
|
nFaces 46;
|
||||||
startFace 1066552;
|
startFace 1066750;
|
||||||
}
|
}
|
||||||
motorBike_rear-brake-fluid-pot%59
|
motorBike_rear-brake-fluid-pot%59
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 53;
|
nFaces 53;
|
||||||
startFace 1066596;
|
startFace 1066796;
|
||||||
}
|
}
|
||||||
motorBike_footpeg%60
|
motorBike_footpeg%60
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 86;
|
nFaces 86;
|
||||||
startFace 1066649;
|
startFace 1066849;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-chain-hub%61
|
motorBike_rr-wh-chain-hub%61
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 122;
|
nFaces 122;
|
||||||
startFace 1066735;
|
startFace 1066935;
|
||||||
}
|
}
|
||||||
motorBike_rear-brake-caliper%62
|
motorBike_rear-brake-caliper%62
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 142;
|
nFaces 142;
|
||||||
startFace 1066857;
|
startFace 1067057;
|
||||||
}
|
}
|
||||||
motorBike_rider-helmet%65
|
motorBike_rider-helmet%65
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 583;
|
nFaces 583;
|
||||||
startFace 1066999;
|
startFace 1067199;
|
||||||
}
|
}
|
||||||
motorBike_rider-visor%66
|
motorBike_rider-visor%66
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 95;
|
nFaces 95;
|
||||||
startFace 1067582;
|
startFace 1067782;
|
||||||
}
|
}
|
||||||
motorBike_rider-boots%67
|
motorBike_rider-boots%67
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 1025;
|
nFaces 1025;
|
||||||
startFace 1067677;
|
startFace 1067877;
|
||||||
}
|
}
|
||||||
motorBike_rider-gloves%68
|
motorBike_rider-gloves%68
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 319;
|
nFaces 319;
|
||||||
startFace 1068702;
|
startFace 1068902;
|
||||||
}
|
}
|
||||||
motorBike_rider-body%69
|
motorBike_rider-body%69
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 4555;
|
nFaces 4555;
|
||||||
startFace 1069021;
|
startFace 1069221;
|
||||||
}
|
}
|
||||||
motorBike_frame:0%70
|
motorBike_frame:0%70
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 37;
|
nFaces 37;
|
||||||
startFace 1073576;
|
startFace 1073776;
|
||||||
}
|
}
|
||||||
motorBike_frt-fairing:001-shadow%74
|
motorBike_frt-fairing:001-shadow%74
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 3317;
|
nFaces 3329;
|
||||||
startFace 1073613;
|
startFace 1073813;
|
||||||
}
|
}
|
||||||
motorBike_windshield-shadow%75
|
motorBike_windshield-shadow%75
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 236;
|
nFaces 237;
|
||||||
startFace 1076930;
|
startFace 1077142;
|
||||||
}
|
}
|
||||||
motorBike_fr-mud-guard-shadow%81
|
motorBike_fr-mud-guard-shadow%81
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 350;
|
nFaces 348;
|
||||||
startFace 1077166;
|
startFace 1077379;
|
||||||
}
|
}
|
||||||
motorBike_fr-wh-brake-disk-shadow%83
|
motorBike_fr-wh-brake-disk-shadow%83
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 186;
|
nFaces 187;
|
||||||
startFace 1077516;
|
startFace 1077727;
|
||||||
}
|
}
|
||||||
motorBike_rear-mud-guard-shadow%84
|
motorBike_rear-mud-guard-shadow%84
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 388;
|
nFaces 394;
|
||||||
startFace 1077702;
|
startFace 1077914;
|
||||||
}
|
}
|
||||||
motorBike_rear-susp-spring-damp-shadow%85
|
motorBike_rear-susp-spring-damp-shadow%85
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 41;
|
nFaces 41;
|
||||||
startFace 1078090;
|
startFace 1078308;
|
||||||
}
|
}
|
||||||
motorBike_radiator-shadow%86
|
motorBike_radiator-shadow%86
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 22;
|
nFaces 20;
|
||||||
startFace 1078131;
|
startFace 1078349;
|
||||||
}
|
}
|
||||||
motorBike_rear-shock-link-shadow%87
|
motorBike_rear-shock-link-shadow%87
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 9;
|
nFaces 10;
|
||||||
startFace 1078153;
|
startFace 1078369;
|
||||||
}
|
}
|
||||||
motorBike_rear-brake-fluid-pot-bracket-shadow%88
|
motorBike_rear-brake-fluid-pot-bracket-shadow%88
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 22;
|
nFaces 20;
|
||||||
startFace 1078162;
|
startFace 1078379;
|
||||||
}
|
}
|
||||||
motorBike_rr-wh-chain-hub-shadow%89
|
motorBike_rr-wh-chain-hub-shadow%89
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 53;
|
nFaces 53;
|
||||||
startFace 1078184;
|
startFace 1078399;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@ -1,58 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volVectorField;
|
|
||||||
location "0";
|
|
||||||
object Urel;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [ 0 1 -1 0 0 0 0 ];
|
|
||||||
|
|
||||||
internalField uniform ( 0 0 0 );
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type SRFVelocity;
|
|
||||||
inletValue uniform ( 0 0 -10 );
|
|
||||||
relative yes;
|
|
||||||
value uniform ( 0 0 0 );
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value uniform ( 0 0 0 );
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type SRFVelocity;
|
|
||||||
inletValue uniform ( 0 0 0 );
|
|
||||||
relative yes;
|
|
||||||
value uniform ( 0 0 0 );
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object epsilon;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [ 0 2 -3 0 0 0 0 ];
|
|
||||||
|
|
||||||
internalField uniform 14.855;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value uniform 14.855;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type epsilonWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 14.855;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type epsilonWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 14.855;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object k;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [ 0 2 -2 0 0 0 0 ];
|
|
||||||
|
|
||||||
internalField uniform 0.375;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value uniform 0.375;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type kqRWallFunction;
|
|
||||||
value uniform 0.375;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type kqRWallFunction;
|
|
||||||
value uniform 0.375;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 0.375;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 0.375;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object nut;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [ 0 2 -1 0 0 0 0 ];
|
|
||||||
|
|
||||||
internalField uniform 0;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type nutkWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type nutkWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / 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 3.5;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value uniform 3.5;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type omegaWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 3.5;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type omegaWallFunction;
|
|
||||||
U Urel;
|
|
||||||
value uniform 3.5;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 3.5;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
value uniform 3.5;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object p;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [ 0 2 -2 0 0 0 0 ];
|
|
||||||
|
|
||||||
internalField uniform 0;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "constant";
|
|
||||||
object RASProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
RASModel kOmegaSST;
|
|
||||||
|
|
||||||
turbulence on;
|
|
||||||
|
|
||||||
printCoeffs on;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "constant";
|
|
||||||
object SRFProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
SRFModel rpm;
|
|
||||||
|
|
||||||
axis ( 0 0 1 );
|
|
||||||
|
|
||||||
rpmCoeffs
|
|
||||||
{
|
|
||||||
rpm 5000;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,151 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object blockMeshDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
convertToMeters 0.1;
|
|
||||||
|
|
||||||
vertices
|
|
||||||
(
|
|
||||||
( 0.500 0.000 0.000)
|
|
||||||
( 0.369 0.338 0.000)
|
|
||||||
( 0.338 0.369 0.000)
|
|
||||||
( 0.000 0.500 0.000)
|
|
||||||
( 0.737 0.676 0.000)
|
|
||||||
( 0.074 0.068 0.000)
|
|
||||||
( 0.676 0.737 0.000)
|
|
||||||
( 0.068 0.074 0.000)
|
|
||||||
( 0.000 1.000 0.000)
|
|
||||||
( 1.000 0.000 0.000)
|
|
||||||
( 0.100 0.000 0.000)
|
|
||||||
( 0.000 0.100 0.000)
|
|
||||||
( 0.500 0.000 2.000)
|
|
||||||
( 0.369 0.338 2.000)
|
|
||||||
( 0.338 0.369 2.000)
|
|
||||||
( 0.000 0.500 2.000)
|
|
||||||
( 0.737 0.676 2.000)
|
|
||||||
( 0.074 0.068 2.000)
|
|
||||||
( 0.676 0.737 2.000)
|
|
||||||
( 0.068 0.074 2.000)
|
|
||||||
( 0.000 1.000 2.000)
|
|
||||||
( 1.000 0.000 2.000)
|
|
||||||
( 0.100 0.000 2.000)
|
|
||||||
( 0.000 0.100 2.000)
|
|
||||||
);
|
|
||||||
|
|
||||||
blocks
|
|
||||||
(
|
|
||||||
hex (1 0 9 4 13 12 21 16) (10 20 40) simpleGrading (1 1 1)
|
|
||||||
hex (2 1 4 6 14 13 16 18) (2 20 40) simpleGrading (1 1 1)
|
|
||||||
hex (3 2 6 8 15 14 18 20) (10 20 40) simpleGrading (1 1 1)
|
|
||||||
hex (5 10 0 1 17 22 12 13) (10 20 40) simpleGrading (1 1 1)
|
|
||||||
hex (11 7 2 3 23 19 14 15) (10 20 40) simpleGrading (1 1 1)
|
|
||||||
);
|
|
||||||
|
|
||||||
edges
|
|
||||||
(
|
|
||||||
arc 0 1 ( 0.470 0.171 0.000 )
|
|
||||||
arc 12 13 ( 0.470 0.171 2.000 )
|
|
||||||
arc 2 3 ( 0.171 0.470 0.000 )
|
|
||||||
arc 14 15 ( 0.171 0.470 2.000 )
|
|
||||||
arc 9 4 ( 0.940 0.342 0.000 )
|
|
||||||
arc 21 16 ( 0.940 0.342 2.000 )
|
|
||||||
arc 5 10 ( 0.094 0.034 0.000 )
|
|
||||||
arc 17 22 ( 0.094 0.034 2.000 )
|
|
||||||
arc 6 8 ( 0.342 0.940 0.000 )
|
|
||||||
arc 18 20 ( 0.342 0.940 2.000 )
|
|
||||||
arc 11 7 ( 0.034 0.094 0.000 )
|
|
||||||
arc 23 19 ( 0.034 0.094 2.000 )
|
|
||||||
);
|
|
||||||
|
|
||||||
boundary
|
|
||||||
(
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(13 12 21 16)
|
|
||||||
(14 13 16 18)
|
|
||||||
(15 14 18 20)
|
|
||||||
(17 22 12 13)
|
|
||||||
(23 19 14 15)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(1 4 9 0)
|
|
||||||
(2 6 4 1)
|
|
||||||
(3 8 6 2)
|
|
||||||
(5 1 0 10)
|
|
||||||
(11 3 2 7)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(2 1 13 14)
|
|
||||||
(5 10 22 17)
|
|
||||||
(5 17 13 1)
|
|
||||||
(11 7 19 23)
|
|
||||||
(7 2 14 19)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(4 16 21 9)
|
|
||||||
(6 18 16 4)
|
|
||||||
(8 20 18 6)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
neighbourPatch cyclic_half1;
|
|
||||||
transform rotational;
|
|
||||||
rotationAxis (0 0 1);
|
|
||||||
rotationCentre (0 0 0);
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(0 9 21 12)
|
|
||||||
(10 0 12 22)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
neighbourPatch cyclic_half0;
|
|
||||||
transform rotational;
|
|
||||||
rotationAxis (0 0 1);
|
|
||||||
rotationCentre (0 0 0);
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(3 15 20 8)
|
|
||||||
(11 23 15 3)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
mergeMatchPairs
|
|
||||||
(
|
|
||||||
);
|
|
||||||
@ -1,60 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class polyBoundaryMesh;
|
|
||||||
location "constant/polyMesh";
|
|
||||||
object boundary;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
6
|
|
||||||
(
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 840;
|
|
||||||
startFace 96680;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 840;
|
|
||||||
startFace 97520;
|
|
||||||
}
|
|
||||||
innerWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 2480;
|
|
||||||
startFace 98360;
|
|
||||||
}
|
|
||||||
outerWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 880;
|
|
||||||
startFace 100840;
|
|
||||||
}
|
|
||||||
cyclic_half0
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
nFaces 1600;
|
|
||||||
startFace 101720;
|
|
||||||
neighbourPatch cyclic_half1;
|
|
||||||
}
|
|
||||||
cyclic_half1
|
|
||||||
{
|
|
||||||
type cyclic;
|
|
||||||
nFaces 1600;
|
|
||||||
startFace 103320;
|
|
||||||
neighbourPatch cyclic_half0;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,39 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "constant";
|
|
||||||
object transportProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
transportModel Newtonian;
|
|
||||||
|
|
||||||
nu nu [ 0 2 -1 0 0 0 0 ] 1.5e-05;
|
|
||||||
|
|
||||||
CrossPowerLawCoeffs
|
|
||||||
{
|
|
||||||
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
|
|
||||||
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
|
|
||||||
m m [ 0 0 1 0 0 0 0 ] 1;
|
|
||||||
n n [ 0 0 0 0 0 0 0 ] 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
BirdCarreauCoeffs
|
|
||||||
{
|
|
||||||
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
|
|
||||||
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
|
|
||||||
k k [ 0 0 1 0 0 0 0 ] 0;
|
|
||||||
n n [ 0 0 0 0 0 0 0 ] 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "system";
|
|
||||||
object controlDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
application simpleSRFFoam;
|
|
||||||
|
|
||||||
startFrom startTime;
|
|
||||||
|
|
||||||
startTime 0;
|
|
||||||
|
|
||||||
stopAt endTime;
|
|
||||||
|
|
||||||
endTime 1000;
|
|
||||||
|
|
||||||
deltaT 1;
|
|
||||||
|
|
||||||
writeControl timeStep;
|
|
||||||
|
|
||||||
writeInterval 100;
|
|
||||||
|
|
||||||
purgeWrite 0;
|
|
||||||
|
|
||||||
writeFormat ascii;
|
|
||||||
|
|
||||||
writePrecision 6;
|
|
||||||
|
|
||||||
writeCompression off;
|
|
||||||
|
|
||||||
timeFormat general;
|
|
||||||
|
|
||||||
timePrecision 6;
|
|
||||||
|
|
||||||
runTimeModifiable true;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,73 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / 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;
|
|
||||||
grad(Urel) Gauss linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
divSchemes
|
|
||||||
{
|
|
||||||
default none;
|
|
||||||
div(phi,Urel) Gauss upwind;
|
|
||||||
div(phi,k) Gauss upwind;
|
|
||||||
div(phi,epsilon) Gauss upwind;
|
|
||||||
div(phi,omega) Gauss upwind;
|
|
||||||
div(phi,R) Gauss upwind;
|
|
||||||
div(R) Gauss linear;
|
|
||||||
div(phi,nuTilda) Gauss upwind;
|
|
||||||
div((nuEff*dev(T(grad(Urel))))) Gauss linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
laplacianSchemes
|
|
||||||
{
|
|
||||||
default none;
|
|
||||||
laplacian(nuEff,Urel) Gauss linear corrected;
|
|
||||||
laplacian((1|A(Urel)),p) Gauss linear corrected;
|
|
||||||
laplacian(DkEff,k) Gauss linear corrected;
|
|
||||||
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
|
|
||||||
laplacian(DomegaEff,omega) Gauss linear corrected;
|
|
||||||
laplacian(DREff,R) Gauss linear corrected;
|
|
||||||
laplacian(DnuTildaEff,nuTilda) Gauss linear corrected;
|
|
||||||
}
|
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
default linear;
|
|
||||||
interpolate(Urel) linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
snGradSchemes
|
|
||||||
{
|
|
||||||
default corrected;
|
|
||||||
}
|
|
||||||
|
|
||||||
fluxRequired
|
|
||||||
{
|
|
||||||
default no;
|
|
||||||
p ;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,94 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "system";
|
|
||||||
object fvSolution;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
solvers
|
|
||||||
{
|
|
||||||
p
|
|
||||||
{
|
|
||||||
solver PCG;
|
|
||||||
preconditioner DIC;
|
|
||||||
tolerance 1e-06;
|
|
||||||
relTol 0.01;
|
|
||||||
}
|
|
||||||
|
|
||||||
Urel
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
|
|
||||||
k
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
|
|
||||||
epsilon
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
|
|
||||||
omega
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
|
|
||||||
R
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
|
|
||||||
nuTilda
|
|
||||||
{
|
|
||||||
solver PBiCG;
|
|
||||||
preconditioner DILU;
|
|
||||||
tolerance 1e-05;
|
|
||||||
relTol 0.1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SIMPLE
|
|
||||||
{
|
|
||||||
nNonOrthogonalCorrectors 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
relaxationFactors
|
|
||||||
{
|
|
||||||
p 0.3;
|
|
||||||
Urel 0.7;
|
|
||||||
k 0.7;
|
|
||||||
epsilon 0.7;
|
|
||||||
omega 0.7;
|
|
||||||
R 0.7;
|
|
||||||
nuTilda 0.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
simpleSRFFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_USER_APPBIN)/simpleSRFFoam
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels/incompressible/RAS/RASModel \
|
|
||||||
-I$(LIB_SRC)/transportModels \
|
|
||||||
-I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lincompressibleRASModels \
|
|
||||||
-lincompressibleTransportModels \
|
|
||||||
-lfiniteVolume \
|
|
||||||
-lmeshTools
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
// Relative momentum predictor
|
|
||||||
tmp<fvVectorMatrix> UrelEqn
|
|
||||||
(
|
|
||||||
fvm::div(phi, Urel)
|
|
||||||
+ turbulence->divDevReff(Urel)
|
|
||||||
+ SRF->Su()
|
|
||||||
);
|
|
||||||
|
|
||||||
UrelEqn().relax();
|
|
||||||
|
|
||||||
eqnResidual = solve
|
|
||||||
(
|
|
||||||
UrelEqn() == -fvc::grad(p)
|
|
||||||
).initialResidual();
|
|
||||||
|
|
||||||
maxResidual = max(eqnResidual, maxResidual);
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
// check convergence
|
|
||||||
|
|
||||||
if (maxResidual < convergenceCriterion)
|
|
||||||
{
|
|
||||||
Info<< "reached convergence criterion: " << convergenceCriterion << endl;
|
|
||||||
runTime.writeAndEnd();
|
|
||||||
Info<< "latestTime = " << runTime.timeName() << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
Info<< "Reading field p\n" << endl;
|
|
||||||
volScalarField p
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"p",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Reading field Urel\n" << endl;
|
|
||||||
volVectorField Urel
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"Urel",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Reading/calculating face flux field phi\n" << endl;
|
|
||||||
surfaceScalarField phi
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"phi",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::READ_IF_PRESENT,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
linearInterpolate(Urel) & mesh.Sf()
|
|
||||||
);
|
|
||||||
|
|
||||||
label pRefCell = 0;
|
|
||||||
scalar pRefValue = 0.0;
|
|
||||||
setRefCell(p, mesh.solutionDict().subDict("SIMPLE"), pRefCell, pRefValue);
|
|
||||||
|
|
||||||
singlePhaseTransportModel laminarTransport(Urel, phi);
|
|
||||||
|
|
||||||
autoPtr<incompressible::RASModel> turbulence
|
|
||||||
(
|
|
||||||
incompressible::RASModel::New(Urel, phi, laminarTransport)
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Creating SRF model\n" << endl;
|
|
||||||
autoPtr<SRF::SRFModel> SRF
|
|
||||||
(
|
|
||||||
SRF::SRFModel::New(Urel)
|
|
||||||
);
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
// initialize values for convergence checks
|
|
||||||
|
|
||||||
scalar eqnResidual = 1, maxResidual = 0;
|
|
||||||
scalar convergenceCriterion = 0;
|
|
||||||
|
|
||||||
simple.readIfPresent("convergence", convergenceCriterion);
|
|
||||||
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
p.boundaryField().updateCoeffs();
|
|
||||||
volScalarField AUrel = UrelEqn().A();
|
|
||||||
Urel = UrelEqn().H()/AUrel;
|
|
||||||
UrelEqn.clear();
|
|
||||||
phi = fvc::interpolate(Urel) & mesh.Sf();
|
|
||||||
adjustPhi(phi, Urel, p);
|
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
|
||||||
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
|
|
||||||
{
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::laplacian(1.0/AUrel, p) == fvc::div(phi)
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.setReference(pRefCell, pRefValue);
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
if (nonOrth == nNonOrthCorr)
|
|
||||||
{
|
|
||||||
phi -= pEqn.flux();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# include "continuityErrs.H"
|
|
||||||
|
|
||||||
// Explicitly relax pressure for momentum corrector
|
|
||||||
p.relax();
|
|
||||||
|
|
||||||
// Momentum corrector
|
|
||||||
Urel -= fvc::grad(p)/AUrel;
|
|
||||||
Urel.correctBoundaryConditions();
|
|
||||||
}
|
|
||||||
@ -1,100 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
|
||||||
\\/ M anipulation |
|
|
||||||
-------------------------------------------------------------------------------
|
|
||||||
License
|
|
||||||
This file is part of OpenFOAM.
|
|
||||||
|
|
||||||
OpenFOAM is free software: you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
Application
|
|
||||||
simpleSRFFoam
|
|
||||||
|
|
||||||
Description
|
|
||||||
Steady-state solver for incompressible, turbulent flow of non-Newtonian
|
|
||||||
fluids in a single rotating frame.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "singlePhaseTransportModel.H"
|
|
||||||
#include "RASModel.H"
|
|
||||||
#include "SRFModel.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (runTime.loop())
|
|
||||||
{
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
#include "readSIMPLEControls.H"
|
|
||||||
#include "initConvergenceCheck.H"
|
|
||||||
|
|
||||||
p.storePrevIter();
|
|
||||||
|
|
||||||
// Pressure-velocity SIMPLE corrector
|
|
||||||
{
|
|
||||||
#include "UrelEqn.H"
|
|
||||||
#include "pEqn.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
turbulence->correct();
|
|
||||||
|
|
||||||
if (runTime.outputTime())
|
|
||||||
{
|
|
||||||
volVectorField Uabs
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"Uabs",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::NO_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
Urel + SRF->U()
|
|
||||||
);
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
|
|
||||||
#include "convergenceCheck.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
simpleWindFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_APPBIN)/simpleWindFoam
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels \
|
|
||||||
-I$(LIB_SRC)/turbulenceModels/incompressible/RAS/RASModel \
|
|
||||||
-I$(LIB_SRC)/transportModels \
|
|
||||||
-I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
|
||||||
-I$(LIB_SRC)/meshTools/lnInclude
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lincompressibleRASModels \
|
|
||||||
-lincompressibleTransportModels \
|
|
||||||
-lfiniteVolume \
|
|
||||||
-lmeshTools
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
// Solve the Momentum equation
|
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
|
||||||
(
|
|
||||||
fvm::div(phi, U)
|
|
||||||
+ turbulence->divDevReff(U)
|
|
||||||
);
|
|
||||||
|
|
||||||
UEqn().relax();
|
|
||||||
|
|
||||||
// Add resistance on the actuation disks
|
|
||||||
actuationDisks.addSu(UEqn());
|
|
||||||
|
|
||||||
solve(UEqn() == -fvc::grad(p));
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
if (maxResidual < convergenceCriterion)
|
|
||||||
{
|
|
||||||
Info<< "reached convergence criterion: " << convergenceCriterion << endl;
|
|
||||||
runTime.writeAndEnd();
|
|
||||||
Info<< "latestTime = " << runTime.timeName() << endl;
|
|
||||||
}
|
|
||||||
@ -1,44 +0,0 @@
|
|||||||
Info<< "Reading field p\n" << endl;
|
|
||||||
volScalarField p
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"p",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Reading field U\n" << endl;
|
|
||||||
volVectorField U
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"U",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
# include "createPhi.H"
|
|
||||||
|
|
||||||
|
|
||||||
label pRefCell = 0;
|
|
||||||
scalar pRefValue = 0.0;
|
|
||||||
setRefCell(p, mesh.solutionDict().subDict("SIMPLE"), pRefCell, pRefValue);
|
|
||||||
|
|
||||||
|
|
||||||
singlePhaseTransportModel laminarTransport(U, phi);
|
|
||||||
|
|
||||||
autoPtr<incompressible::RASModel> turbulence
|
|
||||||
(
|
|
||||||
incompressible::RASModel::New(U, phi, laminarTransport)
|
|
||||||
);
|
|
||||||
|
|
||||||
IObasicSourceList actuationDisks(mesh);
|
|
||||||
@ -1,33 +0,0 @@
|
|||||||
p.boundaryField().updateCoeffs();
|
|
||||||
|
|
||||||
volScalarField AU = UEqn().A();
|
|
||||||
U = UEqn().H()/AU;
|
|
||||||
UEqn.clear();
|
|
||||||
phi = fvc::interpolate(U) & mesh.Sf();
|
|
||||||
adjustPhi(phi, U, p);
|
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
|
||||||
for (int nonOrth=0; nonOrth<=simple.nNonOrthCorr(); nonOrth++)
|
|
||||||
{
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::laplacian(1.0/AU, p) == fvc::div(phi)
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.setReference(pRefCell, pRefValue);
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
if (nonOrth == simple.nNonOrthCorr())
|
|
||||||
{
|
|
||||||
phi -= pEqn.flux();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "continuityErrs.H"
|
|
||||||
|
|
||||||
// Explicitly relax pressure for momentum corrector
|
|
||||||
p.relax();
|
|
||||||
|
|
||||||
// Momentum corrector
|
|
||||||
U -= fvc::grad(p)/AU;
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
@ -1,82 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
|
||||||
\\/ M anipulation |
|
|
||||||
-------------------------------------------------------------------------------
|
|
||||||
License
|
|
||||||
This file is part of OpenFOAM.
|
|
||||||
|
|
||||||
OpenFOAM is free software: you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
Application
|
|
||||||
windSimpleFoam
|
|
||||||
|
|
||||||
Description
|
|
||||||
Steady-state solver for incompressible, turbulent flow with external
|
|
||||||
source in the momentum equation.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "singlePhaseTransportModel.H"
|
|
||||||
#include "RASModel.H"
|
|
||||||
#include "IObasicSourceList.H"
|
|
||||||
#include "simpleControl.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
simpleControl simple(mesh);
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (simple.loop())
|
|
||||||
{
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
p.storePrevIter();
|
|
||||||
|
|
||||||
// Pressure-velocity SIMPLE corrector
|
|
||||||
{
|
|
||||||
#include "UEqn.H"
|
|
||||||
#include "pEqn.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
turbulence->correct();
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volVectorField;
|
|
||||||
location "0";
|
|
||||||
object U;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#include "include/initialConditions"
|
|
||||||
|
|
||||||
dimensions [0 1 -1 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform $flowVelocity;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
#include "include/ABLConditions"
|
|
||||||
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type inletOutlet;
|
|
||||||
inletValue uniform (0 0 0);
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type atmBoundaryLayerInletVelocity;
|
|
||||||
Uref $Uref;
|
|
||||||
Href $Href;
|
|
||||||
n $windDirection;
|
|
||||||
z $zDirection;
|
|
||||||
z0 $z0;
|
|
||||||
value $internalField;
|
|
||||||
zGround $zGround;
|
|
||||||
}
|
|
||||||
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue (0 0 0);
|
|
||||||
value uniform (0 0 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue (0 0 0);
|
|
||||||
value uniform (0 0 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "include/sideAndTopPatches"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object epsilon;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [0 2 -3 0 0 0 0];
|
|
||||||
|
|
||||||
#include "include/initialConditions"
|
|
||||||
|
|
||||||
internalField uniform $turbulentEpsilon;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
#include "include/ABLConditions"
|
|
||||||
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type epsilonWallFunction;
|
|
||||||
Cmu 0.09;
|
|
||||||
kappa 0.4;
|
|
||||||
E 9.8;
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type atmBoundaryLayerInletEpsilon;
|
|
||||||
Ustar $Ustar;
|
|
||||||
z $zDirection;
|
|
||||||
z0 $z0;
|
|
||||||
value $internalField;
|
|
||||||
zGround $zGround;
|
|
||||||
}
|
|
||||||
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "include/sideAndTopPatches"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
Ustar 0.82;
|
|
||||||
Uref 10.0;
|
|
||||||
Href 20;
|
|
||||||
z0 0.1;
|
|
||||||
turbulentKE 1.3;
|
|
||||||
windDirection (1 0 0);
|
|
||||||
zDirection (0 0 1);
|
|
||||||
zGround 935.0;
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type fixedValue;
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
flowVelocity (0 0 0);
|
|
||||||
pressure 0;
|
|
||||||
turbulentKE 1.3;
|
|
||||||
turbulentEpsilon 0.01;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
top
|
|
||||||
{
|
|
||||||
type slip;
|
|
||||||
}
|
|
||||||
|
|
||||||
sides
|
|
||||||
{
|
|
||||||
type slip;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,54 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
object k;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#include "include/initialConditions"
|
|
||||||
|
|
||||||
dimensions [0 2 -2 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform $turbulentKE;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
#include "include/ABLConditions"
|
|
||||||
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type inletOutlet;
|
|
||||||
inletValue uniform 0.0;
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue $turbulentKE;
|
|
||||||
value $turbulentKE;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type kqRWallFunction;
|
|
||||||
value uniform 0.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "include/sideAndTopPatches"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
location "0";
|
|
||||||
object nut;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [0 2 -1 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform 0;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type nutkRoughWallFunction;
|
|
||||||
Ks uniform 0.2; //Ks = 20 Z0
|
|
||||||
Cs uniform 0.5;
|
|
||||||
value uniform 0.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "include/sideAndTopPatches"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,50 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
object p;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#include "include/initialConditions"
|
|
||||||
|
|
||||||
dimensions [0 2 -2 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform $pressure;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
value uniform $pressure;
|
|
||||||
uniformValue $pressure;
|
|
||||||
}
|
|
||||||
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "include/sideAndTopPatches"
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
cd ${0%/*} || exit 1 # run from this directory
|
|
||||||
|
|
||||||
# Source tutorial clean functions
|
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
|
||||||
|
|
||||||
cleanCase
|
|
||||||
rm -rf VTK
|
|
||||||
#rm -rf constant/cellToRegion constant/polyMesh/sets
|
|
||||||
rm -rf constant/polyMesh/sets
|
|
||||||
#rm -rf constant/cellLevel
|
|
||||||
#rm -rf constant/cellZones
|
|
||||||
#rm -rf constant/faceZones
|
|
||||||
#rm -rf constant/faces
|
|
||||||
#rm -rf constant/neighbour
|
|
||||||
#rm -rf constant/owner
|
|
||||||
#rm -rf constant/pointZones
|
|
||||||
#rm -rf constant/points
|
|
||||||
#rm -rf constant/refinementHistory
|
|
||||||
#rm -rf constant/surfaceIndex
|
|
||||||
|
|
||||||
# Reset decomposeParDict
|
|
||||||
cp system/decomposeParDict-nonPar system/decomposeParDict
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------- end-of-file
|
|
||||||
@ -1,39 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
cd ${0%/*} || exit 1 # run from this directory
|
|
||||||
|
|
||||||
# Source tutorial run functions
|
|
||||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
|
||||||
|
|
||||||
runApplication blockMesh
|
|
||||||
cp system/decomposeParDict-nonPar system/decomposeParDict
|
|
||||||
runApplication decomposePar
|
|
||||||
|
|
||||||
#runApplication snappyHexMesh -overwrite
|
|
||||||
#runApplication setSet -batch makeZones
|
|
||||||
#runApplication setsToZones -noFlipMap
|
|
||||||
#runApplication `getApplication`
|
|
||||||
|
|
||||||
cp system/decomposeParDict-par system/decomposeParDict
|
|
||||||
runParallel snappyHexMesh 2 -overwrite
|
|
||||||
|
|
||||||
# Add wildcard entries for meshed patches since not preserved
|
|
||||||
# by decomposePar. Notice -literalRE option to add wildcard itself
|
|
||||||
# without evaluation.
|
|
||||||
runParallel changeDictionary 2 -literalRE -enableFunctionEntries
|
|
||||||
|
|
||||||
cp system/decomposeParDict-4proc system/decomposeParDict
|
|
||||||
runParallel redistributeMeshPar 4 -overwrite
|
|
||||||
runParallel renumberMesh 4 -overwrite
|
|
||||||
|
|
||||||
# Add wildcard entries for meshes patches since not preserved
|
|
||||||
# by decomposePar. Notice -literalRE option to add wildcard itself
|
|
||||||
# without evaluation.
|
|
||||||
#runParallel changeDictionary 4 -literalRE
|
|
||||||
|
|
||||||
runParallel setSet 4 -batch makeZones
|
|
||||||
runParallel `getApplication` 4
|
|
||||||
|
|
||||||
runApplication reconstructParMesh -constant
|
|
||||||
runApplication reconstructPar
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------- end-of-file
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object RASProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
RASModel kEpsilon;
|
|
||||||
|
|
||||||
turbulence on;
|
|
||||||
|
|
||||||
printCoeffs on;
|
|
||||||
|
|
||||||
kEpsilonCoeffs
|
|
||||||
{
|
|
||||||
Cmu 0.09;
|
|
||||||
C1 1.44;
|
|
||||||
C2 1.92;
|
|
||||||
C3 -0.33;
|
|
||||||
sigmak 1.0;
|
|
||||||
sigmaEps 1.11; //Original value:1.44
|
|
||||||
Prt 1.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,71 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object blockMeshDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
convertToMeters 1;
|
|
||||||
|
|
||||||
vertices
|
|
||||||
(
|
|
||||||
( 581321 4.78537e+06 930)
|
|
||||||
( 582290 4.78537e+06 930)
|
|
||||||
( 582290 4.78624e+06 930)
|
|
||||||
( 581321 4.78624e+06 930)
|
|
||||||
( 581321 4.78537e+06 1500)
|
|
||||||
( 582290 4.78537e+06 1500)
|
|
||||||
( 582290 4.78624e+06 1500)
|
|
||||||
( 581321 4.78624e+06 1500)
|
|
||||||
|
|
||||||
);
|
|
||||||
|
|
||||||
blocks
|
|
||||||
(
|
|
||||||
hex (0 1 2 3 4 5 6 7) (30 30 20) simpleGrading (1 1 1)
|
|
||||||
);
|
|
||||||
|
|
||||||
edges
|
|
||||||
(
|
|
||||||
);
|
|
||||||
|
|
||||||
patches
|
|
||||||
(
|
|
||||||
patch outlet
|
|
||||||
(
|
|
||||||
(2 6 5 1)
|
|
||||||
)
|
|
||||||
patch sides
|
|
||||||
(
|
|
||||||
(1 5 4 0)
|
|
||||||
(3 7 6 2)
|
|
||||||
)
|
|
||||||
patch inlet
|
|
||||||
(
|
|
||||||
(0 4 7 3)
|
|
||||||
)
|
|
||||||
wall ground
|
|
||||||
(
|
|
||||||
(0 3 2 1)
|
|
||||||
)
|
|
||||||
patch top
|
|
||||||
(
|
|
||||||
(4 5 6 7)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
mergePatchPairs
|
|
||||||
(
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class polyBoundaryMesh;
|
|
||||||
location "constant/polyMesh";
|
|
||||||
object boundary;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
6
|
|
||||||
(
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 922;
|
|
||||||
startFace 364825;
|
|
||||||
}
|
|
||||||
sides
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 1834;
|
|
||||||
startFace 365747;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 923;
|
|
||||||
startFace 367581;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 0;
|
|
||||||
startFace 368504;
|
|
||||||
}
|
|
||||||
top
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 900;
|
|
||||||
startFace 368504;
|
|
||||||
}
|
|
||||||
terrain_patch0
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 18201;
|
|
||||||
startFace 369404;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "constant";
|
|
||||||
object sourcesProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
disk1
|
|
||||||
{
|
|
||||||
typeModel actuationDiskSource;
|
|
||||||
active on; //on/off switch
|
|
||||||
timeStart 0.0; //start time
|
|
||||||
duration 1000.0; //duration
|
|
||||||
selectionMode cellSet; //cellSet // points //cellZone
|
|
||||||
cellSet actuationDisk1;//cellSet name when selectionMode = cellSet
|
|
||||||
cellZone actuationDisk1;//cellZone name when selectionMode = cellZone
|
|
||||||
|
|
||||||
actuationDiskSourceCoeffs
|
|
||||||
{
|
|
||||||
diskDir (-1 0 0); // orientation of the disk
|
|
||||||
Cp 0.53; // Cp
|
|
||||||
Ct 0.58; // Ct
|
|
||||||
diskArea 40; // disk area
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
disk2
|
|
||||||
{
|
|
||||||
typeModel actuationDiskSource;
|
|
||||||
active on;
|
|
||||||
timeStart 0.0;
|
|
||||||
duration 1000.0;
|
|
||||||
selectionMode cellSet;
|
|
||||||
cellSet actuationDisk2;
|
|
||||||
cellZone actuationDisk2;
|
|
||||||
|
|
||||||
actuationDiskSourceCoeffs
|
|
||||||
{
|
|
||||||
diskDir (-1 0 0);
|
|
||||||
Cp 0.53;
|
|
||||||
Ct 0.58;
|
|
||||||
diskArea 40;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object transportProperties;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
transportModel Newtonian;
|
|
||||||
|
|
||||||
nu nu [0 2 -1 0 0 0 0] 1.5e-05;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,4 +0,0 @@
|
|||||||
cellSet actuationDisk1 new boxToCell (581850.5 4785805 1061) (581850.8 4785815 1071)
|
|
||||||
cellZoneSet actuationDisk1 new setToCellZone actuationDisk1
|
|
||||||
cellSet actuationDisk2 new boxToCell (581754 4785658 1065) (581754.4 4785668 1075)
|
|
||||||
cellZoneSet actuationDisk2 new setToCellZone actuationDisk2
|
|
||||||
@ -1,200 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object changeDictionaryDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#include "$FOAM_CASE/0/include/initialConditions"
|
|
||||||
|
|
||||||
dictionaryReplacement
|
|
||||||
{
|
|
||||||
|
|
||||||
// Specify
|
|
||||||
// - all fvPatchFields with potential non-uniform values
|
|
||||||
// - all fvPatchFields originating from meshing
|
|
||||||
// - all fvPatchFields originating from mesh-redistribution
|
|
||||||
|
|
||||||
p
|
|
||||||
{
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
value $pressure;
|
|
||||||
uniformValue $pressure;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
#include "$FOAM_CASE/0/include/sideAndTopPatches"
|
|
||||||
"procBoundary.*"
|
|
||||||
{
|
|
||||||
type processor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
k
|
|
||||||
{
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type inletOutlet;
|
|
||||||
inletValue uniform 0.0;
|
|
||||||
value uniform $turbulentKE;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue $turbulentKE;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type kqRWallFunction;
|
|
||||||
value uniform 0.0;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
#include "$FOAM_CASE/0/include/sideAndTopPatches"
|
|
||||||
"procBoundary.*"
|
|
||||||
{
|
|
||||||
type processor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
U
|
|
||||||
{
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type inletOutlet;
|
|
||||||
inletValue uniform (0 0 0);
|
|
||||||
value uniform $flowVelocity;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type atmBoundaryLayerInletVelocity;
|
|
||||||
Uref 10.0;
|
|
||||||
Href 20;
|
|
||||||
n (1 0 0);
|
|
||||||
z (0 0 1);
|
|
||||||
z0 0.1;
|
|
||||||
zGround 935.0;
|
|
||||||
value uniform $flowVelocity;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue $flowVelocity;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue $flowVelocity;
|
|
||||||
}
|
|
||||||
#include "$FOAM_CASE/0/include/sideAndTopPatches"
|
|
||||||
"procBoundary.*"
|
|
||||||
{
|
|
||||||
type processor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
nut
|
|
||||||
{
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type nutkRoughWallFunction;
|
|
||||||
Ks uniform 0.2; //Ks = 20 Z0
|
|
||||||
Cs uniform 0.5;
|
|
||||||
value uniform 0.0;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type calculated;
|
|
||||||
value uniform 0;
|
|
||||||
}
|
|
||||||
#include "$FOAM_CASE/0/include/sideAndTopPatches"
|
|
||||||
"procBoundary.*"
|
|
||||||
{
|
|
||||||
type processor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
epsilon
|
|
||||||
{
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
outlet
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
inlet
|
|
||||||
{
|
|
||||||
type atmBoundaryLayerInletEpsilon;
|
|
||||||
Ustar 0.82;
|
|
||||||
z (0 0 1);
|
|
||||||
z0 0.1;
|
|
||||||
value uniform $turbulentEpsilon;
|
|
||||||
zGround 935.0;
|
|
||||||
}
|
|
||||||
"terrain_.*"
|
|
||||||
{
|
|
||||||
type epsilonWallFunction;
|
|
||||||
Cmu 0.09;
|
|
||||||
kappa 0.4;
|
|
||||||
E 9.8;
|
|
||||||
value uniform $turbulentEpsilon;
|
|
||||||
}
|
|
||||||
ground
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
#include "$FOAM_CASE/0/include/sideAndTopPatches"
|
|
||||||
"procBoundary.*"
|
|
||||||
{
|
|
||||||
type processor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,47 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object controlDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
application simpleWindFoam;
|
|
||||||
|
|
||||||
startFrom latestTime;
|
|
||||||
|
|
||||||
startTime 0;
|
|
||||||
|
|
||||||
stopAt endTime;
|
|
||||||
|
|
||||||
endTime 5000;
|
|
||||||
|
|
||||||
deltaT 1;
|
|
||||||
|
|
||||||
writeControl timeStep;
|
|
||||||
|
|
||||||
writeInterval 50;
|
|
||||||
|
|
||||||
purgeWrite 0;
|
|
||||||
|
|
||||||
writeFormat ascii;
|
|
||||||
|
|
||||||
writePrecision 12;
|
|
||||||
|
|
||||||
writeCompression uncompressed;
|
|
||||||
|
|
||||||
timeFormat general;
|
|
||||||
|
|
||||||
timePrecision 6;
|
|
||||||
|
|
||||||
runTimeModifiable yes;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object decomposeParDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
numberOfSubdomains 2;
|
|
||||||
|
|
||||||
method hierarchical;
|
|
||||||
|
|
||||||
hierarchicalCoeffs
|
|
||||||
{
|
|
||||||
n (2 1 1);
|
|
||||||
delta 0.001;
|
|
||||||
order xyz;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object decomposeParDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
numberOfSubdomains 4;
|
|
||||||
|
|
||||||
method ptscotch;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object decomposeParDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
numberOfSubdomains 2;
|
|
||||||
|
|
||||||
method hierarchical;
|
|
||||||
|
|
||||||
hierarchicalCoeffs
|
|
||||||
{
|
|
||||||
n (2 1 1);
|
|
||||||
delta 0.001;
|
|
||||||
order xyz;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object decomposeParDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
numberOfSubdomains 2;
|
|
||||||
|
|
||||||
method ptscotch;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,60 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object fvSchemes;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
ddtSchemes
|
|
||||||
{
|
|
||||||
default steadyState;
|
|
||||||
}
|
|
||||||
|
|
||||||
gradSchemes
|
|
||||||
{
|
|
||||||
default Gauss linear;
|
|
||||||
grad(p) Gauss linear;
|
|
||||||
grad(U) Gauss linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
divSchemes
|
|
||||||
{
|
|
||||||
default none;
|
|
||||||
div(phi,U) Gauss upwind grad(U);
|
|
||||||
div((nuEff*dev(T(grad(U))))) Gauss linear;
|
|
||||||
div(phi,epsilon) Gauss upwind;
|
|
||||||
div(phi,k) Gauss upwind;
|
|
||||||
}
|
|
||||||
|
|
||||||
laplacianSchemes
|
|
||||||
{
|
|
||||||
default Gauss linear limited 0.333;
|
|
||||||
}
|
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
default linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
snGradSchemes
|
|
||||||
{
|
|
||||||
default limited 0.333;
|
|
||||||
}
|
|
||||||
|
|
||||||
fluxRequired
|
|
||||||
{
|
|
||||||
default no;
|
|
||||||
p;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,80 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object fvSolution;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
solvers
|
|
||||||
{
|
|
||||||
p
|
|
||||||
{
|
|
||||||
solver GAMG;
|
|
||||||
tolerance 1e-7;
|
|
||||||
relTol 0.1;
|
|
||||||
smoother GaussSeidel;
|
|
||||||
nPreSweeps 0;
|
|
||||||
nPostSweeps 2;
|
|
||||||
cacheAgglomeration on;
|
|
||||||
agglomerator faceAreaPair;
|
|
||||||
nCellsInCoarsestLevel 10;
|
|
||||||
mergeLevels 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
U
|
|
||||||
{
|
|
||||||
solver smoothSolver;
|
|
||||||
smoother GaussSeidel;
|
|
||||||
tolerance 1e-8;
|
|
||||||
relTol 0.1;
|
|
||||||
nSweeps 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
k
|
|
||||||
{
|
|
||||||
solver smoothSolver;
|
|
||||||
smoother GaussSeidel;
|
|
||||||
tolerance 1e-8;
|
|
||||||
relTol 0.1;
|
|
||||||
nSweeps 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
epsilon
|
|
||||||
{
|
|
||||||
solver smoothSolver;
|
|
||||||
smoother GaussSeidel;
|
|
||||||
tolerance 1e-8;
|
|
||||||
relTol 0.1;
|
|
||||||
nSweeps 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SIMPLE
|
|
||||||
{
|
|
||||||
nNonOrthogonalCorrectors 0;
|
|
||||||
convergence 1e-3;
|
|
||||||
}
|
|
||||||
|
|
||||||
relaxationFactors
|
|
||||||
{
|
|
||||||
p 0.3;
|
|
||||||
U 0.7;
|
|
||||||
k 0.7;
|
|
||||||
epsilon 0.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
cache
|
|
||||||
{
|
|
||||||
grad(U);
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,435 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object snappyHexMeshDict;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
// Which of the steps to run
|
|
||||||
castellatedMesh true;
|
|
||||||
snap true;
|
|
||||||
addLayers false;
|
|
||||||
|
|
||||||
|
|
||||||
// Geometry. Definition of all surfaces. All surfaces are of class
|
|
||||||
// searchableSurface.
|
|
||||||
// Surfaces are used
|
|
||||||
// - to specify refinement for any mesh cell intersecting it
|
|
||||||
// - to specify refinement for any mesh cell inside/outside/near
|
|
||||||
// - to 'snap' the mesh boundary to the surface
|
|
||||||
geometry
|
|
||||||
{
|
|
||||||
|
|
||||||
windTurbine1
|
|
||||||
{
|
|
||||||
type searchableBox;
|
|
||||||
min (581845 4785805 1061);
|
|
||||||
max (581855 4785815 1071);
|
|
||||||
}
|
|
||||||
|
|
||||||
windTurbine2
|
|
||||||
{
|
|
||||||
type searchableBox;
|
|
||||||
min (581740 4785658 1065);
|
|
||||||
max (581771 4785671 1079);
|
|
||||||
}
|
|
||||||
|
|
||||||
terrain.stl
|
|
||||||
{
|
|
||||||
type triSurfaceMesh;
|
|
||||||
name terrain;
|
|
||||||
|
|
||||||
//tolerance 1e-5; // optional:non-default tolerance on intersections
|
|
||||||
//maxTreeDepth 10; // optional:depth of octree. Decrease only in case
|
|
||||||
// of memory limitations.
|
|
||||||
|
|
||||||
// Per region the patchname. If not provided will be <name>_<region>.
|
|
||||||
/*
|
|
||||||
regions
|
|
||||||
{
|
|
||||||
secondSolid
|
|
||||||
{
|
|
||||||
name mySecondPatch;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
sphere2
|
|
||||||
{
|
|
||||||
type searchableSphere;
|
|
||||||
centre (1.5 1.5 1.5);
|
|
||||||
radius 1.03;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Settings for the castellatedMesh generation.
|
|
||||||
castellatedMeshControls
|
|
||||||
{
|
|
||||||
|
|
||||||
// Refinement parameters
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
// If local number of cells is >= maxLocalCells on any processor
|
|
||||||
// switches from from refinement followed by balancing
|
|
||||||
// (current method) to (weighted) balancing before refinement.
|
|
||||||
maxLocalCells 1000000;
|
|
||||||
|
|
||||||
// Overall cell limit (approximately). Refinement will stop immediately
|
|
||||||
// upon reaching this number so a refinement level might not complete.
|
|
||||||
// Note that this is the number of cells before removing the part which
|
|
||||||
// is not 'visible' from the keepPoint. The final number of cells might
|
|
||||||
// actually be a lot less.
|
|
||||||
maxGlobalCells 2000000;
|
|
||||||
|
|
||||||
// The surface refinement loop might spend lots of iterations
|
|
||||||
// refining just a few cells. This setting will cause refinement
|
|
||||||
// to stop if <= minimumRefine are selected for refinement. Note:
|
|
||||||
// it will at least do one iteration (unless the number of cells
|
|
||||||
// to refine is 0)
|
|
||||||
minRefinementCells 0;
|
|
||||||
|
|
||||||
// Allow a certain level of imbalance during refining
|
|
||||||
// (since balancing is quite expensive)
|
|
||||||
// Expressed as fraction of perfect balance (= overall number of cells /
|
|
||||||
// nProcs). 0=balance always.
|
|
||||||
maxLoadUnbalance 0.10;
|
|
||||||
|
|
||||||
|
|
||||||
// Number of buffer layers between different levels.
|
|
||||||
// 1 means normal 2:1 refinement restriction, larger means slower
|
|
||||||
// refinement.
|
|
||||||
nCellsBetweenLevels 1;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Explicit feature edge refinement
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
// Specifies a level for any cell intersected by its edges.
|
|
||||||
// This is a featureEdgeMesh, read from constant/triSurface for now.
|
|
||||||
features
|
|
||||||
(
|
|
||||||
//{
|
|
||||||
// file "someLine.eMesh";
|
|
||||||
// level 2;
|
|
||||||
//}
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Surface based refinement
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
// Specifies two levels for every surface. The first is the minimum level,
|
|
||||||
// every cell intersecting a surface gets refined up to the minimum level.
|
|
||||||
// The second level is the maximum level. Cells that 'see' multiple
|
|
||||||
// intersections where the intersections make an
|
|
||||||
// angle > resolveFeatureAngle get refined up to the maximum level.
|
|
||||||
|
|
||||||
refinementSurfaces
|
|
||||||
{
|
|
||||||
terrain
|
|
||||||
{
|
|
||||||
// Surface-wise min and max refinement level
|
|
||||||
level (2 2);
|
|
||||||
|
|
||||||
// Optional region-wise level specification
|
|
||||||
/*
|
|
||||||
regions
|
|
||||||
{
|
|
||||||
windTurbine
|
|
||||||
{
|
|
||||||
level (3 3);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//- Optional angle to detect small-large cell situation
|
|
||||||
// perpendicular to the surface. Is the angle of face w.r.t.
|
|
||||||
// the local surface normal. Use on flat(ish) surfaces only.
|
|
||||||
// Otherwise leave out or set to negative number.
|
|
||||||
//perpendicularAngle 10;
|
|
||||||
|
|
||||||
|
|
||||||
//- Optional faceZone and (for closed surface) cellZone with
|
|
||||||
// how to select the cells that are in the cellZone
|
|
||||||
// (inside / outside / specified insidePoint)
|
|
||||||
//faceZone sphere;
|
|
||||||
//cellZone sphere;
|
|
||||||
//cellZoneInside inside; //outside/insidePoint
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resolveFeatureAngle 2;
|
|
||||||
|
|
||||||
|
|
||||||
// Region-wise refinement
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
// Specifies refinement level for cells in relation to a surface. One of
|
|
||||||
// three modes
|
|
||||||
// - distance. 'levels' specifies per distance to the surface the
|
|
||||||
// wanted refinement level. The distances need to be specified in
|
|
||||||
// descending order.
|
|
||||||
// - inside. 'levels' is only one entry and only the level is used. All
|
|
||||||
// cells inside the surface get refined up to the level. The surface
|
|
||||||
// needs to be closed for this to be possible.
|
|
||||||
// - outside. Same but cells outside.
|
|
||||||
|
|
||||||
refinementRegions
|
|
||||||
{
|
|
||||||
|
|
||||||
windTurbine1
|
|
||||||
{
|
|
||||||
mode inside;
|
|
||||||
levels ((6 6));
|
|
||||||
}
|
|
||||||
|
|
||||||
windTurbine2
|
|
||||||
{
|
|
||||||
mode inside;
|
|
||||||
levels ((6 6));
|
|
||||||
}
|
|
||||||
//sphere.stl
|
|
||||||
//{
|
|
||||||
// mode distance;
|
|
||||||
// levels ((1.0 5) (2.0 3));
|
|
||||||
//}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Mesh selection
|
|
||||||
// ~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
// After refinement patches get added for all refinementSurfaces and
|
|
||||||
// all cells intersecting the surfaces get put into these patches. The
|
|
||||||
// section reachable from the locationInMesh is kept.
|
|
||||||
// NOTE: This point should never be on a face, always inside a cell, even
|
|
||||||
// after refinement.
|
|
||||||
locationInMesh (581770 4.78580e+06 1050);
|
|
||||||
|
|
||||||
|
|
||||||
// Whether any faceZones (as specified in the refinementSurfaces)
|
|
||||||
// are only on the boundary of corresponding cellZones or also allow
|
|
||||||
// free-standing zone faces. Not used if there are no faceZones.
|
|
||||||
allowFreeStandingZoneFaces true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Settings for the snapping.
|
|
||||||
snapControls
|
|
||||||
{
|
|
||||||
//- Number of patch smoothing iterations before finding correspondence
|
|
||||||
// to surface
|
|
||||||
nSmoothPatch 3;
|
|
||||||
|
|
||||||
//- Relative distance for points to be attracted by surface feature point
|
|
||||||
// or edge. True distance is this factor times local
|
|
||||||
// maximum edge length.
|
|
||||||
tolerance 4.0;
|
|
||||||
|
|
||||||
//- Number of mesh displacement relaxation iterations.
|
|
||||||
nSolveIter 30;
|
|
||||||
|
|
||||||
//- Maximum number of snapping relaxation iterations. Should stop
|
|
||||||
// before upon reaching a correct mesh.
|
|
||||||
nRelaxIter 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Settings for the layer addition.
|
|
||||||
addLayersControls
|
|
||||||
{
|
|
||||||
// Are the thickness parameters below relative to the undistorted
|
|
||||||
// size of the refined cell outside layer (true) or absolute sizes (false).
|
|
||||||
relativeSizes true;
|
|
||||||
|
|
||||||
// Per final patch (so not geometry!) the layer information
|
|
||||||
layers
|
|
||||||
{
|
|
||||||
sphere.stl_firstSolid
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
|
|
||||||
}
|
|
||||||
maxY
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Expansion factor for layer mesh
|
|
||||||
expansionRatio 1.0;
|
|
||||||
|
|
||||||
|
|
||||||
//- Wanted thickness of final added cell layer. If multiple layers
|
|
||||||
// is the thickness of the layer furthest away from the wall.
|
|
||||||
// See relativeSizes parameter.
|
|
||||||
finalLayerThickness 0.3;
|
|
||||||
|
|
||||||
//- Minimum thickness of cell layer. If for any reason layer
|
|
||||||
// cannot be above minThickness do not add layer.
|
|
||||||
// See relativeSizes parameter.
|
|
||||||
minThickness 0.25;
|
|
||||||
|
|
||||||
//- If points get not extruded do nGrow layers of connected faces that are
|
|
||||||
// also not grown. This helps convergence of the layer addition process
|
|
||||||
// close to features.
|
|
||||||
// Note: changed(corrected) w.r.t 17x! (didn't do anything in 17x)
|
|
||||||
nGrow 0;
|
|
||||||
|
|
||||||
|
|
||||||
// Advanced settings
|
|
||||||
|
|
||||||
//- When not to extrude surface. 0 is flat surface, 90 is when two faces
|
|
||||||
// make straight angle.
|
|
||||||
featureAngle 60;
|
|
||||||
|
|
||||||
//- Maximum number of snapping relaxation iterations. Should stop
|
|
||||||
// before upon reaching a correct mesh.
|
|
||||||
nRelaxIter 5;
|
|
||||||
|
|
||||||
// Number of smoothing iterations of surface normals
|
|
||||||
nSmoothSurfaceNormals 1;
|
|
||||||
|
|
||||||
// Number of smoothing iterations of interior mesh movement direction
|
|
||||||
nSmoothNormals 3;
|
|
||||||
|
|
||||||
// Smooth layer thickness over surface patches
|
|
||||||
nSmoothThickness 10;
|
|
||||||
|
|
||||||
// Stop layer growth on highly warped cells
|
|
||||||
maxFaceThicknessRatio 0.5;
|
|
||||||
|
|
||||||
// Reduce layer growth where ratio thickness to medial
|
|
||||||
// distance is large
|
|
||||||
maxThicknessToMedialRatio 0.3;
|
|
||||||
|
|
||||||
// Angle used to pick up medial axis points
|
|
||||||
// Note: changed(corrected) w.r.t 16x! 90 degrees corresponds to 130 in 16x.
|
|
||||||
minMedianAxisAngle 90;
|
|
||||||
|
|
||||||
// Create buffer region for new layer terminations
|
|
||||||
nBufferCellsNoExtrude 0;
|
|
||||||
|
|
||||||
|
|
||||||
// Overall max number of layer addition iterations. The mesher will exit
|
|
||||||
// if it reaches this number of iterations; possibly with an illegal
|
|
||||||
// mesh.
|
|
||||||
nLayerIter 50;
|
|
||||||
|
|
||||||
// Max number of iterations after which relaxed meshQuality controls
|
|
||||||
// get used. Up to nRelaxIter it uses the settings in meshQualityControls,
|
|
||||||
// after nRelaxIter it uses the values in meshQualityControls::relaxed.
|
|
||||||
nRelaxedIter 20;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Generic mesh quality settings. At any undoable phase these determine
|
|
||||||
// where to undo.
|
|
||||||
meshQualityControls
|
|
||||||
{
|
|
||||||
//- Maximum non-orthogonality allowed. Set to 180 to disable.
|
|
||||||
maxNonOrtho 65;
|
|
||||||
|
|
||||||
//- Max skewness allowed. Set to <0 to disable.
|
|
||||||
maxBoundarySkewness 20;
|
|
||||||
maxInternalSkewness 4;
|
|
||||||
|
|
||||||
//- Max concaveness allowed. Is angle (in degrees) below which concavity
|
|
||||||
// is allowed. 0 is straight face, <0 would be convex face.
|
|
||||||
// Set to 180 to disable.
|
|
||||||
maxConcave 80;
|
|
||||||
|
|
||||||
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
|
|
||||||
// Set to a sensible fraction of the smallest cell volume expected.
|
|
||||||
// Set to very negative number (e.g. -1E30) to disable.
|
|
||||||
minVol 1e-13;
|
|
||||||
|
|
||||||
//- Minimum quality of the tet formed by the face-centre
|
|
||||||
// and variable base point minimum decomposition triangles and
|
|
||||||
// the cell centre. Set to very negative number (e.g. -1E30) to
|
|
||||||
// disable.
|
|
||||||
// <0 = inside out tet,
|
|
||||||
// 0 = flat tet
|
|
||||||
// 1 = regular tet
|
|
||||||
minTetQuality 1e-30;
|
|
||||||
|
|
||||||
//- Minimum face area. Set to <0 to disable.
|
|
||||||
minArea -1;
|
|
||||||
|
|
||||||
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
|
|
||||||
//- and face centre triangles normal
|
|
||||||
minTwist 0.05;
|
|
||||||
|
|
||||||
//- minimum normalised cell determinant
|
|
||||||
//- 1 = hex, <= 0 = folded or flattened illegal cell
|
|
||||||
minDeterminant 0.001;
|
|
||||||
|
|
||||||
//- minFaceWeight (0 -> 0.5)
|
|
||||||
minFaceWeight 0.05;
|
|
||||||
|
|
||||||
//- minVolRatio (0 -> 1)
|
|
||||||
minVolRatio 0.01;
|
|
||||||
|
|
||||||
//must be >0 for Fluent compatibility
|
|
||||||
minTriangleTwist -1;
|
|
||||||
|
|
||||||
//- if >0 : preserve single cells with all points on the surface if the
|
|
||||||
// resulting volume after snapping (by approximation) is larger than
|
|
||||||
// minVolCollapseRatio times old volume (i.e. not collapsed to flat cell).
|
|
||||||
// If <0 : delete always.
|
|
||||||
//minVolCollapseRatio 0.5;
|
|
||||||
|
|
||||||
|
|
||||||
// Advanced
|
|
||||||
|
|
||||||
//- Number of error distribution iterations
|
|
||||||
nSmoothScale 4;
|
|
||||||
//- amount to scale back displacement at error points
|
|
||||||
errorReduction 0.75;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Optional : some meshing phases allow usage of relaxed rules.
|
|
||||||
// See e.g. addLayersControls::nRelaxedIter.
|
|
||||||
relaxed
|
|
||||||
{
|
|
||||||
//- Maximum non-orthogonality allowed. Set to 180 to disable.
|
|
||||||
maxNonOrtho 75;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Advanced
|
|
||||||
|
|
||||||
// Flags for optional output
|
|
||||||
// 0 : only write final meshes
|
|
||||||
// 1 : write intermediate meshes
|
|
||||||
// 2 : write volScalarField with cellLevel for postprocessing
|
|
||||||
// 4 : write current intersections as .obj files
|
|
||||||
debug 0;
|
|
||||||
|
|
||||||
|
|
||||||
// Merge tolerance. Is fraction of overall bounding box of initial mesh.
|
|
||||||
// Note: the write tolerance needs to be higher than this.
|
|
||||||
mergeTolerance 1e-6;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
Reference in New Issue
Block a user