reactingEulerFoam: Update and instantiate interface composition models

The nonRandomTwoLiquid and Roult interface composition models have been
instantiated (and updated so that they compile), and a fuller set of
multi-component liquids and multi-component and reacting gases have been
used.

The selection name of the saturated and nonRandomTwoLiquid models have
also been changed to remove the capitalisation from the first letter, as
is consistent with other sub-models that are not proper nouns.
This commit is contained in:
Will Bainbridge
2018-04-09 09:52:38 +01:00
parent 8dcfc9e9f8
commit b9d7740e1f
7 changed files with 87 additions and 7 deletions

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2015-2017 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -58,6 +58,8 @@ namespace Foam
{
using namespace interfaceCompositionModels;
// Gas-side models
// multi-component gas in the presence of a pure liquid
makeInterfaceCompositionType
(
@ -99,6 +101,46 @@ namespace Foam
multiComponentMixture,
constFluidEThermoPhysics
);
makeSpecieInterfaceCompositionType
(
NonRandomTwoLiquid,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constGasEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics
);
// reacting gas in the presence of a multi-component liquid
makeSpecieInterfaceCompositionType
(
Saturated,
heRhoThermo,
rhoReactionThermo,
reactingMixture,
constGasEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics
);
makeSpecieInterfaceCompositionType
(
NonRandomTwoLiquid,
heRhoThermo,
rhoReactionThermo,
reactingMixture,
constGasEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics
);
// Liquid-side models
// multi-component liquid in the presence of a multi-component gas
makeSpecieInterfaceCompositionType
@ -113,6 +155,44 @@ namespace Foam
multiComponentMixture,
constGasEThermoPhysics
);
makeSpecieInterfaceCompositionType
(
Raoult,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constGasEThermoPhysics
);
// multi-component liquid in the presence of a reacting gas
makeSpecieInterfaceCompositionType
(
Henry,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
reactingMixture,
constGasEThermoPhysics
);
makeSpecieInterfaceCompositionType
(
Raoult,
heRhoThermo,
rhoReactionThermo,
multiComponentMixture,
constFluidEThermoPhysics,
heRhoThermo,
rhoReactionThermo,
reactingMixture,
constGasEThermoPhysics
);
}
// ************************************************************************* //

View File

@ -155,7 +155,7 @@ update
const volScalarField& Tf
)
{
volScalarField W(this->thermo_.composition().W());
volScalarField W(this->thermo_.W());
volScalarField X1
(

View File

@ -110,7 +110,7 @@ class NonRandomTwoLiquid
public:
//- Runtime type information
TypeName("NonRandomTwoLiquid");
TypeName("nonRandomTwoLiquid");
// Constructors

View File

@ -82,7 +82,7 @@ protected:
public:
//- Runtime type information
TypeName("Saturated");
TypeName("saturated");
// Constructors

View File

@ -137,7 +137,7 @@ interfaceComposition
(
(gas in liquid)
{
type Saturated;
type saturated;
species ( H2O );
Le 1.0;
saturationPressure

View File

@ -137,7 +137,7 @@ interfaceComposition
(
(gas in liquid)
{
type Saturated;
type saturated;
species ( H2O );
Le 1.0;
saturationPressure

View File

@ -138,7 +138,7 @@ interfaceComposition
(
(gas in liquid)
{
type Saturated;
type saturated;
species ( water );
Le 1.0;
saturationPressure