diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/Make/files b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/Make/files index b6d151720c..839e314d95 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/Make/files +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/Make/files @@ -19,6 +19,7 @@ diameterModels/sphericalDiameter/sphericalDiameter.C diameterModels/constantDiameter/constantDiameter.C diameterModels/isothermalDiameter/isothermalDiameter.C diameterModels/linearTsubDiameter/linearTsubDiameter.C +diameterModels/noDiameter/noDiameter.C diameterModels/velocityGroup/velocityGroup.C diameterModels/IATE/IATE.C diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.C new file mode 100644 index 0000000000..ea7383d578 --- /dev/null +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.C @@ -0,0 +1,85 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Copyright (C) 2022 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see . + +\*---------------------------------------------------------------------------*/ + +#include "noDiameter.H" +#include "addToRunTimeSelectionTable.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace diameterModels +{ + defineTypeNameAndDebug(noDiameter, 0); + addToRunTimeSelectionTable(diameterModel, noDiameter, dictionary); +} +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::diameterModels::noDiameter::noDiameter +( + const dictionary& diameterProperties, + const phaseModel& phase +) +: + diameterModel(diameterProperties, phase) +{} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +Foam::diameterModels::noDiameter::~noDiameter() +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +Foam::tmp +Foam::diameterModels::noDiameter::d() const +{ + FatalErrorInFunction + << "Requested diameter of phase " << phase().name() + << " from diameter model \"" << typeName << "\"." + << exit(FatalError); + + return tmp(nullptr); +} + + +Foam::tmp +Foam::diameterModels::noDiameter::a() const +{ + FatalErrorInFunction + << "Requested surface area per unit volume of phase " << phase().name() + << " from diameter model \"" << typeName << "\"." + << exit(FatalError); + + return tmp(nullptr); +} + + +// ************************************************************************* // diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.H new file mode 100644 index 0000000000..3ed2ea4c48 --- /dev/null +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/noDiameter/noDiameter.H @@ -0,0 +1,94 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Copyright (C) 2022 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see . + +Class + Foam::diameterModels::noDiameter + +Description + Diameter model for purely continuous phases. + +SourceFiles + noDiameter.C + +\*---------------------------------------------------------------------------*/ + +#ifndef noDiameter_H +#define noDiameter_H + +#include "diameterModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace diameterModels +{ + +/*---------------------------------------------------------------------------*\ + Class noDiameter Declaration +\*---------------------------------------------------------------------------*/ + +class noDiameter +: + public diameterModel +{ +public: + + //- Runtime type information + TypeName("none"); + + + // Constructors + + //- Construct from dictionary and phase + noDiameter + ( + const dictionary& diameterProperties, + const phaseModel& phase + ); + + + //- Destructor + virtual ~noDiameter(); + + + // Member Functions + + //- Get the diameter field + virtual tmp d() const; + + //- Return the surface area per unit volume + virtual tmp a() const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace diameterModels +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterAndIsopropanolEvaporation/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterAndIsopropanolEvaporation/constant/phaseProperties index ecc76ee596..2a0bfc3979 100644 --- a/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterAndIsopropanolEvaporation/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterAndIsopropanolEvaporation/constant/phaseProperties @@ -23,8 +23,7 @@ nInterfaceCorrectors 1; gas { type multiComponentPhaseModel; - diameterModel constant; - d 1e-3; + diameterModel none; residualAlpha 1e-6; Sct 0.7; } diff --git a/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterEvaporation/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterEvaporation/constant/phaseProperties index b00deb37e8..2bfe612e94 100644 --- a/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterEvaporation/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/interfaceComposition/waterEvaporation/constant/phaseProperties @@ -23,8 +23,7 @@ nInterfaceCorrectors 1; gas { type multiComponentPhaseModel; - diameterModel constant; - d 1e-3; + diameterModel none; residualAlpha 1e-6; Sct 0.7; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/constant/phaseProperties index a1e218e20e..f3f0639d57 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/constant/phaseProperties @@ -106,11 +106,7 @@ air3 water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/constant/phaseProperties index 22ee569ea2..da6654c04c 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/constant/phaseProperties @@ -106,11 +106,7 @@ air3 water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/constant/phaseProperties index c96335eda9..99ada544fe 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/constant/phaseProperties @@ -149,11 +149,7 @@ air3 water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/drift/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/drift/constant/phaseProperties index 7b0fe27bfe..0ebb86ee87 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/drift/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/drift/constant/phaseProperties @@ -72,11 +72,7 @@ air water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/isothermalGrowth/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/isothermalGrowth/constant/phaseProperties index 9f4edcb0c2..0f756bd201 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/isothermalGrowth/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/isothermalGrowth/constant/phaseProperties @@ -94,11 +94,7 @@ air3 water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/constant/phaseProperties index 186d137137..a88a388897 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/constant/phaseProperties @@ -72,11 +72,7 @@ air water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/constant/phaseProperties index b04eb33648..4c3b93509f 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/constant/phaseProperties @@ -108,11 +108,7 @@ air3 water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/test/multiphase/multiphaseEulerFoam/thermal/waterEvaporation/constant/phaseProperties b/test/multiphase/multiphaseEulerFoam/thermal/waterEvaporation/constant/phaseProperties index 2adf22fc1e..9e426fd778 100644 --- a/test/multiphase/multiphaseEulerFoam/thermal/waterEvaporation/constant/phaseProperties +++ b/test/multiphase/multiphaseEulerFoam/thermal/waterEvaporation/constant/phaseProperties @@ -23,8 +23,7 @@ phaseChange on; steam { type purePhaseModel; - diameterModel constant; - d 1e-3; + diameterModel none; residualAlpha 1e-6; Sct 0.7; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/Grossetete/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/Grossetete/constant/phaseProperties index 04b7cc237d..e4c6c3803d 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/Grossetete/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/Grossetete/constant/phaseProperties @@ -33,11 +33,8 @@ gas liquid { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 0.00045; - } + diameterModel none; + Sc 0.7; residualAlpha 1e-6; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/LBend/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/LBend/constant/phaseProperties index 06ab4d5f4a..aa6043e061 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/LBend/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/LBend/constant/phaseProperties @@ -29,19 +29,16 @@ solids d 462e-6; } - residualAlpha 1e-5; + residualAlpha 1e-5; } gas { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 1; - } - residualAlpha 1e-5; + diameterModel none; + + residualAlpha 1e-5; } blending @@ -49,7 +46,6 @@ blending default { type none; - residualAlpha 1e-6; continuousPhase gas; } } diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/bubblePipe/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/bubblePipe/constant/phaseProperties index 0f8a292c6f..63bf84c98c 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/bubblePipe/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/bubblePipe/constant/phaseProperties @@ -75,12 +75,7 @@ water { type pureIsothermalPhaseModel; - diameterModel constant; - - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/fluidisedBed/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/fluidisedBed/constant/phaseProperties index 0718fe0944..e1b7adf716 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/fluidisedBed/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/fluidisedBed/constant/phaseProperties @@ -38,11 +38,7 @@ air { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 1; - } + diameterModel none; residualAlpha 0; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoiling/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoiling/constant/phaseProperties index 1ee12e56f3..6f19c99fec 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoiling/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoiling/constant/phaseProperties @@ -34,11 +34,7 @@ gas liquid { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 0.00045; - } + diameterModel none; Sc 0.7; residualAlpha 1e-6; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingIATE/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingIATE/constant/phaseProperties index 42b8d158be..9007823166 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingIATE/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingIATE/constant/phaseProperties @@ -71,11 +71,7 @@ gas liquid { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 0.00045; - } + diameterModel none; Sc 0.7; residualAlpha 1e-6; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/constant/phaseProperties index a257c26f31..d5b4a5e95d 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/constant/phaseProperties @@ -69,11 +69,7 @@ gas liquid { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 0.00045; - } + diameterModel none; Sc 0.7; residualAlpha 1e-6; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/constant/phaseProperties index 0240e7c767..2c30738baf 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/constant/phaseProperties @@ -93,11 +93,7 @@ gas2 liquid { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 0.00045; - } + diameterModel none; Sc 0.7; residualAlpha 1e-6; diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/damBreak4phase/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/damBreak4phase/constant/phaseProperties index b0369c4fca..a4abf994d1 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/damBreak4phase/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/damBreak4phase/constant/phaseProperties @@ -21,11 +21,7 @@ phases (water oil mercury air); water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-3; } @@ -33,11 +29,7 @@ water oil { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-3; } @@ -45,11 +37,7 @@ oil mercury { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-3; } @@ -57,11 +45,7 @@ mercury air { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 3e-3; - } + diameterModel none; residualAlpha 1e-3; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/fluidisedBed/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/fluidisedBed/constant/phaseProperties index c7c254c2f6..6aa369447c 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/fluidisedBed/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/fluidisedBed/constant/phaseProperties @@ -34,11 +34,7 @@ particles air { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 1; - } + diameterModel none; residualAlpha 0; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/steamInjection/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/steamInjection/constant/phaseProperties index 0192adcd62..fe08329098 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/steamInjection/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/steamInjection/constant/phaseProperties @@ -36,11 +36,7 @@ steam water { type purePhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-3; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/constant/phaseProperties index 44677312be..182f68eee6 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/constant/phaseProperties @@ -86,11 +86,7 @@ vapor { type reactingPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1; - } + diameterModel none; residualAlpha 1e-5; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/constant/phaseProperties index bbea434966..55cf0be9ae 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/constant/phaseProperties @@ -88,11 +88,7 @@ vapor { type reactingPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1; - } + diameterModel none; Sct 1.0; diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/trickleBed/constant/phaseProperties b/tutorials/multiphase/multiphaseEulerFoam/laminar/trickleBed/constant/phaseProperties index 55be4da384..d76f2f7b28 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/trickleBed/constant/phaseProperties +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/trickleBed/constant/phaseProperties @@ -21,12 +21,7 @@ phases (air water solid); air { type pureIsothermalPhaseModel; - diameterModel isothermal; - isothermalCoeffs - { - d0 3e-3; - p0 1e5; - } + diameterModel none; residualAlpha 1e-6; } @@ -34,11 +29,7 @@ air water { type pureIsothermalPhaseModel; - diameterModel constant; - constantCoeffs - { - d 1e-4; - } + diameterModel none; residualAlpha 1e-6; }