honeybee-openstudio 2.34.2 → 2.34.3
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.
- checksums.yaml +4 -4
- data/honeybee-openstudio.gemspec +1 -1
- data/lib/to_openstudio/hvac/radiant.rb +38 -26
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d4c9a3f73cadaedf8f1e13e0b20b1392952936a24c1b89d4ffd7532275fcb603
|
4
|
+
data.tar.gz: db9b5fbbecb023ff4465d5d88ab3fda0ab36dd1e6d5835bdb3f072a7ef9d7f64
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 135307618dc282c797521be37b65b7494eead11ed66e11409fe0459afbeb7e9cc1a6d07bfb6b11ae73410eb3fc9639c7d386905fff0a8adf0ec775d46a18f874
|
7
|
+
data.tar.gz: 2e54d8e090017dd82d63388ed8a44f03c5439631f23bb56d9af68c13ad2ede5f4b8c6dfd1c2d9ab44c7329fff8708bb6593fb399d8768a690bcb00d3af3c0115
|
data/honeybee-openstudio.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = 'honeybee-openstudio'
|
7
|
-
spec.version = '2.34.
|
7
|
+
spec.version = '2.34.3'
|
8
8
|
spec.authors = ['Tanushree Charan', 'Dan Macumber', 'Chris Mackey', 'Mostapha Sadeghipour Roudsari']
|
9
9
|
spec.email = ['tanushree.charan@nrel.gov', 'chris@ladybug.tools']
|
10
10
|
|
@@ -490,36 +490,15 @@ class OpenStudio::Model::Model
|
|
490
490
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Model.Model', "Thermal zone '#{zone.name}' has a restricted character ':' in the name and will not work with some EMS and output reporting objects. Please rename the zone.")
|
491
491
|
end
|
492
492
|
|
493
|
-
# create radiant coils
|
494
|
-
if hot_water_loop
|
495
|
-
radiant_loop_htg_coil = OpenStudio::Model::CoilHeatingLowTempRadiantVarFlow.new(self, htg_control_temp_sch)
|
496
|
-
radiant_loop_htg_coil.setName("#{zone.name} Radiant Loop Heating Coil")
|
497
|
-
radiant_loop_htg_coil.setHeatingControlThrottlingRange(throttling_range_c)
|
498
|
-
hot_water_loop.addDemandBranchForComponent(radiant_loop_htg_coil)
|
499
|
-
else
|
500
|
-
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Model.Model', 'Radiant loops require a hot water loop, but none was provided.')
|
501
|
-
end
|
502
|
-
|
503
|
-
if chilled_water_loop
|
504
|
-
radiant_loop_clg_coil = OpenStudio::Model::CoilCoolingLowTempRadiantVarFlow.new(self, clg_control_temp_sch)
|
505
|
-
radiant_loop_clg_coil.setName("#{zone.name} Radiant Loop Cooling Coil")
|
506
|
-
radiant_loop_clg_coil.setCoolingControlThrottlingRange(throttling_range_c)
|
507
|
-
chilled_water_loop.addDemandBranchForComponent(radiant_loop_clg_coil)
|
508
|
-
else
|
509
|
-
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Model.Model', 'Radiant loops require a chilled water loop, but none was provided.')
|
510
|
-
end
|
511
|
-
|
512
|
-
radiant_avail_sch = self.alwaysOnDiscreteSchedule
|
513
|
-
radiant_loop = OpenStudio::Model::ZoneHVACLowTempRadiantVarFlow.new(self,
|
514
|
-
radiant_avail_sch,
|
515
|
-
radiant_loop_htg_coil,
|
516
|
-
radiant_loop_clg_coil)
|
517
|
-
|
518
493
|
# assign internal source construction to floors in zone
|
494
|
+
srf_count = 0
|
519
495
|
zone.spaces.each do |space|
|
520
496
|
space.surfaces.each do |surface|
|
521
|
-
if
|
497
|
+
if surface.isAirWall
|
498
|
+
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Model.Model', "Surface #{surface.name} cannot be set to a Radiant Construction as it is an AirBoundary.")
|
499
|
+
elsif radiant_type == 'floor'
|
522
500
|
if surface.surfaceType == 'Floor'
|
501
|
+
srf_count += 1
|
523
502
|
if surface.outsideBoundaryCondition == 'Ground'
|
524
503
|
surface.setConstruction(radiant_ground_slab_construction)
|
525
504
|
elsif surface.outsideBoundaryCondition == 'Outdoors'
|
@@ -530,6 +509,7 @@ class OpenStudio::Model::Model
|
|
530
509
|
end
|
531
510
|
elsif radiant_type == 'ceiling'
|
532
511
|
if surface.surfaceType == 'RoofCeiling'
|
512
|
+
srf_count += 1
|
533
513
|
if surface.outsideBoundaryCondition == 'Outdoors'
|
534
514
|
surface.setConstruction(radiant_ceiling_slab_construction)
|
535
515
|
else # interior ceiling
|
@@ -538,6 +518,7 @@ class OpenStudio::Model::Model
|
|
538
518
|
end
|
539
519
|
elsif radiant_type == 'ceilingmetalpanel'
|
540
520
|
if surface.surfaceType == 'RoofCeiling'
|
521
|
+
srf_count += 1
|
541
522
|
if surface.outsideBoundaryCondition == 'Outdoors'
|
542
523
|
surface.setConstruction(radiant_ceiling_metal_construction)
|
543
524
|
else # interior ceiling
|
@@ -546,6 +527,7 @@ class OpenStudio::Model::Model
|
|
546
527
|
end
|
547
528
|
elsif radiant_type == 'floorwithhardwood'
|
548
529
|
if surface.surfaceType == 'Floor'
|
530
|
+
srf_count += 1
|
549
531
|
if surface.outsideBoundaryCondition == 'Ground'
|
550
532
|
surface.setConstruction(radiant_ground_wood_construction)
|
551
533
|
elsif surface.outsideBoundaryCondition == 'Outdoors'
|
@@ -558,6 +540,36 @@ class OpenStudio::Model::Model
|
|
558
540
|
end
|
559
541
|
end
|
560
542
|
|
543
|
+
# ignore the Zone if it has not thermally active Faces
|
544
|
+
if srf_count == 0
|
545
|
+
next
|
546
|
+
end
|
547
|
+
|
548
|
+
# create radiant coils
|
549
|
+
if hot_water_loop
|
550
|
+
radiant_loop_htg_coil = OpenStudio::Model::CoilHeatingLowTempRadiantVarFlow.new(self, htg_control_temp_sch)
|
551
|
+
radiant_loop_htg_coil.setName("#{zone.name} Radiant Loop Heating Coil")
|
552
|
+
radiant_loop_htg_coil.setHeatingControlThrottlingRange(throttling_range_c)
|
553
|
+
hot_water_loop.addDemandBranchForComponent(radiant_loop_htg_coil)
|
554
|
+
else
|
555
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Model.Model', 'Radiant loops require a hot water loop, but none was provided.')
|
556
|
+
end
|
557
|
+
|
558
|
+
if chilled_water_loop
|
559
|
+
radiant_loop_clg_coil = OpenStudio::Model::CoilCoolingLowTempRadiantVarFlow.new(self, clg_control_temp_sch)
|
560
|
+
radiant_loop_clg_coil.setName("#{zone.name} Radiant Loop Cooling Coil")
|
561
|
+
radiant_loop_clg_coil.setCoolingControlThrottlingRange(throttling_range_c)
|
562
|
+
chilled_water_loop.addDemandBranchForComponent(radiant_loop_clg_coil)
|
563
|
+
else
|
564
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Model.Model', 'Radiant loops require a chilled water loop, but none was provided.')
|
565
|
+
end
|
566
|
+
|
567
|
+
radiant_avail_sch = self.alwaysOnDiscreteSchedule
|
568
|
+
radiant_loop = OpenStudio::Model::ZoneHVACLowTempRadiantVarFlow.new(self,
|
569
|
+
radiant_avail_sch,
|
570
|
+
radiant_loop_htg_coil,
|
571
|
+
radiant_loop_clg_coil)
|
572
|
+
|
561
573
|
# radiant loop surfaces
|
562
574
|
radiant_loop.setName("#{zone.name} Radiant Loop")
|
563
575
|
if radiant_type == 'floor'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: honeybee-openstudio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.34.
|
4
|
+
version: 2.34.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tanushree Charan
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: exe
|
13
13
|
cert_chain: []
|
14
|
-
date: 2023-04-
|
14
|
+
date: 2023-04-19 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: json_pure
|