urbanopt-scenario 0.4.2 → 0.6.0

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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/.github/pull_request_template.md +1 -1
  3. data/CHANGELOG.md +39 -0
  4. data/Gemfile +8 -14
  5. data/LICENSE.md +29 -17
  6. data/RDOC_MAIN.md +2 -2
  7. data/README.md +1 -1
  8. data/Rakefile +16 -6
  9. data/docs/.vuepress/components/InnerJsonSchema.vue +7 -15
  10. data/docs/.vuepress/config.js +13 -9
  11. data/docs/.vuepress/highlight.js +1 -1
  12. data/docs/.vuepress/json-schema-deref-loader.js +22 -0
  13. data/docs/README.md +2 -2
  14. data/docs/package-lock.json +429 -498
  15. data/docs/package.json +7 -4
  16. data/lib/urbanopt-scenario.rb +16 -6
  17. data/lib/urbanopt/scenario.rb +16 -6
  18. data/lib/urbanopt/scenario/default_reports.rb +16 -6
  19. data/lib/urbanopt/scenario/extension.rb +21 -9
  20. data/lib/urbanopt/scenario/logger.rb +16 -6
  21. data/lib/urbanopt/scenario/scenario_base.rb +20 -10
  22. data/lib/urbanopt/scenario/scenario_csv.rb +54 -28
  23. data/lib/urbanopt/scenario/scenario_datapoint_base.rb +20 -10
  24. data/lib/urbanopt/scenario/scenario_post_processor_base.rb +18 -8
  25. data/lib/urbanopt/scenario/scenario_post_processor_default.rb +40 -25
  26. data/lib/urbanopt/scenario/scenario_post_processor_opendss.rb +25 -15
  27. data/lib/urbanopt/scenario/scenario_runner_base.rb +22 -11
  28. data/lib/urbanopt/scenario/scenario_runner_osw.rb +22 -10
  29. data/lib/urbanopt/scenario/scenario_visualization.rb +25 -15
  30. data/lib/urbanopt/scenario/simulation_dir_base.rb +19 -9
  31. data/lib/urbanopt/scenario/simulation_dir_osw.rb +20 -10
  32. data/lib/urbanopt/scenario/simulation_mapper_base.rb +19 -9
  33. data/lib/urbanopt/scenario/version.rb +17 -7
  34. data/urbanopt-scenario-gem.gemspec +13 -8
  35. metadata +8 -65
  36. data/docs/.vuepress/components/ScenarioSchema.vue +0 -12
  37. data/docs/schemas/scenario-schema.md +0 -3
@@ -1,21 +1,31 @@
1
1
  # *********************************************************************************
2
- # URBANopt (tm), Copyright (c) 2019-2020, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
- #
4
+
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
- #
7
+
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
- #
10
+
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
- #
14
+
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
- #
18
+
19
+ # Redistribution of this software, without modification, must refer to the software
20
+ # by the same designation. Redistribution of a modified version of this software
21
+ # (i) may not refer to the modified version by the same designation, or by any
22
+ # confusingly similar designation, and (ii) must refer to the underlying software
23
+ # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
+ # the term “URBANopt”, or any confusingly similar designation may not be used to
25
+ # refer to any modified version of this software or any modified version of the
26
+ # underlying software originally provided by Alliance without the prior written
27
+ # consent of Alliance.
28
+
19
29
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
30
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
31
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -35,9 +45,9 @@ module URBANopt
35
45
  # SimulationDirBase is the agnostic representation of a directory of simulation input files.
36
46
  ##
37
47
  # [parameters:]
38
- # +scenario+ - _ScenarioBase_ - Scenario containing this SimulationDirBase.
39
- # +features+ - _Array_ - Array of Features that this SimulationDirBase represents.
40
- # +feature_names+ - _Array_ - Array of scenario specific names for these Features.
48
+ # * +scenario+ - _ScenarioBase_ - Scenario containing this SimulationDirBase.
49
+ # * +features+ - _Array_ - Array of Features that this SimulationDirBase represents.
50
+ # * +feature_names+ - _Array_ - Array of scenario specific names for these Features.
41
51
  def initialize(scenario, features, feature_names)
42
52
  @scenario = scenario
43
53
  @features = features
@@ -1,21 +1,31 @@
1
1
  # *********************************************************************************
2
- # URBANopt (tm), Copyright (c) 2019-2020, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
- #
4
+
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
- #
7
+
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
- #
10
+
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
- #
14
+
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
- #
18
+
19
+ # Redistribution of this software, without modification, must refer to the software
20
+ # by the same designation. Redistribution of a modified version of this software
21
+ # (i) may not refer to the modified version by the same designation, or by any
22
+ # confusingly similar designation, and (ii) must refer to the underlying software
23
+ # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
+ # the term “URBANopt”, or any confusingly similar designation may not be used to
25
+ # refer to any modified version of this software or any modified version of the
26
+ # underlying software originally provided by Alliance without the prior written
27
+ # consent of Alliance.
28
+
19
29
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
30
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
31
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -37,10 +47,10 @@ module URBANopt
37
47
  # SimulationDirOSW creates a OSW file to simulate features, a SimulationMapperBase is invoked to translate features to OSW.
38
48
  ##
39
49
  # [parameters:]
40
- # +scenario+ - _ScenarioBase_ - Scenario containing this SimulationFileBase.
41
- # +features+ - _Array_ - Array of Features this SimulationFile represents.
42
- # +feature_names+ - _Array_ - Array of scenario specific names for these Features.
43
- # +mapper_class+ - _String_ - Name of class derived frmo SimulationMapperBase used to translate feature to simulation OSW.
50
+ # * +scenario+ - _ScenarioBase_ - Scenario containing this SimulationFileBase.
51
+ # * +features+ - _Array_ - Array of Features this SimulationFile represents.
52
+ # * +feature_names+ - _Array_ - Array of scenario specific names for these Features.
53
+ # * +mapper_class+ - _String_ - Name of class derived frmo SimulationMapperBase used to translate feature to simulation OSW.
44
54
  def initialize(scenario, features, feature_names, mapper_class)
45
55
  super(scenario, features, feature_names)
46
56
 
@@ -1,21 +1,31 @@
1
1
  # *********************************************************************************
2
- # URBANopt (tm), Copyright (c) 2019-2020, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
- #
4
+
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
- #
7
+
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
- #
10
+
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
- #
14
+
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
- #
18
+
19
+ # Redistribution of this software, without modification, must refer to the software
20
+ # by the same designation. Redistribution of a modified version of this software
21
+ # (i) may not refer to the modified version by the same designation, or by any
22
+ # confusingly similar designation, and (ii) must refer to the underlying software
23
+ # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
+ # the term “URBANopt”, or any confusingly similar designation may not be used to
25
+ # refer to any modified version of this software or any modified version of the
26
+ # underlying software originally provided by Alliance without the prior written
27
+ # consent of Alliance.
28
+
19
29
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
30
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
31
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -36,9 +46,9 @@ module URBANopt
36
46
 
37
47
  # create osw file given a ScenarioBase object, features, and feature_names
38
48
  # [parameters:]
39
- # +scenario+ - _ScenarioBase_ - An object of ScenarioBase class.
40
- # +features+ - _Array_ - Array of Features.
41
- # +feature_names+ - _Array_ - Array of scenario specific names for these Features.
49
+ # * +scenario+ - _ScenarioBase_ - An object of ScenarioBase class.
50
+ # * +features+ - _Array_ - Array of Features.
51
+ # * +feature_names+ - _Array_ - Array of scenario specific names for these Features.
42
52
  def create_osw(scenario, features, feature_names)
43
53
  raise 'create_osw not implemented for SimulationMapperBase, override in your class'
44
54
  end
@@ -1,21 +1,31 @@
1
1
  # *********************************************************************************
2
- # URBANopt (tm), Copyright (c) 2019-2020, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
- #
4
+
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
- #
7
+
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
- #
10
+
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
- #
14
+
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
- #
18
+
19
+ # Redistribution of this software, without modification, must refer to the software
20
+ # by the same designation. Redistribution of a modified version of this software
21
+ # (i) may not refer to the modified version by the same designation, or by any
22
+ # confusingly similar designation, and (ii) must refer to the underlying software
23
+ # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
+ # the term “URBANopt”, or any confusingly similar designation may not be used to
25
+ # refer to any modified version of this software or any modified version of the
26
+ # underlying software originally provided by Alliance without the prior written
27
+ # consent of Alliance.
28
+
19
29
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
30
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
31
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -30,6 +40,6 @@
30
40
 
31
41
  module URBANopt
32
42
  module Scenario
33
- VERSION = '0.4.2'.freeze
43
+ VERSION = '0.6.0'.freeze
34
44
  end
35
45
  end
@@ -1,4 +1,3 @@
1
-
2
1
  lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'urbanopt/scenario/version'
@@ -22,7 +21,7 @@ Gem::Specification.new do |spec|
22
21
  spec.bindir = 'exe'
23
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
23
  spec.require_paths = ['lib']
25
- spec.required_ruby_version = '~> 2.5.0'
24
+ spec.required_ruby_version = '~> 2.7.0'
26
25
 
27
26
  spec.add_development_dependency 'bundler', '~> 2.1'
28
27
  spec.add_development_dependency 'rake', '~> 13.0'
@@ -30,11 +29,17 @@ Gem::Specification.new do |spec|
30
29
 
31
30
  spec.add_runtime_dependency 'json-schema', '~> 2.8'
32
31
  spec.add_runtime_dependency 'json_pure', '~> 2.3'
33
- spec.add_runtime_dependency 'openstudio-common-measures', '~> 0.2.0'
34
- spec.add_runtime_dependency 'openstudio-extension', '~> 0.2.5'
35
- spec.add_runtime_dependency 'openstudio-load-flexibility-measures', '~> 0.1.3'
36
- spec.add_runtime_dependency 'openstudio-model-articulation', '~> 0.2.0'
32
+
37
33
  spec.add_runtime_dependency 'sqlite3', '1.4.2'
38
- spec.add_runtime_dependency 'urbanopt-core', '~> 0.4.0'
39
- spec.add_runtime_dependency 'urbanopt-reporting', '~> 0.2.0'
34
+ spec.add_runtime_dependency 'urbanopt-core', '~> 0.6.0'
35
+ spec.add_runtime_dependency 'urbanopt-reporting', '~> 0.4.0'
36
+
37
+ # no longer need the below
38
+ # need to include all measure gems listed in mappers in project gemfiles
39
+ # scenario_csv loads the mappers and need access to the extension gems when they are added to a mapper
40
+ # spec.add_runtime_dependency 'openstudio-calibration', '~> 0.3.1'
41
+ # spec.add_runtime_dependency 'openstudio-common-measures', '~> 0.3.2'
42
+ # spec.add_runtime_dependency 'openstudio-ee', '~> 0.3.2'
43
+ # spec.add_runtime_dependency 'openstudio-load-flexibility-measures', '~> 0.2.1'
44
+ # spec.add_runtime_dependency 'openstudio-model-articulation', '~> 0.3.1'
40
45
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urbanopt-scenario
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rawad El Kontar
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2020-09-30 00:00:00.000000000 Z
12
+ date: 2021-04-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -81,62 +81,6 @@ dependencies:
81
81
  - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: '2.3'
84
- - !ruby/object:Gem::Dependency
85
- name: openstudio-common-measures
86
- requirement: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - "~>"
89
- - !ruby/object:Gem::Version
90
- version: 0.2.0
91
- type: :runtime
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: 0.2.0
98
- - !ruby/object:Gem::Dependency
99
- name: openstudio-extension
100
- requirement: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - "~>"
103
- - !ruby/object:Gem::Version
104
- version: 0.2.5
105
- type: :runtime
106
- prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - "~>"
110
- - !ruby/object:Gem::Version
111
- version: 0.2.5
112
- - !ruby/object:Gem::Dependency
113
- name: openstudio-load-flexibility-measures
114
- requirement: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - "~>"
117
- - !ruby/object:Gem::Version
118
- version: 0.1.3
119
- type: :runtime
120
- prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - "~>"
124
- - !ruby/object:Gem::Version
125
- version: 0.1.3
126
- - !ruby/object:Gem::Dependency
127
- name: openstudio-model-articulation
128
- requirement: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - "~>"
131
- - !ruby/object:Gem::Version
132
- version: 0.2.0
133
- type: :runtime
134
- prerelease: false
135
- version_requirements: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - "~>"
138
- - !ruby/object:Gem::Version
139
- version: 0.2.0
140
84
  - !ruby/object:Gem::Dependency
141
85
  name: sqlite3
142
86
  requirement: !ruby/object:Gem::Requirement
@@ -157,28 +101,28 @@ dependencies:
157
101
  requirements:
158
102
  - - "~>"
159
103
  - !ruby/object:Gem::Version
160
- version: 0.4.0
104
+ version: 0.6.0
161
105
  type: :runtime
162
106
  prerelease: false
163
107
  version_requirements: !ruby/object:Gem::Requirement
164
108
  requirements:
165
109
  - - "~>"
166
110
  - !ruby/object:Gem::Version
167
- version: 0.4.0
111
+ version: 0.6.0
168
112
  - !ruby/object:Gem::Dependency
169
113
  name: urbanopt-reporting
170
114
  requirement: !ruby/object:Gem::Requirement
171
115
  requirements:
172
116
  - - "~>"
173
117
  - !ruby/object:Gem::Version
174
- version: 0.2.0
118
+ version: 0.4.0
175
119
  type: :runtime
176
120
  prerelease: false
177
121
  version_requirements: !ruby/object:Gem::Requirement
178
122
  requirements:
179
123
  - - "~>"
180
124
  - !ruby/object:Gem::Version
181
- version: 0.2.0
125
+ version: 0.4.0
182
126
  description: Library to export data point OSW files from URBANopt Scenario CSV
183
127
  email:
184
128
  - rawad.elkontar@nrel.gov
@@ -205,16 +149,15 @@ files:
205
149
  - docs/.gitignore
206
150
  - docs/.vuepress/components/InnerJsonSchema.vue
207
151
  - docs/.vuepress/components/JsonSchema.vue
208
- - docs/.vuepress/components/ScenarioSchema.vue
209
152
  - docs/.vuepress/components/StaticLink.vue
210
153
  - docs/.vuepress/config.js
211
154
  - docs/.vuepress/highlight.js
155
+ - docs/.vuepress/json-schema-deref-loader.js
212
156
  - docs/.vuepress/public/custom_rdoc_styles.css
213
157
  - docs/.vuepress/utils.js
214
158
  - docs/README.md
215
159
  - docs/package-lock.json
216
160
  - docs/package.json
217
- - docs/schemas/scenario-schema.md
218
161
  - lib/urbanopt-scenario.rb
219
162
  - lib/urbanopt/scenario.rb
220
163
  - lib/urbanopt/scenario/default_reports.rb
@@ -247,7 +190,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
247
190
  requirements:
248
191
  - - "~>"
249
192
  - !ruby/object:Gem::Version
250
- version: 2.5.0
193
+ version: 2.7.0
251
194
  required_rubygems_version: !ruby/object:Gem::Requirement
252
195
  requirements:
253
196
  - - ">="
@@ -1,12 +0,0 @@
1
- <template>
2
- <JsonSchema :schema="schema"/>
3
- </template>
4
- <script>
5
- import { default as schema } from "../../../lib/urbanopt/scenario/default_reports/schema/scenario_schema.json";
6
- export default {
7
- name: "ScenarioSchema",
8
- data() {
9
- return { schema };
10
- }
11
- };
12
- </script>
@@ -1,3 +0,0 @@
1
- # Scenario Schema
2
-
3
- <ScenarioSchema />