honeybee-openstudio 2.38.18 → 2.38.20
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/.github/workflows/ci.yaml +2 -2
- data/Gemfile +1 -1
- data/honeybee-openstudio.gemspec +9 -9
- data/lib/files/urbanopt_Gemfile +25 -30
- data/lib/to_openstudio/geometry/room.rb +1 -1
- data/lib/to_openstudio/hvac/Model.hvac.rb +12 -5
- data/lib/to_openstudio/hvac/template.rb +21 -14
- data/lib/to_openstudio/ventcool/control.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 28c592fc1d87b516c60c47a5fac96af4ff88af779f684256cbb35dc833196bf0
|
4
|
+
data.tar.gz: 508c8d9b1842fe24cb5daa1b1f6b6b75fdd021ffb889cef115b9012b26e49624
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fe4a5b5e892e8b6c9e7c5e45b62b2494357f8e9d3cbc958694162ce1967c72bbe4561223e5098fc46124857d4034d7bc603489a3a8270139b810151dbcf0c286
|
7
|
+
data.tar.gz: 3d5562af62c7a5f9152215e5c17576b0cf1e629358c607da65acd7ca9c6fde3600e2f23429efbdfa5a9a6c2d1bccf386fed6abf8b23a548a6a0b325d3e6add28
|
data/.github/workflows/ci.yaml
CHANGED
@@ -15,8 +15,8 @@ jobs:
|
|
15
15
|
run: |
|
16
16
|
echo $(pwd)
|
17
17
|
echo $(ls)
|
18
|
-
docker pull nrel/openstudio:3.
|
19
|
-
docker run --name test --rm -d -t -v $(pwd):/work -w /work nrel/openstudio:3.
|
18
|
+
docker pull nrel/openstudio:3.9.0
|
19
|
+
docker run --name test --rm -d -t -v $(pwd):/work -w /work nrel/openstudio:3.9.0
|
20
20
|
docker exec -t test pwd
|
21
21
|
docker exec -t test ls
|
22
22
|
docker exec -t test bundle update
|
data/Gemfile
CHANGED
@@ -7,7 +7,7 @@ gemspec
|
|
7
7
|
if File.exist?('../OpenStudio-extension-gem') # local development copy
|
8
8
|
gem 'openstudio-extension', path: '../OpenStudio-extension-gem'
|
9
9
|
else # get it from rubygems.org
|
10
|
-
gem 'openstudio-extension', '0.
|
10
|
+
gem 'openstudio-extension', '0.8.3'
|
11
11
|
end
|
12
12
|
|
13
13
|
# coveralls gem is used to generate coverage reports through CI
|
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.38.
|
7
|
+
spec.version = '2.38.20'
|
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
|
|
@@ -21,18 +21,18 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ['lib']
|
23
23
|
|
24
|
-
if /^2.
|
25
|
-
spec.required_ruby_version = "~> 2.
|
24
|
+
if /^3.2.2/.match(RUBY_VERSION)
|
25
|
+
spec.required_ruby_version = "~> 3.2.2"
|
26
26
|
|
27
|
-
spec.add_development_dependency "bundler", "~> 2.
|
28
|
-
spec.add_development_dependency "public_suffix", "~> 5.
|
29
|
-
spec.add_development_dependency "json-schema", "~>
|
30
|
-
spec.add_development_dependency "rake", "~> 13.
|
27
|
+
spec.add_development_dependency "bundler", "~> 2.4.10"
|
28
|
+
spec.add_development_dependency "public_suffix", "~> 5.1.1"
|
29
|
+
spec.add_development_dependency "json-schema", "~> 4.3.1"
|
30
|
+
spec.add_development_dependency "rake", "~> 13.2.1"
|
31
31
|
spec.add_development_dependency "rspec", "~> 3.9"
|
32
32
|
spec.add_development_dependency "rubocop", "~> 1.15.0"
|
33
33
|
end
|
34
34
|
|
35
35
|
spec.add_dependency 'json_pure'
|
36
|
-
spec.add_dependency 'openstudio-extension', '0.
|
37
|
-
spec.add_dependency 'openstudio-standards', '~> 0.
|
36
|
+
spec.add_dependency 'openstudio-extension', '0.8.3'
|
37
|
+
spec.add_dependency 'openstudio-standards', '~> 0.7.1'
|
38
38
|
end
|
data/lib/files/urbanopt_Gemfile
CHANGED
@@ -1,66 +1,61 @@
|
|
1
1
|
source 'http://rubygems.org'
|
2
2
|
|
3
|
-
ruby '~> 2.
|
3
|
+
ruby '~> 3.2.2'
|
4
4
|
|
5
5
|
# pin these dependencies to prevent releases of gems from breaking URBANopt
|
6
6
|
gem 'addressable', '2.8.1'
|
7
7
|
gem 'ansi', '1.5.0'
|
8
|
-
gem 'ast', '2.4.
|
9
|
-
gem 'bcl', '0.
|
8
|
+
gem 'ast', '2.4.3'
|
9
|
+
gem 'bcl', '0.8.0'
|
10
10
|
gem 'builder', '3.2.4'
|
11
11
|
gem 'docile', '1.4.1'
|
12
12
|
gem 'faraday', '1.0.1'
|
13
13
|
gem 'git', '1.12.0'
|
14
|
-
gem 'json-schema', '
|
14
|
+
gem 'json-schema', '4.3.1'
|
15
15
|
gem 'json_pure', '2.8.1'
|
16
16
|
gem 'macaddr', '1.7.2'
|
17
17
|
gem 'matrix', '0.4.2'
|
18
18
|
gem 'minitar', '0.12.1'
|
19
19
|
gem 'minitest', '5.14.4'
|
20
20
|
gem 'minitest-reporters', '1.4.3'
|
21
|
-
gem 'multipart-post', '2.4.
|
21
|
+
gem 'multipart-post', '2.4.0'
|
22
22
|
gem 'octokit', '4.18.0'
|
23
|
-
gem 'openstudio_measure_tester', '0.
|
24
|
-
gem 'openstudio-calibration', '0.
|
25
|
-
gem 'openstudio-common-measures', '0.
|
26
|
-
gem 'openstudio-ee', '0.
|
27
|
-
gem 'openstudio-extension', '0.
|
28
|
-
gem 'openstudio-geb', '0.
|
29
|
-
gem 'openstudio-load-flexibility-measures', '0.
|
30
|
-
gem 'openstudio-model-articulation', '0.
|
31
|
-
gem 'openstudio-standards', '0.
|
32
|
-
gem 'openstudio-workflow', '2.
|
23
|
+
gem 'openstudio_measure_tester', '0.4.1'
|
24
|
+
gem 'openstudio-calibration', '0.11.1'
|
25
|
+
gem 'openstudio-common-measures', '0.11.1'
|
26
|
+
gem 'openstudio-ee', '0.11.1'
|
27
|
+
gem 'openstudio-extension', '0.8.3'
|
28
|
+
gem 'openstudio-geb', '0.6.0'
|
29
|
+
gem 'openstudio-load-flexibility-measures', '0.10.1'
|
30
|
+
gem 'openstudio-model-articulation', '0.11.1'
|
31
|
+
gem 'openstudio-standards', '0.7.1'
|
32
|
+
gem 'openstudio-workflow', '2.4.0'
|
33
33
|
gem 'oslg', '0.3.0'
|
34
34
|
gem 'osut', '0.6.0'
|
35
|
-
gem 'parallel', '1.19.
|
35
|
+
gem 'parallel', '1.19.1'
|
36
36
|
gem 'parser', '3.2.2.2'
|
37
37
|
gem 'public_suffix', '5.1.1'
|
38
|
-
gem 'rainbow', '3.1.1'
|
39
38
|
gem 'rake', '13.2.1'
|
40
|
-
gem 'rchardet', '1.
|
41
|
-
gem 'regexp_parser', '2.9.
|
39
|
+
gem 'rchardet', '1.9.0'
|
40
|
+
gem 'regexp_parser', '2.9.0'
|
42
41
|
gem 'rexml', '3.2.5'
|
43
|
-
gem 'rubocop', '1.15.0'
|
44
|
-
gem 'rubocop-ast', '1.30.0'
|
45
|
-
gem 'rubocop-checkstyle_formatter', '0.4.0'
|
46
|
-
gem 'rubocop-performance', '1.11.5'
|
47
42
|
gem 'ruby-ole', '1.2.13.1'
|
48
43
|
gem 'ruby-progressbar', '1.13.0'
|
49
44
|
gem 'rubyzip', '2.3.2'
|
50
45
|
gem 'sawyer', '0.8.2'
|
51
|
-
gem '
|
46
|
+
gem 'simplecov_json_formatter', '0.1.4'
|
47
|
+
gem 'simplecov', '0.22.0'
|
52
48
|
gem 'simplecov-html', '0.13.1'
|
53
49
|
gem 'spreadsheet', '1.2.9'
|
54
50
|
gem 'systemu', '2.6.5'
|
55
|
-
gem 'tbd', '3.4.
|
51
|
+
gem 'tbd', '3.4.4'
|
56
52
|
gem 'topolys', '0.6.2'
|
57
|
-
gem '
|
58
|
-
gem 'urbanopt-
|
59
|
-
gem 'urbanopt-
|
60
|
-
gem 'urbanopt-reporting', '0.10.1'
|
53
|
+
gem 'urbanopt-core', '1.0.0'
|
54
|
+
gem 'urbanopt-geojson', '1.0.1'
|
55
|
+
gem 'urbanopt-reporting', '1.0.0'
|
61
56
|
gem 'uuid', '2.3.9'
|
62
57
|
gem 'yamler', '0.1.0'
|
63
58
|
gem 'zliby', '0.0.5'
|
64
59
|
|
65
60
|
# include the honeybee-openstudio-gem
|
66
|
-
gem 'honeybee-openstudio', '2.38.
|
61
|
+
gem 'honeybee-openstudio', '2.38.19'
|
@@ -427,7 +427,7 @@ module Honeybee
|
|
427
427
|
end
|
428
428
|
end
|
429
429
|
end
|
430
|
-
# add the control
|
430
|
+
# add the control strategy of the ventilation openings using the EMS
|
431
431
|
if @hash[:properties][:energy][:window_vent_control]
|
432
432
|
vent_control = VentilationControlAbridged.new(@hash[:properties][:energy][:window_vent_control])
|
433
433
|
vent_control.to_openstudio(
|
@@ -42,11 +42,18 @@ class OpenStudio::Model::Model
|
|
42
42
|
# the 'zones' argument includes zones that have heating, cooling, or both
|
43
43
|
# if the HVAC system type serves a single zone, handle zones with only heating separately by adding unit heaters
|
44
44
|
# applies to system types PTAC, PTHP, PSZ-AC, and Window AC
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
45
|
+
if RUBY_VERSION >= '3.0'
|
46
|
+
heated_and_cooled_zones = zones.select { |zone| OpenstudioStandards::ThermalZone.thermal_zone_heated?(zone) && OpenstudioStandards::ThermalZone.thermal_zone_cooled?(zone) }
|
47
|
+
heated_zones = zones.select { |zone| OpenstudioStandards::ThermalZone.thermal_zone_heated?(zone) }
|
48
|
+
cooled_zones = zones.select { |zone| OpenstudioStandards::ThermalZone.thermal_zone_cooled?(zone) }
|
49
|
+
cooled_only_zones = zones.select { |zone| !OpenstudioStandards::ThermalZone.thermal_zone_heated?(zone) && OpenstudioStandards::ThermalZone.thermal_zone_cooled?(zone) }
|
50
|
+
else
|
51
|
+
heated_and_cooled_zones = zones.select { |zone| standard.thermal_zone_heated?(zone) && standard.thermal_zone_cooled?(zone) }
|
52
|
+
heated_zones = zones.select { |zone| standard.thermal_zone_heated?(zone) }
|
53
|
+
cooled_zones = zones.select { |zone| standard.thermal_zone_cooled?(zone) }
|
54
|
+
cooled_only_zones = zones.select { |zone| !standard.thermal_zone_heated?(zone) && standard.thermal_zone_cooled?(zone) }
|
55
|
+
heated_only_zones = zones.select { |zone| standard.thermal_zone_heated?(zone) && !standard.thermal_zone_cooled?(zone) }
|
56
|
+
end
|
50
57
|
system_zones = heated_and_cooled_zones + cooled_only_zones
|
51
58
|
|
52
59
|
# system type naming convention:
|
@@ -237,11 +237,13 @@ module Honeybee
|
|
237
237
|
unless erv
|
238
238
|
erv = create_erv(openstudio_model, os_air_loop)
|
239
239
|
end
|
240
|
-
|
241
|
-
erv.setSensibleEffectivenessat100CoolingAirFlow(
|
242
|
-
erv.setSensibleEffectivenessat100HeatingAirFlow(
|
243
|
-
|
244
|
-
|
240
|
+
eff_sens = @hash[:sensible_heat_recovery]
|
241
|
+
erv.setSensibleEffectivenessat100CoolingAirFlow(eff_sens)
|
242
|
+
erv.setSensibleEffectivenessat100HeatingAirFlow(eff_sens)
|
243
|
+
if openstudio_model.version < OpenStudio::VersionString.new('3.8.0')
|
244
|
+
erv.setSensibleEffectivenessat75CoolingAirFlow(eff_sens)
|
245
|
+
erv.setSensibleEffectivenessat75HeatingAirFlow(eff_sens)
|
246
|
+
end
|
245
247
|
end
|
246
248
|
end
|
247
249
|
|
@@ -252,11 +254,13 @@ module Honeybee
|
|
252
254
|
unless erv
|
253
255
|
erv = create_erv(openstudio_model, os_air_loop)
|
254
256
|
end
|
255
|
-
|
256
|
-
erv.setLatentEffectivenessat100CoolingAirFlow(
|
257
|
-
erv.setLatentEffectivenessat100HeatingAirFlow(
|
258
|
-
|
259
|
-
|
257
|
+
eff_lat = @hash[:latent_heat_recovery]
|
258
|
+
erv.setLatentEffectivenessat100CoolingAirFlow(eff_lat)
|
259
|
+
erv.setLatentEffectivenessat100HeatingAirFlow(eff_lat)
|
260
|
+
if openstudio_model.version < OpenStudio::VersionString.new('3.8.0')
|
261
|
+
erv.setLatentEffectivenessat75CoolingAirFlow(eff_lat)
|
262
|
+
erv.setLatentEffectivenessat75HeatingAirFlow(eff_lat)
|
263
|
+
end
|
260
264
|
end
|
261
265
|
end
|
262
266
|
|
@@ -429,14 +433,17 @@ module Honeybee
|
|
429
433
|
heat_ex = OpenStudio::Model::HeatExchangerAirToAirSensibleAndLatent.new(model)
|
430
434
|
heat_ex.setEconomizerLockout(false)
|
431
435
|
heat_ex.setName(@hash[:identifier] + '_Heat Recovery Unit')
|
436
|
+
|
432
437
|
heat_ex.setSensibleEffectivenessat100CoolingAirFlow(0)
|
433
438
|
heat_ex.setSensibleEffectivenessat100HeatingAirFlow(0)
|
434
|
-
heat_ex.setSensibleEffectivenessat75CoolingAirFlow(0)
|
435
|
-
heat_ex.setSensibleEffectivenessat75HeatingAirFlow(0)
|
436
439
|
heat_ex.setLatentEffectivenessat100CoolingAirFlow(0)
|
437
440
|
heat_ex.setLatentEffectivenessat100HeatingAirFlow(0)
|
438
|
-
|
439
|
-
|
441
|
+
if model.version < OpenStudio::VersionString.new('3.8.0')
|
442
|
+
heat_ex.setSensibleEffectivenessat75CoolingAirFlow(0)
|
443
|
+
heat_ex.setSensibleEffectivenessat75HeatingAirFlow(0)
|
444
|
+
heat_ex.setLatentEffectivenessat75CoolingAirFlow(0)
|
445
|
+
heat_ex.setLatentEffectivenessat75HeatingAirFlow(0)
|
446
|
+
end
|
440
447
|
|
441
448
|
# add the heat exchanger to the air loop
|
442
449
|
outdoor_node = os_air_loop.reliefAirNode
|
@@ -103,7 +103,7 @@ module Honeybee
|
|
103
103
|
end
|
104
104
|
end
|
105
105
|
|
106
|
-
# create the actuators for each of the
|
106
|
+
# create the actuators for each of the operable windows
|
107
107
|
actuator_names = []
|
108
108
|
vent_opening_surfaces.each do |vent_srf|
|
109
109
|
window_act = OpenStudio::Model::EnergyManagementSystemActuator.new(
|
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.38.
|
4
|
+
version: 2.38.20
|
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: 2025-04-
|
14
|
+
date: 2025-04-22 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: json_pure
|
@@ -33,28 +33,28 @@ dependencies:
|
|
33
33
|
requirements:
|
34
34
|
- - '='
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 0.
|
36
|
+
version: 0.8.3
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
40
40
|
requirements:
|
41
41
|
- - '='
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: 0.
|
43
|
+
version: 0.8.3
|
44
44
|
- !ruby/object:Gem::Dependency
|
45
45
|
name: openstudio-standards
|
46
46
|
requirement: !ruby/object:Gem::Requirement
|
47
47
|
requirements:
|
48
48
|
- - "~>"
|
49
49
|
- !ruby/object:Gem::Version
|
50
|
-
version: 0.
|
50
|
+
version: 0.7.1
|
51
51
|
type: :runtime
|
52
52
|
prerelease: false
|
53
53
|
version_requirements: !ruby/object:Gem::Requirement
|
54
54
|
requirements:
|
55
55
|
- - "~>"
|
56
56
|
- !ruby/object:Gem::Version
|
57
|
-
version: 0.
|
57
|
+
version: 0.7.1
|
58
58
|
description: Library and measures for translating between Honeybee JSON schema and
|
59
59
|
OpenStudio Model schema (OSM).
|
60
60
|
email:
|