38 template<
class Thermo,
class OtherThermo>
45 const fvMesh&
mesh = this->mesh_;
54 cutCellIso cutCell(
mesh, ap);
56 forAll(interfaceArea_, celli)
58 const label status = cutCell.calcSubCell(celli, isoAlpha_);
59 interfaceArea_[celli] = 0;
62 interfaceArea_[celli] =
mag(cutCell.faceArea())/
mesh.V()[celli];
70 template<
class Thermo,
class OtherThermo>
83 dict.subDict(
"saturationPressure"),
87 isoAlpha_(
dict.getOrDefault<scalar>(
"isoAlpha", 0.5)),
121 template<
class Thermo,
class OtherThermo>
133 const typename OtherThermo::thermoType& vapourThermo =
143 const volScalarField& Yv = this->toThermo_.composition().Y(speciesName);
154 auto&
rhog = tRhog.ref();
165 auto& Dvg = tDvg.ref();
167 Dvg = this->Dto(speciesName);
178 Wv/(XvSat*Wv + (1-XvSat)*this->toThermo_.W())
192 *C_*
rhog*Dvg*gradYgm*interfaceArea_
217 template<
class Thermo,
class OtherThermo>
230 template<
class Thermo,
class OtherThermo>
Different types of constants.
dimensionedScalar rhog("rhog", dimDensity, transportProperties)
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
A list of keyword definitions, which are a keyword followed by a number of values (eg...
virtual tmp< volScalarField > KSu(label modelVariable, const volScalarField &field)
Explicit mass transfer coefficient.
static const volPointInterpolation & New(const fvMesh &mesh, Args &&... args)
Get existing or create MeshObject registered with typeName.
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
Base class for interface composition models, templated on the two thermodynamic models either side of...
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
word member() const
Return member (name without the extension)
virtual tmp< volScalarField > KSp(label modelVariable, const volScalarField &field)
Implicit mass transfer coefficient.
const dimensionSet dimless
Dimensionless.
#define forAll(list, i)
Loop across all elements in list.
virtual const multiphaseInter::phaseModel & to() const
To phase.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
dimensionedScalar pos(const dimensionedScalar &ds)
virtual const multiphaseInter::phaseModel & from() const
From phase.
Calculate the gradient of the given field.
A class for handling words, derived from Foam::string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
virtual bool write(const bool writeOnProc=true) const
Write using setting from DB.
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
static tmp< GeometricField< scalar, fvPatchField, volMesh > > New(const word &name, IOobjectOption::registerOption regOpt, const Mesh &mesh, const dimensionSet &dims, const word &patchFieldType=fvPatchField< scalar >::calculatedType())
Return tmp field (NO_READ, NO_WRITE) from name, mesh, dimensions and patch type. [Takes current timeN...
diffusionGasEvaporation(const dictionary &dict, const phasePair &pair)
Construct from components.
int debug
Static debugging option.
const dimensionSet dimMoles(0, 0, 0, 0, 1, 0, 0)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
tmp< volScalarField > rho() const
Return the phase density.
const dimensionSet dimDensity
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Mesh data needed to do the Finite Volume discretisation.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
A class for managing temporary objects.
Gas diffusion based evaporation/condensation mass transfer model.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
Defines the attributes of an object for which implicit objectRegistry management is supported...
Description for mass transfer between a pair of phases. The direction of the mass transfer is from th...
Do not request registration (bool: false)
virtual tmp< volScalarField > Kexp(const volScalarField &field)
Explicit total mass transfer coefficient.
static constexpr const zero Zero
Global zero (0)