openstudio-load-flexibility-measures 0.7.0 → 0.8.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/CHANGELOG.md +4 -0
- data/README.md +1 -0
- data/lib/measures/add_packaged_ice_storage/measure.rb +14 -14
- data/lib/measures/add_packaged_ice_storage/measure.xml +32 -32
- data/lib/measures/add_packaged_ice_storage/tests/add_packaged_ice_storage_test.rb +34 -35
- data/lib/openstudio/load_flexibility_measures/version.rb +1 -1
- data/openstudio-load-flexibility-measures.gemspec +2 -2
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 26b919673f7ce4c202f5126df385ad569a77079965c62d15dbcef6b04e0b90dd
|
4
|
+
data.tar.gz: d8a422fab203371546a6031c4c01d1084fb26a64536a4a578de387b5592dbcb5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 294fdcd9d4242a5aa1e4731563440a33936606cda1c1a5c80ec59bd9ef3ff4a9a27ca1856874a5cd36fe85ebaa73686dbffe3e5d00f992104741221fb94b118b
|
7
|
+
data.tar.gz: 3b4f529c7a8a20be1ed134d397355cdaa1f93fd1197df2a7d77256a79d98fe051a20ed9fb780e3e547c78a2ea8470aaa669b3e2a9987e7ac0c7a3aa71ef73d03
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# OpenStudio Load Flexibility Measures Gem
|
2
2
|
|
3
|
+
## Version 0.8.0
|
4
|
+
- Updating dependencies and licenses for OpenStudio 3.7 (upgrade to standards gem 0.5.0, extension gem 0.7.0)
|
5
|
+
- Fix field indexes for CoilCoolingDXTwoSpeed in add_packaged_ice_storage
|
6
|
+
|
3
7
|
## Version 0.7.0
|
4
8
|
- Updating dependencies and licenses for OpenStudio 3.6 (upgrade to standards gem 0.4.0, extension gem 0.6.1)
|
5
9
|
|
data/README.md
CHANGED
@@ -31,6 +31,7 @@ Detailed instructions for usage are included in each measure's respective README
|
|
31
31
|
|
32
32
|
|OpenStudio Load Flexibility Measures Gem|OpenStudio|Ruby|
|
33
33
|
|:--------------:|:----------:|:--------:|
|
34
|
+
| 0.8.0| 3.7 | 2.7 |
|
34
35
|
| 0.7.0| 3.6 | 2.7 |
|
35
36
|
| 0.6 - 0.6.1 | 3.5 | 2.7 |
|
36
37
|
| 0.5 | 3.4 | 2.7 |
|
@@ -534,22 +534,22 @@ class AddPackagedIceStorage < OpenStudio::Measure::EnergyPlusMeasure
|
|
534
534
|
case sel_coil.iddObject.name
|
535
535
|
when 'Coil:Cooling:DX:SingleSpeed'
|
536
536
|
runner.registerInfo("Grabing inputs for #{utss.getString(0)} from #{sel_coil.iddObject.name} object named #{sel_coil.getString(0)}")
|
537
|
-
utss.setString(16, sel_coil.getString(2).get)
|
538
|
-
utss.setString(18, sel_coil.getString(4).get)
|
539
|
-
utss.setString(19, sel_coil.getString(10).get)
|
540
|
-
utss.setString(20, sel_coil.getString(11).get)
|
541
|
-
utss.setString(21, sel_coil.getString(12).get)
|
542
|
-
utss.setString(22, sel_coil.getString(13).get)
|
543
|
-
utss.setString(23, sel_coil.getString(14).get)
|
537
|
+
utss.setString(16, sel_coil.getString(2).get) # Gross Rated Total Cooling Capacity
|
538
|
+
utss.setString(18, sel_coil.getString(4).get) # Gross Rated Cooling COP
|
539
|
+
utss.setString(19, sel_coil.getString(10).get) # Total Cooling Capacity Function of Temperature Curve Name
|
540
|
+
utss.setString(20, sel_coil.getString(11).get) # Total Cooling Capacity Function of Flow Fraction Curve Name
|
541
|
+
utss.setString(21, sel_coil.getString(12).get) # Energy Input Ratio Function of Temperature Curve Name
|
542
|
+
utss.setString(22, sel_coil.getString(13).get) # Energy Input Ratio Function of Flow Fraction Curve Name
|
543
|
+
utss.setString(23, sel_coil.getString(14).get) # Part Load Fraction Correlation Curve Name
|
544
544
|
when 'Coil:Cooling:DX:TwoSpeed'
|
545
545
|
runner.registerInfo("Grabing inputs for #{utss.getString(0)} from #{sel_coil.iddObject.name} object named #{sel_coil.getString(0)}")
|
546
|
-
utss.setString(16, sel_coil.getString(
|
547
|
-
utss.setString(18, sel_coil.getString(
|
548
|
-
utss.setString(19, sel_coil.getString(
|
549
|
-
utss.setString(20, sel_coil.getString(
|
550
|
-
utss.setString(21, sel_coil.getString(
|
551
|
-
utss.setString(22, sel_coil.getString(
|
552
|
-
utss.setString(23, sel_coil.getString(
|
546
|
+
utss.setString(16, sel_coil.getString(16).get) # Low Speed Gross Rated Total Cooling Capacity
|
547
|
+
utss.setString(18, sel_coil.getString(18).get) # Low Speed Gross Rated Cooling COP
|
548
|
+
utss.setString(19, sel_coil.getString(22).get) # Low Speed Total Cooling Capacity Function of Temperature Curve Name
|
549
|
+
utss.setString(20, sel_coil.getString(12).get) # Total Cooling Capacity Function of Flow Fraction Curve Name
|
550
|
+
utss.setString(21, sel_coil.getString(23).get) # Low Speed Energy Input Ratio Function of Temperature Curve Name
|
551
|
+
utss.setString(22, sel_coil.getString(14).get) # Energy Input Ratio Function of Flow Fraction Curve Name
|
552
|
+
utss.setString(23, sel_coil.getString(15).get) # Part Load Fraction Correlation Curve Name
|
553
553
|
end
|
554
554
|
|
555
555
|
# identify container object in which the coil is used
|
@@ -1,10 +1,10 @@
|
|
1
1
|
<?xml version="1.0"?>
|
2
2
|
<measure>
|
3
|
-
<schema_version>3.
|
3
|
+
<schema_version>3.1</schema_version>
|
4
4
|
<name>add_packaged_ice_storage</name>
|
5
5
|
<uid>2aa8c128-53b9-49fd-9aaf-9253a1f05936</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>21dee291-3e59-413a-9353-efb85b3e8d7b</version_id>
|
7
|
+
<version_modified>2023-12-12T07:23:13Z</version_modified>
|
8
8
|
<xml_checksum>2617824F</xml_checksum>
|
9
9
|
<class_name>AddPackagedIceStorage</class_name>
|
10
10
|
<display_name>Add Packaged Ice Storage</display_name>
|
@@ -201,16 +201,10 @@ If 'AutoSize' is selected for ice capacity, these inputs set an ice capacity siz
|
|
201
201
|
</attributes>
|
202
202
|
<files>
|
203
203
|
<file>
|
204
|
-
<filename>
|
205
|
-
<filetype>
|
206
|
-
<usage_type>
|
207
|
-
<checksum>
|
208
|
-
</file>
|
209
|
-
<file>
|
210
|
-
<filename>MeasureTest.osm</filename>
|
211
|
-
<filetype>osm</filetype>
|
212
|
-
<usage_type>test</usage_type>
|
213
|
-
<checksum>DC0DCC4B</checksum>
|
204
|
+
<filename>LICENSE.md</filename>
|
205
|
+
<filetype>md</filetype>
|
206
|
+
<usage_type>license</usage_type>
|
207
|
+
<checksum>BFFB1AA6</checksum>
|
214
208
|
</file>
|
215
209
|
<file>
|
216
210
|
<filename>README.md</filename>
|
@@ -219,10 +213,27 @@ If 'AutoSize' is selected for ice capacity, these inputs set an ice capacity siz
|
|
219
213
|
<checksum>E6FBC489</checksum>
|
220
214
|
</file>
|
221
215
|
<file>
|
222
|
-
<
|
216
|
+
<version>
|
217
|
+
<software_program>OpenStudio</software_program>
|
218
|
+
<identifier>3.0.0</identifier>
|
219
|
+
<min_compatible>3.5.0</min_compatible>
|
220
|
+
</version>
|
221
|
+
<filename>measure.rb</filename>
|
222
|
+
<filetype>rb</filetype>
|
223
|
+
<usage_type>script</usage_type>
|
224
|
+
<checksum>30BE5060</checksum>
|
225
|
+
</file>
|
226
|
+
<file>
|
227
|
+
<filename>TESCurves.idf</filename>
|
228
|
+
<filetype>idf</filetype>
|
229
|
+
<usage_type>resource</usage_type>
|
230
|
+
<checksum>E919566C</checksum>
|
231
|
+
</file>
|
232
|
+
<file>
|
233
|
+
<filename>MeasureTest.osm</filename>
|
223
234
|
<filetype>osm</filetype>
|
224
235
|
<usage_type>test</usage_type>
|
225
|
-
<checksum>
|
236
|
+
<checksum>DC0DCC4B</checksum>
|
226
237
|
</file>
|
227
238
|
<file>
|
228
239
|
<filename>USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw</filename>
|
@@ -231,27 +242,16 @@ If 'AutoSize' is selected for ice capacity, these inputs set an ice capacity siz
|
|
231
242
|
<checksum>C254B53F</checksum>
|
232
243
|
</file>
|
233
244
|
<file>
|
234
|
-
<filename>
|
235
|
-
<filetype>md</filetype>
|
236
|
-
<usage_type>license</usage_type>
|
237
|
-
<checksum>BFFB1AA6</checksum>
|
238
|
-
</file>
|
239
|
-
<file>
|
240
|
-
<version>
|
241
|
-
<software_program>OpenStudio</software_program>
|
242
|
-
<identifier>3.0.0</identifier>
|
243
|
-
<min_compatible>3.5.0</min_compatible>
|
244
|
-
</version>
|
245
|
-
<filename>measure.rb</filename>
|
245
|
+
<filename>add_packaged_ice_storage_test.rb</filename>
|
246
246
|
<filetype>rb</filetype>
|
247
|
-
<usage_type>
|
248
|
-
<checksum>
|
247
|
+
<usage_type>test</usage_type>
|
248
|
+
<checksum>2D36B76B</checksum>
|
249
249
|
</file>
|
250
250
|
<file>
|
251
|
-
<filename>
|
252
|
-
<filetype>
|
251
|
+
<filename>single_speed_dx_350.osm</filename>
|
252
|
+
<filetype>osm</filetype>
|
253
253
|
<usage_type>test</usage_type>
|
254
|
-
<checksum>
|
254
|
+
<checksum>D9B82B85</checksum>
|
255
255
|
</file>
|
256
256
|
</files>
|
257
257
|
</measure>
|
@@ -24,7 +24,7 @@ class AddPackagedIceStorageTest < MiniTest::Test
|
|
24
24
|
# @param IDF OpenStudio workspace IDF object
|
25
25
|
# @param run_dir [String] file path location for the annual run, defaults to 'Run' in the current directory
|
26
26
|
# @return [Bool] returns true if successful, false if not
|
27
|
-
def model_run_simulation_and_log_errors(workspace, run_dir = "#{Dir.pwd}/Run")
|
27
|
+
def model_run_simulation_and_log_errors(model, workspace, run_dir = "#{Dir.pwd}/Run")
|
28
28
|
# Make the directory if it doesn't exist
|
29
29
|
unless Dir.exist?(run_dir)
|
30
30
|
FileUtils.mkdir_p(run_dir)
|
@@ -70,7 +70,7 @@ class AddPackagedIceStorageTest < MiniTest::Test
|
|
70
70
|
else
|
71
71
|
# If the sql file does not exist, it is likely that EnergyPlus crashed,
|
72
72
|
# in which case the useful errors are inside the eplusout.err file.
|
73
|
-
err_file_path_string = "#{run_dir}/
|
73
|
+
err_file_path_string = "#{run_dir}/eplusout.err"
|
74
74
|
err_file_path = OpenStudio::Path.new(err_file_path_string)
|
75
75
|
if OpenStudio.exists(err_file_path)
|
76
76
|
if __dir__[0] == ':' # Running from OpenStudio CLI
|
@@ -86,33 +86,32 @@ class AddPackagedIceStorageTest < MiniTest::Test
|
|
86
86
|
end
|
87
87
|
end
|
88
88
|
|
89
|
-
#
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
# end
|
89
|
+
# Report severe or fatal errors in the run
|
90
|
+
error_query = "SELECT ErrorMessage
|
91
|
+
FROM Errors
|
92
|
+
WHERE ErrorType in(1,2)"
|
93
|
+
model.setSqlFile(sql)
|
94
|
+
errs = model.sqlFile.get.execAndReturnVectorOfString(error_query)
|
95
|
+
if errs.is_initialized
|
96
|
+
errs = errs.get
|
97
|
+
end
|
98
|
+
|
99
|
+
# Check that the run completed successfully
|
100
|
+
end_file_stringpath = "#{run_dir}/eplusout.end"
|
101
|
+
end_file_path = OpenStudio::Path.new(end_file_stringpath)
|
102
|
+
if OpenStudio.exists(end_file_path)
|
103
|
+
endstring = File.read(end_file_stringpath)
|
104
|
+
end
|
105
|
+
|
106
|
+
if !endstring.include?('EnergyPlus Completed Successfully')
|
107
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.model.Model', "The run did not finish and had following errors: #{errs.join('\n')}")
|
108
|
+
return false
|
109
|
+
end
|
110
|
+
|
111
|
+
# Log any severe errors that did not cause simulation to fail
|
112
|
+
unless errs.empty?
|
113
|
+
OpenStudio.logFree(OpenStudio::Warn, 'openstudio.model.Model', "The run completed but had the following severe errors: #{errs.join('\n')}")
|
114
|
+
end
|
116
115
|
|
117
116
|
return true
|
118
117
|
end
|
@@ -155,10 +154,10 @@ class AddPackagedIceStorageTest < MiniTest::Test
|
|
155
154
|
measure.run(workspace, runner, argument_map)
|
156
155
|
|
157
156
|
# run the annual simulation
|
158
|
-
|
159
|
-
#
|
157
|
+
# commented out for now E+ run in test doesn't function on CI yet
|
158
|
+
#output_file_path = "#{File.dirname(__FILE__)}/output/test_good_argument_values"
|
159
|
+
#sim_results = self.model_run_simulation_and_log_errors(model, workspace, output_file_path)
|
160
160
|
#assert(sim_results)
|
161
|
-
# todo - need to add code so test fails if simulation fails
|
162
161
|
|
163
162
|
result = runner.result
|
164
163
|
assert_equal('Success', result.value.valueName)
|
@@ -206,10 +205,10 @@ class AddPackagedIceStorageTest < MiniTest::Test
|
|
206
205
|
measure.run(workspace, runner, argument_map)
|
207
206
|
|
208
207
|
# run the annual simulation
|
209
|
-
|
210
|
-
#
|
208
|
+
# commented out for now E+ run in test doesn't function on CI yet
|
209
|
+
#output_file_path = "#{File.dirname(__FILE__)}/output/single_speed_dx"
|
210
|
+
#sim_results = self.model_run_simulation_and_log_errors(model, workspace, output_file_path)
|
211
211
|
#assert(sim_results)
|
212
|
-
# todo - need to add code so test fails if simulation fails
|
213
212
|
|
214
213
|
result = runner.result
|
215
214
|
assert_equal('Success', result.value.valueName)
|
@@ -25,8 +25,8 @@ Gem::Specification.new do |spec|
|
|
25
25
|
|
26
26
|
spec.add_dependency 'bundler', '~> 2.1'
|
27
27
|
|
28
|
-
spec.add_dependency 'openstudio-extension', '~> 0.
|
29
|
-
spec.add_dependency 'openstudio-standards', '~> 0.
|
28
|
+
spec.add_dependency 'openstudio-extension', '~> 0.7.0'
|
29
|
+
spec.add_dependency 'openstudio-standards', '~> 0.5.0'
|
30
30
|
|
31
31
|
spec.add_development_dependency 'rake', '~> 13.0'
|
32
32
|
spec.add_development_dependency 'rspec', '~> 3.9'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openstudio-load-flexibility-measures
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Karl Heine
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-12-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -31,28 +31,28 @@ dependencies:
|
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: 0.
|
34
|
+
version: 0.7.0
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: 0.
|
41
|
+
version: 0.7.0
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: openstudio-standards
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: 0.
|
48
|
+
version: 0.5.0
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: 0.
|
55
|
+
version: 0.5.0
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: rake
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|