adding rhoTurbTwinParcelFoam demo solver and test case

This commit is contained in:
andy
2008-05-09 11:14:32 +01:00
parent 8c0bddb2d0
commit 86b0322103
27 changed files with 4192 additions and 0 deletions

View File

@ -0,0 +1,16 @@
#!/bin/sh
currDir=`pwd`
application=`basename $currDir`
cases="simplifiedSiwek"
tutorialPath=`dirname $0`/..
. $tutorialPath/CleanFunctions
wclean $application
for case in $cases
do
cleanCase $case
done

View File

@ -0,0 +1,16 @@
#!/bin/sh
currDir=`pwd`
application=`basename $currDir`
cases="simplifiedSiwek"
tutorialPath=`dirname $0`/..
. $tutorialPath/RunFunctions
compileApplication $currDir $application
for case in $cases
do
runApplication blockMesh $case
runApplication $application $case
done

View File

@ -0,0 +1,3 @@
rhoTurbTwinParcelFoam.C
EXE = $(FOAM_USER_APPBIN)/rhoTurbTwinParcelFoam

View File

@ -0,0 +1,21 @@
EXE_INC = \
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/combustion/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \
-I$(LIB_SRC)/turbulenceModels
EXE_LIBS = \
-llagrangian \
-llagrangianIntermediate \
-lfiniteVolume \
-lmeshTools \
-lthermophysicalFunctions \
-lbasicThermophysicalModels \
-lcombustionThermophysicalModels \
-lspecie \
-lradiation \
-lcompressibleTurbulenceModels

View File

@ -0,0 +1,17 @@
fvVectorMatrix UEqn
(
fvm::ddt(rho, U)
+ fvm::div(phi, U)
+ turbulence->divDevRhoReff(U)
==
thermoCloud1.SU1()
+ kinematicCloud1.SU1()
+ rho.dimensionedInternalField()*g
);
UEqn.relax();
if (momentumPredictor)
{
solve(UEqn == -fvc::grad(p));
}

View File

@ -0,0 +1,84 @@
Info<< "Reading thermophysical properties\n" << endl;
autoPtr<basicThermo> thermo
(
basicThermo::New(mesh)
);
volScalarField& p = thermo->p();
volScalarField& h = thermo->h();
const volScalarField& psi = thermo->psi();
volScalarField rho
(
IOobject
(
"rho",
runTime.timeName(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
thermo->rho()
);
Info<< "\nReading field U\n" << endl;
volVectorField U
(
IOobject
(
"U",
runTime.timeName(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
mesh
);
# include "compressibleCreatePhi.H"
Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence
(
compressible::turbulenceModel::New
(
rho,
U,
phi,
thermo()
)
);
Info<< "Creating field DpDt\n" << endl;
volScalarField DpDt =
fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p);
pointMesh pMesh(mesh);
volPointInterpolation vpi(mesh, pMesh);
Info<< "Constructing thermoCloud1" << endl;
basicThermoCloud thermoCloud1
(
"thermoCloud1",
vpi,
rho,
U,
g,
thermo()
);
Info<< "Constructing kinematicCloud1" << endl;
basicKinematicCloud kinematicCloud1
(
"kinematicCloud1",
vpi,
rho,
U,
thermo().mu(),
g
);

View File

@ -0,0 +1,17 @@
{
fvScalarMatrix hEqn
(
fvm::ddt(rho, h)
+ fvm::div(phi, h)
- fvm::laplacian(turbulence->alphaEff(), h)
==
DpDt
+ thermoCloud1.Sh1()
);
hEqn.relax();
hEqn.solve();
thermo->correct();
}

View File

@ -0,0 +1,68 @@
rho = thermo->rho();
volScalarField rUA = 1.0/UEqn.A();
U = rUA*UEqn.H();
if (transonic)
{
surfaceScalarField phid
(
"phid",
fvc::interpolate(thermo->psi())
*(
(fvc::interpolate(U) & mesh.Sf())
+ fvc::ddtPhiCorr(rUA, rho, U, phi)
)
);
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
{
fvScalarMatrix pEqn
(
fvm::ddt(psi, p)
+ fvm::div(phid, p)
- fvm::laplacian(rho*rUA, p)
);
pEqn.solve();
if (nonOrth == nNonOrthCorr)
{
phi == pEqn.flux();
}
}
}
else
{
phi =
fvc::interpolate(rho)*
(
(fvc::interpolate(U) & mesh.Sf())
+ fvc::ddtPhiCorr(rUA, rho, U, phi)
);
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
{
fvScalarMatrix pEqn
(
fvm::ddt(psi, p)
+ fvc::div(phi)
- fvm::laplacian(rho*rUA, p)
);
pEqn.solve();
if (nonOrth == nNonOrthCorr)
{
phi += pEqn.flux();
}
}
}
#include "rhoEqn.H"
#include "compressibleContinuityErrs.H"
U -= rUA*fvc::grad(p);
U.correctBoundaryConditions();
DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p);

View File

@ -0,0 +1,113 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 1991-2007 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 2 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, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Application
rhoTurbFoam
Description
Transient solver for compressible, turbulent flow with two thermo-clouds.
\*---------------------------------------------------------------------------*/
#include "fvCFD.H"
#include "basicThermo.H"
#include "compressible/turbulenceModel/turbulenceModel.H"
#include "basicThermoCloud.H"
#include "basicKinematicCloud.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
int main(int argc, char *argv[])
{
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
# include "readEnvironmentalProperties.H"
# include "createFields.H"
# include "readPISOControls.H"
# include "initContinuityErrs.H"
# include "readTimeControls.H"
# include "compressibleCourantNo.H"
# include "setInitialDeltaT.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Info<< "\nStarting time loop\n" << endl;
while (runTime.run())
{
# include "readTimeControls.H"
# include "readPISOControls.H"
# include "compressibleCourantNo.H"
# include "setDeltaT.H"
runTime++;
Info<< "Time = " << runTime.timeName() << nl << endl;
Info<< "Evolving thermoCloud1" << endl;
thermoCloud1.evolve();
thermoCloud1.info();
Info<< "Evolving kinematicCloud1" << endl;
kinematicCloud1.evolve();
kinematicCloud1.info();
# include "rhoEqn.H"
// --- PIMPLE loop
for (int ocorr=1; ocorr<=nOuterCorr; ocorr++)
{
# include "UEqn.H"
// --- PISO loop
for (int corr=1; corr<=nCorr; corr++)
{
# include "hEqn.H"
# include "pEqn.H"
}
}
turbulence->correct();
rho = thermo->rho();
runTime.write();
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
<< nl << endl;
}
Info<< "End\n" << endl;
return(0);
}
// ************************************************************************* //

View File

@ -0,0 +1,64 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class volScalarField;
object G;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 0 -3 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type MarshakRadiation;
T T;
emissivity 1.0;
value uniform 0;
}
bottom
{
type MarshakRadiation;
T T;
emissivity 1.0;
value uniform 0;
}
walls
{
type MarshakRadiation;
T T;
emissivity 1.0;
value uniform 0;
}
symmetry
{
type symmetryPlane;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,61 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 400;
boundaryField
{
top
{
type fixedValue;
value uniform 400;
}
bottom
{
type zeroGradient;
}
walls
{
type zeroGradient;
}
symmetry
{
type symmetryPlane;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,57 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
top
{
type fixedValue;
value uniform (0 0 0);
}
bottom
{
type fixedValue;
value uniform (0 0 0);
}
walls
{
type fixedValue;
value uniform (0 0 0);
}
symmetry
{
type symmetryPlane;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,60 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class volScalarField;
object epsilon;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -3 0 0 0 0];
internalField uniform 5390.5;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
walls
{
type zeroGradient;
}
symmetry
{
type symmetryPlane;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,60 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class volScalarField;
object k;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -2 0 0 0 0];
internalField uniform 37.5;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
walls
{
type zeroGradient;
}
symmetry
{
type symmetryPlane;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,28 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object environmentalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
g g [0 1 -2 0 0 0 0] (0 -9.81 0);
// ************************************************************************* //

View File

@ -0,0 +1,44 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class vectorField;
object kinematicCloud1Positions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
(
(0.0075 0.5 0.05)
(0.0125 0.5 0.05)
(0.0175 0.5 0.05)
(0.0225 0.5 0.05)
(0.0275 0.5 0.05)
(0.0325 0.5 0.05)
(0.0375 0.5 0.05)
(0.0425 0.5 0.05)
(0.0475 0.5 0.05)
(0.0075 0.4 0.05)
(0.0125 0.4 0.05)
(0.0175 0.4 0.05)
(0.0225 0.4 0.05)
(0.0275 0.4 0.05)
(0.0325 0.4 0.05)
(0.0375 0.4 0.05)
(0.0425 0.4 0.05)
(0.0475 0.4 0.05)
)
// ************************************************************************* //

View File

@ -0,0 +1,86 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object kinematicCloud1Properties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Particle sub-models
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
WallInteractionModel StandardWallInteraction;
// Parcel basis type
parcelBasisType mass;
// Total mass to inject
massTotal massTotal [ 1 0 0 0 0] 2.0e-4;
// Minimum particle mass
minParticleMass minParticleMass [ 1 0 0 0 0] 1.0e-15;
// Parcel thermo properties
rho0 rho0 [ 1 -3 0 0 0] 5000;
// Coupling between particles and carrier phase via source terms
coupled true;
// Integer used to identify different parcel types
parcelTypeId 2;
interpolationSchemes
{
rho cell;
U cellPointFace;
mu cell;
}
integrationSchemes
{
U Euler;
}
ManualInjectionCoeffs
{
injectionTime 0;
positionsFile kinematicCloud1Positions;
U0 (0 0 0);
parcelPDF
{
pdfType RosinRammler;
RosinRammlerPDF
{
minValue 50.0e-06;
maxValue 100.0e-06;
d (75.0e-06);
n (0.5);
}
}
}
StandardWallInteractionCoeffs
{
e e [ 0 0 0 0 0] 1;
mu mu [ 0 0 0 0 0] 0;
}
// ************************************************************************* //

View File

@ -0,0 +1,95 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1.0;
vertices
(
(0 0 0)
(0.05 0 0)
(0.05 0.5 0)
(0 0.5 0)
(0 0 0.1)
(0.05 0 0.1)
(0.05 0.5 0.1)
(0 0.5 0.1)
(0.5 0 0)
(0.5 0.5 0)
(0.5 0 0.1)
(0.5 0.5 0.1)
(0.05 1 0)
(0 1 0)
(0.05 1 0.1)
(0 1 0.1)
);
blocks
(
hex (0 1 2 3 4 5 6 7) (5 50 1) simpleGrading (1 1 1)
hex (1 8 9 2 5 10 11 6) (40 50 1) simpleGrading (1 1 1)
hex (3 2 12 13 7 6 14 15) (5 50 1) simpleGrading (1 1 1)
);
edges
(
);
patches
(
patch top
(
(13 15 14 12)
)
patch bottom
(
(0 1 5 4)
(1 8 10 5)
)
wall walls
(
(8 9 11 10)
(9 2 6 11)
(2 12 14 6)
)
symmetryPlane symmetry
(
(4 7 3 0)
(7 15 13 3)
)
empty frontAndBack
(
(0 3 2 1)
(3 13 12 2)
(1 2 9 8)
(5 6 7 4)
(6 14 15 7)
(10 11 6 5)
)
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,44 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class vectorField;
object limestonePositions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
(
(0.0075 0.55 0.05)
(0.0125 0.55 0.05)
(0.0175 0.55 0.05)
(0.0225 0.55 0.05)
(0.0275 0.55 0.05)
(0.0325 0.55 0.05)
(0.0375 0.55 0.05)
(0.0425 0.55 0.05)
(0.0475 0.55 0.05)
(0.0075 0.45 0.05)
(0.0125 0.45 0.05)
(0.0175 0.45 0.05)
(0.0225 0.45 0.05)
(0.0275 0.45 0.05)
(0.0325 0.45 0.05)
(0.0375 0.45 0.05)
(0.0425 0.45 0.05)
(0.0475 0.45 0.05)
)
// ************************************************************************* //

View File

@ -0,0 +1,101 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object thermoCloud1Properties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Particle sub-models
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
WallInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
radiation off;
// Parcel basis type
parcelBasisType mass;
// Total mass to inject
massTotal massTotal [ 1 0 0 0 0] 1e-4;
// Minimum particle mass
minParticleMass minParticleMass [ 1 0 0 0 0] 1.0e-15;
// Parcel thermo properties
rho0 rho0 [ 1 -3 0 0 0] 2500;
T0 T0 [ 0 0 0 1 0] 300;
cp0 cp0 [ 0 2 -2 -1 0] 900;
epsilon0 epsilon0 [ 0 0 0 0 0] 1;
f0 f0 [ 0 0 0 0 0] 0.5;
// Coupling between particles and carrier phase via source terms
coupled true;
// Integer used to identify different parcel types
parcelTypeId 1;
interpolationSchemes
{
rho cell;
U cellPointFace;
mu cell;
T cell;
Cp cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
ManualInjectionCoeffs
{
injectionTime 0;
positionsFile thermoCloud1Positions;
U0 (0 0 0);
parcelPDF
{
pdfType RosinRammler;
RosinRammlerPDF
{
minValue 5.0e-06;
maxValue 500.0e-06;
d (50.0e-06);
n (0.5);
}
}
}
StandardWallInteractionCoeffs
{
e e [ 0 0 0 0 0] 1;
mu mu [ 0 0 0 0 0] 0;
}
RanzMarshallCoeffs
{
Pr Pr [ 0 0 0 0 0] 0.7;
}
// ************************************************************************* //

View File

@ -0,0 +1,32 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Thermophysical model
thermoType hThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>>>>>;
mixture air 1 28.9 1007 0 1.84e-05 0.7;
// ************************************************************************* //

View File

@ -0,0 +1,162 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Turbulence model selection
turbulenceModel kEpsilon;
// Do you wish to calculate turbulence?
turbulence on;
// Laminar model coefficients
laminarCoeffs
{
}
// Standard k-epsilon model coefficients
kEpsilonCoeffs
{
// Cmu
Cmu Cmu [0 0 0 0 0 0 0] 0.09;
// C1
C1 C1 [0 0 0 0 0 0 0] 1.44;
// C2
C2 C2 [0 0 0 0 0 0 0] 1.92;
// C3
C3 C3 [0 0 0 0 0 0 0] -0.33;
// alphah
alphah alphah [0 0 0 0 0 0 0] 1;
// alphak
alphak alphak [0 0 0 0 0 0 0] 1;
// alphaEps
alphaEps alphaEps [0 0 0 0 0 0 0] 0.76923;
}
// RNG k-epsilon model coefficients
RNGkEpsilonCoeffs
{
// Cmu
Cmu Cmu [0 0 0 0 0 0 0] 0.0845;
// C1
C1 C1 [0 0 0 0 0 0 0] 1.42;
// C2
C2 C2 [0 0 0 0 0 0 0] 1.68;
// C3
C3 C3 [0 0 0 0 0 0 0] -0.33;
// alphah
alphah alphah [0 0 0 0 0 0 0] 1;
// alphak
alphak alphaK [0 0 0 0 0 0 0] 1.39;
// alphaEps
alphaEps alphaEps [0 0 0 0 0 0 0] 1.39;
// eta0
eta0 eta0 [0 0 0 0 0 0 0] 4.38;
// beta
beta beta [0 0 0 0 0 0 0] 0.012;
}
// Launder-Sharma low Reynolds number k-epsilon model coefficients
LaunderSharmaKECoeffs
{
// Cmu
Cmu Cmu [0 0 0 0 0 0 0] 0.09;
// C1
C1 C1 [0 0 0 0 0 0 0] 1.44;
// C2
C2 C2 [0 0 0 0 0 0 0] 1.92;
// C3
C3 C3 [0 0 0 0 0 0 0] -0.33;
// alphah
alphah alphah [0 0 0 0 0 0 0] 1;
// alphak
alphak alphak [0 0 0 0 0 0 0] 1;
// alphaEps
alphaEps alphaEps [0 0 0 0 0 0 0] 0.76923;
}
// Launder-Reece-Rodi RSTM with wall functions model coefficients
LRRCoeffs
{
// Cmu
Cmu Cmu [0 0 0 0 0 0 0] 0.09;
// Clrr1
Clrr1 Clrr1 [0 0 0 0 0 0 0] 1.8;
// Clrr2
Clrr2 Clrr2 [0 0 0 0 0 0 0] 0.6;
// C1
C1 C1 [0 0 0 0 0 0 0] 1.44;
// C2
C2 C2 [0 0 0 0 0 0 0] 1.92;
// Cs
Cs Cs [0 0 0 0 0 0 0] 0.25;
// Ceps
Ceps Ceps [0 0 0 0 0 0 0] 0.15;
// alphah
alphah alphah [0 0 0 0 0 0 0] 1;
// alphaEps
alphaEps alphaEps [0 0 0 0 0 0 0] 0.76923;
// alphaR
alphaR alphaR [0 0 0 0 0 0 0] 1.22;
}
// Launder-Gibson RSTM with wall reflection and wall functions model coefficients
LaunderGibsonRSTMCoeffs
{
// Cmu
Cmu Cmu [0 0 0 0 0 0 0] 0.09;
// Clg1
Clg1 Clg1 [0 0 0 0 0 0 0] 1.8;
// Clg2
Clg2 Clg2 [0 0 0 0 0 0 0] 0.6;
// C1
C1 C1 [0 0 0 0 0 0 0] 1.44;
// C2
C2 C2 [0 0 0 0 0 0 0] 1.92;
// C1Ref
C1Ref C1Ref [0 0 0 0 0 0 0] 0.5;
// C2Ref
C2Ref C2Ref [0 0 0 0 0 0 0] 0.3;
// Cs
Cs Cs [0 0 0 0 0 0 0] 0.25;
// Ceps
Ceps Ceps [0 0 0 0 0 0 0] 0.15;
// alphah
alphah alphah [0 0 0 0 0 0 0] 1;
// alphaEps
alphaEps alphaEps [0 0 0 0 0 0 0] 0.76923;
// alphaR
alphaR alphaR [0 0 0 0 0 0 0] 1.22;
}
// Wall function coefficients
wallFunctionCoeffs
{
// kappa
kappa kappa [0 0 0 0 0 0 0] 0.4187;
// E
E E [0 0 0 0 0 0 0] 9;
}
// ************************************************************************* //

View File

@ -0,0 +1,80 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Foam Application Class
application rhoTurbThermoParcelFoam;
// Start point of run
startFrom latestTime;
// Calculation start time
startTime 0;
// End point of run
stopAt endTime;
// Calculation end time
endTime 0.5;
// Calculation time step
deltaT 1.0e-4;
// Type of write output control
writeControl adjustableRunTime;
// Interval with which the results are output
writeInterval 0.01;
// Limits number of time directories before overwriting
purgeWrite 0;
// Write Format
writeFormat ascii;
// Significant figures of written ASCII data
writePrecision 10;
// Write Compression
writeCompression uncompressed;
// Time directories name format
timeFormat general;
// Decimal precision of time directory names
timePrecision 6;
// Can parameters be modified during run time?
runTimeModifiable yes;
// Automatic adjustment of time step?
adjustTimeStep yes;
// maxCo
maxCo 0.2;
// maxDeltaT
maxDeltaT 1;
// ************************************************************************* //

View File

@ -0,0 +1,66 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
method metis;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (1 1 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
processorWeights
(
1
1
1
1
);
}
manualCoeffs
{
dataFile "";
}
distributed no;
roots
(
);
// ************************************************************************* //

View File

@ -0,0 +1,93 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Time derivative discretisation schemes
ddtSchemes
{
// Default scheme
default Euler;
}
// Gradient discretisation schemes
gradSchemes
{
// Default gradient scheme
default Gauss linear;
grad(p) Gauss linear;
}
// Convection discretisation schemes
divSchemes
{
// Default scheme
default none;
div(phi,U) Gauss upwind;
div(phid,p) Gauss upwind;
div(phiU,p) Gauss linear;
div(phi,h) Gauss upwind;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(U) Gauss linear;
div((muEff*dev2(grad(U).T()))) Gauss linear;
div(phi,Yi_h) Gauss upwind;
}
// Laplacian discretisation schemes
laplacianSchemes
{
// Default scheme
default Gauss linear corrected;
laplacian(muEff,U) Gauss linear corrected;
laplacian(mut,U) Gauss linear corrected;
laplacian(DkEff,k) Gauss linear corrected;
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
laplacian(DREff,R) Gauss linear corrected;
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
laplacian(alphaEff,h) Gauss linear corrected;
}
// Interpolation schemes
interpolationSchemes
{
// Default scheme
default linear;
}
// Surface normal gradient schemes
snGradSchemes
{
// Default scheme
default corrected;
}
// Calculation of flux
fluxRequired
{
// Create storage for flux for all solved variables?
default no;
p;
}
// ************************************************************************* //

View File

@ -0,0 +1,146 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
// Solver for the rho equation
rho PCG
{
preconditioner DIC;
tolerance 1e-05;
relTol 0;
};
// Solver for the U equation
U PBiCG
{
preconditioner DILU;
tolerance 1e-05;
relTol 0;
};
// Solver for the p equation
p PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
G PCG
{
preconditioner DIC;
tolerance 1e-05;
relTol 0;
};
Yi PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
CO2 PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
O2 PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
N2 PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
CH4 PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
H2 PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
H2O PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
CO PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
// Solver for the h equation
h PBiCG
{
preconditioner DILU;
tolerance 1e-05;
relTol 0;
};
// Solver for the R equation
R PBiCG
{
preconditioner DILU;
tolerance 1e-05;
relTol 0;
};
// Solver for the k equation
k PBiCG
{
preconditioner DILU;
tolerance 1e-05;
relTol 0;
};
// Solver for the epsilon equation
epsilon PBiCG
{
preconditioner DILU;
tolerance 1e-05;
relTol 0;
};
}
PISO
{
// Transonic?
transonic yes;
// Number of PISO correctors
nCorrectors 2;
// Number of non-orthogonal correctors
nNonOrthogonalCorrectors 0;
// momentumPredictor?
momentumPredictor yes;
}
// ************************************************************************* //