solvers::shockFluid: Now solves for rho, U and e while conserving rho*U and rho*E

By solving for U and e rather than rhoU and rhoE the convection and stress
matrices can be combined and solved together avoiding the need for Strang
splitting.  Conservation of rho*U and rho*E is ensured by constructing and
solving the three equations in sequence, constructing each using the results of
the solution of the previous equations.
This commit is contained in:
Henry Weller
2023-01-24 18:17:46 +00:00
parent 4e827263ff
commit 9fadb7fccf
16 changed files with 84 additions and 145 deletions

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -40,6 +39,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -40,6 +39,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -40,6 +39,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -42,6 +41,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -40,6 +39,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -29,7 +29,6 @@ gradSchemes
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
@ -40,6 +39,7 @@ laplacianSchemes
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;

View File

@ -16,7 +16,7 @@ FoamFile
solvers
{
"(rho|rhoU|rhoE).*"
"rho.*"
{
solver diagonal;
}
@ -25,16 +25,16 @@ solvers
{
solver smoothSolver;
smoother GaussSeidel;
nSweeps 2;
tolerance 1e-09;
relTol 0.01;
tolerance 1e-9;
relTol 0;
}
"h.*"
"e.*"
{
$U;
tolerance 1e-10;
relTol 0;
}
}