openstudio-geb 0.4.0 → 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.
- checksums.yaml +4 -4
- data/.gitignore +7 -3
- data/CHANGELOG.md +7 -0
- data/Gemfile +7 -17
- data/files/seasonal_shedding_peak_hours.json +1 -0
- data/files/seasonal_shifting_peak_hours.json +1 -0
- data/files/seasonal_shifting_take_hours.json +1 -0
- data/lib/measures/AddElectricVehicleChargingLoad/measure.rb +247 -21
- data/lib/measures/AddElectricVehicleChargingLoad/tests/CZ06RV2.epw +8768 -0
- data/lib/measures/AddElectricVehicleChargingLoad/tests/add_electric_vehicle_charging_load_test.rb +40 -141
- data/lib/measures/AddElectricVehicleChargingLoad/tests/test.osm +55 -55
- data/lib/measures/AdjustThermostatSetpointsByDegreesForPeakHours/measure.rb +963 -442
- data/lib/measures/add_ceiling_fan/measure.rb +2 -2
- data/lib/measures/add_chilled_water_storage_tank/measure.rb +2 -2
- data/lib/measures/add_exterior_blinds_and_control/measure.rb +6 -5
- data/lib/measures/add_interior_blinds_and_control/measure.rb +5 -5
- data/lib/measures/add_rooftop_pv_simple/measure.rb +13 -10
- data/lib/measures/apply_dynamic_coating_to_roof_wall/measure.rb +2 -2
- data/lib/measures/average_ventilation_for_peak_hours/measure.rb +5 -5
- data/lib/measures/enable_occupancy_driven_lighting/measure.rb +2 -2
- data/lib/measures/precooling/measure.rb +964 -354
- data/lib/measures/preheating/measure.rb +940 -356
- data/lib/measures/reduce_epd_by_percentage_for_peak_hours/measure.rb +509 -300
- data/lib/measures/reduce_lpd_by_percentage_for_peak_hours/measure.rb +534 -309
- data/lib/openstudio/geb/run.rb +5 -1
- data/lib/openstudio/geb/utilities.rb +3 -2
- data/lib/openstudio/geb/version.rb +1 -1
- data/openstudio-geb.gemspec +7 -6
- metadata +24 -48
data/lib/openstudio/geb/run.rb
CHANGED
@@ -74,6 +74,8 @@ module OpenStudio
|
|
74
74
|
def apply_measures(osw_result_folder)
|
75
75
|
# create osw_file
|
76
76
|
osw_path = File.join(osw_result_folder, "geb.osw")
|
77
|
+
# get the folder of measures
|
78
|
+
measures_path = File.expand_path("../../../measures/", __FILE__ )
|
77
79
|
|
78
80
|
steps = []
|
79
81
|
# measure_dict: hash of measures and their arguments => {measure_name: arguments}
|
@@ -82,7 +84,8 @@ module OpenStudio
|
|
82
84
|
report_measures = {}
|
83
85
|
@measure_dict.each_pair do |m_name, para_dict|
|
84
86
|
# get all EnergyPlus and Reporting measures out and remove original ones
|
85
|
-
|
87
|
+
# now measure_dir_name uses folder name rather than absolute path, adding "measure_paths" to the osw file
|
88
|
+
File.open("#{measures_path}/#{para_dict['measure_dir_name']}/measure.rb", 'r') do |file|
|
86
89
|
file.each_line do |line|
|
87
90
|
if line =~ /class.+EnergyPlusMeasure/
|
88
91
|
energyplus_measures[m_name] = @measure_dict[m_name]
|
@@ -119,6 +122,7 @@ module OpenStudio
|
|
119
122
|
end
|
120
123
|
|
121
124
|
osw = {}
|
125
|
+
osw["measure_paths"] = [measures_path]
|
122
126
|
osw["weather_file"] = @weather_file_path
|
123
127
|
osw["seed_file"] = @baseline_dir_str
|
124
128
|
osw["steps"] = steps
|
@@ -52,7 +52,8 @@ def list_all_geb_measures
|
|
52
52
|
measures.each do |measure|
|
53
53
|
measure_name = measure.split('/')[-2]
|
54
54
|
measure_list[measure_name] = {}
|
55
|
-
|
55
|
+
# now measure_dir_name uses folder name rather than absolute path, adding "measure_paths" to the osw file
|
56
|
+
measure_list[measure_name]['measure_dir_name'] = File.basename(File.dirname(measure)) # get just this folder name
|
56
57
|
end
|
57
58
|
|
58
59
|
=begin
|
@@ -114,7 +115,7 @@ end
|
|
114
115
|
def postprocess_out_osw(outdir)
|
115
116
|
|
116
117
|
out_osw = File.join(outdir, 'out.osw')
|
117
|
-
raise "Cannot find file #{out_osw}" if !File.
|
118
|
+
raise "Cannot find file #{out_osw}" if !File.exist?(out_osw)
|
118
119
|
|
119
120
|
result_osw = nil
|
120
121
|
File.open(out_osw, 'r') do |f|
|
data/openstudio-geb.gemspec
CHANGED
@@ -22,11 +22,12 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
23
|
spec.require_paths = ['lib']
|
24
24
|
|
25
|
-
spec.
|
26
|
-
|
27
|
-
spec.
|
28
|
-
spec.
|
25
|
+
spec.required_ruby_version = '3.2.2'
|
26
|
+
|
27
|
+
spec.add_dependency 'openstudio-extension', '~> 0.8.3'
|
28
|
+
spec.add_dependency 'openstudio-standards', '~> 0.7.1'
|
29
|
+
spec.add_dependency 'simplecov', '0.22.0'
|
30
|
+
|
31
|
+
spec.add_development_dependency 'rspec', '~> 3.9'
|
29
32
|
|
30
|
-
spec.add_dependency 'openstudio-extension', '~> 0.7.0'
|
31
|
-
spec.add_dependency 'openstudio-standards', '~> 0.5.0'
|
32
33
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openstudio-geb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kaiyu Sun
|
@@ -9,92 +9,64 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2025-01-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: openstudio-extension
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version:
|
21
|
-
type: :
|
20
|
+
version: 0.8.3
|
21
|
+
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version:
|
27
|
+
version: 0.8.3
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
29
|
+
name: openstudio-standards
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version:
|
35
|
-
type: :
|
34
|
+
version: 0.7.1
|
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:
|
41
|
+
version: 0.7.1
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
|
-
name:
|
43
|
+
name: simplecov
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - '='
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version:
|
49
|
-
type: :
|
48
|
+
version: 0.22.0
|
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:
|
55
|
+
version: 0.22.0
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
57
|
+
name: rspec
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
62
|
+
version: '3.9'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
70
|
-
- !ruby/object:Gem::Dependency
|
71
|
-
name: openstudio-extension
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
73
|
-
requirements:
|
74
|
-
- - "~>"
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
version: 0.7.0
|
77
|
-
type: :runtime
|
78
|
-
prerelease: false
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
80
|
-
requirements:
|
81
|
-
- - "~>"
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: 0.7.0
|
84
|
-
- !ruby/object:Gem::Dependency
|
85
|
-
name: openstudio-standards
|
86
|
-
requirement: !ruby/object:Gem::Requirement
|
87
|
-
requirements:
|
88
|
-
- - "~>"
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version: 0.5.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.5.0
|
69
|
+
version: '3.9'
|
98
70
|
description: This is a Ruby gem that implemented a series of OpenStudio measures for
|
99
71
|
grid-interactive efficient buildings as well as a measure for reporting and visualization.
|
100
72
|
email:
|
@@ -115,6 +87,9 @@ files:
|
|
115
87
|
- doc_templates/copyright_js.txt
|
116
88
|
- doc_templates/copyright_ruby.txt
|
117
89
|
- files/8760.csv
|
90
|
+
- files/seasonal_shedding_peak_hours.json
|
91
|
+
- files/seasonal_shifting_peak_hours.json
|
92
|
+
- files/seasonal_shifting_take_hours.json
|
118
93
|
- lib/measures/Add Output Variable/LICENSE.md
|
119
94
|
- lib/measures/Add Output Variable/README.md
|
120
95
|
- lib/measures/Add Output Variable/README.md.erb
|
@@ -127,6 +102,7 @@ files:
|
|
127
102
|
- lib/measures/AddElectricVehicleChargingLoad/docs/.gitkeep
|
128
103
|
- lib/measures/AddElectricVehicleChargingLoad/measure.rb
|
129
104
|
- lib/measures/AddElectricVehicleChargingLoad/measure.xml
|
105
|
+
- lib/measures/AddElectricVehicleChargingLoad/tests/CZ06RV2.epw
|
130
106
|
- lib/measures/AddElectricVehicleChargingLoad/tests/add_electric_vehicle_charging_load_test.rb
|
131
107
|
- lib/measures/AddElectricVehicleChargingLoad/tests/example_model.osm
|
132
108
|
- lib/measures/AddElectricVehicleChargingLoad/tests/test.osm
|
@@ -353,16 +329,16 @@ require_paths:
|
|
353
329
|
- lib
|
354
330
|
required_ruby_version: !ruby/object:Gem::Requirement
|
355
331
|
requirements:
|
356
|
-
- -
|
332
|
+
- - '='
|
357
333
|
- !ruby/object:Gem::Version
|
358
|
-
version:
|
334
|
+
version: 3.2.2
|
359
335
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
360
336
|
requirements:
|
361
337
|
- - ">="
|
362
338
|
- !ruby/object:Gem::Version
|
363
339
|
version: '0'
|
364
340
|
requirements: []
|
365
|
-
rubygems_version: 3.
|
341
|
+
rubygems_version: 3.0.9
|
366
342
|
signing_key:
|
367
343
|
specification_version: 4
|
368
344
|
summary: OpenStudio measures for grid-interactive efficient buildings
|