47 mixedFvPatchScalarField(p, iF),
53 valueFraction() = 1.0;
66 mixedFvPatchScalarField(ptf, p, iF, mapper),
85 mixedFvPatchScalarField(p, iF),
89 if (dict.
found(
"value"))
119 mixedFvPatchScalarField(ptf),
137 mixedFvPatchScalarField(ptf, iF),
166 const fvDOM& dom(refCast<const fvDOM>(radiation));
172 const label patchI = patch().index();
174 if (dom.nLambda() == 0)
179 "wideBandDiffusiveRadiationMixedFvPatchScalarField::updateCoeffs" 180 ) <<
" a non-grey boundary condition is used with a grey " 196 dom.blackBody().bLambda(lambdaId).boundaryField()[patchI]
206 scalarField Ir = dom.IRay(0).Qin().boundaryField()[patchI];
208 for (
label rayI=1; rayI < dom.nRay(); rayI++)
210 Ir += dom.IRay(rayI).Qin().boundaryField()[patchI];
215 const vector& d = dom.IRay(rayId).d();
217 if ((-n[faceI] & d) > 0.0)
220 refGrad()[faceI] = 0.0;
221 valueFraction()[faceI] = 1.0;
224 Ir[faceI]*(1.0 - temissivity[faceI])
225 + temissivity[faceI]*Eb[faceI]
229 Qem[faceI] = refValue()[faceI]*nAve[faceI];
234 valueFraction()[faceI] = 0.0;
235 refGrad()[faceI] = 0.0;
236 refValue()[faceI] = 0.0;
239 Qin[faceI] = Iw[faceI]*nAve[faceI];
246 mixedFvPatchScalarField::updateCoeffs();
257 writeEntryIfDifferent<word>(os,
"T",
"T", TName_);
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Top level model for radiation modelling.
GeometricBoundaryField & boundaryField()
Return reference to GeometricBoundaryField.
word name(const complex &)
Return a string representation of a complex.
const dimensionedScalar sigma
Stefan-Boltzmann constant: default SI units: [W/m2/K4].
volScalarField & Qem()
Return non-const access to the boundary emmited heat flux.
Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating ...
A class for handling words, derived from string.
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)
Foam::fvPatchFieldMapper.
void write(Ostream &) const
Write.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void write(Ostream &) const
Write.
A list of keyword definitions, which are a keyword followed by any number of values (e...
word emissivityMethod() const
Method to obtain emissivity.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
static const Field< scalar > & null()
Return a null field.
This boundary condition provides a wide-band, diffusive radiation condition, where the patch temperat...
const vector & dAve() const
Return the average vector inside the solid angle.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
static int & msgType()
Message tag of standard messages.
Macros for easy insertion into run-time selection tables.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
wideBandDiffusiveRadiationMixedFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
scalarField emissivity_
Emissivity.
rDeltaT dimensionedInternalField()
autoPtr< radiation::radiationModel > radiation(radiation::radiationModel::New(T))
volScalarField & Qin()
Return non-const access to the boundary incident heat flux.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
Radiation intensity for a ray in a given direction.
const volScalarField & Qr() const
Return const access to the boundary heat flux.
dimensionedScalar pow4(const dimensionedScalar &ds)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
makePatchTypeField(fvPatchVectorField, SRFFreestreamVelocityFvPatchVectorField)
virtual label size() const
Return size.
friend Ostream & operator(Ostream &, const fvPatchField< Type > &)
const Type & value() const
Return const reference to value.