rhoPimpleFoam: Added run-time selectable LTS support replacing rhoLTSPimpleFoam

Select LTS via the ddtScheme:

        ddtSchemes
        {
            default         localEuler rDeltaT;
        }
This commit is contained in:
Henry Weller
2015-06-27 22:08:43 +01:00
parent 60cffb2fc3
commit 4180b6857d
37 changed files with 189 additions and 1327 deletions

View File

@ -1,54 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 293;
boundaryField
{
front
{
type zeroGradient;
}
back
{
type zeroGradient;
}
walls
{
type zeroGradient;
}
porosityWall
{
type zeroGradient;
}
inlet
{
type fixedValue;
value $internalField;
}
outlet
{
type inletOutlet;
value $internalField;
inletValue $internalField;
}
}
// ************************************************************************* //

View File

@ -1,57 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (47.8 0 0);
boundaryField
{
front
{
type fixedValue;
value uniform (0 0 0);
}
back
{
type fixedValue;
value uniform (0 0 0);
}
walls
{
type fixedValue;
value uniform (0 0 0);
}
porosityWall
{
type slip;
value uniform (0 0 0);
}
inlet
{
type flowRateInletVelocity;
massFlowRate constant 0.1;
value uniform (0 0 0);
}
outlet
{
type fluxCorrectedVelocity; //inletOutlet;
value uniform (0 0 0);
inletValue uniform (0 0 0);
}
}
// ************************************************************************* //

View File

@ -1,57 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object alphat;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
front
{
type compressible::alphatWallFunction;
value uniform 0;
}
back
{
type compressible::alphatWallFunction;
value uniform 0;
}
walls
{
type compressible::alphatWallFunction;
value uniform 0;
}
porosityWall
{
type compressible::alphatWallFunction;
value uniform 0;
}
inlet
{
type calculated;
value uniform 0;
}
outlet
{
type calculated;
value uniform 0;
}
}
// ************************************************************************* //

View File

@ -1,59 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object epsilon;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -3 0 0 0 0];
internalField uniform 200;
boundaryField
{
front
{
type epsilonWallFunction;
value uniform 200;
}
back
{
type epsilonWallFunction;
value uniform 200;
}
walls
{
type epsilonWallFunction;
value uniform 200;
}
porosityWall
{
type epsilonWallFunction;
value uniform 200;
}
inlet
{
type turbulentMixingLengthDissipationRateInlet;
mixingLength 0.005;
value uniform 200;
}
outlet
{
type inletOutlet;
inletValue uniform 200;
value uniform 200;
}
}
// ************************************************************************* //

View File

@ -1,59 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object k;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -2 0 0 0 0];
internalField uniform 1;
boundaryField
{
front
{
type kqRWallFunction;
value uniform 1;
}
back
{
type kqRWallFunction;
value uniform 1;
}
walls
{
type kqRWallFunction;
value uniform 1;
}
porosityWall
{
type kqRWallFunction;
value uniform 1;
}
inlet
{
type turbulentIntensityKineticEnergyInlet;
intensity 0.05;
value uniform 1;
}
outlet
{
type inletOutlet;
inletValue uniform 1;
value uniform 1;
}
}
// ************************************************************************* //

View File

@ -1,57 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object nut;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
front
{
type nutkWallFunction;
value uniform 0;
}
back
{
type nutkWallFunction;
value uniform 0;
}
walls
{
type nutkWallFunction;
value uniform 0;
}
porosityWall
{
type nutkWallFunction;
value uniform 0;
}
inlet
{
type calculated;
value uniform 0;
}
outlet
{
type calculated;
value uniform 0;
}
}
// ************************************************************************* //

View File

@ -1,51 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 1.0e5;
boundaryField
{
front
{
type zeroGradient;
}
back
{
type zeroGradient;
}
walls
{
type zeroGradient;
}
porosityWall
{
type zeroGradient;
}
inlet
{
type zeroGradient;
}
outlet
{
type fixedValue;
value $internalField;
}
}
// ************************************************************************* //

View File

@ -1,10 +0,0 @@
#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory
m4 system/blockMeshDict.m4 > system/blockMeshDict
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication blockMesh
runApplication `getApplication`

View File

@ -1,51 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object fvOptions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
selectionMode cellZone;
cellZone porosity;
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d d [0 -2 0 0 0 0 0] (5e7 -1000 -1000);
f f [0 -1 0 0 0 0 0] (0 0 0);
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
}
}
}
}
// ************************************************************************* //

View File

@ -1,62 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6
(
front
{
type wall;
inGroups 1(wall);
nFaces 700;
startFace 63400;
}
back
{
type wall;
inGroups 1(wall);
nFaces 700;
startFace 64100;
}
walls
{
type wall;
inGroups 1(wall);
nFaces 1400;
startFace 64800;
}
porosityWall
{
type wall;
inGroups 1(wall);
nFaces 1600;
startFace 66200;
}
inlet
{
type patch;
nFaces 400;
startFace 67800;
}
outlet
{
type patch;
nFaces 400;
startFace 68200;
}
)
// ************************************************************************* //

View File

@ -1,49 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType
{
type hePsiThermo;
mixture pureMixture;
transport sutherland;
thermo hConst;
equationOfState perfectGas;
specie specie;
energy sensibleEnthalpy;
}
mixture
{
specie
{
nMoles 1;
molWeight 28.9;
}
thermodynamics
{
Cp 1007;
Hf 0;
}
transport
{
As 1.4792e-06;
Ts 116;
}
}
// ************************************************************************* //

View File

@ -1,30 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType RAS;
RAS
{
RASModel kEpsilon;
turbulence on;
printCoeffs on;
}
// ************************************************************************* //

View File

@ -1,165 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
`format' ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// block definition for a porosity with an angled inlet/outlet
// the porosity is not aligned with the main axes
//
dnl> -----------------------------------------------------------------
dnl> <STANDARD DEFINTIONS>
dnl>
changecom(//)changequote([,]) dnl>
define(calc, [esyscmd(perl -e 'print ($1)')]) dnl>
define(VCOUNT, 0) dnl>
define(vlabel, [[// ]pt VCOUNT ($1) define($1, VCOUNT)define([VCOUNT], incr(VCOUNT))]) dnl>
dnl>
define(hex2D, hex ($1b $2b $3b $4b $1f $2f $3f $4f)) dnl>
define(quad2D, ($1f $1b $2b $2f)) dnl>
define(frontQuad, ($1f $2f $3f $4f)) dnl>
define(backQuad, ($4b $3b $2b $1b)) dnl>
dnl>
dnl> </STANDARD DEFINTIONS>
dnl> -----------------------------------------------------------------
dnl>
define(ncells, 20) dnl>
define(ninlet, 15) dnl>
define(nporo, 20) dnl>
define(noutlet, 20) dnl>
dnl>
define(x0,0) dnl>
define(y0,0) dnl>
define(y0,0) dnl>
define(Cos,0.7071067812) dnl> == cos(45)
define(Sin,0.7071067812) dnl> == sin(45)
dnl>
define(width,50) dnl>
define(zBack,calc(-width/2)) dnl>
define(zFront,calc(width/2)) dnl>
define(leninlet,150)dnl>
define(lenporo,100)dnl>
define(lenoutlet,100)dnl>
dnl>
define(xhyp,calc(Sin*width)) dnl>
define(yhyp,calc(Cos*width)) dnl>
define(xinlet,leninlet)dnl>
define(xporo,calc(Cos*lenporo)) dnl>
define(yporo,calc(Sin*lenporo)) dnl>
define(xoutlet,calc(xporo + Cos*lenoutlet)) dnl>
define(youtlet,calc(yporo + Sin*lenoutlet)) dnl>
dnl>
convertToMeters 0.001;
vertices
(
// inlet region
( -xinlet y0 zBack ) vlabel(in1b)
( -xinlet yhyp zBack ) vlabel(in2b)
( -xinlet y0 zFront ) vlabel(in1f)
( -xinlet yhyp zFront ) vlabel(in2f)
// join inlet->outlet
( x0 y0 zBack ) vlabel(join1b)
( -xhyp yhyp zBack ) vlabel(join2b)
( x0 y0 zFront ) vlabel(join1f)
( -xhyp yhyp zFront ) vlabel(join2f)
// porosity ends ->outlet
( xporo yporo zBack ) vlabel(poro1b)
( calc(xporo - xhyp) calc(yporo + yhyp) zBack ) vlabel(poro2b)
( xporo yporo zFront ) vlabel(poro1f)
( calc(xporo - xhyp) calc(yporo + yhyp) zFront ) vlabel(poro2f)
// outlet
( xoutlet youtlet zBack ) vlabel(out1b)
( calc(xoutlet - xhyp) calc(youtlet + yhyp) zBack ) vlabel(out2b)
( xoutlet youtlet zFront ) vlabel(out1f)
( calc(xoutlet - xhyp) calc(youtlet + yhyp) zFront ) vlabel(out2f)
);
blocks
(
// inlet block
hex2D(in1, join1, join2, in2)
inlet ( ninlet ncells ncells ) simpleGrading (1 1 1)
// porosity block
hex2D(join1, poro1, poro2, join2)
porosity ( nporo ncells ncells ) simpleGrading (1 1 1)
// outlet block
hex2D(poro1, out1, out2, poro2)
outlet ( noutlet ncells ncells ) simpleGrading (1 1 1)
);
edges
(
);
patches
(
// is there no way of defining all my 'defaultFaces' to be 'wall'?
wall front
(
// inlet block
frontQuad(in1, join1, join2, in2)
// outlet block
frontQuad(poro1, out1, out2, poro2)
)
wall back
(
// inlet block
backQuad(in1, join1, join2, in2)
// outlet block
backQuad(poro1, out1, out2, poro2)
)
wall walls
(
// inlet block
quad2D(in1, join1)
quad2D(join2, in2)
// outlet block
quad2D(poro1, out1)
quad2D(out2, poro2)
)
wall porosityWall
(
// porosity block
frontQuad(join1, poro1, poro2, join2)
// porosity block
backQuad(join1, poro1, poro2, join2)
// porosity block
quad2D(join1, poro1)
quad2D(poro2, join2)
)
patch inlet
(
quad2D(in2, in1)
)
patch outlet
(
quad2D(out2, out1)
)
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -1,49 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application rhoLTSPimpleFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 500;
deltaT 1;
writeControl adjustableRunTime;
writeInterval 50;
purgeWrite 0;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
// ************************************************************************* //

View File

@ -1,67 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
ddtSchemes
{
default localEuler rDeltaT;
}
gradSchemes
{
default Gauss linear;
}
divSchemes
{
default none;
div(phi,U) Gauss upwind;
div(phid,p) Gauss upwind;
div(phi,K) Gauss linear;
div(phi,h) Gauss upwind;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(phi,R) Gauss upwind;
div(phi,omega) Gauss upwind;
div((rho*R)) Gauss linear;
div(R) Gauss linear;
div(U) Gauss linear;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default Gauss linear corrected;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default corrected;
}
fluxRequired
{
default no;
p ;
}
// ************************************************************************* //

View File

@ -1,68 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
p
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
relTol 0.1;
}
pFinal
{
$p;
tolerance 1e-06;
relTol 0.1;
}
"(rho|U|h|k|epsilon|omega)"
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-05;
relTol 0.1;
}
"(rho|U|h|k|epsilon|omega)Final"
{
$U;
tolerance 1e-05;
relTol 0.1;
}
}
PIMPLE
{
momentumPredictor yes;
nOuterCorrectors 1;
nCorrectors 1;
nNonOrthogonalCorrectors 0;
rhoMin 0.5;
rhoMax 2.0;
maxCo 0.2;
rDeltaTSmoothingCoeff 0.1;
rDeltaTDampingCoeff 1;
maxDeltaT 1;
}
// ************************************************************************* //

View File

@ -29,7 +29,7 @@ boundaryField
{
type zeroGradient;
}
walls
wall
{
type zeroGradient;
}

View File

@ -44,7 +44,7 @@ boundaryField
{
type flowRateInletVelocity;
massFlowRate constant 0.1;
value uniform (0 0 0);
rhoInlet 1; // estimate for initial rho
}
outlet
{

View File

@ -17,39 +17,39 @@ FoamFile
dimensions [1 -1 -1 0 0 0 0];
internalField uniform 0;
internalField uniform 1e-3;
boundaryField
{
front
{
type compressible::alphatWallFunction;
value uniform 0;
value $internalField;
}
back
{
type compressible::alphatWallFunction;
value uniform 0;
value $internalField;
}
walls
{
type compressible::alphatWallFunction;
value uniform 0;
value $internalField;
}
porosityWall
{
type compressible::alphatWallFunction;
value uniform 0;
value $internalField;
}
inlet
{
type calculated;
value uniform 0;
value $internalField;
}
outlet
{
type calculated;
value uniform 0;
value $internalField;
}
}

View File

@ -29,7 +29,7 @@ porosity1
DarcyForchheimerCoeffs
{
d d [0 -2 0 0 0 0 0] (5e7 -1000 -1000);
d d [0 -2 0 0 0 0 0] (7e5 -1000 -1000);
f f [0 -1 0 0 0 0 0] (0 0 0);
coordinateSystem
@ -40,7 +40,7 @@ porosity1
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
e3 (0 0 1);
}
}
}
@ -48,4 +48,4 @@ porosity1
}
//************************************************************************* //
//************************************************************************ //

View File

@ -21,14 +21,14 @@ solvers
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
tolerance 1e-07;
relTol 0.01;
}
pFinal
{
$p;
tolerance 1e-06;
tolerance 1e-07;
relTol 0;
}
@ -36,28 +36,29 @@ solvers
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-05;
tolerance 1e-06;
relTol 0.1;
}
"(rho|U|h|k|epsilon|omega)Final"
{
$U;
tolerance 1e-05;
tolerance 1e-06;
relTol 0;
}
}
PIMPLE
{
momentumPredictor yes;
transonic no;
nOuterCorrectors 50;
nCorrectors 1;
momentumPredictor yes;
transonic no;
nOuterCorrectors 50;
nCorrectors 1;
nNonOrthogonalCorrectors 0;
consistent yes;
rhoMin 0.5;
rhoMax 1.5;
rhoMax 2.0;
residualControl
{
@ -75,12 +76,14 @@ relaxationFactors
{
fields
{
"p.*" 0.3;
"rho.*" 0.01;
"p.*" 0.9;
"rho.*" 1;
}
equations
{
"(U|h|k|epsilon|omega).*" 0.7;
"U.*" 0.9;
"h.*" 0.7;
"(k|epsilon|omega).*" 0.8;
}
}

View File

@ -29,7 +29,7 @@ boundaryField
{
type zeroGradient;
}
wall
walls
{
type zeroGradient;
}

View File

@ -16,7 +16,7 @@ FoamFile
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
internalField uniform (47.8 0 0);
boundaryField
{
@ -44,11 +44,11 @@ boundaryField
{
type flowRateInletVelocity;
massFlowRate constant 0.1;
rhoInlet 1; // estimate for initial rho
value uniform (0 0 0);
}
outlet
{
type pressureInletOutletVelocity;
type fluxCorrectedVelocity; //inletOutlet;
value uniform (0 0 0);
inletValue uniform (0 0 0);
}

View File

@ -17,39 +17,39 @@ FoamFile
dimensions [1 -1 -1 0 0 0 0];
internalField uniform 1e-3;
internalField uniform 0;
boundaryField
{
front
{
type compressible::alphatWallFunction;
value $internalField;
value uniform 0;
}
back
{
type compressible::alphatWallFunction;
value $internalField;
value uniform 0;
}
walls
{
type compressible::alphatWallFunction;
value $internalField;
value uniform 0;
}
porosityWall
{
type compressible::alphatWallFunction;
value $internalField;
value uniform 0;
}
inlet
{
type calculated;
value $internalField;
value uniform 0;
}
outlet
{
type calculated;
value $internalField;
value uniform 0;
}
}

View File

@ -29,7 +29,7 @@ porosity1
DarcyForchheimerCoeffs
{
d d [0 -2 0 0 0 0 0] (7e5 -1000 -1000);
d d [0 -2 0 0 0 0 0] (5e7 -1000 -1000);
f f [0 -1 0 0 0 0 0] (0 0 0);
coordinateSystem
@ -40,7 +40,7 @@ porosity1
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e3 (0 0 1);
e2 (0 0 1);
}
}
}
@ -48,4 +48,4 @@ porosity1
}
//************************************************************************ //
// ************************************************************************* //

View File

@ -65,79 +65,55 @@ edges
(
);
boundary
patches
(
// is there no way of defining all my 'defaultFaces' to be 'wall'?
front
{
type wall;
faces
(
// inlet block
(2 6 7 3)
// outlet block
(10 14 15 11)
);
}
wall front
(
// inlet block
(2 6 7 3)
// outlet block
(10 14 15 11)
)
back
{
type wall;
faces
(
// inlet block
(1 5 4 0)
// outlet block
(9 13 12 8)
);
}
wall back
(
// inlet block
(1 5 4 0)
// outlet block
(9 13 12 8)
)
walls
{
type wall;
faces
(
// inlet block
(2 0 4 6)
(7 5 1 3)
// outlet block
(10 8 12 14)
(15 13 9 11)
);
}
wall walls
(
// inlet block
(2 0 4 6)
(7 5 1 3)
// outlet block
(10 8 12 14)
(15 13 9 11)
)
porosityWall
{
type wall;
faces
(
// porosity block
(6 10 11 7)
// porosity block
(5 9 8 4)
// porosity block
(6 4 8 10)
(11 9 5 7)
);
}
wall porosityWall
(
// porosity block
(6 10 11 7)
// porosity block
(5 9 8 4)
// porosity block
(6 4 8 10)
(11 9 5 7)
)
inlet
{
type patch;
faces
(
(3 1 0 2)
);
}
patch inlet
(
(3 1 0 2)
)
outlet
{
type patch;
faces
(
(15 13 12 14)
);
}
patch outlet
(
(15 13 12 14)
)
);
mergePatchPairs

View File

@ -107,79 +107,55 @@ edges
(
);
boundary
patches
(
// is there no way of defining all my 'defaultFaces' to be 'wall'?
front
{
type wall;
faces
(
// inlet block
frontQuad(in1, join1, join2, in2)
// outlet block
frontQuad(poro1, out1, out2, poro2)
);
}
wall front
(
// inlet block
frontQuad(in1, join1, join2, in2)
// outlet block
frontQuad(poro1, out1, out2, poro2)
)
back
{
type wall;
faces
(
// inlet block
backQuad(in1, join1, join2, in2)
// outlet block
backQuad(poro1, out1, out2, poro2)
);
}
wall back
(
// inlet block
backQuad(in1, join1, join2, in2)
// outlet block
backQuad(poro1, out1, out2, poro2)
)
walls
{
type wall;
faces
(
// inlet block
quad2D(in1, join1)
quad2D(join2, in2)
// outlet block
quad2D(poro1, out1)
quad2D(out2, poro2)
);
}
wall walls
(
// inlet block
quad2D(in1, join1)
quad2D(join2, in2)
// outlet block
quad2D(poro1, out1)
quad2D(out2, poro2)
)
porosityWall
{
type wall;
faces
(
// porosity block
frontQuad(join1, poro1, poro2, join2)
// porosity block
backQuad(join1, poro1, poro2, join2)
// porosity block
quad2D(join1, poro1)
quad2D(poro2, join2)
);
}
wall porosityWall
(
// porosity block
frontQuad(join1, poro1, poro2, join2)
// porosity block
backQuad(join1, poro1, poro2, join2)
// porosity block
quad2D(join1, poro1)
quad2D(poro2, join2)
)
inlet
{
type patch;
faces
(
quad2D(in2, in1)
);
}
patch inlet
(
quad2D(in2, in1)
)
outlet
{
type patch;
faces
(
quad2D(out2, out1)
);
}
patch outlet
(
quad2D(out2, out1)
)
);
mergePatchPairs

View File

@ -23,13 +23,13 @@ startTime 0;
stopAt endTime;
endTime 10;
endTime 500;
deltaT 1;
writeControl adjustableRunTime;
writeInterval 10;
writeInterval 50;
purgeWrite 0;
@ -45,11 +45,5 @@ timePrecision 6;
runTimeModifiable true;
adjustTimeStep no;
maxCo 10;
maxDeltaT 1;
// ************************************************************************* //

View File

@ -17,7 +17,7 @@ FoamFile
ddtSchemes
{
default Euler;
default localEuler rDeltaT;
}
gradSchemes

View File

@ -21,70 +21,48 @@ solvers
{
solver PCG;
preconditioner DIC;
tolerance 1e-07;
relTol 0.01;
tolerance 1e-06;
relTol 0.1;
}
pFinal
{
$p;
tolerance 1e-07;
relTol 0;
tolerance 1e-06;
relTol 0.1;
}
"(rho|U|h|k|epsilon|omega)"
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-06;
tolerance 1e-05;
relTol 0.1;
}
"(rho|U|h|k|epsilon|omega)Final"
{
$U;
tolerance 1e-06;
relTol 0;
tolerance 1e-05;
relTol 0.1;
}
}
PIMPLE
{
momentumPredictor yes;
transonic no;
nOuterCorrectors 50;
nCorrectors 1;
momentumPredictor yes;
nOuterCorrectors 1;
nCorrectors 1;
nNonOrthogonalCorrectors 0;
consistent yes;
rhoMin 0.5;
rhoMax 2.0;
rhoMin 0.5;
rhoMax 2.0;
residualControl
{
"(U|k|epsilon)"
{
relTol 0;
tolerance 0.0001;
}
}
turbOnFinalIterOnly off;
}
relaxationFactors
{
fields
{
"p.*" 0.9;
"rho.*" 1;
}
equations
{
"U.*" 0.9;
"h.*" 0.7;
"(k|epsilon|omega).*" 0.8;
}
maxCo 0.2;
rDeltaTSmoothingCoeff 0.1;
rDeltaTDampingCoeff 1;
maxDeltaT 1;
}