honeybee-openstudio 0 → 1.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (132) hide show
  1. checksums.yaml +5 -5
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +32 -33
  4. data/.releaserc.json +7 -7
  5. data/.travis.yml +41 -0
  6. data/Gemfile +18 -14
  7. data/LICENSE.md +23 -23
  8. data/README.md +95 -95
  9. data/Rakefile +21 -16
  10. data/doc_templates/LICENSE.md +23 -23
  11. data/doc_templates/copyright_erb.txt +31 -31
  12. data/doc_templates/copyright_js.txt +4 -4
  13. data/doc_templates/copyright_ruby.txt +29 -29
  14. data/honeybee-openstudio.gemspec +35 -38
  15. data/lib/files/Honeybee.rb +112 -112
  16. data/lib/files/honeybee_workflow.osw +47 -47
  17. data/lib/files/urbanopt_Gemfile +32 -32
  18. data/lib/{honeybee/_defaults → from_honeybee/_openapi}/model.json +8126 -11310
  19. data/lib/{honeybee/_defaults → from_honeybee/_openapi}/simulation-parameter.json +842 -972
  20. data/lib/{to_openstudio → from_honeybee}/construction/air.rb +65 -56
  21. data/lib/{to_openstudio → from_honeybee}/construction/opaque.rb +77 -67
  22. data/lib/{to_openstudio → from_honeybee}/construction/shade.rb +108 -99
  23. data/lib/{to_openstudio → from_honeybee}/construction/window.rb +80 -70
  24. data/lib/{to_openstudio → from_honeybee}/construction_set.rb +278 -266
  25. data/lib/{honeybee → from_honeybee}/extension.rb +109 -129
  26. data/lib/{to_openstudio → from_honeybee}/geometry/aperture.rb +167 -157
  27. data/lib/{to_openstudio → from_honeybee}/geometry/door.rb +160 -150
  28. data/lib/{to_openstudio → from_honeybee}/geometry/face.rb +163 -178
  29. data/lib/{to_openstudio → from_honeybee}/geometry/room.rb +392 -442
  30. data/lib/{to_openstudio → from_honeybee}/geometry/shade.rb +89 -79
  31. data/lib/{to_openstudio → from_honeybee}/hvac/ideal_air.rb +150 -141
  32. data/lib/{to_openstudio → from_honeybee}/load/electric_equipment.rb +96 -87
  33. data/lib/{to_openstudio → from_honeybee}/load/gas_equipment.rb +97 -88
  34. data/lib/{to_openstudio → from_honeybee}/load/infiltration.rb +94 -85
  35. data/lib/{to_openstudio → from_honeybee}/load/lighting.rb +98 -89
  36. data/lib/{to_openstudio → from_honeybee}/load/people.rb +100 -91
  37. data/lib/{to_openstudio → from_honeybee}/load/setpoint_humidistat.rb +75 -66
  38. data/lib/{to_openstudio → from_honeybee}/load/setpoint_thermostat.rb +71 -62
  39. data/lib/{to_openstudio → from_honeybee}/load/ventilation.rb +96 -87
  40. data/lib/{to_openstudio → from_honeybee}/material/opaque.rb +94 -85
  41. data/lib/{to_openstudio → from_honeybee}/material/opaque_no_mass.rb +94 -85
  42. data/lib/{to_openstudio → from_honeybee}/material/window_blind.rb +238 -229
  43. data/lib/{to_openstudio → from_honeybee}/material/window_gas.rb +76 -67
  44. data/lib/{to_openstudio → from_honeybee}/material/window_gas_custom.rb +118 -108
  45. data/lib/{to_openstudio → from_honeybee}/material/window_gas_mixture.rb +79 -70
  46. data/lib/{to_openstudio → from_honeybee}/material/window_glazing.rb +166 -157
  47. data/lib/{to_openstudio → from_honeybee}/material/window_shade.rb +160 -151
  48. data/lib/{to_openstudio → from_honeybee}/material/window_simpleglazsys.rb +73 -64
  49. data/lib/from_honeybee/model.rb +434 -0
  50. data/lib/{honeybee → from_honeybee}/model_object.rb +110 -108
  51. data/lib/{to_openstudio → from_honeybee}/program_type.rb +124 -104
  52. data/lib/{to_openstudio → from_honeybee}/schedule/fixed_interval.rb +115 -105
  53. data/lib/{to_openstudio → from_honeybee}/schedule/ruleset.rb +164 -164
  54. data/lib/{to_openstudio → from_honeybee}/schedule/type_limit.rb +88 -76
  55. data/lib/{to_openstudio/simulation/design_day.rb → from_honeybee/simulation/designday.rb} +105 -96
  56. data/lib/{honeybee/load/lighting.rb → from_honeybee/simulation/extension.rb} +46 -43
  57. data/lib/{to_openstudio/simulation/parameter_model.rb → from_honeybee/simulation/parameter.rb} +277 -243
  58. data/lib/{honeybee/simulation/design_day.rb → from_honeybee/version.rb} +34 -42
  59. data/lib/{honeybee.rb → from_honeybee.rb} +86 -93
  60. data/lib/measures/from_honeybee_model/LICENSE.md +27 -23
  61. data/lib/measures/from_honeybee_model/README.md +32 -32
  62. data/lib/measures/from_honeybee_model/measure.rb +91 -91
  63. data/lib/measures/from_honeybee_model/measure.xml +103 -80
  64. data/lib/measures/from_honeybee_model/tests/from_honeybee_model_test.rb +126 -126
  65. data/lib/measures/from_honeybee_simulation_parameter/LICENSE.md +27 -23
  66. data/lib/measures/from_honeybee_simulation_parameter/README.md +32 -32
  67. data/lib/measures/from_honeybee_simulation_parameter/measure.rb +95 -95
  68. data/lib/measures/from_honeybee_simulation_parameter/measure.xml +91 -86
  69. data/lib/measures/from_honeybee_simulation_parameter/tests/from_honeybee_simulation_parameter_test.rb +109 -109
  70. metadata +89 -147
  71. data/.github/workflows/ci.yaml +0 -88
  72. data/doc_templates/README.md.erb +0 -42
  73. data/lib/from_openstudio/geometry/aperture.rb +0 -136
  74. data/lib/from_openstudio/geometry/door.rb +0 -136
  75. data/lib/from_openstudio/geometry/face.rb +0 -174
  76. data/lib/from_openstudio/geometry/room.rb +0 -121
  77. data/lib/from_openstudio/geometry/shade.rb +0 -87
  78. data/lib/from_openstudio/model.rb +0 -123
  79. data/lib/from_openstudio/model_object.rb +0 -43
  80. data/lib/from_openstudio/simulation/design_day.rb +0 -123
  81. data/lib/from_openstudio/simulation/parameter_model.rb +0 -93
  82. data/lib/from_openstudio/simulation/simulation_output.rb +0 -67
  83. data/lib/from_openstudio.rb +0 -49
  84. data/lib/honeybee/_defaults/energy_default.json +0 -1682
  85. data/lib/honeybee/construction/air.rb +0 -42
  86. data/lib/honeybee/construction/opaque.rb +0 -42
  87. data/lib/honeybee/construction/shade.rb +0 -42
  88. data/lib/honeybee/construction/window.rb +0 -51
  89. data/lib/honeybee/construction/windowshade.rb +0 -43
  90. data/lib/honeybee/construction_set.rb +0 -42
  91. data/lib/honeybee/geometry/aperture.rb +0 -42
  92. data/lib/honeybee/geometry/door.rb +0 -42
  93. data/lib/honeybee/geometry/face.rb +0 -48
  94. data/lib/honeybee/geometry/room.rb +0 -56
  95. data/lib/honeybee/geometry/shade.rb +0 -42
  96. data/lib/honeybee/hvac/ideal_air.rb +0 -42
  97. data/lib/honeybee/hvac/template.rb +0 -73
  98. data/lib/honeybee/load/electric_equipment.rb +0 -42
  99. data/lib/honeybee/load/gas_equipment.rb +0 -42
  100. data/lib/honeybee/load/infiltration.rb +0 -42
  101. data/lib/honeybee/load/people.rb +0 -42
  102. data/lib/honeybee/load/setpoint_humidistat.rb +0 -46
  103. data/lib/honeybee/load/setpoint_thermostat.rb +0 -46
  104. data/lib/honeybee/load/ventilation.rb +0 -42
  105. data/lib/honeybee/material/opaque.rb +0 -42
  106. data/lib/honeybee/material/opaque_no_mass.rb +0 -42
  107. data/lib/honeybee/material/window_blind.rb +0 -42
  108. data/lib/honeybee/material/window_gas.rb +0 -42
  109. data/lib/honeybee/material/window_gas_custom.rb +0 -42
  110. data/lib/honeybee/material/window_gas_mixture.rb +0 -42
  111. data/lib/honeybee/material/window_glazing.rb +0 -42
  112. data/lib/honeybee/material/window_shade.rb +0 -42
  113. data/lib/honeybee/material/window_simpleglazsys.rb +0 -42
  114. data/lib/honeybee/model.rb +0 -87
  115. data/lib/honeybee/program_type.rb +0 -56
  116. data/lib/honeybee/schedule/fixed_interval.rb +0 -42
  117. data/lib/honeybee/schedule/ruleset.rb +0 -42
  118. data/lib/honeybee/schedule/type_limit.rb +0 -42
  119. data/lib/honeybee/simulation/parameter_model.rb +0 -86
  120. data/lib/honeybee/simulation/simulation_output.rb +0 -42
  121. data/lib/honeybee/ventcool/control.rb +0 -42
  122. data/lib/honeybee/ventcool/opening.rb +0 -46
  123. data/lib/honeybee/ventcool/simulation.rb +0 -42
  124. data/lib/to_openstudio/construction/windowshade.rb +0 -196
  125. data/lib/to_openstudio/hvac/Model.hvac.rb +0 -641
  126. data/lib/to_openstudio/hvac/template.rb +0 -169
  127. data/lib/to_openstudio/model.rb +0 -497
  128. data/lib/to_openstudio/model_object.rb +0 -52
  129. data/lib/to_openstudio/ventcool/control.rb +0 -185
  130. data/lib/to_openstudio/ventcool/opening.rb +0 -189
  131. data/lib/to_openstudio/ventcool/simulation.rb +0 -101
  132. data/lib/to_openstudio.rb +0 -92
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: '0'
4
+ version: 1.8.1
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: 2020-12-10 00:00:00.000000000 Z
14
+ date: 2020-05-26 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: bundler
@@ -19,84 +19,70 @@ dependencies:
19
19
  requirements:
20
20
  - - "~>"
21
21
  - !ruby/object:Gem::Version
22
- version: '2.1'
22
+ version: '1.14'
23
23
  type: :development
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '2.1'
29
+ version: '1.14'
30
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
31
+ name: rake
46
32
  requirement: !ruby/object:Gem::Requirement
47
33
  requirements:
48
- - - "~>"
34
+ - - '='
49
35
  - !ruby/object:Gem::Version
50
- version: 2.8.1
36
+ version: 12.3.1
51
37
  type: :development
52
38
  prerelease: false
53
39
  version_requirements: !ruby/object:Gem::Requirement
54
40
  requirements:
55
- - - "~>"
41
+ - - '='
56
42
  - !ruby/object:Gem::Version
57
- version: 2.8.1
43
+ version: 12.3.1
58
44
  - !ruby/object:Gem::Dependency
59
- name: rake
45
+ name: rspec
60
46
  requirement: !ruby/object:Gem::Requirement
61
47
  requirements:
62
- - - "~>"
48
+ - - '='
63
49
  - !ruby/object:Gem::Version
64
- version: '13.0'
50
+ version: 3.7.0
65
51
  type: :development
66
52
  prerelease: false
67
53
  version_requirements: !ruby/object:Gem::Requirement
68
54
  requirements:
69
- - - "~>"
55
+ - - '='
70
56
  - !ruby/object:Gem::Version
71
- version: '13.0'
57
+ version: 3.7.0
72
58
  - !ruby/object:Gem::Dependency
73
- name: rspec
59
+ name: rubocop
74
60
  requirement: !ruby/object:Gem::Requirement
75
61
  requirements:
76
62
  - - "~>"
77
63
  - !ruby/object:Gem::Version
78
- version: '3.9'
64
+ version: 0.54.0
79
65
  type: :development
80
66
  prerelease: false
81
67
  version_requirements: !ruby/object:Gem::Requirement
82
68
  requirements:
83
69
  - - "~>"
84
70
  - !ruby/object:Gem::Version
85
- version: '3.9'
71
+ version: 0.54.0
86
72
  - !ruby/object:Gem::Dependency
87
- name: rubocop
73
+ name: json-schema
88
74
  requirement: !ruby/object:Gem::Requirement
89
75
  requirements:
90
- - - "~>"
76
+ - - ">="
91
77
  - !ruby/object:Gem::Version
92
- version: 0.54.0
93
- type: :development
78
+ version: '0'
79
+ type: :runtime
94
80
  prerelease: false
95
81
  version_requirements: !ruby/object:Gem::Requirement
96
82
  requirements:
97
- - - "~>"
83
+ - - ">="
98
84
  - !ruby/object:Gem::Version
99
- version: 0.54.0
85
+ version: '0'
100
86
  - !ruby/object:Gem::Dependency
101
87
  name: json_pure
102
88
  requirement: !ruby/object:Gem::Requirement
@@ -117,28 +103,42 @@ dependencies:
117
103
  requirements:
118
104
  - - '='
119
105
  - !ruby/object:Gem::Version
120
- version: 0.2.5
106
+ version: 0.1.6
121
107
  type: :runtime
122
108
  prerelease: false
123
109
  version_requirements: !ruby/object:Gem::Requirement
124
110
  requirements:
125
111
  - - '='
126
112
  - !ruby/object:Gem::Version
127
- version: 0.2.5
113
+ version: 0.1.6
128
114
  - !ruby/object:Gem::Dependency
129
115
  name: openstudio-standards
130
116
  requirement: !ruby/object:Gem::Requirement
131
117
  requirements:
132
118
  - - "~>"
133
119
  - !ruby/object:Gem::Version
134
- version: 0.2.12
120
+ version: 0.2.7
135
121
  type: :runtime
136
122
  prerelease: false
137
123
  version_requirements: !ruby/object:Gem::Requirement
138
124
  requirements:
139
125
  - - "~>"
140
126
  - !ruby/object:Gem::Version
141
- version: 0.2.12
127
+ version: 0.2.7
128
+ - !ruby/object:Gem::Dependency
129
+ name: public_suffix
130
+ requirement: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - "~>"
133
+ - !ruby/object:Gem::Version
134
+ version: 3.1.1
135
+ type: :runtime
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - "~>"
140
+ - !ruby/object:Gem::Version
141
+ version: 3.1.1
142
142
  description: Library and measures for translating between Honeybee JSON schema and
143
143
  OpenStudio Model schema (OSM).
144
144
  email:
@@ -148,15 +148,15 @@ executables: []
148
148
  extensions: []
149
149
  extra_rdoc_files: []
150
150
  files:
151
- - ".github/workflows/ci.yaml"
151
+ - ".coveralls.yml"
152
152
  - ".gitignore"
153
153
  - ".releaserc.json"
154
+ - ".travis.yml"
154
155
  - Gemfile
155
156
  - LICENSE.md
156
157
  - README.md
157
158
  - Rakefile
158
159
  - doc_templates/LICENSE.md
159
- - doc_templates/README.md.erb
160
160
  - doc_templates/copyright_erb.txt
161
161
  - doc_templates/copyright_js.txt
162
162
  - doc_templates/copyright_ruby.txt
@@ -164,64 +164,48 @@ files:
164
164
  - lib/files/Honeybee.rb
165
165
  - lib/files/honeybee_workflow.osw
166
166
  - lib/files/urbanopt_Gemfile
167
- - lib/from_openstudio.rb
168
- - lib/from_openstudio/geometry/aperture.rb
169
- - lib/from_openstudio/geometry/door.rb
170
- - lib/from_openstudio/geometry/face.rb
171
- - lib/from_openstudio/geometry/room.rb
172
- - lib/from_openstudio/geometry/shade.rb
173
- - lib/from_openstudio/model.rb
174
- - lib/from_openstudio/model_object.rb
175
- - lib/from_openstudio/simulation/design_day.rb
176
- - lib/from_openstudio/simulation/parameter_model.rb
177
- - lib/from_openstudio/simulation/simulation_output.rb
178
- - lib/honeybee.rb
179
- - lib/honeybee/_defaults/energy_default.json
180
- - lib/honeybee/_defaults/model.json
181
- - lib/honeybee/_defaults/simulation-parameter.json
182
- - lib/honeybee/construction/air.rb
183
- - lib/honeybee/construction/opaque.rb
184
- - lib/honeybee/construction/shade.rb
185
- - lib/honeybee/construction/window.rb
186
- - lib/honeybee/construction/windowshade.rb
187
- - lib/honeybee/construction_set.rb
188
- - lib/honeybee/extension.rb
189
- - lib/honeybee/geometry/aperture.rb
190
- - lib/honeybee/geometry/door.rb
191
- - lib/honeybee/geometry/face.rb
192
- - lib/honeybee/geometry/room.rb
193
- - lib/honeybee/geometry/shade.rb
194
- - lib/honeybee/hvac/ideal_air.rb
195
- - lib/honeybee/hvac/template.rb
196
- - lib/honeybee/load/electric_equipment.rb
197
- - lib/honeybee/load/gas_equipment.rb
198
- - lib/honeybee/load/infiltration.rb
199
- - lib/honeybee/load/lighting.rb
200
- - lib/honeybee/load/people.rb
201
- - lib/honeybee/load/setpoint_humidistat.rb
202
- - lib/honeybee/load/setpoint_thermostat.rb
203
- - lib/honeybee/load/ventilation.rb
204
- - lib/honeybee/material/opaque.rb
205
- - lib/honeybee/material/opaque_no_mass.rb
206
- - lib/honeybee/material/window_blind.rb
207
- - lib/honeybee/material/window_gas.rb
208
- - lib/honeybee/material/window_gas_custom.rb
209
- - lib/honeybee/material/window_gas_mixture.rb
210
- - lib/honeybee/material/window_glazing.rb
211
- - lib/honeybee/material/window_shade.rb
212
- - lib/honeybee/material/window_simpleglazsys.rb
213
- - lib/honeybee/model.rb
214
- - lib/honeybee/model_object.rb
215
- - lib/honeybee/program_type.rb
216
- - lib/honeybee/schedule/fixed_interval.rb
217
- - lib/honeybee/schedule/ruleset.rb
218
- - lib/honeybee/schedule/type_limit.rb
219
- - lib/honeybee/simulation/design_day.rb
220
- - lib/honeybee/simulation/parameter_model.rb
221
- - lib/honeybee/simulation/simulation_output.rb
222
- - lib/honeybee/ventcool/control.rb
223
- - lib/honeybee/ventcool/opening.rb
224
- - lib/honeybee/ventcool/simulation.rb
167
+ - lib/from_honeybee.rb
168
+ - lib/from_honeybee/_openapi/model.json
169
+ - lib/from_honeybee/_openapi/simulation-parameter.json
170
+ - lib/from_honeybee/construction/air.rb
171
+ - lib/from_honeybee/construction/opaque.rb
172
+ - lib/from_honeybee/construction/shade.rb
173
+ - lib/from_honeybee/construction/window.rb
174
+ - lib/from_honeybee/construction_set.rb
175
+ - lib/from_honeybee/extension.rb
176
+ - lib/from_honeybee/geometry/aperture.rb
177
+ - lib/from_honeybee/geometry/door.rb
178
+ - lib/from_honeybee/geometry/face.rb
179
+ - lib/from_honeybee/geometry/room.rb
180
+ - lib/from_honeybee/geometry/shade.rb
181
+ - lib/from_honeybee/hvac/ideal_air.rb
182
+ - lib/from_honeybee/load/electric_equipment.rb
183
+ - lib/from_honeybee/load/gas_equipment.rb
184
+ - lib/from_honeybee/load/infiltration.rb
185
+ - lib/from_honeybee/load/lighting.rb
186
+ - lib/from_honeybee/load/people.rb
187
+ - lib/from_honeybee/load/setpoint_humidistat.rb
188
+ - lib/from_honeybee/load/setpoint_thermostat.rb
189
+ - lib/from_honeybee/load/ventilation.rb
190
+ - lib/from_honeybee/material/opaque.rb
191
+ - lib/from_honeybee/material/opaque_no_mass.rb
192
+ - lib/from_honeybee/material/window_blind.rb
193
+ - lib/from_honeybee/material/window_gas.rb
194
+ - lib/from_honeybee/material/window_gas_custom.rb
195
+ - lib/from_honeybee/material/window_gas_mixture.rb
196
+ - lib/from_honeybee/material/window_glazing.rb
197
+ - lib/from_honeybee/material/window_shade.rb
198
+ - lib/from_honeybee/material/window_simpleglazsys.rb
199
+ - lib/from_honeybee/model.rb
200
+ - lib/from_honeybee/model_object.rb
201
+ - lib/from_honeybee/program_type.rb
202
+ - lib/from_honeybee/schedule/fixed_interval.rb
203
+ - lib/from_honeybee/schedule/ruleset.rb
204
+ - lib/from_honeybee/schedule/type_limit.rb
205
+ - lib/from_honeybee/simulation/designday.rb
206
+ - lib/from_honeybee/simulation/extension.rb
207
+ - lib/from_honeybee/simulation/parameter.rb
208
+ - lib/from_honeybee/version.rb
225
209
  - lib/measures/.gitkeep
226
210
  - lib/measures/from_honeybee_model/LICENSE.md
227
211
  - lib/measures/from_honeybee_model/README.md
@@ -233,49 +217,6 @@ files:
233
217
  - lib/measures/from_honeybee_simulation_parameter/measure.rb
234
218
  - lib/measures/from_honeybee_simulation_parameter/measure.xml
235
219
  - lib/measures/from_honeybee_simulation_parameter/tests/from_honeybee_simulation_parameter_test.rb
236
- - lib/to_openstudio.rb
237
- - lib/to_openstudio/construction/air.rb
238
- - lib/to_openstudio/construction/opaque.rb
239
- - lib/to_openstudio/construction/shade.rb
240
- - lib/to_openstudio/construction/window.rb
241
- - lib/to_openstudio/construction/windowshade.rb
242
- - lib/to_openstudio/construction_set.rb
243
- - lib/to_openstudio/geometry/aperture.rb
244
- - lib/to_openstudio/geometry/door.rb
245
- - lib/to_openstudio/geometry/face.rb
246
- - lib/to_openstudio/geometry/room.rb
247
- - lib/to_openstudio/geometry/shade.rb
248
- - lib/to_openstudio/hvac/Model.hvac.rb
249
- - lib/to_openstudio/hvac/ideal_air.rb
250
- - lib/to_openstudio/hvac/template.rb
251
- - lib/to_openstudio/load/electric_equipment.rb
252
- - lib/to_openstudio/load/gas_equipment.rb
253
- - lib/to_openstudio/load/infiltration.rb
254
- - lib/to_openstudio/load/lighting.rb
255
- - lib/to_openstudio/load/people.rb
256
- - lib/to_openstudio/load/setpoint_humidistat.rb
257
- - lib/to_openstudio/load/setpoint_thermostat.rb
258
- - lib/to_openstudio/load/ventilation.rb
259
- - lib/to_openstudio/material/opaque.rb
260
- - lib/to_openstudio/material/opaque_no_mass.rb
261
- - lib/to_openstudio/material/window_blind.rb
262
- - lib/to_openstudio/material/window_gas.rb
263
- - lib/to_openstudio/material/window_gas_custom.rb
264
- - lib/to_openstudio/material/window_gas_mixture.rb
265
- - lib/to_openstudio/material/window_glazing.rb
266
- - lib/to_openstudio/material/window_shade.rb
267
- - lib/to_openstudio/material/window_simpleglazsys.rb
268
- - lib/to_openstudio/model.rb
269
- - lib/to_openstudio/model_object.rb
270
- - lib/to_openstudio/program_type.rb
271
- - lib/to_openstudio/schedule/fixed_interval.rb
272
- - lib/to_openstudio/schedule/ruleset.rb
273
- - lib/to_openstudio/schedule/type_limit.rb
274
- - lib/to_openstudio/simulation/design_day.rb
275
- - lib/to_openstudio/simulation/parameter_model.rb
276
- - lib/to_openstudio/ventcool/control.rb
277
- - lib/to_openstudio/ventcool/opening.rb
278
- - lib/to_openstudio/ventcool/simulation.rb
279
220
  homepage: https://github.com/ladybug-tools/honeybee-openstudio-gem
280
221
  licenses: []
281
222
  metadata: {}
@@ -285,16 +226,17 @@ require_paths:
285
226
  - lib
286
227
  required_ruby_version: !ruby/object:Gem::Requirement
287
228
  requirements:
288
- - - "~>"
229
+ - - ">="
289
230
  - !ruby/object:Gem::Version
290
- version: 2.5.0
231
+ version: '0'
291
232
  required_rubygems_version: !ruby/object:Gem::Requirement
292
233
  requirements:
293
234
  - - ">="
294
235
  - !ruby/object:Gem::Version
295
236
  version: '0'
296
237
  requirements: []
297
- rubygems_version: 3.1.4
238
+ rubyforge_project:
239
+ rubygems_version: 2.4.5.1
298
240
  signing_key:
299
241
  specification_version: 4
300
242
  summary: Gem for translating between Honeybee JSON and OpenStudio Model.
@@ -1,88 +0,0 @@
1
- name: CI
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
-
7
- test:
8
- name: Unit tests
9
- runs-on: ubuntu-18.04
10
-
11
- steps:
12
- - name: Check out repository
13
- uses: actions/checkout@v2
14
- - name: Run Tests
15
- run: |
16
- echo $(pwd)
17
- echo $(ls)
18
- docker pull nrel/openstudio:3.1.0
19
- docker run --name test --rm -d -t -v $(pwd):/work -w /work nrel/openstudio:3.1.0
20
- docker exec -t test pwd
21
- docker exec -t test ls
22
- docker exec -t test bundle update
23
- docker exec -t test bundle exec rake
24
- docker kill test
25
-
26
- deploy_github:
27
- name: Deploy to GitHub
28
- runs-on: ubuntu-latest
29
- needs: test
30
- if: github.ref == 'refs/heads/master' && github.repository_owner == 'ladybug-tools'
31
- steps:
32
- - uses: actions/checkout@v2
33
- - name: set up node # we need node for for semantic release
34
- uses: actions/setup-node@v2.1.2
35
- with:
36
- node-version: 14.2.0
37
- - name: install semantic-release
38
- run:
39
- npm install @semantic-release/exec
40
- - name: run semantic release
41
- run: |
42
- git config --global user.email "releases@ladybug.tools"
43
- git config --global user.name "ladybugbot"
44
- npx semantic-release
45
- env:
46
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47
-
48
- deploy_rubygems:
49
- name: Deploy to Rubygems.org
50
- runs-on: ubuntu-latest
51
- needs: deploy_github
52
- steps:
53
- - uses: actions/checkout@v2
54
- - name: Update gemspec
55
- env:
56
- RELEASE_TAG: ${{ github.event.release.tag_name }}
57
- run: |
58
- export CLEAN_TAG=$(echo $RELEASE_TAG | sed 's/v//g')
59
- sed -i 's/"0.0.0"/'"'$CLEAN_TAG'"'/g' honeybee-openstudio.gemspec
60
- - name: Release Gem
61
- uses: dawidd6/action-publish-gem@v1
62
- with:
63
- api_key: ${{secrets.RUBYGEMS_API_KEY}}
64
-
65
- dispatch_schema:
66
- name: Dispatch Schema to Clients
67
- runs-on: ubuntu-latest
68
- needs: deploy_github
69
- strategy:
70
- matrix:
71
- client_repo:
72
- - ladybug-tools/lbt-grasshopper
73
- steps:
74
- - name: Send repo dispatch to lbt-grasshopper
75
- env:
76
- RELEASE_TAG: ${{ github.event.release.tag_name }}
77
- DISPATCH_URL: https://api.github.com/repos/${{ matrix.client_repo }}/dispatches
78
- GH_TOKEN: ${{ secrets.GH_TOKEN }}
79
- run: |
80
- curl -X POST $DISPATCH_URL \
81
- -H "Accept: application/vnd.github.everest-preview+json" \
82
- -d '{
83
- "event_type": "honeybee_openstudio_gem_release",
84
- "client_payload": {
85
- "version" : "'$RELEASE_TAG'"
86
- }
87
- }' \
88
- -u ladybugbot:$GH_TOKEN
@@ -1,42 +0,0 @@
1
- <%#= README.md.erb is used to auto-generate README.md. %>
2
- <%#= To manually maintain README.md throw away README.md.erb and manually edit README.md %>
3
- ###### (Automatically generated documentation)
4
-
5
- # <%= name %>
6
-
7
- ## Description
8
- <%= description %>
9
-
10
- ## Modeler Description
11
- <%= modelerDescription %>
12
-
13
- ## Measure Type
14
- <%= measureType %>
15
-
16
- ## Taxonomy
17
- <%= taxonomy %>
18
-
19
- ## Arguments
20
-
21
- <% arguments.each do |argument| %>
22
- ### <%= argument[:display_name] %>
23
- <%= argument[:description] %>
24
- **Name:** <%= argument[:name] %>,
25
- **Type:** <%= argument[:type] %>,
26
- **Units:** <%= argument[:units] %>,
27
- **Required:** <%= argument[:required] %>,
28
- **Model Dependent:** <%= argument[:model_dependent] %>
29
- <% end %>
30
-
31
- <% if arguments.size == 0 %>
32
- <%= "This measure does not have any user arguments" %>
33
- <% end %>
34
-
35
- <% if outputs.size > 0 %>
36
- ## Outputs
37
- <% output_names = [] %>
38
- <% outputs.each do |output| %>
39
- <% output_names << output[:display_name] %>
40
- <% end %>
41
- <%= output_names.join(", ") %>
42
- <% end %>
@@ -1,136 +0,0 @@
1
- # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
- # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
5
- # Redistribution and use in source and binary forms, with or without
6
- # modification, are permitted provided that the following conditions are met:
7
- #
8
- # (1) Redistributions of source code must retain the above copyright notice,
9
- # this list of conditions and the following disclaimer.
10
- #
11
- # (2) Redistributions in binary form must reproduce the above copyright notice,
12
- # this list of conditions and the following disclaimer in the documentation
13
- # and/or other materials provided with the distribution.
14
- #
15
- # (3) Neither the name of the copyright holder nor the names of any contributors
16
- # may be used to endorse or promote products derived from this software without
17
- # specific prior written permission from the respective party.
18
- #
19
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS
20
- # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21
- # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
- # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE
23
- # UNITED STATES GOVERNMENT, OR THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF
24
- # THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26
- # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27
- # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
28
- # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29
- # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
- # *******************************************************************************
31
-
32
- require 'honeybee/geometry/aperture'
33
-
34
- require 'to_openstudio/model_object'
35
-
36
- module Honeybee
37
- class Aperture < ModelObject
38
-
39
- def self.from_sub_surface(sub_surface, site_transformation)
40
- hash = {}
41
- hash[:type] = 'Aperture'
42
- hash[:identifier] = clean_identifier(sub_surface.nameString)
43
- hash[:display_name] = sub_surface.nameString
44
- hash[:user_data] = {handle: sub_surface.handle.to_s}
45
- hash[:properties] = properties_from_sub_surface(sub_surface)
46
- hash[:geometry] = geometry_from_sub_surface(sub_surface, site_transformation)
47
- hash[:boundary_condition] = boundary_condition_from_sub_surface(sub_surface)
48
-
49
- sub_surface_type = sub_surface.subSurfaceType
50
- hash[:is_operable] = (sub_surface_type == 'OperableWindow')
51
-
52
- indoor_shades = indoor_shades_from_sub_surface(sub_surface)
53
- hash[:indoor_shades] = indoor_shades if !indoor_shades.empty?
54
-
55
- outdoor_shades = outdoor_shades_from_sub_surface(sub_surface)
56
- hash[:outdoor_shades] = outdoor_shades if !outdoor_shades.empty?
57
-
58
- hash
59
- end
60
-
61
- def self.properties_from_sub_surface(sub_surface)
62
- hash = {}
63
- hash[:type] = 'AperturePropertiesAbridged'
64
- hash[:energy] = energy_properties_from_sub_surface(sub_surface)
65
- hash
66
- end
67
-
68
- def self.energy_properties_from_sub_surface(sub_surface)
69
- hash = {}
70
- hash[:type] = 'ApertureEnergyPropertiesAbridged'
71
-
72
- construction = sub_surface.construction
73
- if !construction.empty?
74
- hash[:construction] = clean_identifier(construction.get.nameString)
75
- end
76
-
77
- hash
78
- end
79
-
80
- def self.geometry_from_sub_surface(sub_surface, site_transformation)
81
- result = {}
82
- result[:type] = 'Face3D'
83
- result[:boundary] = []
84
- vertices = site_transformation * sub_surface.vertices
85
- vertices.each do |v|
86
- result[:boundary] << [v.x, v.y, v.z]
87
- end
88
- result
89
- end
90
-
91
- def self.boundary_condition_from_sub_surface(sub_surface)
92
- result = {}
93
- surface = sub_surface.surface.get
94
- surface_type = surface.surfaceType
95
- adjacent_sub_surface = sub_surface.adjacentSubSurface
96
- if !adjacent_sub_surface.empty?
97
- adjacent_space = clean_identifier(adjacent_sub_surface.get.space.get.nameString)
98
- adjacent_surface = clean_identifier(adjacent_sub_surface.get.surface.get.nameString)
99
- adjacent_sub_surface = clean_identifier(adjacent_sub_surface.get.nameString)
100
- result = {type: 'Surface', boundary_condition_objects: [adjacent_sub_surface, adjacent_surface, adjacent_space]}
101
- elsif surface.isGroundSurface
102
- result = {type: 'Ground'}
103
- elsif surface_type == 'Adiabatic'
104
- result = {type: 'Adiabatic'}
105
- else
106
- sun_exposure = (surface.sunExposure == 'SunExposed')
107
- wind_exposure = (surface.windExposure == 'WindExposed')
108
- view_factor = sub_surface.viewFactortoGround
109
- if view_factor.empty?
110
- view_factor = {type: 'Autocalculate'}
111
- else
112
- view_factor = view_factor.get
113
- end
114
- result = {type: 'Outdoors', sun_exposure: sun_exposure,
115
- wind_exposure: wind_exposure, view_factor: view_factor}
116
- end
117
- result
118
- end
119
-
120
- def self.indoor_shades_from_sub_surface(sub_surface)
121
- []
122
- end
123
-
124
- def self.outdoor_shades_from_sub_surface(sub_surface)
125
- result = []
126
- sub_surface.shadingSurfaceGroups.each do |shading_surface_group|
127
- site_transformation = shading_surface_group.siteTransformation
128
- shading_surface_group.shadingSurfaces.each do |shading_surface|
129
- result << Shade.from_shading_surface(shading_surface, site_transformation)
130
- end
131
- end
132
- result
133
- end
134
-
135
- end # Aperture
136
- end # Honeybee