35 template<
class Thermo,
class OtherThermo>
89 isoAlpha_(
dict.getOrDefault<scalar>(
"isoAlpha", 0.5))
95 template<
class Thermo,
class OtherThermo>
119 const label status =
cutCell.calcSubCell(celli, isoAlpha_);
122 Salpha[celli] = scalar(1);
128 max((oxideCrit_.value() - to)/oxideCrit_.value(), scalar(0));
135 - scalar(1)/
max((
T - Tsolidus_)/(Tliquidus_ - Tsolidus_),scalar(1
e-6))
139 mDotOxide_ = C_*tSalpha*tSoxide*tST;
145 if (isA<timeVaryingMassSorptionFvPatchScalarField>(alphab[patchi]))
148 refCast<const timeVaryingMassSorptionFvPatchScalarField>
160 mesh.time().timeName(),
168 rhoto = this->pair().
to().
rho();
172 const label cellI = fc[faceI];
173 const scalar rhoI = rhoto[cellI];
174 mDotOxide_[cellI] += rhoI*tsb()[faceI];
183 template<
class Thermo,
class OtherThermo>
195 template<
class Thermo,
class OtherThermo>
A list of keyword definitions, which are a keyword followed by a number of values (eg...
static const volPointInterpolation & New(const fvMesh &mesh, Args &&... args)
Get existing or create a new MeshObject.
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
T & ref() const
Return non-const reference to the contents of a non-null managed pointer.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
Class for cutting a cell, celli, of an fvMesh, mesh_, at its intersection with an isosurface defined ...
Base class for interface composition models, templated on the two thermodynamic models either side of...
virtual tmp< volScalarField > Kexp(const volScalarField &field)
Explicit total mass transfer coefficient.
Service routines for cutting a cell, celli, of an fvMesh, mesh_, at its intersection with a surface...
#define forAll(list, i)
Loop across all elements in list.
virtual const multiphaseInter::phaseModel & to() const
To phase.
const dimensionedScalar e
Elementary charge.
virtual const multiphaseInter::phaseModel & from() const
From phase.
dimensionedScalar exp(const dimensionedScalar &ds)
interfaceOxideRate(const dictionary &dict, const phasePair &pair)
Construct from components.
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
tmp< volScalarField > rho() const
Return the phase density.
const dimensionSet dimDensity
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)
Internal & ref(const bool updateAccessTime=true)
Same as internalFieldRef()
virtual tmp< volScalarField > KSp(label modelVariable, const volScalarField &field)
Implicit mass transfer coefficient.
A class for managing temporary objects.
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...
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
virtual tmp< volScalarField > KSu(label modelVariable, const volScalarField &field)
Explicit mass transfer coefficient.
static constexpr const zero Zero
Global zero (0)