reactingTwoPhaseEulerFoam: Significantly improved handling of the particle pressure
In order to improve stability and robustness of fluidised bed cases the semi-implicit treatment of the particle pressure (pPrime) is now applied within the time-step sub-cycling along with the phase differential flux update. This allows the simulations to be performed reliably at a significantly increased maximum Courant number (up to 5 for some cases) without introducing chequerboarding patterns in regions of low particle phase fraction which occurred with the previous algorithm. The fluidisedBed tutorial has been updated to be more representative of real bubbling bed cases and to demonstrate the new pPrime functionality. Developed in collaboration with Timo Niemi, VTT.
This commit is contained in:
@ -35,7 +35,10 @@ boundaryField
|
||||
|
||||
walls
|
||||
{
|
||||
type zeroGradient;
|
||||
type JohnsonJacksonParticleTheta;
|
||||
restitutionCoefficient 0.8;
|
||||
specularityCoefficient 0.01;
|
||||
value uniform 1e-4;
|
||||
}
|
||||
|
||||
frontAndBackPlanes
|
||||
|
||||
@ -22,17 +22,17 @@ boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type interstitialInletVelocity;
|
||||
inletVelocity uniform (0 0.25 0);
|
||||
alpha alpha.air;
|
||||
value $internalField;
|
||||
type interstitialInletVelocity;
|
||||
inletVelocity uniform (0 0.25 0);
|
||||
alpha alpha.air;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type pressureInletOutletVelocity;
|
||||
phi phi.air;
|
||||
value $internalField;
|
||||
type pressureInletOutletVelocity;
|
||||
phi phi.air;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
walls
|
||||
@ -42,7 +42,7 @@ boundaryField
|
||||
|
||||
frontAndBackPlanes
|
||||
{
|
||||
type empty;
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -22,25 +22,26 @@ boundaryField
|
||||
{
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
walls
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
type JohnsonJacksonParticleSlip;
|
||||
specularityCoefficient 0.01;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
frontAndBackPlanes
|
||||
{
|
||||
type empty;
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -6,6 +6,8 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication setFields
|
||||
runApplication $(getApplication)
|
||||
runApplication decomposePar
|
||||
runParallel $(getApplication)
|
||||
runApplication reconstructPar
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -36,16 +36,16 @@ RAS
|
||||
viscosityModel Gidaspow;
|
||||
conductivityModel Gidaspow;
|
||||
granularPressureModel Lun;
|
||||
frictionalStressModel JohnsonJackson;
|
||||
frictionalStressModel JohnsonJacksonSchaeffer;
|
||||
radialModel SinclairJackson;
|
||||
|
||||
JohnsonJacksonCoeffs
|
||||
JohnsonJacksonSchaefferCoeffs
|
||||
{
|
||||
Fr 0.05;
|
||||
eta 2;
|
||||
p 5;
|
||||
phi 28.5;
|
||||
alphaDeltaMin 0.05;
|
||||
alphaDeltaMin 0.01;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -25,15 +25,15 @@ stopAt endTime;
|
||||
|
||||
endTime 2;
|
||||
|
||||
deltaT 0.0002;
|
||||
deltaT 2e-4;
|
||||
|
||||
writeControl runTime;
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 0.01;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
writeFormat binary;
|
||||
|
||||
writePrecision 6;
|
||||
|
||||
@ -45,11 +45,11 @@ timePrecision 6;
|
||||
|
||||
runTimeModifiable on;
|
||||
|
||||
adjustTimeStep no;
|
||||
adjustTimeStep yes;
|
||||
|
||||
maxCo 0.9;
|
||||
maxCo 2;
|
||||
|
||||
maxDeltaT 1e-05;
|
||||
maxDeltaT 0.01;
|
||||
|
||||
functions
|
||||
{
|
||||
|
||||
@ -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 dictionary;
|
||||
object decomposeParDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
/*
|
||||
Main methods are:
|
||||
1) Geometric: "simple"; "hierarchical", with ordered sorting, e.g. xyz, yxz
|
||||
2) Scotch: "scotch", when running in serial; "ptscotch", running in parallel
|
||||
*/
|
||||
|
||||
method hierarchical;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
n (1 4 1); // total must match numberOfSubdomains
|
||||
delta 0.001;
|
||||
}
|
||||
|
||||
hierarchicalCoeffs
|
||||
{
|
||||
n (1 4 1); // total must match numberOfSubdomains
|
||||
delta 0.001;
|
||||
order xyz;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -20,11 +20,14 @@ solvers
|
||||
"alpha.*"
|
||||
{
|
||||
nAlphaCorr 1;
|
||||
nAlphaSubCycles 2;
|
||||
nAlphaSubCycles 3;
|
||||
implicitPhasePressure yes;
|
||||
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
extremaCoeff 1;
|
||||
|
||||
solver PBiCGStab;
|
||||
preconditioner DIC;
|
||||
|
||||
tolerance 1e-9;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
@ -60,12 +63,13 @@ solvers
|
||||
tolerance 1e-6;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
maxIter 10;
|
||||
}
|
||||
|
||||
"Theta.*"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
@ -73,8 +77,8 @@ solvers
|
||||
|
||||
"(k|epsilon).*"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-5;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
@ -84,9 +88,9 @@ solvers
|
||||
PIMPLE
|
||||
{
|
||||
nOuterCorrectors 3;
|
||||
nCorrectors 1;
|
||||
nCorrectors 2;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
faceMomentum yes;
|
||||
faceMomentum no;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
|
||||
Reference in New Issue
Block a user