From 80393339a9a7453006554230f7c669a2d017cf67 Mon Sep 17 00:00:00 2001 From: Henry <Henry> Date: Thu, 17 Mar 2011 15:03:15 +0000 Subject: [PATCH] Upgrade of compressible solvers merging in developments from OpenFOAM-1.7.x --- .../compressible/rhoCentralFoam/Make/options | 13 ++- .../rhoCentralFoam/createFields.H | 15 +++ .../rhoCentralDyMFoam/Make/options | 7 +- .../rhoCentralDyMFoam/rhoCentralDyMFoam.C | 22 +++-- .../rhoCentralFoam/rhoCentralFoam.C | 40 +++++--- .../compressible/rhoPimpleFoam/Allwmake | 8 ++ .../compressible/rhoPimpleFoam/createFields.H | 10 ++ .../solvers/compressible/rhoPimpleFoam/pEqn.H | 6 ++ .../rhoPimpleFoam/rhoPimpleFoam.C | 3 +- .../rhoPorousMRFPimpleFoam/Make/files | 0 .../rhoPorousMRFPimpleFoam/Make/options | 2 +- .../rhoPorousMRFPimpleFoam/UEqn.H | 0 .../rhoPorousMRFPimpleFoam/createZones.H | 5 + .../rhoPorousMRFPimpleFoam/pEqn.H | 32 +++--- .../rhoPorousMRFPimpleFoam.C | 1 + .../rhoPorousMRFPimpleFoam/createFields.H | 77 --------------- .../rhoPorousSimpleFoam/createFields.H | 98 ------------------- .../compressible/rhoSimpleFoam/Allwmake | 8 ++ .../rhoPorousSimpleFoam/Make/files | 0 .../rhoPorousSimpleFoam/Make/options | 1 + .../rhoPorousSimpleFoam/UEqn.H | 0 .../rhoPorousSimpleFoam/createPorousZones.H | 27 +++++ .../rhoPorousSimpleFoam/hEqn.H | 4 +- .../rhoPorousSimpleFoam/pEqn.H | 0 .../rhoPorousSimpleFoam/rhoPorousSimpleFoam.C | 1 + .../rhoSimplecFoam/rhoSimplecFoam.C | 2 +- .../sonicDyMFoam/compressibleContinuityErrs.H | 20 ---- .../compressible/sonicDyMFoam/createFields.H | 57 ----------- .../readThermodynamicProperties.H | 23 ----- .../solvers/compressible/sonicFoam/Allwmake | 9 ++ .../solvers/compressible/sonicFoam/UEqn.H | 4 +- .../{ => sonicFoam}/sonicDyMFoam/Make/files | 0 .../{ => sonicFoam}/sonicDyMFoam/Make/options | 2 +- .../sonicFoam/sonicDyMFoam/pEqn.H | 33 +++++++ .../sonicDyMFoam/sonicDyMFoam.C | 53 +--------- .../compressible/sonicFoam/sonicFoam.C | 2 +- .../sonicLiquidFoam/Make/files | 0 .../sonicLiquidFoam/Make/options | 0 .../compressibleContinuityErrs.H | 0 .../sonicLiquidFoam/createFields.H | 0 .../readThermodynamicProperties.H | 0 .../readTransportProperties.H | 0 .../sonicLiquidFoam/sonicLiquidFoam.C | 2 +- .../sonicLiquidFoam/readTransportProperties.H | 18 ---- .../fireFoam/les/smallPoolFire2D/0/p_rgh | 11 ++- .../fireFoam/les/smallPoolFire3D/0/p_rgh | 9 +- .../les/smallPoolFire3D/system/fvSolution | 10 +- .../constant/turbulenceProperties | 21 ++++ .../constant/turbulenceProperties | 21 ++++ .../forwardStep/constant/turbulenceProperties | 21 ++++ .../constant/turbulenceProperties | 21 ++++ .../shockTube/constant/turbulenceProperties | 21 ++++ .../wedge15Ma5/constant/turbulenceProperties | 21 ++++ .../les/pitzDaily/system/fvSolution | 2 + .../ras/angledDuct/system/fvSolution | 2 + .../ras/cavity/system/fvSolution | 2 + .../angledDuctExplicit/system/fvSchemes | 4 +- .../angledDuctExplicit/system/fvSolution | 2 +- .../constant/polyMesh/boundary | 2 +- .../angledDuctImplicit/system/fvSchemes | 4 +- .../laminar/shockTube/system/sampleDict | 11 ++- 61 files changed, 359 insertions(+), 431 deletions(-) create mode 100755 applications/solvers/compressible/rhoPimpleFoam/Allwmake rename applications/solvers/compressible/{ => rhoPimpleFoam}/rhoPorousMRFPimpleFoam/Make/files (100%) rename applications/solvers/compressible/{ => rhoPimpleFoam}/rhoPorousMRFPimpleFoam/Make/options (94%) rename applications/solvers/compressible/{ => rhoPimpleFoam}/rhoPorousMRFPimpleFoam/UEqn.H (100%) create mode 100644 applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/createZones.H rename applications/solvers/compressible/{ => rhoPimpleFoam}/rhoPorousMRFPimpleFoam/pEqn.H (80%) rename applications/solvers/compressible/{ => rhoPimpleFoam}/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C (99%) delete mode 100644 applications/solvers/compressible/rhoPorousMRFPimpleFoam/createFields.H delete mode 100644 applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H create mode 100755 applications/solvers/compressible/rhoSimpleFoam/Allwmake rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/Make/files (100%) rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/Make/options (98%) rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/UEqn.H (100%) create mode 100644 applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/createPorousZones.H rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/hEqn.H (68%) rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/pEqn.H (100%) rename applications/solvers/compressible/{ => rhoSimpleFoam}/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C (98%) delete mode 100644 applications/solvers/compressible/sonicDyMFoam/compressibleContinuityErrs.H delete mode 100644 applications/solvers/compressible/sonicDyMFoam/createFields.H delete mode 100644 applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H create mode 100755 applications/solvers/compressible/sonicFoam/Allwmake rename applications/solvers/compressible/{ => sonicFoam}/sonicDyMFoam/Make/files (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicDyMFoam/Make/options (95%) create mode 100644 applications/solvers/compressible/sonicFoam/sonicDyMFoam/pEqn.H rename applications/solvers/compressible/{ => sonicFoam}/sonicDyMFoam/sonicDyMFoam.C (66%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/Make/files (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/Make/options (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/compressibleContinuityErrs.H (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/createFields.H (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/readThermodynamicProperties.H (100%) rename applications/solvers/compressible/{sonicDyMFoam => sonicFoam/sonicLiquidFoam}/readTransportProperties.H (100%) rename applications/solvers/compressible/{ => sonicFoam}/sonicLiquidFoam/sonicLiquidFoam.C (98%) delete mode 100644 applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H create mode 100644 tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties create mode 100644 tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties create mode 100644 tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties create mode 100644 tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties create mode 100644 tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties create mode 100644 tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties diff --git a/applications/solvers/compressible/rhoCentralFoam/Make/options b/applications/solvers/compressible/rhoCentralFoam/Make/options index 4714ca611c7..b3be16a505b 100644 --- a/applications/solvers/compressible/rhoCentralFoam/Make/options +++ b/applications/solvers/compressible/rhoCentralFoam/Make/options @@ -1,11 +1,18 @@ EXE_INC = \ + -IBCs/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ - -IBCs/lnInclude \ - -I$(LIB_SRC)/sampling/lnInclude + -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ + -I$(LIB_SRC)/dynamicMesh/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude + EXE_LIBS = \ -lfiniteVolume \ -lbasicThermophysicalModels \ -lspecie \ - -lrhoCentralFoam + -lrhoCentralFoam \ + -lcompressibleTurbulenceModel \ + -lcompressibleRASModels \ + -lcompressibleLESModels \ + -lmeshTools diff --git a/applications/solvers/compressible/rhoCentralFoam/createFields.H b/applications/solvers/compressible/rhoCentralFoam/createFields.H index fc65b3e5b40..60b40db1d13 100644 --- a/applications/solvers/compressible/rhoCentralFoam/createFields.H +++ b/applications/solvers/compressible/rhoCentralFoam/createFields.H @@ -96,3 +96,18 @@ surfaceScalarField neg mesh, dimensionedScalar("neg", dimless, -1.0) ); + + +surfaceScalarField phi("phi", mesh.Sf() & fvc::interpolate(rhoU)); + +Info<< "Creating turbulence model\n" << endl; +autoPtr<compressible::turbulenceModel> turbulence +( + compressible::turbulenceModel::New + ( + rho, + U, + phi, + thermo + ) +); diff --git a/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/Make/options b/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/Make/options index 403ffc1eef3..250effbee28 100644 --- a/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/Make/options +++ b/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/Make/options @@ -1,10 +1,10 @@ EXE_INC = \ -I.. \ + -I../BCs/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ - -I../BCs/lnInclude \ - -I$(LIB_SRC)/sampling/lnInclude \ + -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ -I$(LIB_SRC)/dynamicMesh/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude @@ -13,5 +13,8 @@ EXE_LIBS = \ -lbasicThermophysicalModels \ -lspecie \ -lrhoCentralFoam \ + -lcompressibleTurbulenceModel \ + -lcompressibleRASModels \ + -lcompressibleLESModels \ -ldynamicMesh \ -lmeshTools diff --git a/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/rhoCentralDyMFoam.C b/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/rhoCentralDyMFoam.C index 64b5fb5d872..8005a77aa70 100644 --- a/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/rhoCentralDyMFoam.C +++ b/applications/solvers/compressible/rhoCentralFoam/rhoCentralDyMFoam/rhoCentralDyMFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -22,7 +22,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Application - rhoCentralFoam + rhoCentralDyMFoam Description Density-based compressible flow solver based on central-upwind schemes of @@ -32,6 +32,7 @@ Description #include "fvCFD.H" #include "basicPsiThermo.H" +#include "turbulenceModel.H" #include "zeroGradientFvPatchFields.H" #include "fixedRhoFvPatchScalarField.H" #include "motionSolver.H" @@ -185,12 +186,11 @@ int main(int argc, char *argv[]) + aSf*p_pos - aSf*p_neg ); - volTensorField tauMC("tauMC", mu*dev2(Foam::T(fvc::grad(U)))); + volScalarField muEff(turbulence->muEff()); + volTensorField tauMC("tauMC", muEff*dev2(Foam::T(fvc::grad(U)))); // --- Solve density - Info<< max(rho) << " " << min(rho) << endl; solve(fvm::ddt(rho) + fvc::div(phi)); - Info<< max(rho) << " " << min(rho) << endl; // --- Solve momentum solve(fvm::ddt(rhoU) + fvc::div(phiUp)); @@ -206,7 +206,7 @@ int main(int argc, char *argv[]) solve ( fvm::ddt(rho, U) - fvc::ddt(rho, U) - - fvm::laplacian(mu, U) + - fvm::laplacian(muEff, U) - fvc::div(tauMC) ); rhoU = rho*U; @@ -216,7 +216,7 @@ int main(int argc, char *argv[]) surfaceScalarField sigmaDotU ( ( - fvc::interpolate(mu)*mesh.magSf()*fvc::snGrad(U) + fvc::interpolate(muEff)*mesh.magSf()*fvc::snGrad(U) + (mesh.Sf() & fvc::interpolate(tauMC)) ) & (a_pos*U_pos + a_neg*U_neg) @@ -240,12 +240,12 @@ int main(int argc, char *argv[]) if (!inviscid) { - volScalarField k("k", thermo.Cp()*mu/Pr); + volScalarField k("k", thermo.Cp()*muEff/Pr); solve ( fvm::ddt(rho, e) - fvc::ddt(rho, e) - - fvm::laplacian(thermo.alpha(), e) - + fvc::laplacian(thermo.alpha(), e) + - fvm::laplacian(turbulence->alphaEff(), e) + + fvc::laplacian(turbulence->alpha(), e) - fvc::laplacian(k, T) ); thermo.correct(); @@ -258,6 +258,8 @@ int main(int argc, char *argv[]) p.correctBoundaryConditions(); rho.boundaryField() = psi.boundaryField()*p.boundaryField(); + turbulence->correct(); + runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" diff --git a/applications/solvers/compressible/rhoCentralFoam/rhoCentralFoam.C b/applications/solvers/compressible/rhoCentralFoam/rhoCentralFoam.C index 71ce4c21879..dd0f4ee4a50 100644 --- a/applications/solvers/compressible/rhoCentralFoam/rhoCentralFoam.C +++ b/applications/solvers/compressible/rhoCentralFoam/rhoCentralFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -32,6 +32,7 @@ Description #include "fvCFD.H" #include "basicPsiThermo.H" +#include "turbulenceModel.H" #include "zeroGradientFvPatchFields.H" #include "fixedRhoFvPatchScalarField.H" @@ -51,7 +52,7 @@ int main(int argc, char *argv[]) #include "readFluxScheme.H" - dimensionedScalar v_zero("v_zero",dimVolume/dimTime, 0.0); + dimensionedScalar v_zero("v_zero", dimVolume/dimTime, 0.0); Info<< "\nStarting time loop\n" << endl; @@ -128,14 +129,6 @@ int main(int argc, char *argv[]) surfaceScalarField amaxSf("amaxSf", max(mag(am), mag(ap))); - #include "compressibleCourantNo.H" - #include "readTimeControls.H" - #include "setDeltaT.H" - - runTime++; - - Info<< "Time = " << runTime.timeName() << nl << endl; - surfaceScalarField aSf(am*a_pos); if (fluxScheme == "Tadmor") @@ -152,6 +145,18 @@ int main(int argc, char *argv[]) surfaceScalarField aphiv_pos(phiv_pos - aSf); surfaceScalarField aphiv_neg(phiv_neg + aSf); + // Reuse amaxSf for the maximum positive and negative fluxes + // estimated by the central scheme + amaxSf = max(mag(aphiv_pos), mag(aphiv_neg)); + + #include "compressibleCourantNo.H" + #include "readTimeControls.H" + #include "setDeltaT.H" + + runTime++; + + Info<< "Time = " << runTime.timeName() << nl << endl; + surfaceScalarField phi("phi", aphiv_pos*rho_pos + aphiv_neg*rho_neg); surfaceVectorField phiUp @@ -167,7 +172,8 @@ int main(int argc, char *argv[]) + aSf*p_pos - aSf*p_neg ); - volTensorField tauMC("tauMC", mu*dev2(Foam::T(fvc::grad(U)))); + volScalarField muEff(turbulence->muEff()); + volTensorField tauMC("tauMC", muEff*dev2(Foam::T(fvc::grad(U)))); // --- Solve density solve(fvm::ddt(rho) + fvc::div(phi)); @@ -188,7 +194,7 @@ int main(int argc, char *argv[]) solve ( fvm::ddt(rho, U) - fvc::ddt(rho, U) - - fvm::laplacian(mu, U) + - fvm::laplacian(muEff, U) - fvc::div(tauMC) ); rhoU = rho*U; @@ -198,7 +204,7 @@ int main(int argc, char *argv[]) surfaceScalarField sigmaDotU ( ( - fvc::interpolate(mu)*mesh.magSf()*fvc::snGrad(U) + fvc::interpolate(muEff)*mesh.magSf()*fvc::snGrad(U) + (mesh.Sf() & fvc::interpolate(tauMC)) ) & (a_pos*U_pos + a_neg*U_neg) @@ -222,12 +228,12 @@ int main(int argc, char *argv[]) if (!inviscid) { - volScalarField k("k", thermo.Cp()*mu/Pr); + volScalarField k("k", thermo.Cp()*muEff/Pr); solve ( fvm::ddt(rho, e) - fvc::ddt(rho, e) - - fvm::laplacian(thermo.alpha(), e) - + fvc::laplacian(thermo.alpha(), e) + - fvm::laplacian(turbulence->alphaEff(), e) + + fvc::laplacian(turbulence->alpha(), e) - fvc::laplacian(k, T) ); thermo.correct(); @@ -240,6 +246,8 @@ int main(int argc, char *argv[]) p.correctBoundaryConditions(); rho.boundaryField() = psi.boundaryField()*p.boundaryField(); + turbulence->correct(); + runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" diff --git a/applications/solvers/compressible/rhoPimpleFoam/Allwmake b/applications/solvers/compressible/rhoPimpleFoam/Allwmake new file mode 100755 index 00000000000..29bc9180854 --- /dev/null +++ b/applications/solvers/compressible/rhoPimpleFoam/Allwmake @@ -0,0 +1,8 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +wmake +wmake rhoPorousMRFPimpleFoam + +# ----------------------------------------------------------------- end-of-file diff --git a/applications/solvers/compressible/rhoPimpleFoam/createFields.H b/applications/solvers/compressible/rhoPimpleFoam/createFields.H index 3c29a987d36..d1ade4b4572 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/createFields.H +++ b/applications/solvers/compressible/rhoPimpleFoam/createFields.H @@ -39,6 +39,16 @@ #include "compressibleCreatePhi.H" + dimensionedScalar rhoMax + ( + mesh.solutionDict().subDict("PIMPLE").lookup("rhoMax") + ); + + dimensionedScalar rhoMin + ( + mesh.solutionDict().subDict("PIMPLE").lookup("rhoMin") + ); + Info<< "Creating turbulence model\n" << endl; autoPtr<compressible::turbulenceModel> turbulence ( diff --git a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H index 84e64518900..29ceb721c72 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H @@ -1,4 +1,7 @@ rho = thermo.rho(); +rho = max(rho, rhoMin); +rho = min(rho, rhoMax); +rho.relax(); U = rAU*UEqn().H(); @@ -98,6 +101,9 @@ p.relax(); // Recalculate density from the relaxed pressure rho = thermo.rho(); +rho = max(rho, rhoMin); +rho = min(rho, rhoMax); +rho.relax(); Info<< "rho max/min : " << max(rho).value() << " " << min(rho).value() << endl; diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C index be0e09ee28b..b91675f761d 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -75,6 +75,7 @@ int main(int argc, char *argv[]) if (nOuterCorr != 1) { p.storePrevIter(); + rho.storePrevIter(); } #include "UEqn.H" diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/Make/files b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/Make/files similarity index 100% rename from applications/solvers/compressible/rhoPorousMRFPimpleFoam/Make/files rename to applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/Make/files diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/Make/options b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/Make/options similarity index 94% rename from applications/solvers/compressible/rhoPorousMRFPimpleFoam/Make/options rename to applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/Make/options index 809b4a63a16..4067875fbc6 100644 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/Make/options +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/Make/options @@ -1,5 +1,5 @@ EXE_INC = \ - -I../rhoPimpleFoam \ + -I.. \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ -I$(LIB_SRC)/finiteVolume/cfdTools \ diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/UEqn.H similarity index 100% rename from applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H rename to applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/UEqn.H diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/createZones.H b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/createZones.H new file mode 100644 index 00000000000..487a55d8edd --- /dev/null +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/createZones.H @@ -0,0 +1,5 @@ + MRFZones mrfZones(mesh); + mrfZones.correctBoundaryVelocity(U); + + porousZones pZones(mesh); + Switch pressureImplicitPorosity(false); diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H similarity index 80% rename from applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H rename to applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H index 3802c9298a6..87794f8a476 100644 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H @@ -1,4 +1,7 @@ rho = thermo.rho(); +rho = max(rho, rhoMin); +rho = min(rho, rhoMax); +rho.relax(); volScalarField rAU(1.0/UEqn().A()); U = rAU*UEqn().H(); @@ -96,30 +99,17 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -//if (oCorr != nOuterCorr-1) -{ - // Explicitly relax pressure for momentum corrector - p.relax(); +// Explicitly relax pressure for momentum corrector +p.relax(); - rho = thermo.rho(); - rho = max(rho, rhoMin); - rho = min(rho, rhoMax); - rho.relax(); - Info<< "rho max/min : " << max(rho).value() - << " " << min(rho).value() << endl; -} +rho = thermo.rho(); +rho = max(rho, rhoMin); +rho = min(rho, rhoMax); +rho.relax(); +Info<< "rho max/min : " << max(rho).value() + << " " << min(rho).value() << endl; U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); - -// For closed-volume cases adjust the pressure and density levels -// to obey overall mass continuity -/* -if (closedVolume) -{ - p += (initialMass - fvc::domainIntegrate(psi*p)) - /fvc::domainIntegrate(psi); -} -*/ diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C similarity index 99% rename from applications/solvers/compressible/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C rename to applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C index 0a3a8998213..d72ff3af5a2 100644 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C @@ -48,6 +48,7 @@ int main(int argc, char *argv[]) #include "createTime.H" #include "createMesh.H" #include "createFields.H" + #include "createZones.H" #include "initContinuityErrs.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/createFields.H b/applications/solvers/compressible/rhoPorousMRFPimpleFoam/createFields.H deleted file mode 100644 index 9dd30f53cfe..00000000000 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/createFields.H +++ /dev/null @@ -1,77 +0,0 @@ - Info<< "Reading thermophysical properties\n" << endl; - - autoPtr<basicPsiThermo> pThermo - ( - basicPsiThermo::New(mesh) - ); - basicPsiThermo& thermo = pThermo(); - - volScalarField& p = thermo.p(); - volScalarField& h = thermo.h(); - const volScalarField& psi = thermo.psi(); - - volScalarField rho - ( - IOobject - ( - "rho", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - thermo.rho() - ); - - Info<< "Reading field U\n" << endl; - volVectorField U - ( - IOobject - ( - "U", - runTime.timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh - ); - - #include "compressibleCreatePhi.H" - - dimensionedScalar rhoMax - ( - mesh.solutionDict().subDict("PIMPLE").lookup("rhoMax") - ); - - dimensionedScalar rhoMin - ( - mesh.solutionDict().subDict("PIMPLE").lookup("rhoMin") - ); - - Info<< "Creating turbulence model\n" << endl; - autoPtr<compressible::turbulenceModel> turbulence - ( - compressible::turbulenceModel::New - ( - rho, - U, - phi, - thermo - ) - ); - - //dimensionedScalar initialMass = fvc::domainIntegrate(rho); - - - Info<< "Creating field DpDt\n" << endl; - volScalarField DpDt - ( - fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p) - ); - - MRFZones mrfZones(mesh); - mrfZones.correctBoundaryVelocity(U); - - porousZones pZones(mesh); - Switch pressureImplicitPorosity(false); diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H b/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H deleted file mode 100644 index 1a242bdfffa..00000000000 --- a/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H +++ /dev/null @@ -1,98 +0,0 @@ - Info<< "Reading thermophysical properties\n" << endl; - - autoPtr<basicPsiThermo> pThermo - ( - basicPsiThermo::New(mesh) - ); - basicPsiThermo& thermo = pThermo(); - - volScalarField rho - ( - IOobject - ( - "rho", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - thermo.rho() - ); - - volScalarField& p = thermo.p(); - volScalarField& h = thermo.h(); - const volScalarField& psi = thermo.psi(); - - - Info<< "Reading field U\n" << endl; - volVectorField U - ( - IOobject - ( - "U", - runTime.timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh - ); - - #include "compressibleCreatePhi.H" - - - label pRefCell = 0; - scalar pRefValue = 0.0; - setRefCell(p, mesh.solutionDict().subDict("SIMPLE"), pRefCell, pRefValue); - - dimensionedScalar rhoMax - ( - mesh.solutionDict().subDict("SIMPLE").lookup("rhoMax") - ); - - dimensionedScalar rhoMin - ( - mesh.solutionDict().subDict("SIMPLE").lookup("rhoMin") - ); - - Info<< "Creating turbulence model\n" << endl; - autoPtr<compressible::RASModel> turbulence - ( - compressible::RASModel::New - ( - rho, - U, - phi, - thermo - ) - ); - - dimensionedScalar initialMass = fvc::domainIntegrate(rho); - - thermalPorousZones pZones(mesh); - Switch pressureImplicitPorosity(false); - - // nUCorrectors used for pressureImplicitPorosity - int nUCorr = 0; - if (pZones.size()) - { - // nUCorrectors for pressureImplicitPorosity - if (mesh.solutionDict().subDict("SIMPLE").found("nUCorrectors")) - { - nUCorr = readInt - ( - mesh.solutionDict().subDict("SIMPLE").lookup("nUCorrectors") - ); - } - - if (nUCorr > 0) - { - pressureImplicitPorosity = true; - Info<< "Using pressure implicit porosity" << endl; - } - else - { - Info<< "Using pressure explicit porosity" << endl; - } - } - diff --git a/applications/solvers/compressible/rhoSimpleFoam/Allwmake b/applications/solvers/compressible/rhoSimpleFoam/Allwmake new file mode 100755 index 00000000000..d4c5bc28282 --- /dev/null +++ b/applications/solvers/compressible/rhoSimpleFoam/Allwmake @@ -0,0 +1,8 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +wmake +wmake rhoPorousSimpleFoam + +# ----------------------------------------------------------------- end-of-file diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/Make/files b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/Make/files similarity index 100% rename from applications/solvers/compressible/rhoPorousSimpleFoam/Make/files rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/Make/files diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/Make/options b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/Make/options similarity index 98% rename from applications/solvers/compressible/rhoPorousSimpleFoam/Make/options rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/Make/options index a4cdecf368a..14e73bf2a5c 100644 --- a/applications/solvers/compressible/rhoPorousSimpleFoam/Make/options +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/Make/options @@ -1,4 +1,5 @@ EXE_INC = \ + -I.. \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermalPorousZone/lnInclude \ -I$(LIB_SRC)/turbulenceModels \ diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/UEqn.H b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/UEqn.H similarity index 100% rename from applications/solvers/compressible/rhoPorousSimpleFoam/UEqn.H rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/UEqn.H diff --git a/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/createPorousZones.H b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/createPorousZones.H new file mode 100644 index 00000000000..8640b360e08 --- /dev/null +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/createPorousZones.H @@ -0,0 +1,27 @@ + thermalPorousZones pZones(mesh); + Switch pressureImplicitPorosity(false); + + // nUCorrectors used for pressureImplicitPorosity + int nUCorr = 0; + if (pZones.size()) + { + // nUCorrectors for pressureImplicitPorosity + if (mesh.solutionDict().subDict("SIMPLE").found("nUCorrectors")) + { + nUCorr = readInt + ( + mesh.solutionDict().subDict("SIMPLE").lookup("nUCorrectors") + ); + } + + if (nUCorr > 0) + { + pressureImplicitPorosity = true; + Info<< "Using pressure implicit porosity" << endl; + } + else + { + Info<< "Using pressure explicit porosity" << endl; + } + } + diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/hEqn.H b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/hEqn.H similarity index 68% rename from applications/solvers/compressible/rhoPorousSimpleFoam/hEqn.H rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/hEqn.H index 9e5138de8ad..ff0b91bcb7a 100644 --- a/applications/solvers/compressible/rhoPorousSimpleFoam/hEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/hEqn.H @@ -5,8 +5,8 @@ - fvm::Sp(fvc::div(phi), h) - fvm::laplacian(turbulence->alphaEff(), h) == - fvc::div(phi/fvc::interpolate(rho)*fvc::interpolate(p, "div(U,p)")) - - p*fvc::div(phi/fvc::interpolate(rho)) + fvc::div(phi/fvc::interpolate(rho), rho/psi, "div(U,p)") + - (rho/psi)*fvc::div(phi/fvc::interpolate(rho)) ); pZones.addEnthalpySource(thermo, rho, hEqn); diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/pEqn.H b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H similarity index 100% rename from applications/solvers/compressible/rhoPorousSimpleFoam/pEqn.H rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C similarity index 98% rename from applications/solvers/compressible/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C rename to applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C index 2b77cf6265c..005e27b4a5a 100644 --- a/applications/solvers/compressible/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/rhoPorousSimpleFoam.C @@ -43,6 +43,7 @@ int main(int argc, char *argv[]) #include "createTime.H" #include "createMesh.H" #include "createFields.H" + #include "createPorousZones.H" #include "initContinuityErrs.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/applications/solvers/compressible/rhoSimplecFoam/rhoSimplecFoam.C b/applications/solvers/compressible/rhoSimplecFoam/rhoSimplecFoam.C index fa6c9f3594f..c804e4e45d8 100644 --- a/applications/solvers/compressible/rhoSimplecFoam/rhoSimplecFoam.C +++ b/applications/solvers/compressible/rhoSimplecFoam/rhoSimplecFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/compressible/sonicDyMFoam/compressibleContinuityErrs.H b/applications/solvers/compressible/sonicDyMFoam/compressibleContinuityErrs.H deleted file mode 100644 index 1d869cc58da..00000000000 --- a/applications/solvers/compressible/sonicDyMFoam/compressibleContinuityErrs.H +++ /dev/null @@ -1,20 +0,0 @@ -{ - #include "rhoEqn.H" -} -{ - scalar sumLocalContErr = - sum - ( - mag(rho.internalField() - (psi*p)().internalField()) - )/sum(rho.internalField()); - - scalar globalContErr = - sum(rho.internalField() - (psi*p)().internalField()) - /sum(rho.internalField()); - - cumulativeContErr += globalContErr; - - Info<< "time step continuity errors : sum local = " << sumLocalContErr - << ", global = " << globalContErr - << ", cumulative = " << cumulativeContErr << endl; -} diff --git a/applications/solvers/compressible/sonicDyMFoam/createFields.H b/applications/solvers/compressible/sonicDyMFoam/createFields.H deleted file mode 100644 index 8367d7e3311..00000000000 --- a/applications/solvers/compressible/sonicDyMFoam/createFields.H +++ /dev/null @@ -1,57 +0,0 @@ - Info<< "Reading thermophysical properties\n" << endl; - - autoPtr<basicPsiThermo> pThermo - ( - basicPsiThermo::New(mesh) - ); - basicPsiThermo& thermo = pThermo(); - - volScalarField& p = thermo.p(); - volScalarField& e = thermo.e(); - const volScalarField& psi = thermo.psi(); - - volScalarField rho - ( - IOobject - ( - "rho", - runTime.timeName(), - mesh - ), - thermo.rho() - ); - - Info<< "Reading field U\n" << endl; - volVectorField U - ( - IOobject - ( - "U", - runTime.timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh - ); - -# include "compressibleCreatePhi.H" - - - Info<< "Creating turbulence model\n" << endl; - autoPtr<compressible::turbulenceModel> turbulence - ( - compressible::turbulenceModel::New - ( - rho, - U, - phi, - thermo - ) - ); - - Info<< "Creating field DpDt\n" << endl; - volScalarField DpDt - ( - fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p) - ); diff --git a/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H b/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H deleted file mode 100644 index 4e19adaae48..00000000000 --- a/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H +++ /dev/null @@ -1,23 +0,0 @@ - Info<< "Reading thermodynamicProperties\n" << endl; - - IOdictionary thermodynamicProperties - ( - IOobject - ( - "thermodynamicProperties", - runTime.constant(), - mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE - ) - ); - - dimensionedScalar R - ( - thermodynamicProperties.lookup("R") - ); - - dimensionedScalar Cv - ( - thermodynamicProperties.lookup("Cv") - ); diff --git a/applications/solvers/compressible/sonicFoam/Allwmake b/applications/solvers/compressible/sonicFoam/Allwmake new file mode 100755 index 00000000000..27c1194eaf6 --- /dev/null +++ b/applications/solvers/compressible/sonicFoam/Allwmake @@ -0,0 +1,9 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +wmake +wmake sonicDyMFoam +wmake sonicLiquidFoam + +# ----------------------------------------------------------------- end-of-file diff --git a/applications/solvers/compressible/sonicFoam/UEqn.H b/applications/solvers/compressible/sonicFoam/UEqn.H index 25506783aee..27edbece47f 100644 --- a/applications/solvers/compressible/sonicFoam/UEqn.H +++ b/applications/solvers/compressible/sonicFoam/UEqn.H @@ -1,8 +1,8 @@ fvVectorMatrix UEqn ( fvm::ddt(rho, U) - + fvm::div(phi, U) - + turbulence->divDevRhoReff(U) + + fvm::div(phi, U) + + turbulence->divDevRhoReff(U) ); solve(UEqn == -fvc::grad(p)); diff --git a/applications/solvers/compressible/sonicDyMFoam/Make/files b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/Make/files similarity index 100% rename from applications/solvers/compressible/sonicDyMFoam/Make/files rename to applications/solvers/compressible/sonicFoam/sonicDyMFoam/Make/files diff --git a/applications/solvers/compressible/sonicDyMFoam/Make/options b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/Make/options similarity index 95% rename from applications/solvers/compressible/sonicDyMFoam/Make/options rename to applications/solvers/compressible/sonicFoam/sonicDyMFoam/Make/options index 81495fb1f65..73e3e02dc4a 100644 --- a/applications/solvers/compressible/sonicDyMFoam/Make/options +++ b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/Make/options @@ -1,5 +1,5 @@ EXE_INC = \ - -I../sonicFoam \ + -I.. \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ -I$(LIB_SRC)/finiteVolume/lnInclude \ diff --git a/applications/solvers/compressible/sonicFoam/sonicDyMFoam/pEqn.H b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/pEqn.H new file mode 100644 index 00000000000..98cc22d15a5 --- /dev/null +++ b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/pEqn.H @@ -0,0 +1,33 @@ +rho = thermo.rho(); + +volScalarField rAU(1.0/UEqn.A()); +U = UEqn.H()/UEqn.A(); + +surfaceScalarField phid +( + "phid", + fvc::interpolate(psi) + *( + (fvc::interpolate(U) & mesh.Sf()) + - fvc::meshPhi(rho, U) + ) +); + +for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) +{ + fvScalarMatrix pEqn + ( + fvm::ddt(psi, p) + + fvm::div(phid, p) + - fvm::laplacian(rho*rAU, p) + ); + + pEqn.solve(); + + phi = pEqn.flux(); +} + +#include "compressibleContinuityErrs.H" + +U -= rAU*fvc::grad(p); +U.correctBoundaryConditions(); diff --git a/applications/solvers/compressible/sonicDyMFoam/sonicDyMFoam.C b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/sonicDyMFoam.C similarity index 66% rename from applications/solvers/compressible/sonicDyMFoam/sonicDyMFoam.C rename to applications/solvers/compressible/sonicFoam/sonicDyMFoam/sonicDyMFoam.C index 453a84b9a3f..dd870e9a311 100644 --- a/applications/solvers/compressible/sonicDyMFoam/sonicDyMFoam.C +++ b/applications/solvers/compressible/sonicFoam/sonicDyMFoam/sonicDyMFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -62,14 +62,7 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" - fvVectorMatrix UEqn - ( - fvm::ddt(rho, U) - + fvm::div(phi, U) - + turbulence->divDevRhoReff(U) - ); - - solve(UEqn == -fvc::grad(p)); + #include "UEqn.H" #include "eEqn.H" @@ -78,50 +71,12 @@ int main(int argc, char *argv[]) for (int corr=0; corr<nCorr; corr++) { - U = UEqn.H()/UEqn.A(); - - surfaceScalarField phid - ( - "phid", - fvc::interpolate(psi) - *( - (fvc::interpolate(U) & mesh.Sf()) - fvc::meshPhi(rho, U) - ) - ); - - for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) - { - fvScalarMatrix pEqn - ( - fvm::ddt(psi, p) - + fvm::div(phid, p) - - fvm::laplacian(rho/UEqn.A(), p) - ); - - pEqn.solve(); - - phi = pEqn.flux(); - } - - #include "compressibleContinuityErrs.H" - - U -= fvc::grad(p)/UEqn.A(); - U.correctBoundaryConditions(); + #include "pEqn.H" } - DpDt = fvc::DDt - ( - surfaceScalarField - ( - "phiU", - phi/fvc::interpolate(rho) + fvc::meshPhi(rho, U) - ), - p - ); - turbulence->correct(); - rho = psi*p; + rho = thermo.rho(); runTime.write(); diff --git a/applications/solvers/compressible/sonicFoam/sonicFoam.C b/applications/solvers/compressible/sonicFoam/sonicFoam.C index 820945edeac..2923446e2fc 100644 --- a/applications/solvers/compressible/sonicFoam/sonicFoam.C +++ b/applications/solvers/compressible/sonicFoam/sonicFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/compressible/sonicLiquidFoam/Make/files b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/Make/files similarity index 100% rename from applications/solvers/compressible/sonicLiquidFoam/Make/files rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/Make/files diff --git a/applications/solvers/compressible/sonicLiquidFoam/Make/options b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/Make/options similarity index 100% rename from applications/solvers/compressible/sonicLiquidFoam/Make/options rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/Make/options diff --git a/applications/solvers/compressible/sonicLiquidFoam/compressibleContinuityErrs.H b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/compressibleContinuityErrs.H similarity index 100% rename from applications/solvers/compressible/sonicLiquidFoam/compressibleContinuityErrs.H rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/compressibleContinuityErrs.H diff --git a/applications/solvers/compressible/sonicLiquidFoam/createFields.H b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/createFields.H similarity index 100% rename from applications/solvers/compressible/sonicLiquidFoam/createFields.H rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/createFields.H diff --git a/applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/readThermodynamicProperties.H similarity index 100% rename from applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/readThermodynamicProperties.H diff --git a/applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/readTransportProperties.H similarity index 100% rename from applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/readTransportProperties.H diff --git a/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/sonicLiquidFoam.C similarity index 98% rename from applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C rename to applications/solvers/compressible/sonicFoam/sonicLiquidFoam/sonicLiquidFoam.C index 86987d92c91..c948d4737ce 100644 --- a/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C +++ b/applications/solvers/compressible/sonicFoam/sonicLiquidFoam/sonicLiquidFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H b/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H deleted file mode 100644 index c30f65b4458..00000000000 --- a/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H +++ /dev/null @@ -1,18 +0,0 @@ - Info<< "Reading transportProperties\n" << endl; - - IOdictionary transportProperties - ( - IOobject - ( - "transportProperties", - runTime.constant(), - mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE - ) - ); - - dimensionedScalar mu - ( - transportProperties.lookup("mu") - ); diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh index 1e165b9bbfb..356077d3243 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh @@ -24,12 +24,17 @@ boundaryField outlet { type buoyantPressure; - value uniform 101325; + value $internalField; } - sides { - type fixedValue; + type totalPressure; + p0 $internalField; + U U; + phi phi; + rho none; + psi none; + gamma 1; value $internalField; } base diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh index 47b78e4c87f..38b3c31d20b 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh @@ -26,10 +26,15 @@ boundaryField type buoyantPressure; value $internalField; } - sides { - type fixedValue; + type totalPressure; + p0 $internalField; + U U; + phi phi; + rho none; + psi none; + gamma 1; value $internalField; } base diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution index 8c855503fc9..72c26cef38e 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution @@ -18,18 +18,11 @@ FoamFile solvers { - rho + "(rho|rhoFinal)" { solver PCG; preconditioner DIC; tolerance 1e-7; - relTol 0.1; - }; - - rhoFinal - { - $rho; - tolerance 1e-7; relTol 0; }; @@ -69,7 +62,6 @@ solvers relTol 0; }; - Ii { solver GAMG; diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties new file mode 100644 index 00000000000..d0a0998654c --- /dev/null +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/system/fvSolution index 0cfde23d316..739c8a48a61 100644 --- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/system/fvSolution @@ -52,6 +52,8 @@ PIMPLE nOuterCorrectors 2; nCorrectors 1; nNonOrthogonalCorrectors 0; + rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5; + rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0; } relaxationFactors diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/system/fvSolution index 58e0443d468..8c260da89ef 100644 --- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/system/fvSolution @@ -55,6 +55,8 @@ PIMPLE nOuterCorrectors 50; nCorrectors 1; nNonOrthogonalCorrectors 0; + rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5; + rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0; } relaxationFactors diff --git a/tutorials/compressible/rhoPimpleFoam/ras/cavity/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/ras/cavity/system/fvSolution index 80bab234da9..197228f4bce 100644 --- a/tutorials/compressible/rhoPimpleFoam/ras/cavity/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/ras/cavity/system/fvSolution @@ -59,6 +59,8 @@ PIMPLE nOuterCorrectors 1; nCorrectors 2; nNonOrthogonalCorrectors 0; + rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5; + rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0; } diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSchemes b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSchemes index 184f6b4d1b2..8792a00a157 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSchemes +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSchemes @@ -23,8 +23,6 @@ ddtSchemes gradSchemes { default Gauss linear; - grad(U) Gauss linear; - grad(p) Gauss linear; } divSchemes @@ -34,6 +32,7 @@ divSchemes div(phi,h) Gauss upwind; div(phi,epsilon) Gauss upwind; div(phi,k) Gauss upwind; + div(U,p) Gauss upwind; } laplacianSchemes @@ -50,7 +49,6 @@ laplacianSchemes interpolationSchemes { default linear; - div(U,p) upwind phi; } snGradSchemes diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSolution b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSolution index f9e889652c7..e6b7b5ec15b 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSolution +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctExplicit/system/fvSolution @@ -57,7 +57,7 @@ solvers SIMPLE { nNonOrthogonalCorrectors 0; - rhoMin rhoMin [ 1 -3 0 0 0 ] 1.0; + rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5; rhoMax rhoMax [ 1 -3 0 0 0 ] 1.5; } diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/boundary b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/boundary index dc9ecffb7b8..117139f5052 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/boundary +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/boundary @@ -8,7 +8,7 @@ FoamFile { version 2.0; - format ascii; + format binary; class polyBoundaryMesh; location "constant/polyMesh"; object boundary; diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/system/fvSchemes b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/system/fvSchemes index 92ad9e08559..a5f9ea99dda 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/system/fvSchemes +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/system/fvSchemes @@ -23,8 +23,6 @@ ddtSchemes gradSchemes { default Gauss linear; - grad(U) Gauss linear; - grad(p) Gauss linear; } divSchemes @@ -34,6 +32,7 @@ divSchemes div(phi,h) Gauss upwind; div(phi,epsilon) Gauss upwind; div(phi,k) Gauss upwind; + div(U,p) Gauss upwind; } laplacianSchemes @@ -49,7 +48,6 @@ laplacianSchemes interpolationSchemes { default linear; - div(U,p) upwind phi; } snGradSchemes diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/sampleDict b/tutorials/compressible/sonicFoam/laminar/shockTube/system/sampleDict index 5c511b54cb2..2e59f91be1f 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/sampleDict +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/sampleDict @@ -19,21 +19,22 @@ interpolationScheme cellPoint; setFormat raw; +surfaceFormat dx; +surfaces (); + sets ( data { type uniform; axis x; - start ( -4.995 0 0 ); - end ( 4.995 0 0 ); + start (-4.995 0 0); + end (4.995 0 0); nPoints 1000; } ); -surfaces (); - -fields ( T magU p ); +fields (T magU p); // ************************************************************************* // -- GitLab