reactingEulerFoam: populationBalanceModel: Added fractal shape modelling support
This change adds representation of the shape of a dispersed phase. A
layer has been added to model the relationship between the
characteristic volume of a sizeGroup and its physical diameter.
Previously this relationship was represented by a constant form factor.
Currently, two shape models are available:
- spherical
- fractal (for modelling fractal agglomerates)
The latter introduces the average surface area to volume ratio, kappa,
of the entities in a size group as a secondary field-dependent internal
variable to the population balance equation, which makes the population
balance approach "quasi-"bivariate. From kappa and a constant mass
fractal dimension, a collisional diameter can be derived which affects
the coagulation rates computed by the following models:
- ballisticCollisions
- brownianCollisions
- DahnekeInterpolation
- turbulentShear
The fractal shape modelling also takes into account the effect of sintering
of primary particles on the surface area of the aggregate.
Further additions/changes:
- Time scale filtering for handling large drag and heat transfer
coefficients occurring for particles in the nanometre range
- Aerosol drag model based on Stokes drag with a Knudsen number based
correction (Cunningham correction)
- Reaction driven nucleation
- A complete redesign of the sizeDistribution functionObject
The functionality is demonstrated by a tutorial case simulating the
vapour phase synthesis of titania by titanium tetrachloride oxidation.
Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum Dresden -
Rossendorf (HZDR) and VTT Technical Research Centre of Finland Ltd.
This commit is contained in:
@ -32,20 +32,20 @@ gas
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f1 {d 1.0e-4; value 0 ;}
|
||||
f2 {d 1.2e-4; value 0 ;}
|
||||
f3 {d 1.44e-4; value 0 ;}
|
||||
f4 {d 1.728e-4; value 0 ;}
|
||||
f5 {d 2.074e-4; value 0 ;}
|
||||
f6 {d 2.49e-4; value 0 ;}
|
||||
f7 {d 2.99e-4; value 0 ;}
|
||||
f8 {d 3.6e-4; value 0 ;}
|
||||
f9 {d 4.3e-4; value 0 ;}
|
||||
f10 {d 5.16e-4; value 1 ;}
|
||||
f1 {dSph 1.0e-4; value 0 ;}
|
||||
f2 {dSph 1.2e-4; value 0 ;}
|
||||
f3 {dSph 1.44e-4; value 0 ;}
|
||||
f4 {dSph 1.728e-4; value 0 ;}
|
||||
f5 {dSph 2.074e-4; value 0 ;}
|
||||
f6 {dSph 2.49e-4; value 0 ;}
|
||||
f7 {dSph 2.99e-4; value 0 ;}
|
||||
f8 {dSph 3.6e-4; value 0 ;}
|
||||
f9 {dSph 4.3e-4; value 0 ;}
|
||||
f10 {dSph 5.16e-4; value 1 ;}
|
||||
);
|
||||
}
|
||||
|
||||
@ -66,27 +66,27 @@ gas2
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f11 {d 6.19e-4; value 1 ;}
|
||||
f12 {d 7.43e-4; value 0 ;}
|
||||
f13 {d 8.92e-4; value 0 ;}
|
||||
f14 {d 1.07e-3; value 0 ;}
|
||||
f15 {d 1.28e-3; value 0 ;}
|
||||
f16 {d 1.54e-3; value 0 ;}
|
||||
f17 {d 1.85e-3; value 0 ;}
|
||||
f18 {d 2.22e-3; value 0 ;}
|
||||
f19 {d 2.67e-3; value 0 ;}
|
||||
f20 {d 3.19e-3; value 0 ;}
|
||||
f21 {d 3.85e-3; value 0 ;}
|
||||
f22 {d 4.6e-3; value 0 ;}
|
||||
f23 {d 5.52e-3; value 0 ;}
|
||||
f24 {d 6.62e-3; value 0 ;}
|
||||
f25 {d 7.95e-3; value 0 ;}
|
||||
f26 {d 9.54e-3; value 0 ;}
|
||||
f27 {d 1.14e-2; value 0 ;}
|
||||
f11 {dSph 6.19e-4; value 1 ;}
|
||||
f12 {dSph 7.43e-4; value 0 ;}
|
||||
f13 {dSph 8.92e-4; value 0 ;}
|
||||
f14 {dSph 1.07e-3; value 0 ;}
|
||||
f15 {dSph 1.28e-3; value 0 ;}
|
||||
f16 {dSph 1.54e-3; value 0 ;}
|
||||
f17 {dSph 1.85e-3; value 0 ;}
|
||||
f18 {dSph 2.22e-3; value 0 ;}
|
||||
f19 {dSph 2.67e-3; value 0 ;}
|
||||
f20 {dSph 3.19e-3; value 0 ;}
|
||||
f21 {dSph 3.85e-3; value 0 ;}
|
||||
f22 {dSph 4.6e-3; value 0 ;}
|
||||
f23 {dSph 5.52e-3; value 0 ;}
|
||||
f24 {dSph 6.62e-3; value 0 ;}
|
||||
f25 {dSph 7.95e-3; value 0 ;}
|
||||
f26 {dSph 9.54e-3; value 0 ;}
|
||||
f27 {dSph 1.14e-2; value 0 ;}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -60,10 +60,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
volumeDensity_bulk.diameter.bubbles
|
||||
@ -73,10 +73,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349_bulk;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349_bulk;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
volumeDensity_wall.diameter.bubbles
|
||||
@ -86,10 +86,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349_wall;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349_wall;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
outflow
|
||||
|
||||
@ -29,22 +29,22 @@ air1
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f0{d 1.00e-3; value 0;}
|
||||
f1{d 1.08e-3; value 0;}
|
||||
f2{d 1.16e-3; value 0;}
|
||||
f3{d 1.25e-3; value 0;}
|
||||
f4{d 1.36e-3; value 0;}
|
||||
f5{d 1.46e-3; value 0;}
|
||||
f6{d 1.58e-3; value 0;}
|
||||
f7{d 1.71e-3; value 0;}
|
||||
f8{d 1.85e-3; value 0;}
|
||||
f9{d 2.00e-3; value 0;}
|
||||
f10{d 2.16e-3; value 0;}
|
||||
f11{d 2.33e-3; value 1.0;}
|
||||
f0{dSph 1.00e-3; value 0;}
|
||||
f1{dSph 1.08e-3; value 0;}
|
||||
f2{dSph 1.16e-3; value 0;}
|
||||
f3{dSph 1.25e-3; value 0;}
|
||||
f4{dSph 1.36e-3; value 0;}
|
||||
f5{dSph 1.46e-3; value 0;}
|
||||
f6{dSph 1.58e-3; value 0;}
|
||||
f7{dSph 1.71e-3; value 0;}
|
||||
f8{dSph 1.85e-3; value 0;}
|
||||
f9{dSph 2.00e-3; value 0;}
|
||||
f10{dSph 2.16e-3; value 0;}
|
||||
f11{dSph 2.33e-3; value 1.0;}
|
||||
);
|
||||
}
|
||||
|
||||
@ -59,20 +59,20 @@ air2
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f12{d 2.51e-3; value 0;}
|
||||
f13{d 2.72e-3; value 0.25;}
|
||||
f14{d 2.93e-3; value 0.5;}
|
||||
f15{d 3.17e-3; value 0.25 ;}
|
||||
f16{d 3.42e-3; value 0;}
|
||||
f17{d 3.70e-3; value 0;}
|
||||
f18{d 4.00e-3; value 0;}
|
||||
f19{d 4.32e-3; value 0;}
|
||||
f20{d 4.66e-3; value 0;}
|
||||
f21{d 5.03e-3; value 0;}
|
||||
f12{dSph 2.51e-3; value 0;}
|
||||
f13{dSph 2.72e-3; value 0.25;}
|
||||
f14{dSph 2.93e-3; value 0.5;}
|
||||
f15{dSph 3.17e-3; value 0.25 ;}
|
||||
f16{dSph 3.42e-3; value 0;}
|
||||
f17{dSph 3.70e-3; value 0;}
|
||||
f18{dSph 4.00e-3; value 0;}
|
||||
f19{dSph 4.32e-3; value 0;}
|
||||
f20{dSph 4.66e-3; value 0;}
|
||||
f21{dSph 5.03e-3; value 0;}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -104,20 +104,21 @@ functions
|
||||
);
|
||||
}
|
||||
|
||||
numberDensity.diameter.bubbles
|
||||
|
||||
numberDensity
|
||||
{
|
||||
type sizeDistribution;
|
||||
functionObjectLibs ("libreactingEulerFoamFunctionObjects.so");
|
||||
|
||||
writeControl runTime;
|
||||
writeInterval 10;
|
||||
log yes;
|
||||
writeControl outputTime;
|
||||
writeInterval 1;
|
||||
|
||||
functionType numberDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone zone;
|
||||
populationBalance bubbles;
|
||||
regionType cellZone;
|
||||
name zone;
|
||||
functionType number;
|
||||
coordinateType diameter;
|
||||
densityFunction yes;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -28,6 +28,7 @@ solvers
|
||||
nCorr 1;
|
||||
tolerance 1e-4;
|
||||
scale true;
|
||||
sourceUpdateInterval 1;
|
||||
solveOnFinalIterOnly true;
|
||||
}
|
||||
|
||||
|
||||
@ -29,32 +29,32 @@ air
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f0{d 1.00e-3; value 0;}
|
||||
f1{d 1.08e-3; value 0;}
|
||||
f2{d 1.16e-3; value 0;}
|
||||
f3{d 1.25e-3; value 0;}
|
||||
f4{d 1.36e-3; value 0;}
|
||||
f5{d 1.46e-3; value 0;}
|
||||
f6{d 1.58e-3; value 0;}
|
||||
f7{d 1.71e-3; value 0;}
|
||||
f8{d 1.85e-3; value 0;}
|
||||
f9{d 2.00e-3; value 0;}
|
||||
f10{d 2.16e-3; value 0;}
|
||||
f11{d 2.33e-3; value 0;}
|
||||
f12{d 2.51e-3; value 0;}
|
||||
f13{d 2.72e-3; value 0.25;}
|
||||
f14{d 2.93e-3; value 0.5;}
|
||||
f15{d 3.17e-3; value 0.25 ;}
|
||||
f16{d 3.42e-3; value 0;}
|
||||
f17{d 3.70e-3; value 0;}
|
||||
f18{d 4.00e-3; value 0;}
|
||||
f19{d 4.32e-3; value 0;}
|
||||
f20{d 4.66e-3; value 0;}
|
||||
f21{d 5.03e-3; value 0;}
|
||||
f0{dSph 1.00e-3; value 0;}
|
||||
f1{dSph 1.08e-3; value 0;}
|
||||
f2{dSph 1.16e-3; value 0;}
|
||||
f3{dSph 1.25e-3; value 0;}
|
||||
f4{dSph 1.36e-3; value 0;}
|
||||
f5{dSph 1.46e-3; value 0;}
|
||||
f6{dSph 1.58e-3; value 0;}
|
||||
f7{dSph 1.71e-3; value 0;}
|
||||
f8{dSph 1.85e-3; value 0;}
|
||||
f9{dSph 2.00e-3; value 0;}
|
||||
f10{dSph 2.16e-3; value 0;}
|
||||
f11{dSph 2.33e-3; value 0;}
|
||||
f12{dSph 2.51e-3; value 0;}
|
||||
f13{dSph 2.72e-3; value 0.25;}
|
||||
f14{dSph 2.93e-3; value 0.5;}
|
||||
f15{dSph 3.17e-3; value 0.25 ;}
|
||||
f16{dSph 3.42e-3; value 0;}
|
||||
f17{dSph 3.70e-3; value 0;}
|
||||
f18{dSph 4.00e-3; value 0;}
|
||||
f19{dSph 4.32e-3; value 0;}
|
||||
f20{dSph 4.66e-3; value 0;}
|
||||
f21{dSph 5.03e-3; value 0;}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -90,20 +90,20 @@ functions
|
||||
);
|
||||
}
|
||||
|
||||
numberDensity.diameter.bubbles
|
||||
numberDensity
|
||||
{
|
||||
type sizeDistribution;
|
||||
functionObjectLibs ("libreactingEulerFoamFunctionObjects.so");
|
||||
|
||||
writeControl runTime;
|
||||
writeInterval 10;
|
||||
log yes;
|
||||
writeControl outputTime;
|
||||
writeInterval 1;
|
||||
|
||||
functionType numberDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone zone;
|
||||
populationBalance bubbles;
|
||||
regionType cellZone;
|
||||
name zone;
|
||||
functionType number;
|
||||
coordinateType diameter;
|
||||
densityFunction yes;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -28,6 +28,7 @@ solvers
|
||||
nCorr 1;
|
||||
tolerance 1e-4;
|
||||
scale true;
|
||||
sourceUpdateInterval 1;
|
||||
solveOnFinalIterOnly true;
|
||||
}
|
||||
|
||||
|
||||
@ -32,37 +32,37 @@ gas
|
||||
{
|
||||
populationBalance bubbles;
|
||||
|
||||
formFactor 0.5235987756;
|
||||
shapeModel spherical;
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f1 {d 1.0e-4; value 0 ;}
|
||||
f2 {d 1.2e-4; value 0 ;}
|
||||
f3 {d 1.44e-4; value 0 ;}
|
||||
f4 {d 1.728e-4; value 0 ;}
|
||||
f5 {d 2.074e-4; value 0 ;}
|
||||
f6 {d 2.49e-4; value 0 ;}
|
||||
f7 {d 2.99e-4; value 0 ;}
|
||||
f8 {d 3.6e-4; value 1.0 ;}
|
||||
f9 {d 4.3e-4; value 0 ;}
|
||||
f10 {d 5.16e-4; value 0 ;}
|
||||
f11 {d 6.19e-4; value 0 ;}
|
||||
f12 {d 7.43e-4; value 0 ;}
|
||||
f13 {d 8.92e-4; value 0 ;}
|
||||
f14 {d 1.07e-3; value 0 ;}
|
||||
f15 {d 1.28e-3; value 0 ;}
|
||||
f16 {d 1.54e-3; value 0 ;}
|
||||
f17 {d 1.85e-3; value 0 ;}
|
||||
f18 {d 2.22e-3; value 0 ;}
|
||||
f19 {d 2.67e-3; value 0 ;}
|
||||
f20 {d 3.19e-3; value 0 ;}
|
||||
f21 {d 3.85e-3; value 0 ;}
|
||||
f22 {d 4.6e-3; value 0 ;}
|
||||
f23 {d 5.52e-3; value 0 ;}
|
||||
f24 {d 6.62e-3; value 0 ;}
|
||||
f25 {d 7.95e-3; value 0 ;}
|
||||
f26 {d 9.54e-3; value 0 ;}
|
||||
f27 {d 1.14e-2; value 0 ;}
|
||||
f1 {dSph 1.0e-4; value 0 ;}
|
||||
f2 {dSph 1.2e-4; value 0 ;}
|
||||
f3 {dSph 1.44e-4; value 0 ;}
|
||||
f4 {dSph 1.728e-4; value 0 ;}
|
||||
f5 {dSph 2.074e-4; value 0 ;}
|
||||
f6 {dSph 2.49e-4; value 0 ;}
|
||||
f7 {dSph 2.99e-4; value 0 ;}
|
||||
f8 {dSph 3.6e-4; value 1.0 ;}
|
||||
f9 {dSph 4.3e-4; value 0 ;}
|
||||
f10 {dSph 5.16e-4; value 0 ;}
|
||||
f11 {dSph 6.19e-4; value 0 ;}
|
||||
f12 {dSph 7.43e-4; value 0 ;}
|
||||
f13 {dSph 8.92e-4; value 0 ;}
|
||||
f14 {dSph 1.07e-3; value 0 ;}
|
||||
f15 {dSph 1.28e-3; value 0 ;}
|
||||
f16 {dSph 1.54e-3; value 0 ;}
|
||||
f17 {dSph 1.85e-3; value 0 ;}
|
||||
f18 {dSph 2.22e-3; value 0 ;}
|
||||
f19 {dSph 2.67e-3; value 0 ;}
|
||||
f20 {dSph 3.19e-3; value 0 ;}
|
||||
f21 {dSph 3.85e-3; value 0 ;}
|
||||
f22 {dSph 4.6e-3; value 0 ;}
|
||||
f23 {dSph 5.52e-3; value 0 ;}
|
||||
f24 {dSph 6.62e-3; value 0 ;}
|
||||
f25 {dSph 7.95e-3; value 0 ;}
|
||||
f26 {dSph 9.54e-3; value 0 ;}
|
||||
f27 {dSph 1.14e-2; value 0 ;}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -60,10 +60,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
volumeDensity_bulk.diameter.bubbles
|
||||
@ -73,10 +73,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349_bulk;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349_bulk;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
volumeDensity_wall.diameter.bubbles
|
||||
@ -86,10 +86,10 @@ functions
|
||||
writeControl runTime;
|
||||
writeInterval 0.5;
|
||||
log yes;
|
||||
functionType volumeDensity;
|
||||
abszissaType diameter;
|
||||
selectionMode cellZone;
|
||||
cellZone x349_wall;
|
||||
functionType volume;
|
||||
coordinateType diameter;
|
||||
regionType cellZone;
|
||||
name x349_wall;
|
||||
populationBalance bubbles;
|
||||
}
|
||||
outflow
|
||||
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object Ar.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 9.759118E-01;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 9.759118E-01;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object Cl2.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object N2.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object O2.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 1.551577E-02;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 1.551577E-02;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,57 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 296;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 296;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type fixedProfile;
|
||||
profile csvFile;
|
||||
|
||||
profileCoeffs
|
||||
{
|
||||
nHeaderLine 0; // Number of header lines
|
||||
refColumn 0; // Reference column index
|
||||
componentColumns (1); // Component column indices
|
||||
separator " "; // Optional (defaults to ",")
|
||||
mergeSeparators yes; // Merge multiple separators
|
||||
outOfBounds clamp; // Optional out-of-bounds handling
|
||||
file "validation/exptData/wallTemperature";
|
||||
interpolationScheme linear; // Optional interpolation scheme
|
||||
}
|
||||
direction (1 0 0);
|
||||
origin 0;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,57 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 296;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 296;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type fixedProfile;
|
||||
profile csvFile;
|
||||
|
||||
profileCoeffs
|
||||
{
|
||||
nHeaderLine 0; // Number of header lines
|
||||
refColumn 0; // Reference column index
|
||||
componentColumns (1); // Component column indices
|
||||
separator " "; // Optional (defaults to ",")
|
||||
mergeSeparators yes; // Merge multiple separators
|
||||
outOfBounds clamp; // Optional out-of-bounds handling
|
||||
file "validation/exptData/wallTemperature";
|
||||
interpolationScheme linear; // Optional interpolation scheme
|
||||
}
|
||||
direction (1 0 0);
|
||||
origin 0;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object TiCl4.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 8.572434E-03;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 8.572434E-03;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object TiO2.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 1.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 1.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object TiO2.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,41 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volVectorField;
|
||||
object U.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -1 0 0 0 0];
|
||||
|
||||
internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type slip;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,44 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volVectorField;
|
||||
object U.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -1 0 0 0 0];
|
||||
|
||||
internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type flowRateInletVelocity;
|
||||
massFlowRate 2.173893E-07;
|
||||
rho thermo:rho.vapor;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type slip;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,42 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object alpha.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,42 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object alpha.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 1.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 1.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object f.particles.aggregates;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 1.0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 1.0;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,44 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object p;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [1 -1 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 1e5;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,47 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object p_rgh;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [1 -1 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 1e5;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type prghTotalPressure;
|
||||
U U.vapor;
|
||||
rho thermo:rho.vapor;
|
||||
p0 uniform 1e5;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
wall
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,17 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
# Set application name
|
||||
application=$(getApplication)
|
||||
|
||||
m4 system/blockMeshDict.m4 > system/blockMeshDict
|
||||
runApplication blockMesh
|
||||
runApplication topoSet
|
||||
runApplication $application
|
||||
|
||||
( cd validation && ./createGraphs )
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -0,0 +1,42 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object chemistryProperties.gas;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
chemistryType
|
||||
{
|
||||
solver EulerImplicit;
|
||||
}
|
||||
|
||||
chemistry on;
|
||||
|
||||
initialChemicalTimeStep 1e-07;
|
||||
|
||||
EulerImplicitCoeffs
|
||||
{
|
||||
cTauChem 1;
|
||||
equilibriumRateLimiter off;
|
||||
}
|
||||
|
||||
odeCoeffs
|
||||
{
|
||||
solver Rosenbrock43;
|
||||
absTol 1e-8;
|
||||
relTol 0.01;
|
||||
}
|
||||
|
||||
#include "reactions.vapor"
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object combustionProperties.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
combustionModel laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,23 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
location "constant";
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
|
||||
value (0 0 0);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,207 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object phaseProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
type populationBalanceTwoPhaseSystem;
|
||||
|
||||
phases (particles vapor);
|
||||
|
||||
populationBalances (aggregates);
|
||||
|
||||
particles
|
||||
{
|
||||
type multiComponentPhaseModel;
|
||||
|
||||
diameterModel velocityGroup;
|
||||
|
||||
velocityGroupCoeffs
|
||||
{
|
||||
populationBalance aggregates;
|
||||
|
||||
shapeModel fractal;
|
||||
|
||||
fractalCoeffs
|
||||
{
|
||||
sinteringModel KochFriedlander;
|
||||
|
||||
KochFriedlanderCoeffs
|
||||
{
|
||||
Cs 8.3e24;
|
||||
n 4.0;
|
||||
m 1.0;
|
||||
Ta 3700.0;
|
||||
}
|
||||
}
|
||||
|
||||
sizeGroups
|
||||
(
|
||||
f01{dSph 4.000E-10; value 1.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f02{dSph 5.769E-10; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f03{dSph 8.320E-10; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f04{dSph 1.200E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f05{dSph 1.731E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f06{dSph 2.496E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f07{dSph 3.600E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f08{dSph 5.192E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f09{dSph 7.488E-09; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f10{dSph 1.080E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f11{dSph 1.558E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f12{dSph 2.246E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f13{dSph 3.240E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f14{dSph 4.673E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f15{dSph 6.739E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f16{dSph 9.720E-08; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f17{dSph 1.402E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f18{dSph 2.022E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f19{dSph 2.916E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f20{dSph 4.206E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f21{dSph 6.066E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f22{dSph 8.748E-07; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f23{dSph 1.262E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f24{dSph 1.820E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f25{dSph 2.624E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f26{dSph 3.785E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f27{dSph 5.459E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f28{dSph 7.873E-06; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
f29{dSph 1.136E-05; value 0.0; kappa 1.5E+10; Df 1.8; alphaC 1;}
|
||||
);
|
||||
}
|
||||
|
||||
Sct 1.0;
|
||||
|
||||
residualAlpha 1e-15;
|
||||
}
|
||||
|
||||
vapor
|
||||
{
|
||||
type reactingPhaseModel;
|
||||
|
||||
diameterModel constant;
|
||||
constantCoeffs
|
||||
{
|
||||
d 1;
|
||||
}
|
||||
|
||||
Sct 1.0;
|
||||
|
||||
residualAlpha 1e-5;
|
||||
}
|
||||
|
||||
populationBalanceCoeffs
|
||||
{
|
||||
aggregates
|
||||
{
|
||||
continuousPhase vapor;
|
||||
|
||||
coalescenceModels
|
||||
(
|
||||
DahnekeInterpolation{}
|
||||
);
|
||||
|
||||
binaryBreakupModels
|
||||
();
|
||||
|
||||
breakupModels
|
||||
();
|
||||
|
||||
driftModels
|
||||
();
|
||||
|
||||
nucleationModels
|
||||
(
|
||||
reactionDriven
|
||||
{
|
||||
nucleationDiameter 4E-10;
|
||||
velocityGroup particles;
|
||||
reactingPhase vapor;
|
||||
specie TiO2;
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
blending
|
||||
{
|
||||
default
|
||||
{
|
||||
type none;
|
||||
continuousPhase vapor;
|
||||
}
|
||||
}
|
||||
|
||||
interfaceCompression
|
||||
();
|
||||
|
||||
surfaceTension
|
||||
();
|
||||
|
||||
aspectRatio
|
||||
();
|
||||
|
||||
drag
|
||||
(
|
||||
(particles in vapor)
|
||||
{
|
||||
type timeScaleFiltered;
|
||||
minRelaxTime 1e-4;
|
||||
|
||||
dragModel
|
||||
{
|
||||
type aerosolDrag;
|
||||
|
||||
swarmCorrection
|
||||
{
|
||||
type none;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
virtualMass
|
||||
();
|
||||
|
||||
heatTransfer
|
||||
(
|
||||
(particles in vapor)
|
||||
{
|
||||
type timeScaleFiltered;
|
||||
minRelaxTime 1e-4;
|
||||
|
||||
heatTransferModel
|
||||
{
|
||||
type constantNu;
|
||||
Nu 1;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
phaseTransfer
|
||||
();
|
||||
|
||||
lift
|
||||
();
|
||||
|
||||
wallLubrication
|
||||
();
|
||||
|
||||
turbulentDispersion
|
||||
();
|
||||
|
||||
// Minimum allowable pressure
|
||||
pMin 10000;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,39 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Reference:
|
||||
Akhtar, M. K., Xiong, Y., & Pratsinis, S. E. (1991).
|
||||
Vapor synthesis of titania powder by titanium tetrachloride oxidation.
|
||||
AIChE Journal, 37(10), 1561-1570.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object reactions.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
reactions
|
||||
{
|
||||
oxidation
|
||||
{
|
||||
type irreversibleArrheniusReaction;
|
||||
|
||||
reaction "O2^0 + TiCl4 = TiO2 + 2Cl2";
|
||||
|
||||
A 8.29e4;
|
||||
beta 0.0;
|
||||
Ta 10680;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,156 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object thermo.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
species
|
||||
(
|
||||
O2
|
||||
TiCl4
|
||||
TiO2
|
||||
Cl2
|
||||
Ar
|
||||
N2
|
||||
);
|
||||
|
||||
Ar
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 39.948;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 200;
|
||||
Thigh 6000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 2.50000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 -7.4537500e+02 4.37967491e+00 );
|
||||
lowCpCoeffs ( 2.50000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 -7.4537500e+02 4.37967491e+00 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 2.038169524e-06;
|
||||
Ts 165;
|
||||
}
|
||||
}
|
||||
|
||||
N2
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 28.0134;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 0;
|
||||
Thigh 5000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 2.92664 0.00148798 -5.68476e-07 1.0097e-10 -6.75335e-15 -922.798 5.98053 );
|
||||
lowCpCoeffs ( 3.29868 0.00140824 -3.96322e-06 5.64152e-09 -2.44485e-12 -1020.9 3.95037 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 1.406732195e-06;
|
||||
Ts 111;
|
||||
}
|
||||
}
|
||||
|
||||
O2
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 31.99825;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 200;
|
||||
Thigh 6000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 3.66096083e+00 6.56365523e-04 -1.41149485e-07 2.05797658e-11 -1.29913248e-15 -1.21597725e+03 3.41536184e+00 );
|
||||
lowCpCoeffs ( 3.78245636e+00 -2.99673415e-03 9.84730200e-06 -9.68129508e-09 3.24372836e-12 -1.06394356e+03 3.65767573e+00 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 1.6934113e-06;
|
||||
Ts 127;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TiCl4
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 189.6908;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 280;
|
||||
Thigh 5000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 1.71426430e+01 1.09370870e-03 -1.06903110e-09 2.66167570e-13 -2.27944800e-17 -1.01880270e+05 -6.76401420e+01 );
|
||||
lowCpCoeffs ( 1.70660420e+01 1.57771680e-03 -1.08703760e-06 1.03903080e-09 -3.60225300e-13 -1.01871340e+05 -6.73082280e+01 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 1.6934113e-06; // Taken from oxygen
|
||||
Ts 127;
|
||||
}
|
||||
}
|
||||
|
||||
TiO2
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 79.87880;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 280;
|
||||
Thigh 5000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 6.84891510e+00 4.24634610e-03 -3.00889840e-06 1.06025190e-09 -1.43795970e-13 -1.15992460e+05 -3.45141060e+01 );
|
||||
lowCpCoeffs ( -1.61175170e-01 3.79666600e-02 -6.51547500e-05 5.25521360e-08 -1.62000510e-11 -1.14788970e+05 -1.88740350e+00 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 1.6934113e-06; // Taken from oxygen
|
||||
Ts 127;
|
||||
}
|
||||
}
|
||||
|
||||
Cl2
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 35.45270;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 200;
|
||||
Thigh 6000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 2.94658358e+00 -3.85985408e-04 1.36139388e-07 -2.17032923e-11 1.28751025e-15 1.36970327e+04 3.11330136e+00 );
|
||||
lowCpCoeffs ( 2.26062480e+00 1.54154399e-03 -6.80283622e-07 -1.59972975e-09 1.15416636e-12 1.38552986e+04 6.57020799e+00 );
|
||||
}
|
||||
transport
|
||||
{
|
||||
As 1.6934113e-06; // Taken from oxygen
|
||||
Ts 127;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,59 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object thermophysicalProperties.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoThermo;
|
||||
mixture multiComponentMixture;
|
||||
transport const;
|
||||
thermo janaf;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleInternalEnergy;
|
||||
}
|
||||
|
||||
species (TiO2);
|
||||
|
||||
inertSpecie TiO2;
|
||||
|
||||
TiO2
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 79.87880;
|
||||
}
|
||||
equationOfState
|
||||
{
|
||||
rho 4230;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Tlow 280;
|
||||
Thigh 5000;
|
||||
Tcommon 1000;
|
||||
highCpCoeffs ( 6.84891510e+00 4.24634610e-03 -3.00889840e-06 1.06025190e-09 -1.43795970e-13 -1.15992460e+05 -3.45141060e+01 );
|
||||
lowCpCoeffs ( -1.61175170e-01 3.79666600e-02 -6.51547500e-05 5.25521360e-08 -1.62000510e-11 -1.14788970e+05 -1.88740350e+00 ); // Check heat capacities
|
||||
}
|
||||
transport
|
||||
{
|
||||
mu 1e-7;
|
||||
Pr 8.0e-6;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,34 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object thermophysicalProperties.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoThermo;
|
||||
mixture multiComponentMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
equationOfState perfectGas;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
inertSpecie Ar;
|
||||
|
||||
#include "$FOAM_CASE/constant/thermo.vapor"
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object turbulenceProperties.particles;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object turbulenceProperties.vapor;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,136 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// General m4 macros
|
||||
|
||||
changecom(//)changequote([,])
|
||||
define(calc, [esyscmd(perl -e 'print ($1)')])
|
||||
define(VCOUNT, 0)
|
||||
define(vlabel, [[// ]Vertex $1 = VCOUNT define($1, VCOUNT)define([VCOUNT], incr(VCOUNT))])
|
||||
define(pi, 3.1415926536)
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// User-defined parameters
|
||||
|
||||
convertToMeters 1;
|
||||
|
||||
// Pipe radius (z-axis)
|
||||
define(radius, 0.015875)
|
||||
|
||||
// Pipe length (x-axis)
|
||||
define(length, 0.44)
|
||||
|
||||
// Center (wedge) angle
|
||||
define(angle, 1)
|
||||
|
||||
// Axis origin
|
||||
define(x0, 0.0)
|
||||
define(y0, 0.0)
|
||||
define(z0, 0.0)
|
||||
|
||||
// Number of cells
|
||||
define(nx, 220)
|
||||
define(ny, 1)
|
||||
define(nz, 16)
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// Derived parameters
|
||||
|
||||
define(deg,angle/2)
|
||||
define(zr,calc(z0 + (radius*cos((pi/180)*deg))))
|
||||
define(yp,calc(y0 + (radius*sin((pi/180)*deg))))
|
||||
define(ym,calc(y0 - (radius*sin((pi/180)*deg))))
|
||||
define(xl,calc(x0 + length))
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// Parametric description
|
||||
|
||||
vertices
|
||||
(
|
||||
(x0 y0 z0)
|
||||
(xl y0 z0)
|
||||
(xl y0 z0)
|
||||
(x0 y0 z0)
|
||||
(x0 ym zr)
|
||||
(xl ym zr)
|
||||
(xl yp zr)
|
||||
(x0 yp zr)
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 1 0 4 5 6 7) (nx ny nz) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
();
|
||||
|
||||
boundary
|
||||
(
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 4 7 0)
|
||||
);
|
||||
}
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(1 1 6 5)
|
||||
);
|
||||
}
|
||||
walls
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(4 5 6 7)
|
||||
);
|
||||
}
|
||||
front
|
||||
{
|
||||
type wedge;
|
||||
faces
|
||||
(
|
||||
(0 1 5 4)
|
||||
);
|
||||
}
|
||||
back
|
||||
{
|
||||
type wedge;
|
||||
faces
|
||||
(
|
||||
(0 7 6 1)
|
||||
);
|
||||
}
|
||||
axis
|
||||
{
|
||||
type empty;
|
||||
faces
|
||||
(
|
||||
(0 0 1 1)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
(
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,80 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
application reactingTwoPhaseEulerFoam;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 10;
|
||||
|
||||
deltaT 1e-4;
|
||||
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 1;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 9;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 8;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
maxCo 0.8;
|
||||
|
||||
maxDeltaT 1e-3;
|
||||
|
||||
functions
|
||||
{
|
||||
#includeFunc singleGraph
|
||||
|
||||
numberConcentration
|
||||
{
|
||||
type sizeDistribution;
|
||||
functionObjectLibs ("libreactingEulerFoamFunctionObjects.so");
|
||||
|
||||
writeControl outputTime;
|
||||
writeInterval 1;
|
||||
log yes;
|
||||
|
||||
regionType cellZone;
|
||||
name outlet;
|
||||
|
||||
populationBalance aggregates;
|
||||
functionType number;
|
||||
coordinateType projectedAreaDiameter;
|
||||
densityFunction yes;
|
||||
normalize yes;
|
||||
geometric yes;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,66 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
|
||||
"div\(phi,alpha.*\)" Gauss vanLeer;
|
||||
"div\(phir,alpha.*\)" Gauss vanLeer;
|
||||
|
||||
"div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1;
|
||||
"div\(phi.*,U.*\)" Gauss limitedLinearV 1;
|
||||
|
||||
"div\(alphaRhoPhi.*,(k|epsilon|h|e).*\)" Gauss limitedLinear 1;
|
||||
"div\(alphaRhoPhi.*,K.*\)" Gauss limitedLinear 1;
|
||||
"div\(alphaRhoPhi.*,Y.*\)" Gauss limitedLinear 1;
|
||||
"div\(alphaPhi.*,p\)" Gauss limitedLinear 1;
|
||||
|
||||
"div\(alphaRhoPhi.*,f.*\)" Gauss upwind;
|
||||
"div\(fAlphaRhoPhi.*,kappa.*\)" Gauss limitedLinear 1;
|
||||
|
||||
"div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
|
||||
fi upwind alphaRhoPhi.particles;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,97 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
"alpha.*"
|
||||
{
|
||||
nAlphaCorr 1;
|
||||
nAlphaSubCycles 1;
|
||||
}
|
||||
|
||||
aggregates
|
||||
{
|
||||
nCorr 1;
|
||||
tolerance 1e-4;
|
||||
scale true;
|
||||
sourceUpdateInterval 10;
|
||||
solveOnFinalIterOnly false;
|
||||
}
|
||||
|
||||
p_rgh
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-7;
|
||||
relTol 0;
|
||||
maxIter 20;
|
||||
}
|
||||
|
||||
p_rghFinal
|
||||
{
|
||||
$p_rgh;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
"(h|e).*"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-7;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
maxIter 10;
|
||||
}
|
||||
|
||||
"(k|epsilon).*"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-5;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
}
|
||||
|
||||
"(Yi|f|kappa).*"
|
||||
{
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-7;
|
||||
relTol 0;
|
||||
residualAlpha 1e-5;
|
||||
}
|
||||
}
|
||||
|
||||
PIMPLE
|
||||
{
|
||||
nOuterCorrectors 1;
|
||||
nCorrectors 1;
|
||||
nEnergyCorrectors 1;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
faceMomentum yes;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
equations
|
||||
{
|
||||
".*" 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,37 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Description
|
||||
Writes graph data for specified fields along a line, specified by start
|
||||
and end points.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
start (0 0 1e-3);
|
||||
end (0.44 0 1e-3);
|
||||
fields
|
||||
(
|
||||
TiCl4.vapor
|
||||
O2.vapor
|
||||
Cl2.vapor
|
||||
alpha.particles
|
||||
);
|
||||
|
||||
// Sampling and I/O settings
|
||||
#includeEtc "caseDicts/postProcessing/graphs/sampleDict.cfg"
|
||||
|
||||
// Override settings here, e.g.
|
||||
setConfig
|
||||
{
|
||||
type lineCell;
|
||||
axis x; // y, z, xyz
|
||||
}
|
||||
|
||||
// Must be last entry
|
||||
#includeEtc "caseDicts/postProcessing/graphs/graph.cfg"
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,44 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Version: dev
|
||||
\\/ M anipulation |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name outlet;
|
||||
type cellSet;
|
||||
action new;
|
||||
source cylinderToCell;
|
||||
sourceInfo
|
||||
{
|
||||
p1 (0.435 0 0);
|
||||
p2 (0.44 0 0);
|
||||
radius 0.015875;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name outlet;
|
||||
type cellZoneSet;
|
||||
action new;
|
||||
source setToCellZone;
|
||||
sourceInfo
|
||||
{
|
||||
set outlet;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,49 @@
|
||||
#!/bin/sh
|
||||
|
||||
if ! which gnuplot > /dev/null 2>&1
|
||||
then
|
||||
echo 'gnuplot not found - skipping graph creation' >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
gnuplot<<EOF
|
||||
set terminal postscript eps color enhanced font "Helvetica,20"
|
||||
set output '../species.eps'
|
||||
|
||||
set xlabel 'l (m)'
|
||||
set ylabel 'Y (-)'
|
||||
set y2label '{/Symbol a} (-)'
|
||||
set ytics nomirror
|
||||
set y2tics nomirror
|
||||
set key center
|
||||
|
||||
file = system("ls ../postProcessing/singleGraph/$(foamListTimes -case .. | tail -1)/*.xy")
|
||||
|
||||
plot file u 1:2 w l t 'TiCl4',\
|
||||
file u 1:3 w l t 'O2',\
|
||||
file u 1:4 w l t 'Cl2',\
|
||||
file u 1:5 axis x1y2 w l t '{/Symbol a}_{particles}'
|
||||
EOF
|
||||
|
||||
gnuplot<<EOF
|
||||
set terminal postscript eps color enhanced font "Helvetica,20"
|
||||
set output '../sizeDistribution.eps'
|
||||
|
||||
set xlabel 'Mobility diameter ({/Symbol m}m)'
|
||||
set ylabel 'N_i/N_t/{/Symbol D}ln d'
|
||||
set y2label '{/Symbol k} (m^{-1})'
|
||||
set logscale xyy2
|
||||
set tics format '%1.e'
|
||||
set ytics nomirror
|
||||
set y2tics nomirror
|
||||
set xrange [1e-3:1]
|
||||
set yrange [1e-3:3]
|
||||
|
||||
result = system("ls ../postProcessing/numberConcentration/$(foamListTimes -case .. | tail -1)/numberConcentration.dat")
|
||||
|
||||
plot result u (\$3/1e-6):4 w lp t 'Size distribution',\
|
||||
result u (\$3/1e-6):(\$2/\$1) axis x1y2 w l t '{/Symbol k}',\
|
||||
result u (\$3/1e-6):(6./((6./pi*\$1)**(1./3.))) axis x1y2 w l t '{/Symbol k} lower bound'
|
||||
EOF
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -0,0 +1,49 @@
|
||||
-0.21 296
|
||||
-0.187434555 302.6612223
|
||||
-0.167539267 316.935962
|
||||
-0.143455497 345.5480682
|
||||
-0.126701571 371.7970557
|
||||
-0.114136126 412.4168107
|
||||
-0.097382199 481.7279992
|
||||
-0.080628272 563.0009102
|
||||
-0.061780105 644.2654709
|
||||
-0.041884817 725.5258565
|
||||
-0.021989529 806.7862421
|
||||
0.00104712 897.6034804
|
||||
0.02408377 1005.16713
|
||||
0.043979058 1091.212205
|
||||
0.069109948 1174.844059
|
||||
0.094240838 1270.437636
|
||||
0.119371728 1327
|
||||
0.145549738 1365.926835
|
||||
0.171727749 1368.214802
|
||||
0.197905759 1370.502768
|
||||
0.22408377 1377.575424
|
||||
0.24921466 1377.475221
|
||||
0.27539267 1379.763187
|
||||
0.30052356 1382.055329
|
||||
0.32460733 1379.566956
|
||||
0.35078534 1379.462578
|
||||
0.37382199 1357.839625
|
||||
0.4 1340.988836
|
||||
0.42617801 1283.46819
|
||||
0.45026178 1180.501349
|
||||
0.476439791 1065.564435
|
||||
0.504712042 929.08807
|
||||
0.527748691 842.8718154
|
||||
0.553926702 773.389447
|
||||
0.579057592 727.8346986
|
||||
0.606282723 687.056289
|
||||
0.64921466 643.8229081
|
||||
0.692146597 610.1589051
|
||||
0.729842932 571.7310888
|
||||
0.771727749 535.6789165
|
||||
0.806282723 504.440659
|
||||
0.859685864 461.1655269
|
||||
0.906806283 429.8771679
|
||||
0.952879581 405.7700176
|
||||
1.009424084 369.6593936
|
||||
1.060732984 340.7466787
|
||||
1.12565445 316.5643762
|
||||
1.17382199 304.4105981
|
||||
1.31 296
|
||||
Reference in New Issue
Block a user