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);
156 mixedFvPatchScalarField::reset(ptf);
181 dom.setRayIdLambdaId(internalField().
name(), rayId, lambdaId);
185 if (dom.nLambda() != 1)
188 <<
" a grey boundary condition is used with a non-grey " 207 const vector& myRayId = dom.IRay(rayId).dAve();
213 for (
label rayI=1; rayI < dom.nRay(); rayI++)
215 Ir += dom.IRay(rayI).qin().boundaryField()[
patchi];
220 if ((-n[facei] & myRayId) > 0.0)
223 refGrad()[facei] = 0.0;
224 valueFraction()[facei] = 1.0;
227 Ir[facei]*(scalar(1) - temissivity[facei])
233 qem[facei] = refValue()[facei]*nAve[facei];
238 valueFraction()[facei] = 0.0;
239 refGrad()[facei] = 0.0;
240 refValue()[facei] = 0.0;
243 qin[facei] = Iw[facei]*nAve[facei];
250 mixedFvPatchScalarField::updateCoeffs();
261 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.
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.
virtual void reset(const fvPatchScalarField &)
Reset the fvPatchField to the given fvPatchField.
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.
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)
virtual void reset(const fvPatchScalarField &)
Reset the fvPatchField to the given fvPatchField.