26 #include "wallBoiling.H" 35 namespace diameterModels
37 namespace nucleationModels
56 const populationBalanceModel& popBal,
57 const dictionary&
dict 60 nucleationModel(popBal, dict),
65 popBal.
mesh().lookupObject<phaseModel>
70 dict.
lookup(
"velocityGroup")
82 popBal_.continuousPhase().
name()
93 const tmp<volScalarField> talphat(turbulence_.alphat());
94 const volScalarField::Boundary& alphatBf = talphat().boundaryField();
96 typedef compressible::alphatWallBoilingWallFunctionFvPatchScalarField
97 alphatWallBoilingWallFunction;
103 isA<alphatWallBoilingWallFunction>(alphatBf[patchi])
106 const alphatWallBoilingWallFunction& alphatw =
107 refCast<const alphatWallBoilingWallFunction>(alphatBf[
patchi]);
111 if (
min(dDep) < velGroup_.sizeGroups().first().d().value())
114 <<
"Minimum departure diameter " <<
min(dDep)
115 <<
" m outside of range [" 116 << velGroup_.sizeGroups().first().d().value() <<
", " 117 << velGroup_.sizeGroups().last().d().value() <<
"] m" 118 <<
" at patch " << alphatw.patch().name()
120 <<
" The nucleation rate in populationBalance " 122 <<
" Adjust discretization over property space to" 123 <<
" suppress this warning." 126 else if (
max(dDep) > velGroup_.sizeGroups().last().d().value())
129 <<
"Maximum departure diameter " <<
max(dDep)
130 <<
" m outside of range [" 131 << velGroup_.sizeGroups().first().d().value() <<
", " 132 << velGroup_.sizeGroups().last().d().value() <<
"] m" 133 <<
" at patch " << alphatw.patch().name()
135 <<
" The nucleation rate in populationBalance " 137 <<
" Adjust discretization over property space to" 138 <<
" suppress this warning." 154 const phaseModel& phase = fi.phase();
156 const tmp<volScalarField> talphat(turbulence_.alphat());
157 const volScalarField::Boundary& alphatBf = talphat().
boundaryField();
159 typedef compressible::alphatWallBoilingWallFunctionFvPatchScalarField
160 alphatWallBoilingWallFunction;
166 isA<alphatWallBoilingWallFunction>(alphatBf[patchi])
169 const alphatWallBoilingWallFunction& alphatw =
170 refCast<const alphatWallBoilingWallFunction>(alphatBf[
patchi]);
175 const labelList& faceCells = alphatw.patch().faceCells();
181 if (dmdt[facei] > small)
183 const label faceCelli = faceCells[facei];
185 nucleationRate[faceCelli] +=
189 velGroup_.formFactor()*
pow3(dDep[facei]*unitLength)
191 *dmdt[facei]/rho[faceCelli]/fi.x().
value();
virtual void correct()
Correct diameter independent expressions.
#define forAll(list, i)
Loop across all elements in list.
ThermalDiffusivity< PhaseCompressibleTurbulenceModel< phaseModel > > phaseCompressibleTurbulenceModel
Typedef for phaseCompressibleTurbulenceModel.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const word & name() const
Return name.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
const Boundary & boundaryField() const
Return const-reference to the boundary field.
To & refCast(From &r)
Reference type cast template function.
ThermalDiffusivity< CompressibleTurbulenceModel< fluidThermo > > turbulenceModel
Ostream & endl(Ostream &os)
Add newline and flush stream.
const dimensionedScalar gamma(const label i, const dimensionedScalar &v) const
Return allocation coefficient.
const populationBalanceModel & popBal_
Reference to the populationBalanceModel.
Macros for easy insertion into run-time selection tables.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
stressControl lookup("compactNormalStress") >> compactNormalStress
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
const Type & value() const
Return const reference to value.
const List< sizeGroup * > & sizeGroups() const
Return the sizeGroups belonging to this populationBalance.
List< label > labelList
A List of labels.
virtual void addToNucleationRate(volScalarField &nucleationRate, const label i)
Add to nucleationRate.
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
defineTypeNameAndDebug(combustionModel, 0)
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
word name(const complex &)
Return a string representation of a complex.
dimensionedScalar pow3(const dimensionedScalar &ds)
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
wallBoiling(const populationBalanceModel &popBal, const dictionary &dict)