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 daf4ef6279
commit 0acc57e105
37 changed files with 189 additions and 1327 deletions

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;
}