urbanopt-reopt 0.11.0 → 1.0.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.
- checksums.yaml +4 -4
- data/.github/workflows/nightly_ci_build.yml +5 -7
- data/.gitignore +1 -1
- data/CHANGELOG.md +24 -0
- data/Gemfile +16 -11
- data/LICENSE.md +1 -1
- data/RDOC_MAIN.md +6 -6
- data/README.md +6 -6
- data/doc_templates/LICENSE.md +1 -1
- data/doc_templates/copyright_erb.txt +1 -1
- data/docs/README.md +6 -6
- data/docs/schemas/reopt-input-schema.md +25 -23
- data/docs/schemas/reopt-output-schema.md +7 -7
- data/index.md +9 -9
- data/lib/urbanopt/reopt/feature_report_adapter.rb +230 -198
- data/lib/urbanopt/reopt/reopt_ghp_adapter.rb +337 -0
- data/lib/urbanopt/reopt/reopt_ghp_api.rb +156 -0
- data/lib/urbanopt/reopt/reopt_ghp_files/reopt_ghp_assumption.json +27 -0
- data/lib/urbanopt/reopt/reopt_ghp_post_processor.rb +149 -0
- data/lib/urbanopt/reopt/reopt_lite_api.rb +84 -46
- data/lib/urbanopt/reopt/reopt_logger.rb +1 -1
- data/lib/urbanopt/reopt/reopt_post_processor.rb +12 -12
- data/lib/urbanopt/reopt/reopt_schema/REopt-GHP-input.json +148 -0
- data/lib/urbanopt/reopt/reopt_schema/reopt_input_schema.json +1125 -1105
- data/lib/urbanopt/reopt/reopt_schema/reopt_output_schema.json +488 -523
- data/lib/urbanopt/reopt/scenario_report_adapter.rb +260 -229
- data/lib/urbanopt/reopt/utilities.rb +2 -2
- data/lib/urbanopt/reopt/version.rb +1 -1
- data/lib/urbanopt/reopt.rb +3 -0
- data/urbanopt-reopt.gemspec +9 -10
- metadata +27 -64
@@ -36,7 +36,7 @@ def convert_powerflow_resolution(timeseries_kw, original_res, destination_res)
|
|
36
36
|
current_origin_idx = 0 # current integer index of the origin timeseries
|
37
37
|
(0..(8760 * destination_res - 1)).each do |ts|
|
38
38
|
next_stopping_ts = current_origin_ts + stepping_interval # stop at the next destination interval
|
39
|
-
total_power = [] # create to store
|
39
|
+
total_power = [] # create to store weighted origin timestep values to average
|
40
40
|
while current_origin_ts != next_stopping_ts
|
41
41
|
next_origin_ts_int = Integer(current_origin_ts) + 1
|
42
42
|
# Calc next stopping point that will being you to the next origin or destination time step
|
@@ -61,7 +61,7 @@ def convert_powerflow_resolution(timeseries_kw, original_res, destination_res)
|
|
61
61
|
# Timesteps will be expanded, i.e. 8760 -> 35040
|
62
62
|
|
63
63
|
# This algorithm works by stepping along the destination timeseries. Steps are made to the next
|
64
|
-
# destination or origin breakpoint, and at each step the
|
64
|
+
# destination or origin breakpoint, and at each step the proportional amount of the origin stepped
|
65
65
|
# is added to the destination. For example, in in EX 1 below 4 steps are made each with adding the full amount of
|
66
66
|
# the origin (1, 1, 2 and 2) since each in the destination overlaps perfectly with 2 origin
|
67
67
|
# timesteps. In EX 2, the origin overlaps with the first 2 destination timesteps but the third
|
data/lib/urbanopt/reopt.rb
CHANGED
@@ -9,3 +9,6 @@ require 'urbanopt/reopt/feature_report_adapter'
|
|
9
9
|
require 'urbanopt/reopt/scenario_report_adapter'
|
10
10
|
require 'urbanopt/reopt/reopt_post_processor'
|
11
11
|
require 'urbanopt/reopt/version'
|
12
|
+
require 'urbanopt/reopt/reopt_ghp_post_processor'
|
13
|
+
require 'urbanopt/reopt/reopt_ghp_adapter'
|
14
|
+
require 'urbanopt/reopt/reopt_ghp_api'
|
data/urbanopt-reopt.gemspec
CHANGED
@@ -21,17 +21,16 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.bindir = 'exe'
|
22
22
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
23
|
spec.require_paths = ['lib']
|
24
|
+
# We support exactly Ruby v3.2.2 because os-extension requires bundler==2.4.10 and that requires Ruby 3.2.2: https://stdgems.org/bundler/
|
25
|
+
# It would be nice to be able to use newer patches of Ruby 3.2, which would require os-extension to relax its dependency on bundler.
|
26
|
+
spec.required_ruby_version = '3.2.2'
|
24
27
|
|
25
|
-
spec.
|
28
|
+
spec.add_dependency 'openstudio-extension', '~> 0.8.3'
|
29
|
+
# Matrix is in stdlib, but needs to be specifically added here for compatibility with Ruby 3.2
|
30
|
+
spec.add_dependency 'matrix', '~> 0.4.2'
|
31
|
+
spec.add_dependency 'urbanopt-scenario', '~> 1.0.0'
|
26
32
|
|
27
|
-
spec.add_development_dependency '
|
28
|
-
spec.add_development_dependency '
|
29
|
-
spec.add_development_dependency 'rspec', '~> 3.9'
|
30
|
-
spec.add_development_dependency 'rubocop', '~> 1.15.0'
|
31
|
-
spec.add_development_dependency 'simplecov', '~> 0.18.2'
|
33
|
+
spec.add_development_dependency 'rspec', '~> 3.13'
|
34
|
+
spec.add_development_dependency 'simplecov', '~> 0.22.0'
|
32
35
|
spec.add_development_dependency 'simplecov-lcov', '~> 0.8.0'
|
33
|
-
spec.add_development_dependency 'openstudio-extension', '~> 0.7.1'
|
34
|
-
|
35
|
-
spec.add_dependency 'certified', '~> 1'
|
36
|
-
spec.add_dependency 'urbanopt-scenario', '~> 0.11.0'
|
37
36
|
end
|
metadata
CHANGED
@@ -1,85 +1,85 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: urbanopt-reopt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ''
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: openstudio-extension
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
type: :
|
19
|
+
version: 0.8.3
|
20
|
+
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 0.8.3
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: matrix
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
34
|
-
type: :
|
33
|
+
version: 0.4.2
|
34
|
+
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 0.4.2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: urbanopt-scenario
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
-
type: :
|
47
|
+
version: 1.0.0
|
48
|
+
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 1.0.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '3.13'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: '3.13'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: simplecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
75
|
+
version: 0.22.0
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
82
|
+
version: 0.22.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: simplecov-lcov
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,48 +94,6 @@ dependencies:
|
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 0.8.0
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: openstudio-extension
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: 0.7.1
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: 0.7.1
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: certified
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '1'
|
118
|
-
type: :runtime
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - "~>"
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '1'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: urbanopt-scenario
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - "~>"
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: 0.11.0
|
132
|
-
type: :runtime
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 0.11.0
|
139
97
|
description: Classes and measures for utilizing the REopt API within OpenStudio workflows.
|
140
98
|
email:
|
141
99
|
- ''
|
@@ -189,9 +147,14 @@ files:
|
|
189
147
|
- lib/urbanopt/reopt.rb
|
190
148
|
- lib/urbanopt/reopt/extension.rb
|
191
149
|
- lib/urbanopt/reopt/feature_report_adapter.rb
|
150
|
+
- lib/urbanopt/reopt/reopt_ghp_adapter.rb
|
151
|
+
- lib/urbanopt/reopt/reopt_ghp_api.rb
|
152
|
+
- lib/urbanopt/reopt/reopt_ghp_files/reopt_ghp_assumption.json
|
153
|
+
- lib/urbanopt/reopt/reopt_ghp_post_processor.rb
|
192
154
|
- lib/urbanopt/reopt/reopt_lite_api.rb
|
193
155
|
- lib/urbanopt/reopt/reopt_logger.rb
|
194
156
|
- lib/urbanopt/reopt/reopt_post_processor.rb
|
157
|
+
- lib/urbanopt/reopt/reopt_schema/REopt-GHP-input.json
|
195
158
|
- lib/urbanopt/reopt/reopt_schema/reopt_input_schema.json
|
196
159
|
- lib/urbanopt/reopt/reopt_schema/reopt_output_schema.json
|
197
160
|
- lib/urbanopt/reopt/scenario/reopt_scenario_csv.rb
|
@@ -210,16 +173,16 @@ require_paths:
|
|
210
173
|
- lib
|
211
174
|
required_ruby_version: !ruby/object:Gem::Requirement
|
212
175
|
requirements:
|
213
|
-
- -
|
176
|
+
- - '='
|
214
177
|
- !ruby/object:Gem::Version
|
215
|
-
version: 2.
|
178
|
+
version: 3.2.2
|
216
179
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
180
|
requirements:
|
218
181
|
- - ">="
|
219
182
|
- !ruby/object:Gem::Version
|
220
183
|
version: '0'
|
221
184
|
requirements: []
|
222
|
-
rubygems_version: 3.
|
185
|
+
rubygems_version: 3.4.10
|
223
186
|
signing_key:
|
224
187
|
specification_version: 4
|
225
188
|
summary: Accessing the REopt API within OpenStudio workflows.
|