Go to the documentation of this file.
36 #ifndef InterfaceCompositionModel_H
37 #define InterfaceCompositionModel_H
48 template <
class ThermoType>
class pureMixture;
49 template <
class ThermoType>
class multiComponentMixture;
55 template<
class Thermo,
class OtherThermo>
77 template<
class ThermoType>
81 const word& speciesName,
86 template<
class ThermoType>
90 const word& speciesName,
116 const word& speciesName,
123 const word& speciesName
129 const word& speciesName,
151 #define makeInterfaceCompositionType(Type, Thermo, Comp, Mix, Phys, OtherThermo, OtherComp, OtherMix, OtherPhys)\
153 typedef Thermo<Comp, SpecieMixture<Mix<Phys> > > \
154 Type##Thermo##Comp##Mix##Phys; \
156 typedef OtherThermo<OtherComp, OtherMix<OtherPhys> > \
157 Type##Other##OtherThermo##OtherComp##OtherMix##OtherPhys; \
159 addInterfaceCompositionToRunTimeSelectionTable \
162 Type##Thermo##Comp##Mix##Phys, \
163 Type##Other##OtherThermo##OtherComp##OtherMix##OtherPhys \
167 #define makeSpecieInterfaceCompositionType(Type, Thermo, Comp, Mix, Phys, OtherThermo, OtherComp, OtherMix, OtherPhys)\
169 typedef Thermo<Comp, SpecieMixture<Mix<Phys> > > \
170 Type##Thermo##Comp##Mix##Phys; \
172 typedef OtherThermo<OtherComp, SpecieMixture<OtherMix<OtherPhys> > > \
173 Type##Other##OtherThermo##OtherComp##OtherMix##OtherPhys; \
175 addInterfaceCompositionToRunTimeSelectionTable \
178 Type##Thermo##Comp##Mix##Phys, \
179 Type##Other##OtherThermo##OtherComp##OtherMix##OtherPhys \
183 #define addInterfaceCompositionToRunTimeSelectionTable(Type, Thermo, OtherThermo)\
185 typedef Type<Thermo, OtherThermo> \
186 Type##Thermo##OtherThermo; \
188 defineTemplateTypeNameAndDebugWithName \
190 Type##Thermo##OtherThermo, \
192 word(Type##Thermo##OtherThermo::typeName_()) + "<" \
193 + word(Thermo::typeName) + "," \
194 + word(OtherThermo::typeName) + ">" \
199 addToRunTimeSelectionTable \
201 interfaceCompositionModel, \
202 Type##Thermo##OtherThermo, \
Base class for interface composition models, templated on the two thermodynamic models either side of...
A class for handling words, derived from string.
virtual tmp< volScalarField > L(const word &speciesName, const volScalarField &Tf) const
Latent heat.
A class for managing temporary objects.
virtual tmp< volScalarField > D(const word &speciesName) const
Mass diffusivity.
const pureMixture< ThermoType >::thermoType & getLocalThermo(const word &speciesName, const pureMixture< ThermoType > &globalThermo) const
Get a reference to the local thermo for a pure mixture.
const dimensionedScalar Le_
Lewis number.
const Thermo & thermo_
Thermo.
ThermoType thermoType
The type of thermodynamics this mixture is instantiated for.
Generic base class for interface composition models. These models describe the composition in phase 1...
CGAL::Exact_predicates_exact_constructions_kernel K
virtual tmp< volScalarField > dY(const word &speciesName, const volScalarField &Tf) const
Mass fraction difference between the interface and the field.
InterfaceCompositionModel(const dictionary &dict, const phasePair &pair)
Construct from components.
~InterfaceCompositionModel()
Destructor.
const OtherThermo & otherThermo_
Other Thermo.
Foam::multiComponentMixture.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Generic dimensioned Type class.
virtual void addMDotL(const volScalarField &K, const volScalarField &Tf, volScalarField &mDotL, volScalarField &mDotLPrime) const
Add latent heat flow rate to total.
ThermoType thermoType
The type of thermodynamics this mixture is instantiated for.
Generic GeometricField class.