38template<
class Thermo,
class OtherThermo>
39void Foam::meltingEvaporationModels::
40diffusionGasEvaporation<Thermo, OtherThermo>::updateInterface
56 forAll(interfaceArea_, celli)
58 const label status =
cutCell.calcSubCell(celli, isoAlpha_);
59 interfaceArea_[celli] = 0;
70template<
class Thermo,
class OtherThermo>
83 dict.subDict(
"saturationPressure"),
87 isoAlpha_(
dict.getOrDefault<scalar>(
"isoAlpha", 0.5)),
121template<
class Thermo,
class OtherThermo>
133 const typename OtherThermo::thermoType& vapourThermo =
143 const volScalarField& Yv = this->toThermo_.composition().Y(speciesName);
152 mesh.time().timeName(),
159 rhog = this->pair().to().rho();
166 mesh.time().timeName(),
173 Dvg = this->Dto(speciesName);
184 Wv/(XvSat*Wv + (1-XvSat)*this->toThermo_.W())
198 *C_*
rhog*Dvg*gradYgm*interfaceArea_
201 if (debug &&
mesh.time().outputTime())
223template<
class Thermo,
class OtherThermo>
236template<
class Thermo,
class OtherThermo>
Internal & ref(const bool updateAccessTime=true)
Return a reference to the dimensioned internal field.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
word member() const
Return member (name without the extension)
Base class for interface composition models, templated on the two thermodynamic models either side of...
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
Class for cutting a cell, celli, of an fvMesh, mesh_, at its intersection with an isosurface defined ...
Service routines for cutting a cell, celli, of an fvMesh, mesh_, at its intersection with a surface.
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.
Gas diffusion based evaporation/condensation mass transfer model.
virtual tmp< volScalarField > KSu(label modelVariable, const volScalarField &field)
Explicit mass transfer coefficient.
virtual tmp< volScalarField > KSp(label modelVariable, const volScalarField &field)
Implicit mass transfer coefficient.
Description for mass transfer between a pair of phases. The direction of the mass transfer is from th...
virtual bool write(const bool valid=true) const
Write using setting from DB.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
Calculate the gradient of the given field.
Different types of constants.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
dimensionedScalar pos(const dimensionedScalar &ds)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
const dimensionSet dimless
Dimensionless.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
const dimensionSet dimMoles(0, 0, 0, 0, 1, 0, 0)
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
static constexpr const zero Zero
Global zero (0)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
const dimensionSet dimDensity
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
dimensionedScalar rhog("rhog", dimDensity, transportProperties)
#define forAll(list, i)
Loop across all elements in list.