honeybee-radiance-postprocess 0.4.568__py3-none-any.whl → 0.4.577__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -83,7 +83,7 @@ def well_daylight_vis(output_folder):
83
83
  metric_info_dict = {
84
84
  'L01': {
85
85
  'type': 'VisualizationMetaData',
86
- 'data_type': GenericType('sDA200,40%', '').to_dict(),
86
+ 'data_type': GenericType('sDA150,50%', '').to_dict(),
87
87
  'unit': '',
88
88
  'legend_parameters': pass_fail_lpar.to_dict()
89
89
  },
@@ -227,6 +227,56 @@ def well_annual_daylight(
227
227
  if not grid_areas:
228
228
  grid_areas = [None] * len(grids_info)
229
229
 
230
+ well_version = {
231
+ 'Version': 'WELL v2, Q2 2025',
232
+ 'L01': {
233
+ 'IES LM-83': {
234
+ 'Method': 'IES LM-83',
235
+ 'sda_target_illuminance': 150,
236
+ 'sda_occupancy': 50,
237
+ 'sda_threshold': 30
238
+ },
239
+ 'EN 17037': {
240
+ 'Method': 'EN 17037',
241
+ 'target_illuminance': 200,
242
+ 'daylit_hours': 50,
243
+ 'sda_threshold': 30
244
+ }
245
+ },
246
+ 'L06': {
247
+ 'Tier 1': {
248
+ 'IES LM-83': {
249
+ 'Method': 'IES LM-83',
250
+ 'sda_target_illuminance': 300,
251
+ 'sda_occupancy': 50,
252
+ 'sda_threshold': 55
253
+ },
254
+ 'EN 17037': {
255
+ 'Method': 'EN 17037',
256
+ 'target_illuminance': 300,
257
+ 'daylit_hours': 50,
258
+ 'sda_threshold': 50
259
+ }
260
+ },
261
+ 'Tier 2': {
262
+ 'IES LM-83': {
263
+ 'Method': 'IES LM-83',
264
+ 'sda_target_illuminance': 300,
265
+ 'sda_occupancy': 50,
266
+ 'sda_threshold': 75
267
+ },
268
+ 'EN 17037': {
269
+ 'Method': 'EN 17037',
270
+ 'target_illuminance': 300,
271
+ 'minimum_illuminance': 100,
272
+ 'daylit_hours': 50,
273
+ 'sda_target_threshold': 50,
274
+ 'sda_minimum_threshold': 95
275
+ }
276
+ }
277
+ }
278
+ }
279
+
230
280
  # spatial daylight autonomy
231
281
  l06_da_grids = []
232
282
  l06_pass_sda_grids = []
@@ -291,17 +341,17 @@ def well_annual_daylight(
291
341
  array_blinds_up = sum(arrays_blinds_up)
292
342
  array_blinds_down = sum(arrays_blinds_down)
293
343
  # calculate da per grid
294
- da_grid = da_array2d(array, total_occ=total_occ, threshold=200)
344
+ da_grid = da_array2d(array, total_occ=total_occ, threshold=well_version['L01']['IES LM-83']['sda_target_illuminance'])
295
345
 
296
346
  l01_da_grids.append(da_grid)
297
347
  da_blinds_up_grid = da_array2d(
298
- array_blinds_up, total_occ=total_occ, threshold=200)
348
+ array_blinds_up, total_occ=total_occ, threshold=well_version['L01']['IES LM-83']['sda_target_illuminance'])
299
349
  da_blinds_down_grid = da_array2d(
300
- array_blinds_down, total_occ=total_occ, threshold=200)
350
+ array_blinds_down, total_occ=total_occ, threshold=well_version['L01']['IES LM-83']['sda_target_illuminance'])
301
351
  # calculate sda per grid
302
- l01_pass_sda_grids.append(da_grid >= 40)
303
- l01_pass_sda_blinds_up_grids.append(da_blinds_up_grid >= 40)
304
- l01_pass_sda_blinds_down_grids.append(da_blinds_down_grid >= 40)
352
+ l01_pass_sda_grids.append(da_grid >= well_version['L01']['IES LM-83']['sda_occupancy'])
353
+ l01_pass_sda_blinds_up_grids.append(da_blinds_up_grid >= well_version['L01']['IES LM-83']['sda_occupancy'])
354
+ l01_pass_sda_blinds_down_grids.append(da_blinds_down_grid >= well_version['L01']['IES LM-83']['sda_occupancy'])
305
355
 
306
356
  # create summaries for all grids and each grid individually
307
357
  l06_ies_lm_summary, l06_ies_lm_summary_grid = _well_summary(
@@ -341,8 +391,8 @@ def well_annual_daylight(
341
391
  if np.any(array):
342
392
  array = np.apply_along_axis(
343
393
  filter_array, 1, array, occ_mask)
344
- l01_grid_da_target = da_array2d(array, total_occ=4380, threshold=200)
345
- l01_combined_da_target.append(l01_grid_da_target >= 50)
394
+ l01_grid_da_target = da_array2d(array, total_occ=4380, threshold=well_version['L01']['EN 17037']['target_illuminance'])
395
+ l01_combined_da_target.append(l01_grid_da_target >= well_version['L01']['EN 17037']['daylit_hours'])
346
396
 
347
397
  l06_combined_sda_target_illuminance = np.concatenate(l06_combined_da_target).mean() * 100
348
398
  l06_combined_sda_minimum_illuminance = np.concatenate(l06_combined_da_minimum).mean() * 100
@@ -382,7 +432,7 @@ def well_annual_daylight(
382
432
  else:
383
433
  l06_ies_lm_summary['credits'] = 'Exemplary performance'
384
434
 
385
- if l01_ies_lm_summary['sda'] >= 30:
435
+ if l01_ies_lm_summary['sda'] >= well_version['L01']['IES LM-83']['sda_threshold']:
386
436
  l01_well_summary_ies_lm['comply'] = True
387
437
  else:
388
438
  l01_well_summary_ies_lm['comply'] = False
@@ -506,4 +556,7 @@ def well_annual_daylight(
506
556
  well_summary_file = sub_folder.joinpath('l01_well_summary.json')
507
557
  well_summary_file.write_text(json.dumps(l01_well_summary, indent=2))
508
558
 
559
+ well_version_file = sub_folder.joinpath('well_version.json')
560
+ well_version_file.write_text(json.dumps(well_version, indent=2))
561
+
509
562
  return (l06_well_summary, l01_well_summary, states_schedule, fail_to_comply, grids_info)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: honeybee-radiance-postprocess
3
- Version: 0.4.568
3
+ Version: 0.4.577
4
4
  Summary: Postprocessing of Radiance results and matrices
5
5
  Home-page: https://github.com/ladybug-tools/honeybee-radiance-postprocess
6
6
  Author: Ladybug Tools
@@ -16,7 +16,7 @@ Classifier: Programming Language :: Python :: Implementation :: CPython
16
16
  Classifier: Operating System :: OS Independent
17
17
  Description-Content-Type: text/markdown
18
18
  License-File: LICENSE
19
- Requires-Dist: honeybee-radiance==1.66.204
19
+ Requires-Dist: honeybee-radiance==1.66.211
20
20
  Requires-Dist: numpy<2.0.0
21
21
  Dynamic: author
22
22
  Dynamic: author-email
@@ -29,7 +29,7 @@ honeybee_radiance_postprocess/cli/translate.py,sha256=W3G5aBN7pGx5sX3VoV1xZM6HL0
29
29
  honeybee_radiance_postprocess/cli/two_phase.py,sha256=njkWBRxOqdRSp0JxLloWTGWmKruyONetgnIbjXhrrXw,8393
30
30
  honeybee_radiance_postprocess/cli/util.py,sha256=Be9cGmYhcV2W37ma6SgQPCWCpWLLLlroxRYN_l58kY0,4077
31
31
  honeybee_radiance_postprocess/cli/viewfactor.py,sha256=RJ0ai9ykhdryYOgYkY9tAim9MhXPD1gVAR3Js9UaEgE,5380
32
- honeybee_radiance_postprocess/cli/well.py,sha256=wWz-aWon4E_tLar0mepolW8WJdk6hF869wZPZSkbNrE,3772
32
+ honeybee_radiance_postprocess/cli/well.py,sha256=ABEp7qlNZdNgoGnJuLGt53kpfUr2ptT7XZsLLKcbfS8,3772
33
33
  honeybee_radiance_postprocess/ies/__init__.py,sha256=kQXElEqFnLGNnrMSpA51XDHoqBup849FHeAqWASIy6w,45
34
34
  honeybee_radiance_postprocess/ies/lm.py,sha256=6oT4XzWwr6njKRBjY0xL9TzBqQUAeQLwzen57BHOp4E,9746
35
35
  honeybee_radiance_postprocess/ies/lm_schedule.py,sha256=nZlORbRQvPiA8VeRfh7ML8cMAYUxmHOgsNCxAHuOr18,10042
@@ -41,10 +41,10 @@ honeybee_radiance_postprocess/results/annual_daylight.py,sha256=ulv8kZvS6UkhCjaX
41
41
  honeybee_radiance_postprocess/results/annual_irradiance.py,sha256=nA1VubesNDtRxgXpHSZxFMV67XxUntIHIu5H9qtDBSk,8483
42
42
  honeybee_radiance_postprocess/results/results.py,sha256=twfOF_ZNflxujWqpzigz4_pZ1vcSpF8cQxWIy7ajt0Y,56378
43
43
  honeybee_radiance_postprocess/well/__init__.py,sha256=kQXElEqFnLGNnrMSpA51XDHoqBup849FHeAqWASIy6w,45
44
- honeybee_radiance_postprocess/well/well.py,sha256=KO0BOs4-P_PnsGFfasoz1xgaNac4zqOQ9JqTjmMapuU,22598
45
- honeybee_radiance_postprocess-0.4.568.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
46
- honeybee_radiance_postprocess-0.4.568.dist-info/METADATA,sha256=Q-ETDrGRes9BNQFdahmJjg0VOPWiTi_srPG80nvYn_I,2575
47
- honeybee_radiance_postprocess-0.4.568.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
- honeybee_radiance_postprocess-0.4.568.dist-info/entry_points.txt,sha256=gFtVPx6UItXt27GfEZZO00eOZChJJEL6JwGSAB_O3rs,96
49
- honeybee_radiance_postprocess-0.4.568.dist-info/top_level.txt,sha256=4-sFbzy7ewP2EDqJV3jeFlAFx7SuxtoBBELWaKAnLdA,30
50
- honeybee_radiance_postprocess-0.4.568.dist-info/RECORD,,
44
+ honeybee_radiance_postprocess/well/well.py,sha256=FzxaLo3IdlvFZZ1UtblBk9zsKl_EfsCKIcAgfucq-nE,24762
45
+ honeybee_radiance_postprocess-0.4.577.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
46
+ honeybee_radiance_postprocess-0.4.577.dist-info/METADATA,sha256=-vQMR1wlZenF4L8yyXfDspj1GzmFjpZRMMsxXQexGbE,2575
47
+ honeybee_radiance_postprocess-0.4.577.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
+ honeybee_radiance_postprocess-0.4.577.dist-info/entry_points.txt,sha256=gFtVPx6UItXt27GfEZZO00eOZChJJEL6JwGSAB_O3rs,96
49
+ honeybee_radiance_postprocess-0.4.577.dist-info/top_level.txt,sha256=4-sFbzy7ewP2EDqJV3jeFlAFx7SuxtoBBELWaKAnLdA,30
50
+ honeybee_radiance_postprocess-0.4.577.dist-info/RECORD,,