From a7c8d1cfca13b30df10bf5d2ff4657e5f0b5893e Mon Sep 17 00:00:00 2001 From: sergio Date: Mon, 19 Dec 2016 15:39:13 -0800 Subject: [PATCH] ENH: changing rhoSimpleFoam to rhothermo and bounding thermo.rho between minRho and maxRho. Bounding thermo.rho in rhoPorousSimpleFoam. Changing initial time step in externalSolarLoad tutorial. Commenting out momemtun source term in steamInjection which causes problems --- .../solvers/compressible/rhoSimpleFoam/createFields.H | 7 +++---- applications/solvers/compressible/rhoSimpleFoam/pEqn.H | 5 +++++ applications/solvers/compressible/rhoSimpleFoam/pcEqn.H | 2 ++ .../compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H | 4 ++++ .../solvers/compressible/rhoSimpleFoam/rhoSimpleFoam.C | 2 +- .../externalSolarLoad/system/controlDict | 6 +++++- .../laminar/steamInjection/constant/fvOptions | 6 +++--- 7 files changed, 23 insertions(+), 9 deletions(-) diff --git a/applications/solvers/compressible/rhoSimpleFoam/createFields.H b/applications/solvers/compressible/rhoSimpleFoam/createFields.H index e8c2ce6d54..176a61a0c1 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/createFields.H +++ b/applications/solvers/compressible/rhoSimpleFoam/createFields.H @@ -1,10 +1,9 @@ Info<< "Reading thermophysical properties\n" << endl; - -autoPtr pThermo +autoPtr pThermo ( - psiThermo::New(mesh) + rhoThermo::New(mesh) ); -psiThermo& thermo = pThermo(); +rhoThermo& thermo = pThermo(); thermo.validate(args.executable(), "h", "e"); volScalarField rho diff --git a/applications/solvers/compressible/rhoSimpleFoam/pEqn.H b/applications/solvers/compressible/rhoSimpleFoam/pEqn.H index e46f2a6691..291c220b95 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/pEqn.H @@ -1,4 +1,6 @@ { + //const volScalarField& psi = thermo.psi(); + volScalarField rAU(1.0/UEqn.A()); surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU)); volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p)); @@ -93,6 +95,9 @@ rho = max(rho, rhoMin); rho = min(rho, rhoMax); + thermo.rho() = max(thermo.rho(), rhoMin); + thermo.rho() = min(thermo.rho(), rhoMax); + if (!simple.transonic()) { rho.relax(); diff --git a/applications/solvers/compressible/rhoSimpleFoam/pcEqn.H b/applications/solvers/compressible/rhoSimpleFoam/pcEqn.H index 67b962f805..446a7849d0 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/pcEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/pcEqn.H @@ -109,6 +109,8 @@ if (closedVolume) rho = thermo.rho(); rho = max(rho, rhoMin); rho = min(rho, rhoMax); +thermo.rho() = max(thermo.rho(), rhoMin); +thermo.rho() = min(thermo.rho(), rhoMax); if (!simple.transonic()) { diff --git a/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H index 7b55983161..cdabc4dad9 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam/pEqn.H @@ -86,6 +86,10 @@ rho = thermo.rho(); rho = max(rho, rhoMin); rho = min(rho, rhoMax); + + thermo.rho() = max(thermo.rho(), rhoMin); + thermo.rho() = min(thermo.rho(), rhoMax); + rho.relax(); Info<< "rho max/min : " << max(rho).value() << " " diff --git a/applications/solvers/compressible/rhoSimpleFoam/rhoSimpleFoam.C b/applications/solvers/compressible/rhoSimpleFoam/rhoSimpleFoam.C index 5cffb13411..63f00f881d 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/rhoSimpleFoam.C +++ b/applications/solvers/compressible/rhoSimpleFoam/rhoSimpleFoam.C @@ -33,7 +33,7 @@ Description \*---------------------------------------------------------------------------*/ #include "fvCFD.H" -#include "psiThermo.H" +#include "rhoThermo.H" #include "turbulentFluidThermoModel.H" #include "simpleControl.H" #include "fvOptions.H" diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict index cedfba6ff5..b03a976296 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict @@ -25,7 +25,7 @@ stopAt endTime; endTime 18000; -deltaT 10; +deltaT 1; writeControl adjustableRunTime; @@ -49,4 +49,8 @@ adjustTimeStep yes; maxCo 15; +maxDeltaT 10; + +maxDi 0.25; + // ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions index ae17055b8c..92a4b462c0 100644 --- a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions @@ -43,7 +43,7 @@ options } } } - +/* momentumSource1 { type vectorSemiImplicitSource; @@ -55,11 +55,11 @@ options volumeMode absolute; injectionRateSuSp { - U.steam ((0 1e-1 0) 0); // kg*m/s^2 + U.steam ((0 1e-2 0) 0); // kg*m/s^2 } } } - +*/ energySource1 { type scalarSemiImplicitSource;