33 template<
class BasicPsiThermo,
class MixtureType>
47 if (doOldTimes && (
p.nOldTimes() ||
T.nOldTimes()))
71 const typename MixtureType::thermoType& mixture_ =
72 this->cellMixture(celli);
76 TCells[celli] = mixture_.THE
84 psiCells[celli] = mixture_.psi(pCells[celli], TCells[celli]);
86 muCells[celli] = mixture_.mu(pCells[celli], TCells[celli]);
87 alphaCells[celli] = mixture_.alphah(pCells[celli], TCells[celli]);
90 const volScalarField::Boundary& pBf =
p.boundaryField();
91 volScalarField::Boundary& TBf =
T.boundaryFieldRef();
92 volScalarField::Boundary& psiBf =
psi.boundaryFieldRef();
93 volScalarField::Boundary& heBf =
he.boundaryFieldRef();
94 volScalarField::Boundary& muBf =
mu.boundaryFieldRef();
95 volScalarField::Boundary& alphaBf =
alpha.boundaryFieldRef();
110 const typename MixtureType::thermoType& mixture_ =
111 this->patchFaceMixture(patchi, facei);
113 phe[facei] = mixture_.HE(
pp[facei], pT[facei]);
115 ppsi[facei] = mixture_.psi(
pp[facei], pT[facei]);
116 pmu[facei] = mixture_.mu(
pp[facei], pT[facei]);
117 palpha[facei] = mixture_.alphah(
pp[facei], pT[facei]);
124 const typename MixtureType::thermoType& mixture_ =
125 this->patchFaceMixture(patchi, facei);
129 pT[facei] = mixture_.THE(phe[facei],
pp[facei], pT[facei]);
132 ppsi[facei] = mixture_.psi(
pp[facei], pT[facei]);
133 pmu[facei] = mixture_.mu(
pp[facei], pT[facei]);
134 palpha[facei] = mixture_.alphah(
pp[facei], pT[facei]);
142 template<
class BasicPsiThermo,
class MixtureType>
146 const word& phaseName
149 heThermo<BasicPsiThermo, MixtureType>(
mesh, phaseName)
164 template<
class BasicPsiThermo,
class MixtureType>
168 const word& phaseName,
169 const word& dictionaryName
172 heThermo<BasicPsiThermo, MixtureType>(
mesh, phaseName, dictionaryName)
190 template<
class BasicPsiThermo,
class MixtureType>
197 template<
class BasicPsiThermo,
class MixtureType>
volScalarField he_
Energy field.
Ostream & endl(Ostream &os)
Add newline and flush stream.
#define forAll(list, i)
Loop across all elements in list.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
fvPatchField< scalar > fvPatchScalarField
A class for handling words, derived from Foam::string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
#define DebugInFunction
Report an information message using Foam::Info.
virtual ~hePsiThermo()
Destructor.
const dimensionedScalar mu
Atomic mass unit.
Enthalpy/Internal energy for a mixture.
Mesh data needed to do the Finite Volume discretisation.
Energy for a mixture based on compressibility.
const volScalarField & psi
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
virtual void correct()
Update properties.
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())