47 mixedFvPatchScalarField(
p, iF,
dict, false),
49 TName_(
dict.lookupOrDefault<
word>(
"T",
"T"))
51 if (
dict.found(
"refValue"))
74 valueFraction() = 1.0;
90 mixedFvPatchScalarField(ptf,
p, iF, mapper),
94 ptf.emissivityMethod(),
109 mixedFvPatchScalarField(ptf, iF),
113 ptf.emissivityMethod(),
128 mixedFvPatchScalarField::map(ptf, mapper);
138 mixedFvPatchScalarField::reset(ptf);
167 if (dom.nLambda() != 1)
170 <<
" a grey boundary condition is used with a non-grey "
189 const vector& myRayId = dom.IRay(rayId).dAve();
195 for (
label rayI=1; rayI < dom.nRay(); rayI++)
197 Ir += dom.IRay(rayI).qin().boundaryField()[
patchi];
202 if ((-
n[facei] & myRayId) > 0.0)
205 refGrad()[facei] = 0.0;
206 valueFraction()[facei] = 1.0;
209 Ir[facei]*(scalar(1) - emissivity[facei])
215 qem[facei] = refValue()[facei]*nAve[facei];
220 valueFraction()[facei] = 0.0;
221 refGrad()[facei] = 0.0;
222 refValue()[facei] = 0.0;
225 qin[facei] = Iw[facei]*nAve[facei];
232 mixedFvPatchScalarField::updateCoeffs();
243 writeEntryIfDifferent<word>(os,
"T",
"T", TName_);
#define forAll(list, i)
Loop across all elements in list.
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const dimensionSet & dimensions() const
Return dimensions.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
static int & msgType()
Message tag of standard messages.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Abstract base class for field mapping.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
friend Ostream & operator(Ostream &, const fvPatchField< Type > &)
virtual void operator=(const UList< Type > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
This boundary condition provides a grey-diffuse condition for radiation intensity,...
greyDiffusiveRadiationMixedFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void write(Ostream &) const
Write.
virtual void reset(const fvPatchScalarField &)
Reset the fvPatchField to the given fvPatchField.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void map(const fvPatchScalarField &, const fieldMapper &)
Map the given fvPatchField onto this fvPatchField.
Common functions to emissivity. It gets supplied from lookup into a dictionary or calculated by the s...
void write(Ostream &) const
Write.
virtual void reset(const fvPatchScalarField &)
Reset the fvPatchField to the given fvPatchField.
virtual void map(const fvPatchScalarField &, const fieldMapper &)
Map the given fvPatchField onto this fvPatchField.
Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating ...
void setRayIdLambdaId(const word &name, label &rayId, label &lambdaId) const
Set the rayId and lambdaId from by decomposing an intensity.
Radiation intensity for a ray in a given direction.
const vector & dAve() const
Return the average vector inside the solid angle.
const volScalarField & qr() const
Return const access to the boundary heat flux.
volScalarField & qin()
Return non-const access to the boundary incident heat flux.
volScalarField & qem()
Return non-const access to the boundary emitted heat flux.
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const dimensionedScalar sigma
Stefan-Boltzmann constant: default SI units: [W/m^2/K^4].
void write(std::ostream &os, const bool binary, List< floatScalar > &fField)
Write floats ascii or binary.
errorManipArg< error, int > exit(error &err, const int errNo=1)
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 dimensionSet dimLength
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
VolField< scalar > volScalarField
dimensionedScalar pow4(const dimensionedScalar &ds)
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
const unitConversion unitFraction