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
@@ -1,38 +1,35 @@
1
-
2
- lib = File.expand_path('lib', __dir__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = 'honeybee-openstudio'
7
- spec.version = ''
8
- spec.authors = ['Tanushree Charan', 'Dan Macumber', 'Chris Mackey', 'Mostapha Sadeghipour Roudsari']
9
- spec.email = ['tanushree.charan@nrel.gov', 'chris@ladybug.tools']
10
-
11
- spec.summary = 'Gem for translating between Honeybee JSON and OpenStudio Model.'
12
- spec.description = 'Library and measures for translating between Honeybee JSON schema and OpenStudio Model schema (OSM).'
13
- spec.homepage = 'https://github.com/ladybug-tools/honeybee-openstudio-gem'
14
-
15
- # Specify which files should be added to the gem when it is released.
16
- # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
17
- spec.files = Dir.chdir(File.expand_path(__dir__)) do
18
- `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19
- end
20
- spec.bindir = 'exe'
21
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
- spec.require_paths = ['lib']
23
-
24
- if /^2.5/.match(RUBY_VERSION)
25
- spec.required_ruby_version = "~> 2.5.0"
26
-
27
- spec.add_development_dependency "bundler", "~> 2.1"
28
- spec.add_development_dependency "public_suffix", "~> 3.1.1"
29
- spec.add_development_dependency "json-schema", "~> 2.8.1"
30
- spec.add_development_dependency "rake", "~> 13.0"
31
- spec.add_development_dependency "rspec", "~> 3.9"
32
- spec.add_development_dependency "rubocop", "~> 0.54.0"
33
- end
34
-
35
- spec.add_dependency 'json_pure'
36
- spec.add_dependency 'openstudio-extension', '0.2.5'
37
- spec.add_dependency 'openstudio-standards', '~> 0.2.12'
38
- end
1
+
2
+ lib = File.expand_path('lib', __dir__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'from_honeybee/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'honeybee-openstudio'
8
+ spec.version = '1.8.1'
9
+ spec.authors = ['Tanushree Charan', 'Dan Macumber', 'Chris Mackey', 'Mostapha Sadeghipour Roudsari']
10
+ spec.email = ['tanushree.charan@nrel.gov', 'chris@ladybug.tools']
11
+
12
+ spec.summary = 'Gem for translating between Honeybee JSON and OpenStudio Model.'
13
+ spec.description = 'Library and measures for translating between Honeybee JSON schema and OpenStudio Model schema (OSM).'
14
+ spec.homepage = 'https://github.com/ladybug-tools/honeybee-openstudio-gem'
15
+
16
+ # Specify which files should be added to the gem when it is released.
17
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
18
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
19
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20
+ end
21
+ spec.bindir = 'exe'
22
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
+ spec.require_paths = ['lib']
24
+
25
+ spec.add_development_dependency 'bundler', '~> 1.14'
26
+ spec.add_development_dependency 'rake', '12.3.1'
27
+ spec.add_development_dependency 'rspec', '3.7.0'
28
+ spec.add_development_dependency 'rubocop', '~> 0.54.0'
29
+
30
+ spec.add_dependency 'json-schema'
31
+ spec.add_dependency 'json_pure'
32
+ spec.add_dependency 'openstudio-extension', '0.1.6'
33
+ spec.add_dependency 'openstudio-standards', '~> 0.2.7'
34
+ spec.add_dependency 'public_suffix', '~> 3.1.1'
35
+ end
@@ -1,113 +1,113 @@
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 'urbanopt/reporting'
33
- require 'openstudio/common_measures'
34
- require 'openstudio/model_articulation'
35
-
36
- require 'json'
37
-
38
- module URBANopt
39
- module Scenario
40
- class HoneybeeMapper < SimulationMapperBase
41
-
42
- # class level variables
43
- @@instance_lock = Mutex.new
44
- @@osw = nil
45
- @@geometry = nil
46
-
47
- def initialize()
48
-
49
- # do initialization of class variables in thread safe way
50
- @@instance_lock.synchronize do
51
- if @@osw.nil?
52
-
53
- # load the OSW for this class
54
- osw_path = File.join(File.dirname(__FILE__), 'honeybee_workflow.osw')
55
- File.open(osw_path, 'r') do |file|
56
- @@osw = JSON.parse(file.read, symbolize_names: true)
57
- end
58
-
59
- # configure OSW with extension gem paths for measures and files
60
- # all extension gems must be required before this line
61
- @@osw = OpenStudio::Extension.configure_osw(@@osw)
62
- end
63
- end
64
- end
65
-
66
- def create_osw(scenario, features, feature_names)
67
-
68
- if features.size != 1
69
- raise "Mapper currently cannot simulate more than one feature at a time."
70
- end
71
- feature = features[0]
72
- feature_id = feature.id
73
- feature_type = feature.type
74
- feature_name = feature.name
75
- if feature_names.size == 1
76
- feature_name = feature_names[0]
77
- end
78
-
79
- # deep clone of @@osw before we configure it
80
- osw = Marshal.load(Marshal.dump(@@osw))
81
-
82
- # set the name and description of the OSW to reference this particular feature
83
- osw[:name] = feature_name
84
- osw[:description] = feature_name
85
-
86
- if feature_type == 'Building'
87
- # set the honeybee JSON key to the honeybee_model measure
88
- OpenStudio::Extension.set_measure_argument(
89
- osw, 'from_honeybee_model', 'model_json', feature.detailed_model_filename)
90
-
91
- # check if there is a HVAC key in the feature JSON properties
92
- building_hash = feature.to_hash
93
- if building_hash.key?(:system_type)
94
- # assume the typical building measure is in the OSW and add the system type
95
- OpenStudio::Extension.set_measure_argument(
96
- osw, 'create_typical_building_from_model', 'system_type', system_type)
97
- end
98
-
99
- # add the feature id and name to the reporting measure
100
- OpenStudio::Extension.set_measure_argument(
101
- osw, 'default_feature_reports', 'feature_id', feature_id)
102
- OpenStudio::Extension.set_measure_argument(
103
- osw, 'default_feature_reports', 'feature_name', feature_name)
104
- OpenStudio::Extension.set_measure_argument(
105
- osw, 'default_feature_reports', 'feature_type', feature_type)
106
-
107
- end
108
- return osw
109
- end
110
-
111
- end #HoneybeeMapper
112
- end #Scenario
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 'urbanopt/scenario'
33
+ require 'openstudio/common_measures'
34
+ require 'openstudio/model_articulation'
35
+
36
+ require 'json'
37
+
38
+ module URBANopt
39
+ module Scenario
40
+ class HoneybeeMapper < SimulationMapperBase
41
+
42
+ # class level variables
43
+ @@instance_lock = Mutex.new
44
+ @@osw = nil
45
+ @@geometry = nil
46
+
47
+ def initialize()
48
+
49
+ # do initialization of class variables in thread safe way
50
+ @@instance_lock.synchronize do
51
+ if @@osw.nil?
52
+
53
+ # load the OSW for this class
54
+ osw_path = File.join(File.dirname(__FILE__), 'honeybee_workflow.osw')
55
+ File.open(osw_path, 'r') do |file|
56
+ @@osw = JSON.parse(file.read, symbolize_names: true)
57
+ end
58
+
59
+ # configure OSW with extension gem paths for measures and files
60
+ # all extension gems must be required before this line
61
+ @@osw = OpenStudio::Extension.configure_osw(@@osw)
62
+ end
63
+ end
64
+ end
65
+
66
+ def create_osw(scenario, features, feature_names)
67
+
68
+ if features.size != 1
69
+ raise "Mapper currently cannot simulate more than one feature at a time."
70
+ end
71
+ feature = features[0]
72
+ feature_id = feature.id
73
+ feature_type = feature.type
74
+ feature_name = feature.name
75
+ if feature_names.size == 1
76
+ feature_name = feature_names[0]
77
+ end
78
+
79
+ # deep clone of @@osw before we configure it
80
+ osw = Marshal.load(Marshal.dump(@@osw))
81
+
82
+ # set the name and description of the OSW to reference this particular feature
83
+ osw[:name] = feature_name
84
+ osw[:description] = feature_name
85
+
86
+ if feature_type == 'Building'
87
+ # set the honeybee JSON key to the from_honeybee_model measure
88
+ OpenStudio::Extension.set_measure_argument(
89
+ osw, 'from_honeybee_model', 'model_json', feature.detailed_model_filename)
90
+
91
+ # check if there is a HVAC key in the feature JSON properties
92
+ building_hash = feature.to_hash
93
+ if building_hash.key?(:system_type)
94
+ # assume the typical building measure is in the OSW and add the system type
95
+ OpenStudio::Extension.set_measure_argument(
96
+ osw, 'create_typical_building_from_model', 'system_type', system_type)
97
+ end
98
+
99
+ # add the feature id and name to the reporting measure
100
+ OpenStudio::Extension.set_measure_argument(
101
+ osw, 'default_feature_reports', 'feature_id', feature_id)
102
+ OpenStudio::Extension.set_measure_argument(
103
+ osw, 'default_feature_reports', 'feature_name', feature_name)
104
+ OpenStudio::Extension.set_measure_argument(
105
+ osw, 'default_feature_reports', 'feature_type', feature_type)
106
+
107
+ end
108
+ return osw
109
+ end
110
+
111
+ end #HoneybeeMapper
112
+ end #Scenario
113
113
  end #URBANopt
@@ -1,48 +1,48 @@
1
- {
2
- "seed_file": null,
3
- "weather_file": null,
4
- "measure_paths": [],
5
- "file_paths": [],
6
- "run_directory": null,
7
- "steps": [
8
- {
9
- "measure_dir_name": "from_honeybee_simulation_parameter",
10
- "arguments": {
11
- "simulation_parameter_json": "simulation_parameter.json"
12
- }
13
- },{
14
- "measure_dir_name": "from_honeybee_model",
15
- "arguments": {
16
- "model_json": "multi_zone_model.json"
17
- }
18
- },{
19
- "name": "create_typical_building_from_model",
20
- "measure_dir_name": "create_typical_building_from_model",
21
- "arguments": {
22
- "__SKIP__": true,
23
- "template": "90.1-2004",
24
- "add_constructions": false,
25
- "add_space_type_loads": false,
26
- "add_elevators": false,
27
- "add_exterior_lights": false,
28
- "add_exhaust": false,
29
- "add_swh": false,
30
- "add_refrigeration": false,
31
- "remove_objects": false,
32
- "system_type": "Inferred",
33
- "add_hvac": true,
34
- "use_upstream_args": false
35
- }
36
- },{
37
- "measure_dir_name": "default_feature_reports",
38
- "arguments": {
39
- "__SKIP__": true,
40
- "feature_id": null,
41
- "feature_name": null,
42
- "feature_type": null
43
- }
44
- }
45
- ],
46
- "name": null,
47
- "description": null
1
+ {
2
+ "seed_file": null,
3
+ "weather_file": null,
4
+ "measure_paths": [],
5
+ "file_paths": [],
6
+ "run_directory": null,
7
+ "steps": [
8
+ {
9
+ "measure_dir_name": "from_honeybee_simulation_parameter",
10
+ "arguments": {
11
+ "simulation_parameter_json": "simulation_parameter.json"
12
+ }
13
+ },{
14
+ "measure_dir_name": "from_honeybee_model",
15
+ "arguments": {
16
+ "model_json": "multi_zone_model.json"
17
+ }
18
+ },{
19
+ "name": "create_typical_building_from_model",
20
+ "measure_dir_name": "create_typical_building_from_model",
21
+ "arguments": {
22
+ "__SKIP__": true,
23
+ "template": "90.1-2004",
24
+ "add_constructions": false,
25
+ "add_space_type_loads": false,
26
+ "add_elevators": false,
27
+ "add_exterior_lights": false,
28
+ "add_exhaust": false,
29
+ "add_swh": false,
30
+ "add_refrigeration": false,
31
+ "remove_objects": false,
32
+ "system_type": "Inferred",
33
+ "add_hvac": true,
34
+ "use_upstream_args": false
35
+ }
36
+ },{
37
+ "measure_dir_name": "default_feature_reports",
38
+ "arguments": {
39
+ "__SKIP__": true,
40
+ "feature_id": null,
41
+ "feature_name": null,
42
+ "feature_type": null
43
+ }
44
+ }
45
+ ],
46
+ "name": null,
47
+ "description": null
48
48
  }
@@ -1,32 +1,32 @@
1
- source 'http://rubygems.org'
2
-
3
- ruby '~> 2.5.0'
4
-
5
- allow_local = ENV['FAVOR_LOCAL_GEMS']
6
-
7
- if allow_local && File.exist?('../openstudio-model-articulation-gem')
8
- gem 'openstudio-model-articulation', path: '../openstudio-model-articulation-gem'
9
- elsif allow_local
10
- gem 'openstudio-model-articulation', github: 'NREL/openstudio-model-articulation-gem', branch: 'develop'
11
- else
12
- gem 'openstudio-model-articulation', '0.2.0'
13
- end
14
-
15
- if allow_local && File.exist?('../urbanopt-geojson-gem')
16
- gem 'urbanopt-geojson', path: '../urbanopt-geojson-gem'
17
- elsif allow_local
18
- gem 'urbanopt-geojson', github: 'URBANopt/urbanopt-geojson-gem', branch: 'develop'
19
- else
20
- gem 'urbanopt-geojson', '~> 0.4.0'
21
- end
22
-
23
- if allow_local && File.exist?('../urbanopt-reporting-gem')
24
- gem 'urbanopt-reporting', path: '../urbanopt-reporting-gem'
25
- elsif allow_local
26
- gem 'urbanopt-reporting', github: 'URBANopt/urbanopt-reporting-gem', branch: 'develop'
27
- else
28
- gem 'urbanopt-reporting', '~> 0.2.1'
29
- end
30
-
31
- # include the honeybee-openstudio-gem
32
- gem 'honeybee-openstudio', '2.7.3'
1
+ source 'http://rubygems.org'
2
+
3
+ ruby '2.2.4'
4
+
5
+ allow_local = ENV['FAVOR_LOCAL_GEMS']
6
+
7
+ gem 'urbanopt-reopt', '0.2.1'
8
+
9
+ if allow_local && File.exist?('../urbanopt-scenario-gem')
10
+ gem 'urbanopt-scenario', path: '../urbanopt-scenario-gem'
11
+ elsif allow_local
12
+ gem 'urbanopt-scenario', github: 'URBANopt/urbanopt-scenario-gem', branch: 'develop'
13
+ else
14
+ gem 'urbanopt-scenario', '0.2.0'
15
+ end
16
+
17
+ if allow_local && File.exist?('../urbanopt-geojson-gem')
18
+ gem 'urbanopt-geojson', path: '../urbanopt-geojson-gem'
19
+ elsif allow_local
20
+ gem 'urbanopt-geojson', github: 'URBANopt/urbanopt-geojson-gem', branch: 'develop'
21
+ else
22
+ gem 'urbanopt-geojson', '0.2.0'
23
+ end
24
+
25
+ # include the honeybee-openstudio-gem
26
+ gem 'honeybee-openstudio', github: 'ladybug-tools/honeybee-openstudio-gem'
27
+
28
+ # simplecov has an unnecessary dependency on native json gem, use fork that does not require this
29
+ gem 'simplecov', github: 'NREL/simplecov'
30
+
31
+ # Specify exact rack version temporarily to work with Ruby 2.2.4
32
+ gem 'rack', '2.1.2'