From e5b64f774041ff44a45632113c32b4b04e5b255e Mon Sep 17 00:00:00 2001
From: sergio <s.ferraris@opencfd.co.uk>
Date: Mon, 13 Dec 2021 09:07:25 -0800
Subject: [PATCH] ENH: Calculating L from saturation states.

---
 .../alphatWallBoilingWallFunctionFvPatchScalarField.C | 11 ++++++-----
 .../wallBoilingSubModels/MHFModels/Jeschar/Jeschar.C  |  2 +-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C
index a613c2866cf..6e449c5080d 100644
--- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C
+++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C
@@ -639,18 +639,19 @@ void alphatWallBoilingWallFunctionFvPatchScalarField::updateCoeffs()
             const fvPatchScalarField& hew =
                 liquid.thermo().he().boundaryField()[patchi];
 
-            const scalarField hw
+            const scalarField hwLiqSat
             (
                 liquid.thermo().he().member() == "e"
-              ? hew.patchInternalField() + pw/rhow.patchInternalField()
-              : hew.patchInternalField()
+              ? liquid.thermo().he(pw, Tsatc, patchi)
+                    + pw/rhow.patchInternalField()
+              : liquid.thermo().he(pw, Tsatc, patchi)
             );
 
             const scalarField L
             (
                 vapor.thermo().he().member() == "e"
-              ? vapor.thermo().he(pw, Tsatc, patchi) + pw/rhoVaporw - hw
-              : vapor.thermo().he(pw, Tsatc, patchi) - hw
+              ? vapor.thermo().he(pw, Tsatc, patchi) + pw/rhoVaporw - hwLiqSat
+              : vapor.thermo().he(pw, Tsatc, patchi) - hwLiqSat
             );
 
             // Liquid phase fraction at the wall
diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/MHFModels/Jeschar/Jeschar.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/MHFModels/Jeschar/Jeschar.C
index d4f0d6f734e..61419a6ef99 100644
--- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/MHFModels/Jeschar/Jeschar.C
+++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/MHFModels/Jeschar/Jeschar.C
@@ -99,7 +99,7 @@ Foam::wallBoilingModels::CHFModels::Jeschar::MHF
         Kmhf_*rhoVapor*L
        *(
             pow(sigma/(mag(g.value())*(rhoLiq - rhoVapor)), 0.25)
-          * sqrt(mag(g.value())*(rhoLiq - rhoVapor)/(rhoLiq + rhoVapor))
+          * sqrt(mag(g.value())*(rhoLiq - rhoVapor)/(rhoLiq + rhoVapor + VSMALL))
         );
 }
 
-- 
GitLab