honeybee-openstudio 2.7.5 → 2.10.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -75,6 +75,11 @@ module Honeybee
75
75
  os_gas_equipment.setSpaceType(os_space_type)
76
76
  end
77
77
 
78
+ # add hot water from to a global hash that will be used to assign them to rooms
79
+ if @hash[:service_hot_water]
80
+ $programtype_shw_hash[@hash[:identifier]] = @hash[:service_hot_water]
81
+ end
82
+
78
83
  # assign infiltration
79
84
  if @hash[:infiltration] && $use_simple_vent # only use infiltration with simple ventilation
80
85
  infiltration = InfiltrationAbridged.new(@hash[:infiltration])
@@ -85,10 +85,7 @@ module Honeybee
85
85
  holiday_schedule = openstudio_model.getScheduleDayByName(@hash[:holiday_schedule])
86
86
  unless holiday_schedule.empty?
87
87
  holiday_schedule_object = holiday_schedule.get
88
- begin
89
- os_sch_ruleset.setHolidaySchedule(holiday_schedule_object)
90
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
91
- end
88
+ os_sch_ruleset.setHolidaySchedule(holiday_schedule_object)
92
89
  end
93
90
  end
94
91
 
@@ -98,54 +98,28 @@ module Honeybee
98
98
 
99
99
  # set defaults for the Model's ShadowCalculation object
100
100
  os_shadow_calc = @openstudio_model.getShadowCalculation
101
- begin
102
- os_shadow_calc.setShadingCalculationMethod(
103
- shdw_defaults[:calculation_method][:default])
104
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
105
- os_shadow_calc.setCalculationMethod(
106
- shdw_defaults[:calculation_method][:default])
107
- end
108
- begin
109
- os_shadow_calc.setShadingCalculationUpdateFrequencyMethod(
110
- shdw_defaults[:calculation_update_method][:default])
111
- rescue # REMOVE: Once the upgrade to OpenStudio 3.0 is official
112
- end
113
- begin
114
- os_shadow_calc.setShadingCalculationUpdateFrequency(
115
- shdw_defaults[:calculation_frequency][:default])
116
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
117
- os_shadow_calc.setCalculationFrequency(
118
- shdw_defaults[:calculation_frequency][:default])
119
- end
101
+ os_shadow_calc.setShadingCalculationMethod(
102
+ shdw_defaults[:calculation_method][:default])
103
+ os_shadow_calc.setShadingCalculationUpdateFrequencyMethod(
104
+ shdw_defaults[:calculation_update_method][:default])
105
+ os_shadow_calc.setShadingCalculationUpdateFrequency(
106
+ shdw_defaults[:calculation_frequency][:default])
120
107
  os_shadow_calc.setMaximumFiguresInShadowOverlapCalculations(
121
108
  shdw_defaults[:maximum_figures][:default])
122
109
 
123
110
  # override any ShadowCalculation defaults with lodaded JSON
124
111
  if @hash[:shadow_calculation]
125
112
  if @hash[:shadow_calculation][:calculation_method]
126
- begin
127
- os_shadow_calc.setShadingCalculationMethod(
128
- @hash[:shadow_calculation][:calculation_method])
129
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
130
- os_shadow_calc.setCalculationMethod(
131
- @hash[:shadow_calculation][:calculation_method])
132
- end
113
+ os_shadow_calc.setShadingCalculationMethod(
114
+ @hash[:shadow_calculation][:calculation_method])
133
115
  end
134
116
  if @hash[:shadow_calculation][:calculation_update_method]
135
- begin
136
- os_shadow_calc.setShadingCalculationUpdateFrequencyMethod(
137
- @hash[:shadow_calculation][:calculation_update_method])
138
- rescue # REMOVE: Once the upgrade to OpenStudio 3.0 is official
139
- end
117
+ os_shadow_calc.setShadingCalculationUpdateFrequencyMethod(
118
+ @hash[:shadow_calculation][:calculation_update_method])
140
119
  end
141
120
  if @hash[:shadow_calculation][:calculation_frequency]
142
- begin
143
- os_shadow_calc.setShadingCalculationUpdateFrequency(
144
- @hash[:shadow_calculation][:calculation_frequency])
145
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
146
- os_shadow_calc.setCalculationFrequency(
147
- @hash[:shadow_calculation][:calculation_frequency])
148
- end
121
+ os_shadow_calc.setShadingCalculationUpdateFrequency(
122
+ @hash[:shadow_calculation][:calculation_frequency])
149
123
  end
150
124
  if @hash[:shadow_calculation][:maximum_figures]
151
125
  os_shadow_calc.setMaximumFiguresInShadowOverlapCalculations(
@@ -192,15 +166,9 @@ module Honeybee
192
166
  end
193
167
  end
194
168
  if @hash[:output][:summary_reports]
195
- begin
196
- os_report = @openstudio_model.getOutputTableSummaryReports
197
- rescue # REMOVE: Once the upgrade to OpenStudio 3.0 is official
198
- end
169
+ os_report = @openstudio_model.getOutputTableSummaryReports
199
170
  @hash[:output][:summary_reports].each do |report|
200
- begin
201
- os_report.addSummaryReport(report)
202
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
203
- end
171
+ os_report.addSummaryReport(report)
204
172
  end
205
173
  end
206
174
  end
@@ -242,13 +210,10 @@ module Honeybee
242
210
  # Set the holidays
243
211
  if @hash[:run_period][:holidays]
244
212
  @hash[:run_period][:holidays].each do |hol|
245
- begin
246
- os_hol = OpenStudio::Model::RunPeriodControlSpecialDays.new(
247
- OpenStudio::MonthOfYear.new(hol[0]), hol[1], @openstudio_model)
248
- os_hol.setDuration(1)
249
- os_hol.setSpecialDayType('Holiday')
250
- rescue NoMethodError # REMOVE: Once the upgrade to OpenStudio 3.0 is official
251
- end
213
+ os_hol = OpenStudio::Model::RunPeriodControlSpecialDays.new(
214
+ OpenStudio::MonthOfYear.new(hol[0]), hol[1], @openstudio_model)
215
+ os_hol.setDuration(1)
216
+ os_hol.setSpecialDayType('Holiday')
252
217
  end
253
218
  end
254
219
  end
@@ -272,6 +237,10 @@ module Honeybee
272
237
  if @hash[:terrain_type]
273
238
  os_site.setTerrain(@hash[:terrain_type])
274
239
  end
240
+
241
+ # ensure water mains temperatures are written
242
+ os_water_mains = @openstudio_model.getSiteWaterMainsTemperature
243
+ os_water_mains.setCalculationMethod('CorrelationFromWeatherFile')
275
244
  end
276
245
 
277
246
  end #SimulationParameter
@@ -64,7 +64,7 @@ module Honeybee
64
64
  @@program_manager.setCallingPoint('BeginTimestepBeforePredictor')
65
65
  end
66
66
  @@program_manager
67
- end
67
+ end
68
68
 
69
69
  def replace_ems_special_characters(ems_variable_name)
70
70
  # remove special characters from an name to be used as an EMS variable
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.7.5
4
+ version: 2.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tanushree Charan
@@ -11,8 +11,92 @@ authors:
11
11
  autorequire:
12
12
  bindir: exe
13
13
  cert_chain: []
14
- date: 2020-11-25 00:00:00.000000000 Z
14
+ date: 2020-12-22 00:00:00.000000000 Z
15
15
  dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: bundler
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '2.1'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '2.1'
30
+ - !ruby/object:Gem::Dependency
31
+ name: public_suffix
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - "~>"
35
+ - !ruby/object:Gem::Version
36
+ version: 3.1.1
37
+ type: :development
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: 3.1.1
44
+ - !ruby/object:Gem::Dependency
45
+ name: json-schema
46
+ requirement: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - "~>"
49
+ - !ruby/object:Gem::Version
50
+ version: 2.8.1
51
+ type: :development
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: 2.8.1
58
+ - !ruby/object:Gem::Dependency
59
+ name: rake
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: '13.0'
65
+ type: :development
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '13.0'
72
+ - !ruby/object:Gem::Dependency
73
+ name: rspec
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: '3.9'
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - "~>"
84
+ - !ruby/object:Gem::Version
85
+ version: '3.9'
86
+ - !ruby/object:Gem::Dependency
87
+ name: rubocop
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: 0.54.0
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: 0.54.0
16
100
  - !ruby/object:Gem::Dependency
17
101
  name: json_pure
18
102
  requirement: !ruby/object:Gem::Requirement
@@ -64,12 +148,10 @@ executables: []
64
148
  extensions: []
65
149
  extra_rdoc_files: []
66
150
  files:
67
- - ".coveralls.yml"
68
- - ".github/workflows/emit-release-event.yaml"
69
- - ".github/workflows/pull_request.yaml"
151
+ - ".github/workflows/cd.yml"
152
+ - ".github/workflows/ci.yaml"
70
153
  - ".gitignore"
71
154
  - ".releaserc.json"
72
- - ".travis.yml"
73
155
  - Gemfile
74
156
  - LICENSE.md
75
157
  - README.md
@@ -81,6 +163,7 @@ files:
81
163
  - doc_templates/copyright_ruby.txt
82
164
  - honeybee-openstudio.gemspec
83
165
  - lib/files/Honeybee.rb
166
+ - lib/files/honeybee_adapter.rb
84
167
  - lib/files/honeybee_workflow.osw
85
168
  - lib/files/urbanopt_Gemfile
86
169
  - lib/from_openstudio.rb
@@ -117,6 +200,7 @@ files:
117
200
  - lib/honeybee/load/infiltration.rb
118
201
  - lib/honeybee/load/lighting.rb
119
202
  - lib/honeybee/load/people.rb
203
+ - lib/honeybee/load/service_hot_water.rb
120
204
  - lib/honeybee/load/setpoint_humidistat.rb
121
205
  - lib/honeybee/load/setpoint_thermostat.rb
122
206
  - lib/honeybee/load/ventilation.rb
@@ -172,6 +256,7 @@ files:
172
256
  - lib/to_openstudio/load/infiltration.rb
173
257
  - lib/to_openstudio/load/lighting.rb
174
258
  - lib/to_openstudio/load/people.rb
259
+ - lib/to_openstudio/load/service_hot_water.rb
175
260
  - lib/to_openstudio/load/setpoint_humidistat.rb
176
261
  - lib/to_openstudio/load/setpoint_thermostat.rb
177
262
  - lib/to_openstudio/load/ventilation.rb
@@ -204,16 +289,17 @@ require_paths:
204
289
  - lib
205
290
  required_ruby_version: !ruby/object:Gem::Requirement
206
291
  requirements:
207
- - - ">="
292
+ - - "~>"
208
293
  - !ruby/object:Gem::Version
209
- version: '0'
294
+ version: 2.5.0
210
295
  required_rubygems_version: !ruby/object:Gem::Requirement
211
296
  requirements:
212
297
  - - ">="
213
298
  - !ruby/object:Gem::Version
214
299
  version: '0'
215
300
  requirements: []
216
- rubygems_version: 3.0.6
301
+ rubyforge_project:
302
+ rubygems_version: 2.7.6
217
303
  signing_key:
218
304
  specification_version: 4
219
305
  summary: Gem for translating between Honeybee JSON and OpenStudio Model.
@@ -1 +0,0 @@
1
- service_name: travis-ci
@@ -1,25 +0,0 @@
1
- name: Pull Request CI
2
-
3
- on:
4
- pull_request:
5
- branches:
6
- - master
7
- - develop
8
-
9
- jobs:
10
- test_3x:
11
- runs-on: ubuntu-18.04
12
- steps:
13
- - name: Check out repository
14
- uses: actions/checkout@v2
15
- - name: Run Tests
16
- run: |
17
- echo $(pwd)
18
- echo $(ls)
19
- docker pull nrel/openstudio:3.1.0
20
- docker run --name test --rm -d -t -v $(pwd):/work -w /work nrel/openstudio:3.1.0
21
- docker exec -t test pwd
22
- docker exec -t test ls
23
- docker exec -t test bundle update
24
- docker exec -t test bundle exec rake
25
- docker kill test
@@ -1,44 +0,0 @@
1
- dist: bionic
2
- language: ruby
3
-
4
- rvm:
5
- - 2.5
6
-
7
- before_install:
8
- # install openstudio
9
- - wget https://github.com/NREL/OpenStudio/releases/download/v3.0.0/OpenStudio-3.0.0+1c9617fa4e-Linux.deb
10
- - sudo dpkg -i ./OpenStudio-3.0.0+1c9617fa4e-Linux.deb
11
- # install the openstudio extension gem
12
- - export RUBYLIB=/usr/local/openstudio-3.0.0/Ruby
13
- - gem install openstudio-extension -v 0.2.3
14
-
15
- install:
16
- - bundle install
17
-
18
- jobs:
19
- include:
20
- - stage: test
21
- script:
22
- - rake
23
- - stage: deploy
24
- if: branch = master AND (NOT type IN (pull_request))
25
- before_install:
26
- - nvm install lts/* --latest-npm
27
- install:
28
- - npm install @semantic-release/exec
29
- script:
30
- - git config --global user.email "releases@ladybug.tools"
31
- - git config --global user.name "ladybugbot"
32
- - npx semantic-release
33
- - stage: deploy
34
- if: tag IS present
35
- script:
36
- - export CLEAN_TAG=$(echo $TRAVIS_TAG | sed 's/v//g')
37
- - sed -i 's/"0.0.0"/'"'$CLEAN_TAG'"'/g' honeybee-openstudio.gemspec
38
- deploy:
39
- on:
40
- tags: true
41
- provider: rubygems
42
- skip_cleanup: true
43
- api_key: $API_KEY
44
- gem: honeybee-openstudio