@@ -65,7 +65,7 @@ namespace EnergyPlus {
65
65
namespace Dayltg {
66
66
67
67
using DataSurfaces::Lum;
68
-
68
+
69
69
// Two kinds of reference points: used directly in daylighting, used to show illuminance map of zone
70
70
constexpr int MaxMapRefPoints (2500 ); // Maximum number of Illuminance Map Ref Points
71
71
@@ -83,7 +83,7 @@ namespace Dayltg {
83
83
{
84
84
std::array<Real64, (int )SkyType::Num> sky = {0.0 , 0.0 , 0.0 , 0.0 };
85
85
Real64 sun = 0.0 ;
86
- Real64 sunDisk = 0.0 ;
86
+ Real64 sunDisk = 0.0 ;
87
87
};
88
88
89
89
enum class ExtWinType
@@ -158,12 +158,13 @@ namespace Dayltg {
158
158
EPVector<int > daylightControlIndexes; // Indexes to daylighting:controls object operating in this enclosure
159
159
};
160
160
161
- struct DaylRefPtExtWin {
161
+ struct DaylRefPtExtWin
162
+ {
162
163
Real64 solidAng = 0.0 ;
163
164
Real64 solidAngWtd = 0.0 ;
164
165
std::array<std::array<Real64, (int )DataSurfaces::WinCover::Num>, (int )Lum::Num> lums;
165
166
};
166
-
167
+
167
168
struct DaylRefPt
168
169
{
169
170
int num = 0 ;
@@ -179,7 +180,7 @@ namespace Dayltg {
179
180
180
181
Array1D<DaylRefPtExtWin> extWins;
181
182
};
182
-
183
+
183
184
struct DaylightingControl
184
185
{
185
186
std::string Name; // Name of the daylighting:controls object
@@ -190,20 +191,20 @@ namespace Dayltg {
190
191
Dayltg::DaylightingMethod DaylightMethod = DaylightingMethod::None; // Type of Daylighting (1=SplitFlux, 2=DElight)
191
192
int AvailSchedNum = 0 ; // pointer to availability schedule if present
192
193
int TotalExtWindows = 0 ;
193
- int TotalDaylRefPoints = 0 ; // Number of daylighting reference points for this control
194
+ int TotalDaylRefPoints = 0 ; // Number of daylighting reference points for this control
194
195
195
- Array1D<DaylRefPt> refPts; // Points 1 and 2 are the control reference points
196
+ Array1D<DaylRefPt> refPts; // Points 1 and 2 are the control reference points
196
197
Real64 sumFracLights = 0.0 ; // Sum of lighting control fractions for this daylighting control
197
198
LtgCtrlType LightControlType = LtgCtrlType::Continuous; // Lighting control type (same for all reference points)
198
- int glareRefPtNumber = 0 ; // from field: Glare Calculation Daylighting Reference Point Name
199
- Real64 ViewAzimuthForGlare = 0.0 ; // View direction relative to window for glare calculation (deg)
200
- int MaxGlareallowed = 0 ; // Maximum allowable discomfort glare index
201
- Real64 MinPowerFraction = 0.0 ; // Minimum fraction of power input that continuous dimming system can dim down to
202
- Real64 MinLightFraction = 0.0 ; // Minimum fraction of light output that continuous dimming system can dim down to
203
- int LightControlSteps = 0 ; // Number of levels (excluding zero) of stepped control system
204
- Real64 LightControlProbability = 0.0 ; // For manual control of stepped systems, probability that lighting will
205
- Real64 PowerReductionFactor = 1.0 ; // Electric power reduction factor for this control due to daylighting
206
- Real64 DElightGriddingResolution = 0.0 ; // Field: Delight Gridding Resolution
199
+ int glareRefPtNumber = 0 ; // from field: Glare Calculation Daylighting Reference Point Name
200
+ Real64 ViewAzimuthForGlare = 0.0 ; // View direction relative to window for glare calculation (deg)
201
+ int MaxGlareallowed = 0 ; // Maximum allowable discomfort glare index
202
+ Real64 MinPowerFraction = 0.0 ; // Minimum fraction of power input that continuous dimming system can dim down to
203
+ Real64 MinLightFraction = 0.0 ; // Minimum fraction of light output that continuous dimming system can dim down to
204
+ int LightControlSteps = 0 ; // Number of levels (excluding zero) of stepped control system
205
+ Real64 LightControlProbability = 0.0 ; // For manual control of stepped systems, probability that lighting will
206
+ Real64 PowerReductionFactor = 1.0 ; // Electric power reduction factor for this control due to daylighting
207
+ Real64 DElightGriddingResolution = 0.0 ; // Field: Delight Gridding Resolution
207
208
208
209
// Allocatable daylight factor arrays
209
210
// Arguments (dimensions) for Dayl---Sky are:
@@ -213,8 +214,8 @@ namespace Dayltg {
213
214
// 3: Reference point number (1 to Total Daylighting Reference Points)
214
215
// 4: Sky type (1 to 4; 1 = clear, 2 = clear turbid, 3 = intermediate, 4 = overcast
215
216
// 5: Daylit window number (1 to NumOfDayltgExtWins)
216
- std::array<Array3D<std::array<Dayltg::Illums, (int )Lum::Num>>, (int )Constant::HoursInDay+ 1 > daylFac;
217
-
217
+ std::array<Array3D<std::array<Dayltg::Illums, (int )Lum::Num>>, (int )Constant::HoursInDay + 1 > daylFac;
218
+
218
219
// Time exceeding daylight illuminance setpoint at reference points (hours)
219
220
// Array1D<Real64> TimeExceedingDaylightIlluminanceSPAtRefPt;
220
221
std::vector<std::vector<int >> ShadeDeployOrderExtWins; // describes how the fenestration surfaces should deploy the shades.
@@ -239,7 +240,7 @@ namespace Dayltg {
239
240
240
241
Array1D<std::array<Real64, (int )DataSurfaces::WinCover::Num>> winLums;
241
242
};
242
-
243
+
243
244
struct IllumMap
244
245
{
245
246
// Members
@@ -260,22 +261,22 @@ namespace Dayltg {
260
261
int HeaderXLineLength = 0 ; // actual length of this X header line
261
262
std::string pointsHeader; // part of the header that lists the reference points in the same zone
262
263
263
- int TotalMapRefPoints = 0 ; // Number of illuminance map reference points in this zone (up to 100)
264
- Array1D<DaylMapPt> refPts;
264
+ int TotalMapRefPoints = 0 ; // Number of illuminance map reference points in this zone (up to 100)
265
+ Array1D<DaylMapPt> refPts;
265
266
// Arguments (dimensions) for Dayl---Sky are:
266
267
// 1: Sun position index / HourOfDay (1 to 24)
267
268
// 2: Daylit window number (1 to NumOfDayltgExtWins)
268
269
// 3: Reference point number (1 to Total Map Reference Points)
269
270
// 4: Shading index (1 to MaxSlatAngs+1; 1 = bare window; 2 = with shade, or, if blinds
270
271
// 2 = first slat position, 3 = second position, ..., MaxSlatAngs+1 = last position)
271
- std::array<Array3D<Dayltg::Illums>, (int )Constant::HoursInDay+ 1 > daylFac;
272
+ std::array<Array3D<Dayltg::Illums>, (int )Constant::HoursInDay + 1 > daylFac;
272
273
};
273
274
274
275
struct RefPointData
275
276
{
276
- std::string Name; // Map name
277
- int ZoneNum = 0 ; // Pointer to zone being referenced
278
- Vector3<Real64> coords = {0.0 , 0.0 , 0.0 }; // x coordinate
277
+ std::string Name; // Map name
278
+ int ZoneNum = 0 ; // Pointer to zone being referenced
279
+ Vector3<Real64> coords = {0.0 , 0.0 , 0.0 }; // x coordinate
279
280
int indexToFracAndIllum = 0 ;
280
281
};
281
282
0 commit comments