46 const volVectorField&
U,
47 const surfaceScalarField&
phi
50 psiThermo(
U.
mesh(), word::null),
51 twoPhaseMixture(
U.
mesh(), *this),
52 interfaceProperties(
alpha1(),
U, *this),
70 thermo1_ = rhoThermo::New(
U.mesh(), phase1Name());
71 thermo2_ = rhoThermo::New(
U.mesh(), phase2Name());
90 thermo1_->he() = thermo1_->he(p_, T_);
93 thermo2_->he() = thermo2_->he(p_, T_);
100 psi_ =
alpha1()*thermo1_->psi() +
alpha2()*thermo2_->psi();
101 mu_ =
alpha1()*thermo1_->mu() +
alpha2()*thermo2_->mu();
102 alpha_ =
alpha1()*thermo1_->alpha() +
alpha2()*thermo2_->alpha();
110 return thermo1_->thermoName() +
',' + thermo2_->thermoName();
116 return thermo1_->incompressible() && thermo2_->incompressible();
122 return thermo1_->isochoric() && thermo2_->isochoric();
164 return alpha1()*thermo1_->hc() +
alpha2()*thermo2_->hc();
196 return alpha1()*thermo1_->Cp() +
alpha2()*thermo2_->Cp();
215 return alpha1()*thermo1_->Cv() +
alpha2()*thermo2_->Cv();
234 return alpha1()*thermo1_->gamma() +
alpha2()*thermo2_->gamma();
253 return alpha1()*thermo1_->Cpv() +
alpha2()*thermo2_->Cpv();
273 alpha1()*thermo1_->CpByCpv()
274 +
alpha2()*thermo2_->CpByCpv();
299 return mu()/(
alpha1()*thermo1_->rho() +
alpha2()*thermo2_->rho());
319 return alpha1()*thermo1_->kappa() +
alpha2()*thermo2_->kappa();
337 alpha1()*thermo1_->alphahe()
338 +
alpha2()*thermo2_->alphahe();
359 alpha1()*thermo1_->kappaEff(alphat)
360 +
alpha2()*thermo2_->kappaEff(alphat);
382 alpha1()*thermo1_->alphaEff(alphat)
383 +
alpha2()*thermo2_->alphaEff(alphat);
const volScalarField & alpha1
const volScalarField & alpha2
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
bool read(Istream &is)
Read dictionary from Istream (discards the header). Reads entries until EOF or when the first token i...
bool read()
Read transportProperties dictionary.
virtual void correctThermo()
Correct the thermodynamics of each phase.
virtual word thermoName() const
Return the name of the thermo physics.
virtual tmp< volScalarField > Cv() const
Heat capacity at constant volume [J/kg/K].
virtual tmp< volScalarField > W() const
Molecular weight [kg/kmol].
virtual tmp< volScalarField > gamma() const
Gamma = Cp/Cv [].
virtual bool incompressible() const
Return true if the equation of state is incompressible.
virtual tmp< volScalarField > Cpv() const
Heat capacity at constant pressure/volume [J/kg/K].
virtual tmp< volScalarField > kappaEff(const volScalarField &alphat) const
Effective thermal diffusivity of mixture [J/m/s/K].
virtual tmp< scalarField > THE(const scalarField &h, const scalarField &p, const scalarField &T0, const labelList &cells) const
Temperature from enthalpy/internal energy for cell-set.
virtual ~twoPhaseMixtureThermo()
Destructor.
virtual tmp< volScalarField > kappa() const
Thermal diffusivity for temperature of mixture [J/m/s/K].
virtual tmp< volScalarField > Cp() const
Heat capacity at constant pressure [J/kg/K].
virtual void correct()
Update mixture properties.
virtual volScalarField & he()
Enthalpy/Internal energy [J/kg].
virtual tmp< volScalarField > hc() const
Chemical enthalpy [J/kg].
virtual bool read()
Read base transportProperties dictionary.
virtual tmp< volScalarField > alphaEff(const volScalarField &alphat) const
Effective thermal diffusivity of mixture [J/m/s/K].
twoPhaseMixtureThermo(const volVectorField &U, const surfaceScalarField &phi)
Construct from components.
virtual tmp< volScalarField > nu() const
Kinematic viscosity of mixture [m^2/s].
virtual tmp< volScalarField > alphahe() const
Thermal diffusivity for energy of mixture [kg/m/s].
virtual tmp< volScalarField > CpByCpv() const
Heat capacity ratio [].
virtual bool isochoric() const
Return true if the equation of state is isochoric.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
List< label > labelList
A List of labels.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
refPtr< fileOperation > fileHandler(std::nullptr_t)
Delete current file handler - forwards to fileOperation::handler().
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)