Go to the documentation of this file.
33 #include "phaseSystem.H"
59 if (!isA<wallFvPatch>(
patch()))
62 <<
"Patch type for patch " <<
patch().name() <<
" must be wall\n"
63 <<
"Current patch type is " <<
patch().type() <<
nl
75 return 9.24*(
pow(Prat, 0.75) - 1)*(1 + 0.28*
exp(-0.007*Prat));
93 for (
int i=0; i<maxIters_; i++)
95 scalar
f = ypt - (
log(E_*ypt)/kappa_ + P[facei])/Prat[facei];
96 scalar df = 1 - 1.0/(ypt*kappa_*Prat[facei]);
97 scalar yptNew = ypt -
f/df;
103 else if (
mag(yptNew - ypt) < tolerance_)
105 ypsf[facei] = yptNew;
132 fluid.phases()[internalField().group()]
135 const label patchi =
patch().index();
144 const scalar Cmu25 =
pow025(Cmu_);
167 phase.thermo().
T().boundaryField()[patchi];
174 (prevAlphat + alphaw)*hew.
snGrad()
199 if (
yPlus[facei] < yPlusTherm[facei])
201 scalar
A = qDot[facei]*rhow[facei]*
uTau[facei]*
y[facei];
202 scalar
B = qDot[facei]*
Pr[facei]*
yPlus[facei];
208 scalar
A = qDot[facei]*rhow[facei]*
uTau[facei]*
y[facei];
210 qDot[facei]*Prt_*(1.0/kappa_*
log(E_*
yPlus[facei]) + P[facei]);
212 uTau[facei]/kappa_*
log(E_*yPlusTherm[facei]) -
mag(Uw[facei]);
214 0.5*rhow[facei]*
uTau[facei]
220 alphatConv[facei] =
max(0.0,
alphaEff - alphaw[facei]);
255 Prt_(
dict.getOrDefault<scalar>(
"Prt", 0.85)),
256 Cmu_(
dict.getOrDefault<scalar>(
"Cmu", 0.09)),
257 kappa_(
dict.getOrDefault<scalar>(
"kappa", 0.41)),
258 E_(
dict.getOrDefault<scalar>(
"E", 9.8))
319 fixedValueFvPatchScalarField::updateCoeffs();
334 writeEntry(
"value", os);
virtual void write(Ostream &) const
Write.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
virtual tmp< Field< Type > > snGrad() const
Return patch-normal gradient.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
tmp< scalarField > calcAlphat(const scalarField &prevAlphat) const
Update turbulent thermal diffusivity.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
A class for managing temporary objects.
void checkType()
Check the type of the patch.
This boundary condition provides a thermal wall function for turbulent thermal diffusivity (usuallyal...
static const word propertiesName
Default name of the turbulence properties dictionary.
static const Foam::dimensionedScalar B("", Foam::dimless, 18.678)
Abstract base-class for all alphatWallFunctions supporting phase-change.
static const Foam::dimensionedScalar A("", Foam::dimPressure, 611.21)
dimensionedScalar exp(const dimensionedScalar &ds)
tmp< scalarField > Psmooth(const scalarField &Prat) const
'P' function
makePatchTypeField(fvPatchScalarField, alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField)
#define forAll(list, i)
Loop across all elements in list.
dimensionedScalar pow025(const dimensionedScalar &ds)
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
scalar Prt_
Turbulent Prandtl number.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
dimensionedScalar Pr("Pr", dimless, laminarTransport)
virtual tmp< Field< Type > > patchInternalField() const
Return internal field next to patch as patch field.
scalar Cmu_
Cmu coefficient.
alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
tmp< scalarField > yPlusTherm(const scalarField &P, const scalarField &Prat) const
Calculate y+ at the edge of the thermal laminar sublayer.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
dimensionedScalar log(const dimensionedScalar &ds)
Macros for easy insertion into run-time selection tables.
virtual void write(Ostream &) const
Write.
errorManipArg< error, int > exit(error &err, const int errNo=1)
const word & name() const
tmp< GeometricField< Type, PatchField, GeoMesh > > T() const
Return transpose (only if it is a tensor field)
scalar kappa_
Von Karman constant.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
const std::string patch
OpenFOAM patch number as a std::string.
Templated wrapper class to provide compressible turbulence models thermal diffusivity based thermal t...
dimensionedScalar sqrt(const dimensionedScalar &ds)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
label k
Boltzmann constant.
volScalarField alphaEff("alphaEff", turbulence->nu()/Pr+alphat)
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
Foam::fvPatchFieldMapper.
Class to represent a system of phases and model interfacial transfers between them.
static word groupName(StringType base, const word &group)
Create dot-delimited name.group string.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Graphite solid properties.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...