34template<
class BasicSol
idThermo,
class MixtureType>
41 scalarField& rhoCells = this->rho_.primitiveFieldRef();
42 scalarField& alphaCells = this->alpha_.primitiveFieldRef();
47 this->cellMixture(celli);
50 this->cellVolMixture(pCells[celli], TCells[celli], celli);
54 TCells[celli] = mixture_.THE
62 rhoCells[celli] = volMixture_.rho(pCells[celli], TCells[celli]);
65 volMixture_.kappa(pCells[celli], TCells[celli])
67 mixture_.Cpv(pCells[celli], TCells[celli]);
70 volScalarField::Boundary& pBf = this->p_.boundaryFieldRef();
71 volScalarField::Boundary& TBf = this->T_.boundaryFieldRef();
72 volScalarField::Boundary& rhoBf = this->rho_.boundaryFieldRef();
73 volScalarField::Boundary& heBf = this->
he().boundaryFieldRef();
74 volScalarField::Boundary& alphaBf = this->alpha_.boundaryFieldRef();
76 forAll(this->T_.boundaryField(), patchi)
89 this->patchFaceMixture(patchi, facei);
92 this->patchFaceVolMixture
100 phe[facei] = mixture_.HE(pp[facei], pT[facei]);
101 prho[facei] = volMixture_.rho(pp[facei], pT[facei]);
104 volMixture_.kappa(pp[facei], pT[facei])
105 / mixture_.Cpv(pp[facei], pT[facei]);
113 this->patchFaceMixture(patchi, facei);
116 this->patchFaceVolMixture
126 pT[facei] = mixture_.THE(phe[facei], pp[facei] ,pT[facei]);
129 prho[facei] = volMixture_.rho(pp[facei], pT[facei]);
132 volMixture_.kappa(pp[facei], pT[facei])
133 / mixture_.Cpv(pp[facei], pT[facei]);
138 this->alpha_.correctBoundaryConditions();
143template<
class BasicSol
idThermo,
class MixtureType>
148 const word& phaseName
151 heThermo<BasicSolidThermo, MixtureType>(
mesh, phaseName)
159template<
class BasicSol
idThermo,
class MixtureType>
165 const word& phaseName
176template<
class BasicSol
idThermo,
class MixtureType>
181 const word& phaseName,
198template<
class BasicSol
idThermo,
class MixtureType>
205template<
class BasicSol
idThermo,
class MixtureType>
216template<
class BasicSol
idThermo,
class MixtureType>
252 ).Kappa(pCells[celli], TCells[celli]);
260 const scalarField& pT = this->T_.boundaryField()[patchi];
261 const scalarField& pp = this->p_.boundaryField()[patchi];
266 this->patchFaceVolMixture
272 ).Kappa(pp[facei], pT[facei]);
280template<
class BasicSol
idThermo,
class MixtureType>
287 const scalarField& pp = this->p_.boundaryField()[patchi];
288 const scalarField& Tp = this->T_.boundaryField()[patchi];
296 this->patchFaceVolMixture
302 ).Kappa(pp[facei], Tp[facei]);
Internal::FieldType & primitiveFieldRef(const bool updateAccessTime=true)
Return a reference to the internal field.
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
static word timeName(const scalar t, const int precision=precision_)
void size(const label n)
Older name for setAddressableSize.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Mesh data needed to do the Finite Volume discretisation.
const Time & time() const
Return the top-level database.
Energy for a solid mixture.
virtual void correct()
Update properties.
virtual tmp< volVectorField > Kappa() const
Anisotropic thermal conductivity [W/m/K].
virtual ~heSolidThermo()
Destructor.
Enthalpy/Internal energy for a mixture.
ThermoType thermoType
The type of thermodynamics this mixture is instantiated for.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
const word dictName("faMeshDefinition")
#define DebugInfo
Report an information message using Foam::Info.
#define DebugInFunction
Report an information message using Foam::Info.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimEnergy
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
Field< vector > vectorField
Specialisation of Field<T> for vector.
static constexpr const zero Zero
Global zero (0)
fvPatchField< scalar > fvPatchScalarField
constexpr char nl
The newline '\n' character (0x0a)
#define forAll(list, i)
Loop across all elements in list.