Go to the documentation of this file.
100 #ifndef radiation_fvDOM_H
101 #define radiation_fvDOM_H
180 bool useExternalBeam_;
192 label updateTimeIndex_;
204 void operator=(
const fvDOM&) =
delete;
207 void updateBlackBodyEmission();
226 virtual ~fvDOM() =
default;
284 inline label
nTheta()
const;
287 inline label
nPhi()
const;
290 inline label
nRay()
const;
296 inline label
nBands()
const;
void rotateInitialRays(const vector &sunDir)
Rotate rays spheric equator to sunDir.
label nRay() const
Number of rays.
label nPhi() const
Number of angles in phi.
const volScalarField & a() const
Const access to total absorption coefficient.
A class for handling words, derived from Foam::string.
scalar omegaMax() const
Return omegaMax.
A class for managing temporary objects.
void updateG()
Update G and calculate total heat flux on boundary.
void alignClosestRayToSun(const vector &sunDir)
Align closest ray to sunDir.
Radiation intensity for a ray in a given direction.
const radiativeIntensityRay & IRay(const label rayI) const
Ray intensity for rayI.
const volScalarField & qem() const
Const access to emitted radiative heat flux field.
const volScalarField & qin() const
Const access to incident radiative heat flux field.
const word & name() const
label nLambda() const
Number of wavelengths.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
const volScalarField & IRayLambda(const label rayI, const label lambdaI) const
Ray intensity for rayI and lambda bandwidth.
bool useExternalBeam() const
Use external beam.
A solar calculator model providing models for the solar direction and solar loads.
const volScalarField & G() const
Const access to incident radiation field.
const volScalarField & aLambda(const label lambdaI) const
Const access to wavelength total absorption coefficient.
TypeName("fvDOM")
Runtime type information.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
virtual tmp< volScalarField > Rp() const
Source term component (for power of T^4)
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
void calculate()
Solve radiation equation(s)
autoPtr< radiation::radiationModel > radiation(radiation::radiationModel::New(T))
label nTheta() const
Number of angles in theta.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
void updateRaysDir()
Rotate rays according to Sun direction.
const solarCalculator & solarCalc() const
Solar calculator.
virtual ~fvDOM()=default
Destructor.
vector meshOrientation() const
Return meshOrientation.
const volScalarField & qr() const
Const access to total radiative heat flux field.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
bool read()
Read radiation properties dictionary.
bool useSolarLoad() const
Use solar load.
Top level model for radiation modelling.
const scalarList & spectralDistribution() const
Energy spectral distribution for external beam.
Class black body emission.
const blackBodyEmission & blackBody() const
Const access to black body.
virtual tmp< volScalarField::Internal > Ru() const
Source term component (constant)
void setRayIdLambdaId(const word &name, label &rayId, label &lambdaId) const
Set the rayId and lambdaId from by decomposing an intensity.
label nBands() const
Number of bands.
Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating ...