Thermodynamics: Changed all eEqn to EEqn and reformulated to conserve E in sonic solvers

To support these changes the need for "Sp" corrections on div-terms has been
eliminated by introducing a "bounded" convection scheme which subtracts the Sp
term from the selected scheme.  The equivalent will be needed for the ddt term.

A warning message is generated for steady-state solvers in which the "bounded"
scheme is not selected for the convection terms.
This commit is contained in:
Henry
2012-09-19 12:49:07 +01:00
parent b1fb071823
commit dbe48b482c
62 changed files with 775 additions and 264 deletions

View File

@ -15,7 +15,8 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType heRhoThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>,sensibleEnthalpy>>>>;
thermoType heRhoThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>,sensibleEnthalpy>>>>;
//thermoType heRhoThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>,sensibleInternalEnergy>>>>;
pRef 100000;

View File

@ -30,23 +30,19 @@ divSchemes
default none;
div(phi,U) Gauss upwind;
div(phi,h) Gauss upwind;
div(phi,e) Gauss upwind;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(phi,R) Gauss upwind;
div(phi,K) Gauss linear;
div(phi,Ekp) Gauss linear;
div(R) Gauss linear;
div((muEff*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default none;
laplacian(muEff,U) Gauss linear corrected;
laplacian(Dp,p_rgh) Gauss linear corrected;
laplacian(alphaEff,h) Gauss linear corrected;
laplacian(DkEff,k) Gauss linear corrected;
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
laplacian(DREff,R) Gauss linear corrected;
default Gauss linear corrected;
}
interpolationSchemes

View File

@ -39,7 +39,7 @@ solvers
relTol 0;
}
"(U|h|k|epsilon|R)"
"(U|h|e|k|epsilon|R)"
{
solver PBiCG;
preconditioner DILU;
@ -47,7 +47,7 @@ solvers
relTol 0.1;
}
"(U|h|k|epsilon|R)Final"
"(U|h|e|k|epsilon|R)Final"
{
$U;
relTol 0;

View File

@ -16,7 +16,6 @@ FoamFile
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -2 0 0 0 0];
value ( 0 -9.81 0 );
value (0 -9.81 0);
// ************************************************************************* //

View File

@ -15,7 +15,7 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType hePsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>,sensibleEnthalpy>>>>;
thermoType hePsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>,sensibleEnthalpy>>>>;
pRef 100000;

View File

@ -28,25 +28,17 @@ gradSchemes
divSchemes
{
default none;
div(phi,U) Gauss upwind;
div(phi,h) Gauss upwind;
div(phi,K) Gauss upwind;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(phi,R) Gauss upwind;
div(R) Gauss linear;
div(phi,U) bounded Gauss upwind;
div(phi,h) bounded Gauss upwind;
div(phi,K) bounded Gauss upwind;
div(phi,k) bounded Gauss upwind;
div(phi,epsilon) bounded Gauss upwind;
div((muEff*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default none;
laplacian(muEff,U) Gauss linear uncorrected;
laplacian(Dp,p_rgh) Gauss linear uncorrected;
laplacian(alphaEff,h) Gauss linear uncorrected;
laplacian(DkEff,k) Gauss linear uncorrected;
laplacian(DepsilonEff,epsilon) Gauss linear uncorrected;
laplacian(DREff,R) Gauss linear uncorrected;
default Gauss linear uncorrected;
}
interpolationSchemes

View File

@ -21,15 +21,15 @@ solvers
{
solver PCG;
preconditioner DIC;
tolerance 1e-08;
tolerance 1e-8;
relTol 0.01;
}
"(U|h|k|epsilon|R)"
"(U|h|e|k|epsilon|R)"
{
solver PBiCG;
preconditioner DILU;
tolerance 1e-05;
tolerance 1e-6;
relTol 0.1;
}
}
@ -45,6 +45,7 @@ SIMPLE
p_rgh 1e-2;
U 1e-3;
h 1e-3;
e 1e-3;
// possibly check turbulence fields
"(k|epsilon|omega)" 1e-3;
@ -60,8 +61,8 @@ relaxationFactors
}
equations
{
U 0.2;
h 0.2;
U 0.3;
"(h|e)" 0.3;
"(k|epsilon|R)" 0.5;
}
}