From da2e7bdbbde4902c1c3e394bf065238ade3801f8 Mon Sep 17 00:00:00 2001 From: Henry Weller <http://cfd.direct> Date: Thu, 20 Aug 2015 15:29:44 +0100 Subject: [PATCH] tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection: New tutorial to demonstrate steam condensation --- .../laminar/steamInjection/0/T.steam | 42 ++++ .../laminar/steamInjection/0/T.water | 42 ++++ .../laminar/steamInjection/0/U.steam | 42 ++++ .../laminar/steamInjection/0/U.water | 42 ++++ .../laminar/steamInjection/0/alpha.steam | 47 ++++ .../laminar/steamInjection/0/alpha.water | 47 ++++ .../laminar/steamInjection/0/nut.water | 41 ++++ .../laminar/steamInjection/0/p | 40 ++++ .../laminar/steamInjection/0/p_rgh | 41 ++++ .../laminar/steamInjection/0/water.steam | 42 ++++ .../laminar/steamInjection/0/water.water | 42 ++++ .../laminar/steamInjection/constant/fvOptions | 81 +++++++ .../laminar/steamInjection/constant/g | 22 ++ .../steamInjection/constant/phaseProperties | 222 ++++++++++++++++++ .../constant/thermophysicalProperties.steam | 60 +++++ .../constant/thermophysicalProperties.water | 66 ++++++ .../constant/turbulenceProperties.steam | 20 ++ .../constant/turbulenceProperties.water | 20 ++ .../steamInjection/system/blockMeshDict | 61 +++++ .../laminar/steamInjection/system/controlDict | 55 +++++ .../laminar/steamInjection/system/fvSchemes | 75 ++++++ .../laminar/steamInjection/system/fvSolution | 97 ++++++++ 22 files changed, 1247 insertions(+) create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/nut.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p_rgh create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/g create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/phaseProperties create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.steam create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.water create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/blockMeshDict create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/controlDict create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSchemes create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSolution diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.steam new file mode 100644 index 00000000000..c0cd064e494 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.steam @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object T.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform 372.76; + +boundaryField +{ + walls + { + type zeroGradient; + } + outlet + { + type inletOutlet; + phi phi.steam; + inletValue $internalField; + value $internalField; + } + inlet + { + type fixedValue; + value $internalField; + } +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.water new file mode 100644 index 00000000000..16c68c31f2f --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/T.water @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object T.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform 360; + +boundaryField +{ + walls + { + type fixedValue; + value $internalField; + } + outlet + { + type inletOutlet; + phi phi.water; + inletValue $internalField; + value $internalField; + } + inlet + { + type zeroGradient; + } +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.steam new file mode 100644 index 00000000000..15d945857aa --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.steam @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format binary; + class volVectorField; + location "0"; + object U.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0.1 0); + +boundaryField +{ + inlet + { + type fixedValue; + value uniform (0 0.1 0); + } + outlet + { + type pressureInletOutletVelocity; + phi phi.steam; + value $internalField; + } + walls + { + type fixedValue; + value uniform (0 0 0); + } +} + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.water new file mode 100644 index 00000000000..256fe1cb1ad --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/U.water @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format binary; + class volVectorField; + location "0"; + object U.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0.1 0); + +boundaryField +{ + inlet + { + type fixedValue; + value uniform (0 0.1 0); + } + outlet + { + type pressureInletOutletVelocity; + phi phi.water; + value $internalField; + } + walls + { + type fixedValue; + value uniform (0 0 0); + } +} + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.steam new file mode 100644 index 00000000000..0b69e50eed9 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.steam @@ -0,0 +1,47 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object alpha.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type fixedValue; + value uniform 0.; + } + outlet + { + type inletOutlet; + phi phi.steam; + inletValue uniform 0; + value uniform 0; + } + walls + { + type zeroGradient; + } + defaultFaces + { + type empty; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.water new file mode 100644 index 00000000000..f7aab53be20 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/alpha.water @@ -0,0 +1,47 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object alpha.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 1; + +boundaryField +{ + inlet + { + type fixedValue; + value uniform 1.; + } + outlet + { + type inletOutlet; + phi phi.water; + inletValue uniform 1.0; + value uniform 1.0; + } + walls + { + type zeroGradient; + } + defaultFaces + { + type empty; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/nut.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/nut.water new file mode 100644 index 00000000000..634a29a38b5 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/nut.water @@ -0,0 +1,41 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nut; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform 1e-8; + +boundaryField +{ + inlet + { + type calculated; + value $internalField; + } + outlet + { + type calculated; + value $internalField; + } + walls + { + type nutkWallFunction; + value $internalField; + } +} + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p new file mode 100644 index 00000000000..799576be27a --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p @@ -0,0 +1,40 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [ 1 -1 -2 0 0 0 0 ]; + +internalField uniform 1e5; + +boundaryField +{ + inlet + { + type calculated; + value $internalField; + } + outlet + { + type calculated; + value $internalField; + } + walls + { + type calculated; + value $internalField; + } +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p_rgh b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p_rgh new file mode 100644 index 00000000000..071e58a3951 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/p_rgh @@ -0,0 +1,41 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p_rgh; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [ 1 -1 -2 0 0 0 0 ]; + +internalField uniform 1e5; + +boundaryField +{ + inlet + { + type fixedFluxPressure; + value $internalField; + } + outlet + { + type prghPressure; + p $internalField; + value $internalField; + } + walls + { + type fixedFluxPressure; + value $internalField; + } +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.steam new file mode 100644 index 00000000000..edd088bc174 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.steam @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object AIR.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 1; + +boundaryField +{ + inlet + { + type fixedValue; + value uniform 1; + } + outlet + { + type inletOutlet; + phi phi.steam; + inletValue $internalField; + value $internalField; + } + walls + { + type zeroGradient; + } +} + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.water new file mode 100644 index 00000000000..78063efe664 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/0/water.water @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object AIR.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 1; + +boundaryField +{ + inlet + { + type fixedValue; + value $internalField; + } + outlet + { + type inletOutlet; + phi phi.water; + inletValue $internalField; + value $internalField; + } + walls + { + type zeroGradient; + } +} + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions new file mode 100644 index 00000000000..6a3a4da0be7 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/fvOptions @@ -0,0 +1,81 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object fvOptions; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +injector1 +{ + timeStart 1; + duration 500; + selectionMode points; + points + ( + (0.075 0.2 0.05) + ); +} + +options +{ + massSource1 + { + type scalarSemiImplicitSource; + + scalarSemiImplicitSourceCoeffs + { + $injector1; + + volumeMode absolute; + injectionRateSuSp + { + thermo:rho.steam (1.0e-3 0); // kg/s + } + } + } + + momentumSource1 + { + type vectorSemiImplicitSource; + + vectorSemiImplicitSourceCoeffs + { + $injector1; + + volumeMode absolute; + injectionRateSuSp + { + U.steam ((0 1e-1 0) 0); // kg*m/s^2 + } + } + } + + energySource1 + { + type scalarSemiImplicitSource; + + scalarSemiImplicitSourceCoeffs + { + $injector1; + + volumeMode absolute; + injectionRateSuSp + { + e.steam (3700 0); // kg*m^2/s^3 + } + } + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/g b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/g new file mode 100644 index 00000000000..0cc222ca345 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value (0 -9.81 0); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/phaseProperties b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/phaseProperties new file mode 100644 index 00000000000..fc976bc67cb --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/phaseProperties @@ -0,0 +1,222 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object phaseProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +type thermalPhaseChangeTwoPhaseSystem; + +phases (steam water); + +volatile "water"; + +massTransfer on; + +steam +{ + type multiComponentPhaseModel; + diameterModel isothermal; + isothermalCoeffs + { + d0 3e-3; + p0 1e5; + } + Sc 0.7; + + residualAlpha 1e-6; +} + +water +{ + type multiComponentPhaseModel; + diameterModel constant; + constantCoeffs + { + d 1e-4; + } + Sc 0.7; + + residualAlpha 1e-6; +} + +blending +{ + default + { + type none; + continuousPhase water; + minFullyContinuousAlpha.steam 0.7; + minPartlyContinuousAlpha.steam 0.5; + minFullyContinuousAlpha.water 0.7; + minPartlyContinuousAlpha.water 0.5; + } + + heatTransfer + { + type none; + continuousPhase water; + minFullyContinuousAlpha.steam 1; + minPartlyContinuousAlpha.steam 0; + minFullyContinuousAlpha.water 1; + minPartlyContinuousAlpha.water 0; + } + + massTransfer + { + type none; + continuousPhase water; + minFullyContinuousAlpha.steam 1; + minPartlyContinuousAlpha.steam 0; + minFullyContinuousAlpha.water 1; + minPartlyContinuousAlpha.water 0; + } +} + +surfaceTension +( + (steam and water) + { + type constant; + sigma 0.07; + } +); + +saturationModel +{ + type constant; + pSat 1e5; + Tsat 372.76; +}; + + +aspectRatio +( + (steam in water) + { + type constant; + E0 1.0; + } + + (water in steam) + { + type constant; + E0 1.0; + } +); + +drag +( + (steam in water) + { + type SchillerNaumann; + residualRe 1e-3; + swarmCorrection + { + type none; + } + } + + (water in steam) + { + type SchillerNaumann; + residualRe 1e-3; + swarmCorrection + { + type none; + } + } +); + +virtualMass +( + (steam in water) + { + type constantCoefficient; + Cvm 0.5; + } + + (water in steam) + { + type constantCoefficient; + Cvm 0.5; + } +); + +interfaceComposition +( + (steam in water) + { + type Saturated; + species ( H2O ); + Le 1.0; + saturationPressure + { + type ArdenBuck; + } + } + +); + +heatTransfer.steam +( + (steam in water) + { + type spherical; + residualAlpha 1e-4; + } +); + +heatTransfer.water +( + (steam in water) + { + type RanzMarshall; + residualAlpha 1e-4; + } +); + +massTransfer.steam +( + +); + +massTransfer.water +( + +); + +lift +( +); + +wallLubrication +( +); + +turbulentDispersion +( + (steam in water) + { + type Burns;// + sigma 0.7; + Ctd 1.0; + residualAlpha 1e-3; + } +); + +// Minimum allowable pressure +pMin 10000; + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.steam new file mode 100644 index 00000000000..4053b173ee9 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.steam @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +thermoType +{ + type heRhoThermo; + mixture multiComponentMixture; + transport const; + thermo hRefConst; + equationOfState perfectGas; + specie specie; + energy sensibleInternalEnergy; +} + +species +( + water +); + +inertSpecie water; + +water +{ + specie + { + nMoles 1; + molWeight 18.0153; + } + + thermodynamics + { + Hf 0; + Cp 2078.4; + Tref 372.76; + Href 2675500; + } + + transport + { + mu 1.2256e-5; + Pr 2.289; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.water new file mode 100644 index 00000000000..3e40c9dce6a --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/thermophysicalProperties.water @@ -0,0 +1,66 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +thermoType +{ + type heRhoThermo; + mixture multiComponentMixture; + transport const; + thermo hRefConst; + equationOfState perfectFluid; + specie specie; + energy sensibleInternalEnergy; +} + +species +( + water +); + +inertSpecie water; + +water +{ + specie + { + nMoles 1; + molWeight 18.0153; + } + + equationOfState + { + R 3000; + rho0 959; + } + + thermodynamics + { + Hf 0; + Cp 4195; + Tref 372.76; + Href 417500; + } + + transport + { + mu 2.8291e-4; + Pr 2.289; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.steam b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.steam new file mode 100644 index 00000000000..bdcd006d4eb --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.steam @@ -0,0 +1,20 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties.steam; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.water b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.water new file mode 100644 index 00000000000..2accd9147b9 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/constant/turbulenceProperties.water @@ -0,0 +1,20 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/blockMeshDict b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/blockMeshDict new file mode 100644 index 00000000000..d03967afdc2 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/blockMeshDict @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +convertToMeters 1; + +vertices +( + (0 0 0) + (0.15 0 0) + (0.15 1 0) + (0 1 0) + (0 0 0.1) + (0.15 0 0.1) + (0.15 1 0.1) + (0 1 0.1) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) (25 75 1) simpleGrading (1 1 1) +); + +edges +( +); + +patches +( + patch inlet + ( + (1 5 4 0) + ) + patch outlet + ( + (3 7 6 2) + ) + wall walls + ( + (0 4 7 3) + (2 6 5 1) + ) +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/controlDict b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/controlDict new file mode 100644 index 00000000000..c39421ffae2 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/controlDict @@ -0,0 +1,55 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application reactingTwoPhaseEulerFoam; + +startFrom startTime; + +startTime 0; + +stopAt endTime; + +endTime 10; + +deltaT 1e-6; + +writeControl adjustableRunTime; + +writeInterval 0.5; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 10; + +writeCompression compressed; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable yes; + +adjustTimeStep yes; + +maxCo 0.1; + +maxDeltaT 1e-2; + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSchemes b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSchemes new file mode 100644 index 00000000000..2eb1993dc71 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSchemes @@ -0,0 +1,75 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; +} + +divSchemes +{ + default none; + + "div\(phi,alpha.*\)" Gauss vanLeer; + "div\(phir,alpha.*\)" Gauss vanLeer; + + "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; + "div\(phi.*,U.*\)" Gauss limitedLinearV 1; + + "div\(alphaRhoPhi.*,Yi\)" Gauss limitedLinear 1; + "div\(alphaRhoPhi.*,(h|e).*\)" Gauss limitedLinear 1; + "div\(alphaRhoPhi.*,K.*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; + + "div\(alphaRhoPhi.*,(k|epsilon).*\)" Gauss limitedLinear 1; + "div\(phim,(k|epsilon)m\)" Gauss limitedLinear 1; + + "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear uncorrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default uncorrected; +} + +fluxRequired +{ + default no; +} + +wallDist +{ + method meshWave; +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSolution b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSolution new file mode 100644 index 00000000000..6cf90aa61f3 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection/system/fvSolution @@ -0,0 +1,97 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "alpha.*" + { + nAlphaCorr 1; + nAlphaSubCycles 3; + } + + p_rgh + { + solver PCG; + preconditioner DIC; + tolerance 1e-8; + relTol 0; + } + + p_rghFinal + { + $p_rgh; + relTol 0; + } + + "U.*" + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-6; + relTol 0; + minIter 1; + } + + "(e|h).*" + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-6; + relTol 0; + minIter 1; + maxIter 20; + } + + "(k|epsilon|Theta).*" + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-8; + relTol 0; + minIter 1; + } + + Yi + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-6; + relTol 0; + minIter 1; + residualAlpha 1e-8; + } +} + +PIMPLE +{ + nOuterCorrectors 4; + nCorrectors 1; + nNonOrthogonalCorrectors 0; + nEnergyCorrectors 1; + faceMomentum on; +} + +relaxationFactors +{ + equations + { + ".*" 1; + } +} + + +// ************************************************************************* // -- GitLab