openstudio-load-flexibility-measures 0.3.2 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +36 -36
- data/.rubocop.yml +6 -9
- data/CHANGELOG.html +75 -75
- data/CHANGELOG.md +59 -54
- data/Gemfile +31 -7
- data/Jenkinsfile +11 -10
- data/README.md +53 -42
- data/Rakefile +15 -15
- data/doc_templates/LICENSE.md +26 -26
- data/doc_templates/README.md.erb +41 -41
- data/doc_templates/copyright_erb.txt +35 -35
- data/doc_templates/copyright_js.txt +3 -3
- data/doc_templates/copyright_ruby.txt +33 -33
- data/lib/measures/add_central_ice_storage/LICENSE.md +26 -26
- data/lib/measures/add_central_ice_storage/README.md +264 -264
- data/lib/measures/add_central_ice_storage/README.md.erb +41 -41
- data/lib/measures/add_central_ice_storage/measure.rb +1325 -1324
- data/lib/measures/add_central_ice_storage/measure.xml +503 -503
- data/lib/measures/add_central_ice_storage/resources/OsLib_Schedules.rb +171 -173
- data/lib/measures/add_central_ice_storage/tests/add_central_ice_storage_test.rb +203 -203
- data/lib/measures/add_central_ice_storage/tests/ice_test_model.osm +21523 -21523
- data/lib/measures/add_hpwh/LICENSE.md +26 -26
- data/lib/measures/add_hpwh/README.md +186 -26
- data/lib/measures/add_hpwh/README.md.erb +41 -41
- data/lib/measures/add_hpwh/measure.rb +663 -645
- data/lib/measures/add_hpwh/measure.xml +402 -463
- data/lib/measures/add_hpwh/tests/SmallHotel-2A.osm +42893 -42893
- data/lib/measures/add_hpwh/tests/{add_hphw_test.rb → add_hpwh_test.rb} +137 -98
- data/lib/measures/add_packaged_ice_storage/LICENSE.md +26 -26
- data/lib/measures/add_packaged_ice_storage/README.html +185 -185
- data/lib/measures/add_packaged_ice_storage/README.md +189 -189
- data/lib/measures/add_packaged_ice_storage/measure.rb +694 -691
- data/lib/measures/add_packaged_ice_storage/measure.xml +245 -245
- data/lib/measures/add_packaged_ice_storage/resources/TESCurves.idf +1059 -1059
- data/lib/measures/add_packaged_ice_storage/tests/MeasureTest.osm +9507 -9507
- data/lib/measures/add_packaged_ice_storage/tests/add_packaged_ice_storage_test.rb +96 -96
- data/lib/openstudio/load_flexibility_measures/version.rb +40 -40
- data/lib/openstudio/load_flexibility_measures.rb +50 -50
- data/openstudio-load-flexibility-measures.gemspec +33 -34
- metadata +26 -26
@@ -1,27 +1,27 @@
|
|
1
|
-
OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC. All rights reserved.
|
2
|
-
|
3
|
-
Redistribution and use in source and binary forms, with or without modification, are permitted
|
4
|
-
provided that the following conditions are met:
|
5
|
-
|
6
|
-
(1) Redistributions of source code must retain the above copyright notice, this list of conditions
|
7
|
-
and the following disclaimer.
|
8
|
-
|
9
|
-
(2) Redistributions in binary form must reproduce the above copyright notice, this list of conditions
|
10
|
-
and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
11
|
-
|
12
|
-
(3) Neither the name of the copyright holder nor the names of any contributors may be used to endorse
|
13
|
-
or promote products derived from this software without specific prior written permission from the
|
14
|
-
respective party.
|
15
|
-
|
16
|
-
(4) Other than as required in clauses (1) and (2), distributions in any form of modifications or other
|
17
|
-
derivative works may not use the "OpenStudio" trademark, "OS", "os", or any other confusingly similar
|
18
|
-
designation without specific prior written permission from Alliance for Sustainable Energy, LLC.
|
19
|
-
|
20
|
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
|
21
|
-
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
22
|
-
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER, THE UNITED STATES GOVERNMENT,
|
23
|
-
OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
24
|
-
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
25
|
-
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
26
|
-
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
1
|
+
OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC. All rights reserved.
|
2
|
+
|
3
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted
|
4
|
+
provided that the following conditions are met:
|
5
|
+
|
6
|
+
(1) Redistributions of source code must retain the above copyright notice, this list of conditions
|
7
|
+
and the following disclaimer.
|
8
|
+
|
9
|
+
(2) Redistributions in binary form must reproduce the above copyright notice, this list of conditions
|
10
|
+
and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
11
|
+
|
12
|
+
(3) Neither the name of the copyright holder nor the names of any contributors may be used to endorse
|
13
|
+
or promote products derived from this software without specific prior written permission from the
|
14
|
+
respective party.
|
15
|
+
|
16
|
+
(4) Other than as required in clauses (1) and (2), distributions in any form of modifications or other
|
17
|
+
derivative works may not use the "OpenStudio" trademark, "OS", "os", or any other confusingly similar
|
18
|
+
designation without specific prior written permission from Alliance for Sustainable Energy, LLC.
|
19
|
+
|
20
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
|
21
|
+
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
22
|
+
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER, THE UNITED STATES GOVERNMENT,
|
23
|
+
OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
24
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
25
|
+
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
26
|
+
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
27
27
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
@@ -1,26 +1,186 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
###### (Automatically generated documentation)
|
4
|
-
|
5
|
-
#
|
6
|
-
|
7
|
-
## Description
|
8
|
-
|
9
|
-
|
10
|
-
## Modeler Description
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
1
|
+
|
2
|
+
|
3
|
+
###### (Automatically generated documentation)
|
4
|
+
|
5
|
+
# Add HPWH for Domestic Hot Water
|
6
|
+
|
7
|
+
## Description
|
8
|
+
This measure adds or replaces existing domestic hot water heater with air source heat pump system and allows for the addition of multiple daily flexible control time windows. The heater/tank system may charge at maximum capacity up to an elevated temperature, or float without any heat addition for a specified timeframe down to a minimum tank temperature.
|
9
|
+
|
10
|
+
## Modeler Description
|
11
|
+
This measure allows selection between three heat pump water heater modeling approaches in EnergyPlus.The user may select between the pumped-condenser or wrapped-condenser objects. They may also elect to use a simplified calculation which does not use the heat pump objects, but instead used an electric resistance heater and approximates the equivalent electrical input that would be required from a heat pump. This expedites simulation at the expense of accuracy.
|
12
|
+
The flexibility of the system is based on user-defined temperatures and times, which are converted into schedule objects. There are four flexibility options. (1) None: normal operation of the DHW system at a fixed tank temperature setpoint. (2) Charge - Heat Pump: the tank is charged to a maximum temperature using only the heat pump. (3) Charge - Electric: the tank is charged using internal electric resistance heaters to a maximum temperature. (4) Float: all heating elements are turned-off for a user-defined time period unless the tank temperature falls below a minimum value. The heat pump will be prioritized in a low tank temperature event, with the electric resistance heaters serving as back-up.
|
13
|
+
|
14
|
+
|
15
|
+
## Measure Type
|
16
|
+
ModelMeasure
|
17
|
+
|
18
|
+
## Taxonomy
|
19
|
+
|
20
|
+
|
21
|
+
## Arguments
|
22
|
+
|
23
|
+
|
24
|
+
### Remove existing water heater?
|
25
|
+
|
26
|
+
**Name:** remove_wh,
|
27
|
+
**Type:** Boolean,
|
28
|
+
**Units:** ,
|
29
|
+
**Required:** true,
|
30
|
+
**Model Dependent:** false
|
31
|
+
|
32
|
+
### Select 40+ gallon water heater to replace or augment
|
33
|
+
All can only be used with the 'Simplified' model
|
34
|
+
**Name:** wh,
|
35
|
+
**Type:** Choice,
|
36
|
+
**Units:** ,
|
37
|
+
**Required:** true,
|
38
|
+
**Model Dependent:** false
|
39
|
+
|
40
|
+
### Set hot water tank volume [gal]
|
41
|
+
Enter 0 to use existing tank volume(s). Values less than 5 are treated as sizing multipliers.
|
42
|
+
**Name:** vol,
|
43
|
+
**Type:** Double,
|
44
|
+
**Units:** gal,
|
45
|
+
**Required:** false,
|
46
|
+
**Model Dependent:** false
|
47
|
+
|
48
|
+
### Select heat pump water heater type
|
49
|
+
|
50
|
+
**Name:** type,
|
51
|
+
**Type:** Choice,
|
52
|
+
**Units:** ,
|
53
|
+
**Required:** true,
|
54
|
+
**Model Dependent:** false
|
55
|
+
|
56
|
+
### Select thermal zone for HP evaporator
|
57
|
+
Does not apply to 'Simplified' cases
|
58
|
+
**Name:** zone,
|
59
|
+
**Type:** Choice,
|
60
|
+
**Units:** ,
|
61
|
+
**Required:** true,
|
62
|
+
**Model Dependent:** false
|
63
|
+
|
64
|
+
### Set heat pump heating capacity
|
65
|
+
[kW]
|
66
|
+
**Name:** cap,
|
67
|
+
**Type:** Double,
|
68
|
+
**Units:** ,
|
69
|
+
**Required:** true,
|
70
|
+
**Model Dependent:** false
|
71
|
+
|
72
|
+
### Set heat pump rated COP (heating)
|
73
|
+
|
74
|
+
**Name:** cop,
|
75
|
+
**Type:** Double,
|
76
|
+
**Units:** ,
|
77
|
+
**Required:** true,
|
78
|
+
**Model Dependent:** false
|
79
|
+
|
80
|
+
### Set electric backup heating capacity
|
81
|
+
[kW]
|
82
|
+
**Name:** bu_cap,
|
83
|
+
**Type:** Double,
|
84
|
+
**Units:** ,
|
85
|
+
**Required:** true,
|
86
|
+
**Model Dependent:** false
|
87
|
+
|
88
|
+
### Set maximum tank temperature
|
89
|
+
[F]
|
90
|
+
**Name:** max_temp,
|
91
|
+
**Type:** Double,
|
92
|
+
**Units:** ,
|
93
|
+
**Required:** true,
|
94
|
+
**Model Dependent:** false
|
95
|
+
|
96
|
+
### Set minimum tank temperature during float
|
97
|
+
[F]
|
98
|
+
**Name:** min_temp,
|
99
|
+
**Type:** Double,
|
100
|
+
**Units:** ,
|
101
|
+
**Required:** true,
|
102
|
+
**Model Dependent:** false
|
103
|
+
|
104
|
+
### Set deadband temperature difference between heat pump and electric backup
|
105
|
+
[F]
|
106
|
+
**Name:** db_temp,
|
107
|
+
**Type:** Double,
|
108
|
+
**Units:** ,
|
109
|
+
**Required:** true,
|
110
|
+
**Model Dependent:** false
|
111
|
+
|
112
|
+
### Select reference tank setpoint temperature schedule
|
113
|
+
|
114
|
+
**Name:** sched,
|
115
|
+
**Type:** Choice,
|
116
|
+
**Units:** ,
|
117
|
+
**Required:** true,
|
118
|
+
**Model Dependent:** false
|
119
|
+
|
120
|
+
### Daily Flex Period 1:
|
121
|
+
Applies every day in the full run period.
|
122
|
+
**Name:** flex0,
|
123
|
+
**Type:** Choice,
|
124
|
+
**Units:** ,
|
125
|
+
**Required:** true,
|
126
|
+
**Model Dependent:** false
|
127
|
+
|
128
|
+
### Use 24-Hour Format
|
129
|
+
|
130
|
+
**Name:** flex_hrs0,
|
131
|
+
**Type:** String,
|
132
|
+
**Units:** ,
|
133
|
+
**Required:** false,
|
134
|
+
**Model Dependent:** false
|
135
|
+
|
136
|
+
### Daily Flex Period 2:
|
137
|
+
Applies every day in the full run period.
|
138
|
+
**Name:** flex1,
|
139
|
+
**Type:** Choice,
|
140
|
+
**Units:** ,
|
141
|
+
**Required:** true,
|
142
|
+
**Model Dependent:** false
|
143
|
+
|
144
|
+
### Use 24-Hour Format
|
145
|
+
|
146
|
+
**Name:** flex_hrs1,
|
147
|
+
**Type:** String,
|
148
|
+
**Units:** ,
|
149
|
+
**Required:** false,
|
150
|
+
**Model Dependent:** false
|
151
|
+
|
152
|
+
### Daily Flex Period 3:
|
153
|
+
Applies every day in the full run period.
|
154
|
+
**Name:** flex2,
|
155
|
+
**Type:** Choice,
|
156
|
+
**Units:** ,
|
157
|
+
**Required:** true,
|
158
|
+
**Model Dependent:** false
|
159
|
+
|
160
|
+
### Use 24-Hour Format
|
161
|
+
|
162
|
+
**Name:** flex_hrs2,
|
163
|
+
**Type:** String,
|
164
|
+
**Units:** ,
|
165
|
+
**Required:** false,
|
166
|
+
**Model Dependent:** false
|
167
|
+
|
168
|
+
### Daily Flex Period 4:
|
169
|
+
Applies every day in the full run period.
|
170
|
+
**Name:** flex3,
|
171
|
+
**Type:** Choice,
|
172
|
+
**Units:** ,
|
173
|
+
**Required:** true,
|
174
|
+
**Model Dependent:** false
|
175
|
+
|
176
|
+
### Use 24-Hour Format
|
177
|
+
|
178
|
+
**Name:** flex_hrs3,
|
179
|
+
**Type:** String,
|
180
|
+
**Units:** ,
|
181
|
+
**Required:** false,
|
182
|
+
**Model Dependent:** false
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
@@ -1,42 +1,42 @@
|
|
1
|
-
<%#= README.md.erb is used to auto-generate README.md. %>
|
2
|
-
<%#= To manually maintain README.md throw away README.md.erb and manually edit README.md %>
|
3
|
-
###### (Automatically generated documentation)
|
4
|
-
|
5
|
-
# <%= name %>
|
6
|
-
|
7
|
-
## Description
|
8
|
-
<%= description %>
|
9
|
-
|
10
|
-
## Modeler Description
|
11
|
-
<%= modelerDescription %>
|
12
|
-
|
13
|
-
## Measure Type
|
14
|
-
<%= measureType %>
|
15
|
-
|
16
|
-
## Taxonomy
|
17
|
-
<%= taxonomy %>
|
18
|
-
|
19
|
-
## Arguments
|
20
|
-
|
21
|
-
<% arguments.each do |argument| %>
|
22
|
-
### <%= argument[:display_name] %>
|
23
|
-
<%= argument[:description] %>
|
24
|
-
**Name:** <%= argument[:name] %>,
|
25
|
-
**Type:** <%= argument[:type] %>,
|
26
|
-
**Units:** <%= argument[:units] %>,
|
27
|
-
**Required:** <%= argument[:required] %>,
|
28
|
-
**Model Dependent:** <%= argument[:model_dependent] %>
|
29
|
-
<% end %>
|
30
|
-
|
31
|
-
<% if arguments.size == 0 %>
|
32
|
-
<%= "This measure does not have any user arguments" %>
|
33
|
-
<% end %>
|
34
|
-
|
35
|
-
<% if outputs.size > 0 %>
|
36
|
-
## Outputs
|
37
|
-
<% output_names = [] %>
|
38
|
-
<% outputs.each do |output| %>
|
39
|
-
<% output_names << output[:display_name] %>
|
40
|
-
<% end %>
|
41
|
-
<%= output_names.join(", ") %>
|
1
|
+
<%#= README.md.erb is used to auto-generate README.md. %>
|
2
|
+
<%#= To manually maintain README.md throw away README.md.erb and manually edit README.md %>
|
3
|
+
###### (Automatically generated documentation)
|
4
|
+
|
5
|
+
# <%= name %>
|
6
|
+
|
7
|
+
## Description
|
8
|
+
<%= description %>
|
9
|
+
|
10
|
+
## Modeler Description
|
11
|
+
<%= modelerDescription %>
|
12
|
+
|
13
|
+
## Measure Type
|
14
|
+
<%= measureType %>
|
15
|
+
|
16
|
+
## Taxonomy
|
17
|
+
<%= taxonomy %>
|
18
|
+
|
19
|
+
## Arguments
|
20
|
+
|
21
|
+
<% arguments.each do |argument| %>
|
22
|
+
### <%= argument[:display_name] %>
|
23
|
+
<%= argument[:description] %>
|
24
|
+
**Name:** <%= argument[:name] %>,
|
25
|
+
**Type:** <%= argument[:type] %>,
|
26
|
+
**Units:** <%= argument[:units] %>,
|
27
|
+
**Required:** <%= argument[:required] %>,
|
28
|
+
**Model Dependent:** <%= argument[:model_dependent] %>
|
29
|
+
<% end %>
|
30
|
+
|
31
|
+
<% if arguments.size == 0 %>
|
32
|
+
<%= "This measure does not have any user arguments" %>
|
33
|
+
<% end %>
|
34
|
+
|
35
|
+
<% if outputs.size > 0 %>
|
36
|
+
## Outputs
|
37
|
+
<% output_names = [] %>
|
38
|
+
<% outputs.each do |output| %>
|
39
|
+
<% output_names << output[:display_name] %>
|
40
|
+
<% end %>
|
41
|
+
<%= output_names.join(", ") %>
|
42
42
|
<% end %>
|