98#ifndef radiation_solarLoad_H
99#define radiation_solarLoad_H
128 solarCalculator solarCalc_;
137 autoPtr<faceShading> hitFaces_;
140 autoPtr<faceReflecting> reflectedFaces_;
144 DimensionedField<scalar, volMesh> Ru_;
147 List<List<tmp<scalarField>>> absorptivity_;
153 autoPtr<Function1<scalarField>> spectralDistributions_;
156 PtrList<volScalarField> qprimaryRad_;
162 label updateTimeIndex_;
171 bool updateAbsorptivity_;
174 bool useReflectedRays_;
195 void updateSkyDiffusiveRadiation
202 bool updateHitFaces();
205 void updateAbsorptivity(
const labelHashSet& includePatches);
209 solarLoad(
const solarLoad&) =
delete;
212 void operator=(
const solarLoad&) =
delete;
262 return qprimaryRad_[bandI];
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
dictionary()
Default construct, a top-level empty dictionary.
Helper class to calculate visible faces for global, sun-like illumination.
Top level model for radiation modelling.
const volScalarField & T() const noexcept
Return access to the temperature field.
Base class for solarLoad models.
solarLoadBase(const fvMesh &mesh)
Construct.
The solarLoad radiation model includes Sun primary hits, their reflective fluxes and diffusive sky ra...
TypeName("solarLoad")
Runtime type information.
virtual tmp< DimensionedField< scalar, volMesh > > Ru() const
Source term component (constant).
virtual tmp< volScalarField > Rp() const
Source term component (for power of T^4).
virtual const solarCalculator & solarCalculatorRef() const
Return const reference to the solar calculator.
const volScalarField & qprimaryRad(const label bandI) const
Return const access to the primary solar heat flux.
virtual const faceShading & faceShadingRef() const
Return const reference to the face shading calculator.
label nBands() const noexcept
Return const access to the number of bands.
virtual ~solarLoad()=default
Destructor.
bool read()
Read radiationProperties dictionary.
void calculate()
Solve radiation equations.
A solar calculator model providing models for the solar direction and solar loads.
A class for managing temporary objects.
Namespace for radiation modelling.
List< label > labelList
A List of labels.
HashSet< label, Hash< label > > labelHashSet
A HashSet of labels, uses label hasher.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
List< scalar > scalarList
List of scalar.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.