60 <<
"Patch type for patch " << patch().name() <<
" must be wall\n"
61 <<
"Current patch type is " << patch().type() <<
nl
73 return 9.24*(
pow(Prat, 0.75) - 1)*(1 + 0.28*
exp(-0.007*Prat));
85 auto& ypsf = typsf.ref();
93 const scalar
f = ypt - (
log(
E_*ypt)/
kappa_ + P[facei])/Prat[facei];
94 const scalar df = 1.0 - 1.0/(ypt*
kappa_*Prat[facei]);
95 const scalar yptNew = ypt -
f/df;
103 ypsf[facei] = yptNew;
130 const label patchi = patch().index();
133 const auto& turbModel =
164 (prevAlphat + alphaw)*hew.
snGrad()
183 auto& alphatConv = talphatConv.ref();
192 const scalar
A = qDot[facei]*rhow[facei]*
uTau[facei]*
y[facei];
193 const scalar
B = qDot[facei]*
Pr[facei]*
yPlus[facei];
200 const scalar
A = qDot[facei]*rhow[facei]*
uTau[facei]*
y[facei];
206 0.5*rhow[facei]*
uTau[facei]
212 alphatConv[facei] =
max(0.0,
alphaEff - alphaw[facei]);
248 Cmu_(
dict.getOrDefault<scalar>(
"Cmu", 0.09)),
249 kappa_(
dict.getOrDefault<scalar>(
"kappa", 0.41)),
250 E_(
dict.getOrDefault<scalar>(
"E", 9.8))
311 fixedValueFvPatchScalarField::updateCoeffs();
321 os.writeEntry(
"Prt",
Prt_);
322 os.writeEntry(
"Cmu",
Cmu_);
324 os.writeEntry(
"E",
E_);
335 alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField
static const Foam::dimensionedScalar C("", Foam::dimTemperature, 234.5)
static const Foam::dimensionedScalar A("", Foam::dimPressure, 611.21)
static const Foam::dimensionedScalar B("", Foam::dimless, 18.678)
Macros for easy insertion into run-time selection tables.
Graphite solid properties.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
void writeEntry(const word &keyword, Ostream &os) const
Write the field as a dictionary entry.
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
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,...
This boundary condition provides a thermal wall function for turbulent thermal diffusivity (usuallyal...
scalar kappa_
Von Karman constant.
virtual void write(Ostream &) const
Write.
static scalar tolerance_
Absolute tolerance.
tmp< scalarField > calcAlphat(const scalarField &prevAlphat) const
Update turbulent thermal diffusivity.
tmp< scalarField > yPlusTherm(const scalarField &P, const scalarField &Prat) const
Calculate y+ at the edge of the thermal laminar sublayer.
tmp< scalarField > Psmooth(const scalarField &Prat) const
'P' function
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
scalar Cmu_
Empirical model coefficient.
scalar E_
Wall roughness parameter.
static label maxIters_
Maximum number of iterations.
void checkType()
Check the type of the patch.
alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
scalar Prt_
Turbulent Prandtl number.
Abstract base-class for all alphatWallFunctions supporting phase-change.
scalarField dmdt_
Rate of phase-change.
alphatPhaseChangeWallFunctionFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A FieldMapper for finite-volume patch fields.
virtual void write(Ostream &) const
Write.
virtual tmp< Field< Type > > patchInternalField() const
Return internal field next to patch.
void writeValueEntry(Ostream &os) const
Write *this field as a "value" entry.
virtual tmp< Field< Type > > snGrad() const
Return patch-normal gradient.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
Class to represent a system of phases and model interfacial transfers between them.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
const word & name() const
A class for managing temporary objects.
const T & cref() const
Return const reference to the object or to the contents of a (non-null) managed pointer.
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
static const word propertiesName
Default name of the turbulence properties dictionary.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
OBJstream os(runTime.globalPath()/outputName)
#define makePatchTypeField(PatchTypeField, typePatchTypeField)
Define a concrete fvPatchField type and add to run-time tables Example, (fvPatchScalarField,...
volScalarField alphaEff("alphaEff", turbulence->nu()/Pr+alphat)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedScalar exp(const dimensionedScalar &ds)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
dimensionedScalar log(const dimensionedScalar &ds)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
dimensionedScalar sqrt(const dimensionedScalar &ds)
const Type * isA(const U &obj)
Attempt dynamic_cast to Type.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
ThermalDiffusivity< PhaseCompressibleTurbulenceModel< phaseModel > > phaseCompressibleTurbulenceModel
Typedef for phaseCompressibleTurbulenceModel.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
errorManipArg< error, int > exit(error &err, const int errNo=1)
fvPatchField< vector > fvPatchVectorField
fvPatchField< scalar > fvPatchScalarField
dimensionedScalar pow025(const dimensionedScalar &ds)
constexpr char nl
The newline '\n' character (0x0a).
dimensionedScalar Pr("Pr", dimless, laminarTransport)
#define forAll(list, i)
Loop across all elements in list.