46 mixedFvPatchScalarField(p, iF),
52 valueFraction() = 1.0;
64 mixedFvPatchScalarField(p, iF),
68 if (dict.
found(
"refValue"))
82 valueFraction() = 1.0;
98 mixedFvPatchScalarField(ptf, p, iF, mapper),
117 mixedFvPatchScalarField(ptf, iF),
135 mixedFvPatchScalarField::autoMap(m);
146 mixedFvPatchScalarField::rmap(ptf, addr);
175 if (dom.nLambda() != 1)
178 <<
" a grey boundary condition is used with a non-grey " 197 const vector& myRayId = dom.IRay(rayId).dAve();
203 for (
label rayI=1; rayI < dom.nRay(); rayI++)
205 Ir += dom.IRay(rayI).qin().boundaryField()[
patchi];
210 if ((-n[facei] & myRayId) > 0.0)
213 refGrad()[facei] = 0.0;
214 valueFraction()[facei] = 1.0;
217 Ir[facei]*(scalar(1) - temissivity[facei])
223 qem[facei] = refValue()[facei]*nAve[facei];
228 valueFraction()[facei] = 0.0;
229 refGrad()[facei] = 0.0;
230 refValue()[facei] = 0.0;
233 qin[facei] = Iw[facei]*nAve[facei];
240 mixedFvPatchScalarField::updateCoeffs();
251 writeEntryIfDifferent<word>(os,
"T",
"T", TName_);
Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating ...
This boundary condition provides a grey-diffuse condition for radiation intensity, I, for use with the finite-volume discrete-ordinates model (fvDOM), in which the radiation temperature is retrieved from the temperature field boundary condition.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
friend Ostream & operator(Ostream &, const fvPatchField< Type > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
static int & msgType()
Message tag of standard messages.
greyDiffusiveRadiationMixedFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
virtual void write(Ostream &) const
Write.
const volScalarField & qr() const
Return const access to the boundary heat flux.
scalarField emissivity_
Emissivity.
Macros for easy insertion into run-time selection tables.
const vector & dAve() const
Return the average vector inside the solid angle.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
const dimensionedScalar sigma
Stefan-Boltzmann constant: default SI units: [W/m^2/K^4].
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A class for handling words, derived from string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
void write(Ostream &) const
Write.
Foam::fvPatchFieldMapper.
volScalarField & qem()
Return non-const access to the boundary emitted heat flux.
void write(std::ostream &os, const bool binary, List< floatScalar > &fField)
Write floats ascii or binary.
Common functions to emissivity. It gets supplied from lookup into a dictionary or calculated by the s...
word emissivityMethod() const
Method to obtain emissivity.
virtual label size() const
Return size.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
void setRayIdLambdaId(const word &name, label &rayId, label &lambdaId) const
Set the rayId and lambdaId from by decomposing an intensity.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
word name(const complex &)
Return a string representation of a complex.
volScalarField & qin()
Return non-const access to the boundary incident heat flux.
Radiation intensity for a ray in a given direction.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
dimensionedScalar pow4(const dimensionedScalar &ds)
static const Field< scalar > & null()
Return a null field.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)