urbanopt-reopt 0.8.0 → 0.10.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 +35 -0
- data/CHANGELOG.md +24 -7
- data/Gemfile +1 -1
- data/LICENSE.md +26 -11
- data/RDOC_MAIN.md +2 -2
- data/README.md +5 -2
- data/developer_nrel_key.rb +2 -27
- data/doc_templates/LICENSE.md +26 -11
- data/doc_templates/copyright_erb.txt +32 -16
- data/doc_templates/copyright_js.txt +2 -2
- data/doc_templates/copyright_ruby.txt +2 -27
- data/docs/README.md +2 -2
- data/docs/package-lock.json +23 -41
- data/index.md +2 -2
- data/lib/urbanopt/reopt/extension.rb +2 -27
- data/lib/urbanopt/reopt/feature_report_adapter.rb +2 -27
- data/lib/urbanopt/reopt/reopt_lite_api.rb +22 -43
- data/lib/urbanopt/reopt/reopt_logger.rb +5 -27
- data/lib/urbanopt/reopt/reopt_post_processor.rb +7 -35
- data/lib/urbanopt/reopt/reopt_schema/reopt_input_schema.json +1 -2
- data/lib/urbanopt/reopt/scenario/reopt_scenario_csv.rb +2 -27
- data/lib/urbanopt/reopt/scenario_report_adapter.rb +27 -55
- data/lib/urbanopt/reopt/utilities.rb +2 -27
- data/lib/urbanopt/reopt/version.rb +3 -28
- data/lib/urbanopt/reopt.rb +2 -27
- data/lib/urbanopt/reopt_scenario.rb +2 -27
- data/lib/urbanopt-reopt.rb +2 -27
- data/urbanopt-reopt.gemspec +4 -3
- metadata +30 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 834948f6286c226d67f2b50e5954f8de29c97d48d6053cb9e3d5ce35f479e122
|
4
|
+
data.tar.gz: 8e5606aad4ef26ad638bb2e8c243bf614e25c5a536549cbb64f7366fb6214801
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b5c318a449806ed6a1a32c316c551a536c3434df9e9d830aa5325ebdbe4650f683290c0a5ec89cd1c1e78f5f1fb81e026808c9c491303769222767710947ba7
|
7
|
+
data.tar.gz: 20c81ab88327bce2fafd86a6e304f9aa8b94c9ae0673d17a5cb7a6842852bcc7c460393c70f1ffc7910a46f3eb62831815785e8597893ccb752bd43c4b74d2b1
|
@@ -0,0 +1,35 @@
|
|
1
|
+
name: nightly_build
|
2
|
+
|
3
|
+
on:
|
4
|
+
# push:
|
5
|
+
schedule:
|
6
|
+
# https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule
|
7
|
+
# 5:23 am UTC (11:23pm MDT the day before) every weekday night in MDT
|
8
|
+
- cron: '23 5 * * 2-6'
|
9
|
+
|
10
|
+
env:
|
11
|
+
# This env var should enforce develop branch of all dependencies
|
12
|
+
FAVOR_LOCAL_GEMS: true
|
13
|
+
GEM_DEVELOPER_KEY: ${{ secrets.GEM_DEVELOPER_KEY }}
|
14
|
+
|
15
|
+
jobs:
|
16
|
+
weeknight-tests:
|
17
|
+
# ubuntu-latest works since https://github.com/rbenv/ruby-build/releases/tag/v20220710 (July 10, 2022)
|
18
|
+
# https://github.com/rbenv/ruby-build/discussions/1940
|
19
|
+
runs-on: ubuntu-latest
|
20
|
+
container:
|
21
|
+
image: docker://nrel/openstudio:3.6.1
|
22
|
+
steps:
|
23
|
+
- uses: actions/checkout@v3
|
24
|
+
- name: Update gems
|
25
|
+
run: |
|
26
|
+
bundle update
|
27
|
+
bundle exec certified-update
|
28
|
+
- name: Run Rspec
|
29
|
+
run: bundle exec rspec
|
30
|
+
- name: Coveralls
|
31
|
+
# coveralls action docs: https://github.com/marketplace/actions/coveralls-github-action
|
32
|
+
uses: coverallsapp/github-action@v2
|
33
|
+
with:
|
34
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
35
|
+
path-to-lcov: "./coverage/lcov/urbanopt-reopt-gem.lcov"
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,22 @@
|
|
1
1
|
# URBANopt REopt Gem
|
2
2
|
|
3
|
+
## Version 0.10.0
|
4
|
+
Date Range: 12/13/22 - 7/6/23
|
5
|
+
|
6
|
+
- Update dependencies for OpenStudio 3.6.1
|
7
|
+
- Update license and references to the license file
|
8
|
+
- Add badge for GHA CI nightly build status
|
9
|
+
|
10
|
+
## Version 0.9.0
|
11
|
+
|
12
|
+
Date Range: 05/11/22 - 12/13/22
|
13
|
+
|
14
|
+
- Update dependencies for OpenStudio 3.5.0
|
15
|
+
- Fixed [#102]( https://github.com/urbanopt/urbanopt-reopt-gem/issues/102 ), update REopt API to v2 by 10/1/2022
|
16
|
+
- Fixed [#113]( https://github.com/urbanopt/urbanopt-reopt-gem/issues/113 ), Passing test includes an output error.
|
17
|
+
- Fixed [#122]( https://github.com/urbanopt/urbanopt-reopt-gem/issues/122 ), REopt gem test review
|
18
|
+
- Fixed [#124]( https://github.com/urbanopt/urbanopt-reopt-gem/issues/124 ), Code coverage reporting
|
19
|
+
|
3
20
|
## Version 0.8.0
|
4
21
|
|
5
22
|
Date Range: 11/23/21 - 05/10/22
|
@@ -99,9 +116,9 @@ Date range: 12/11/20 - 1/08/21
|
|
99
116
|
|
100
117
|
Date range: 11/13/20 - 12/11/20
|
101
118
|
|
102
|
-
* Updates to support OpenStudio 3.1
|
119
|
+
* Updates to support OpenStudio 3.1
|
120
|
+
|
103
121
|
|
104
|
-
|
105
122
|
## Version 0.4.1
|
106
123
|
|
107
124
|
Date range: 9/23/20 - 11/12/20
|
@@ -117,7 +134,7 @@ Date range: 9/23/20 - 11/12/20
|
|
117
134
|
Date range: 6/5/20 - 9/22/20
|
118
135
|
|
119
136
|
* Changes to support the new reporting gem
|
120
|
-
* Parsing additional results from the REopt Lite API:
|
137
|
+
* Parsing additional results from the REopt Lite API:
|
121
138
|
- lcc_bau_us_dollars
|
122
139
|
- year_one_energy_cost_bau_us_dollars
|
123
140
|
- year_one_demand_cost_bau_us_dollars
|
@@ -138,12 +155,12 @@ Date range: 6/5/20 - 9/22/20
|
|
138
155
|
|
139
156
|
* Updating to support OpenStudio 3.0 and Ruby 2.5
|
140
157
|
|
141
|
-
## Version 0.2.1
|
158
|
+
## Version 0.2.1
|
142
159
|
* Corrects code checking PV size that fails on multi PV
|
143
160
|
* Corrects parsing of site energy at timesteps other than 1 per hour
|
144
161
|
|
145
162
|
|
146
|
-
## Version 0.2.0
|
163
|
+
## Version 0.2.0
|
147
164
|
|
148
165
|
* Handles multiple PV systems in the REopt Lite assumptions
|
149
166
|
* Changes REoptPostProcessor run_scenario and run_scenario_features methods to save feature and scenario reports with custom names
|
@@ -151,6 +168,6 @@ Date range: 6/5/20 - 9/22/20
|
|
151
168
|
* Renames REopt timeseries CSV columns to include 'REopt' and units
|
152
169
|
|
153
170
|
|
154
|
-
## Version 0.1.0
|
171
|
+
## Version 0.1.0
|
155
172
|
|
156
|
-
* Initial release of URBANopt REopt Gem.
|
173
|
+
* Initial release of URBANopt REopt Gem.
|
data/Gemfile
CHANGED
@@ -44,7 +44,7 @@ allow_local = ENV['FAVOR_LOCAL_GEMS']
|
|
44
44
|
# if allow_local && File.exist?('../urbanopt-scenario-gem')
|
45
45
|
# gem 'urbanopt-scenario', path: '../urbanopt-scenario-gem'
|
46
46
|
# elsif allow_local
|
47
|
-
#
|
47
|
+
# gem 'urbanopt-scenario', github: 'URBANopt/urbanopt-scenario-gem', branch: 'develop'
|
48
48
|
# end
|
49
49
|
|
50
50
|
# if allow_local && File.exists?('../urbanopt-geojson-gem')
|
data/LICENSE.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
URBANopt
|
1
|
+
URBANopt (tm), Copyright (c) 2019-2023, Alliance for Sustainable Energy, LLC, and other
|
2
2
|
contributors. All rights reserved.
|
3
3
|
|
4
4
|
Redistribution and use in source and binary forms, with or without modification,
|
@@ -15,13 +15,28 @@ Neither the name of the copyright holder nor the names of its contributors may b
|
|
15
15
|
used to endorse or promote products derived from this software without specific
|
16
16
|
prior written permission.
|
17
17
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
18
|
+
Redistribution of this software, without modification, must refer to the software
|
19
|
+
by the same designation. Redistribution of a modified version of this software
|
20
|
+
(i) may not refer to the modified version by the same designation, or by any
|
21
|
+
confusingly similar designation, and (ii) must refer to the underlying software
|
22
|
+
originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
|
23
|
+
the term “URBANopt”, or any confusingly similar designation may not be used to
|
24
|
+
refer to any modified version of this software or any modified version of the
|
25
|
+
underlying software originally provided by Alliance without the prior written
|
26
|
+
consent of Alliance.
|
27
|
+
|
28
|
+
The name of the copyright holder(s), any contributors, the United States Government,
|
29
|
+
the United States Department of Energy, or any of their employees may not be used to
|
30
|
+
endorse or promote products derived from this software without specific prior written
|
31
|
+
permission from the respective party.
|
32
|
+
|
33
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS "AS IS" AND
|
34
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
35
|
+
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
36
|
+
THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE UNITED STATES GOVERNMENT, OR THE UNITED STATES
|
37
|
+
DEPARTMENT OF ENERGY, NOR ANY OF THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT,
|
38
|
+
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
39
|
+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
40
|
+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
41
|
+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
42
|
+
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/RDOC_MAIN.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# **URBANopt REopt Gem**
|
2
2
|
|
3
3
|
The **URBANopt™ REopt Gem** extends **URBANopt::Reporting::DefaultReports::ScenarioReport** and **URBANopt::Reporting::DefaultReports::FeatureReport** with the ability to derive cost-optimal distributed energy resource (DER) technology sizes and annual dispatch strageties via the [REopt Lite](https://reopt.nrel.gov/tool) decision support platform.
|
4
|
-
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt
|
4
|
+
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt/v2/](https://developer.nrel.gov/docs/energy-optimization/reopt/v2/) for more detailed information on input parameters and default assumptions.
|
5
5
|
|
6
6
|
See the [example project](https://github.com/urbanopt/urbanopt-example-reopt-project.git) for more infomation about usage of this gem.
|
7
7
|
|
@@ -83,7 +83,7 @@ Moreover, the following optimal dispatch fields are added to its timeseries CSV.
|
|
83
83
|
| ElectricityProduced:Wind:ToGrid | kWh |
|
84
84
|
```
|
85
85
|
|
86
|
-
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See [https://developer.nrel.gov/docs/energy-optimization/reopt
|
86
|
+
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See [https://developer.nrel.gov/docs/energy-optimization/reopt/v2/](https://developer.nrel.gov/docs/energy-optimization/reopt/v2/) for more detailed information on input parameters and default assumptions.
|
87
87
|
|
88
88
|
<b>Note:</b> Required attributes for a REopt run include latitude and longitude. If no utility rate is specified in your REopt Lite assumption settings, then a constant default rate of $0.13 is assumed without demand charges. Also, by default, only solar PV and storage are considered in the analysis (i.e. Wind and Generators are excluded from consideration).
|
89
89
|
|
data/README.md
CHANGED
@@ -1,7 +1,10 @@
|
|
1
1
|
# URBANopt REopt Gem
|
2
2
|
|
3
|
+
[](https://coveralls.io/github/urbanopt/urbanopt-reopt-gem?branch=develop)
|
4
|
+
[](https://github.com/urbanopt/urbanopt-reopt-gem/actions/workflows/nightly_build.yml)
|
5
|
+
|
3
6
|
The **URBANopt<sup>™</sup> REopt Gem** extends **URBANopt::Reporting::DefaultReports::ScenarioReport** and **URBANopt::Reporting::DefaultReports::FeatureReport** with the ability to derive cost-optimal distributed energy resource (DER) technology sizes and annual dispatch strageties via the [REopt Lite](https://reopt.nrel.gov/tool) decision support platform.
|
4
|
-
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt
|
7
|
+
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt/v2/](https://developer.nrel.gov/docs/energy-optimization/reopt/v2/) for more detailed information on input parameters and default assumptions.
|
5
8
|
|
6
9
|
See the [example project](https://github.com/urbanopt/urbanopt-example-geojson-reopt-project) for more infomation about usage of this gem.
|
7
10
|
|
@@ -85,7 +88,7 @@ Moreover, the following optimal dispatch fields are added to its timeseries CSV.
|
|
85
88
|
| ElectricityProduced:Wind:ToGrid | kWh |
|
86
89
|
|
87
90
|
|
88
|
-
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt
|
91
|
+
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt/v2/">https://developer.nrel.gov/docs/energy-optimization/reopt/v2/</StaticLink> for more detailed information on input parameters and default assumptions.
|
89
92
|
|
90
93
|
<b>Note:</b> Required attributes for a REopt run include latitude and longitude. If no utility rate is specified in your REopt Lite assumption settings, then a constant default rate of $0.13 is assumed without demand charges. Also, by default, only solar PV and storage are considered in the analysis (i.e. Wind and Generators are excluded from consideration).
|
91
94
|
|
data/developer_nrel_key.rb
CHANGED
@@ -1,31 +1,6 @@
|
|
1
1
|
# *********************************************************************************
|
2
|
-
# URBANopt
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# Redistribution and use in source and binary forms, with or without modification,
|
6
|
-
# are permitted provided that the following conditions are met:
|
7
|
-
#
|
8
|
-
# Redistributions of source code must retain the above copyright notice, this list
|
9
|
-
# of conditions and the following disclaimer.
|
10
|
-
#
|
11
|
-
# Redistributions in binary form must reproduce the above copyright notice, this
|
12
|
-
# list of conditions and the following disclaimer in the documentation and/or other
|
13
|
-
# materials provided with the distribution.
|
14
|
-
#
|
15
|
-
# Neither the name of the copyright holder nor the names of its contributors may be
|
16
|
-
# used to endorse or promote products derived from this software without specific
|
17
|
-
# prior written permission.
|
18
|
-
#
|
19
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
20
|
-
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
21
|
-
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
22
|
-
# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
23
|
-
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
24
|
-
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
25
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
26
|
-
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
27
|
-
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
28
|
-
# OF THE POSSIBILITY OF SUCH DAMAGE.
|
2
|
+
# URBANopt (tm), Copyright (c) Alliance for Sustainable Energy, LLC.
|
3
|
+
# See also https://github.com/urbanopt/urbanopt-reopt-gem/blob/develop/LICENSE.md
|
29
4
|
# *********************************************************************************
|
30
5
|
|
31
6
|
DEVELOPER_NREL_KEY = (ENV['GEM_DEVELOPER_KEY'] || '< your key here https://developer.nrel.gov/signup >')
|
data/doc_templates/LICENSE.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
URBANopt
|
1
|
+
URBANopt (tm), Copyright (c) 2019-2023, Alliance for Sustainable Energy, LLC, and other
|
2
2
|
contributors. All rights reserved.
|
3
3
|
|
4
4
|
Redistribution and use in source and binary forms, with or without modification,
|
@@ -15,13 +15,28 @@ Neither the name of the copyright holder nor the names of its contributors may b
|
|
15
15
|
used to endorse or promote products derived from this software without specific
|
16
16
|
prior written permission.
|
17
17
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
18
|
+
Redistribution of this software, without modification, must refer to the software
|
19
|
+
by the same designation. Redistribution of a modified version of this software
|
20
|
+
(i) may not refer to the modified version by the same designation, or by any
|
21
|
+
confusingly similar designation, and (ii) must refer to the underlying software
|
22
|
+
originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
|
23
|
+
the term “URBANopt”, or any confusingly similar designation may not be used to
|
24
|
+
refer to any modified version of this software or any modified version of the
|
25
|
+
underlying software originally provided by Alliance without the prior written
|
26
|
+
consent of Alliance.
|
27
|
+
|
28
|
+
The name of the copyright holder(s), any contributors, the United States Government,
|
29
|
+
the United States Department of Energy, or any of their employees may not be used to
|
30
|
+
endorse or promote products derived from this software without specific prior written
|
31
|
+
permission from the respective party.
|
32
|
+
|
33
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS "AS IS" AND
|
34
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
35
|
+
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
36
|
+
THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE UNITED STATES GOVERNMENT, OR THE UNITED STATES
|
37
|
+
DEPARTMENT OF ENERGY, NOR ANY OF THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT,
|
38
|
+
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
39
|
+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
40
|
+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
41
|
+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
42
|
+
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
@@ -1,31 +1,47 @@
|
|
1
1
|
<%
|
2
2
|
# *********************************************************************************
|
3
|
-
# URBANopt
|
3
|
+
# URBANopt (tm), Copyright (c) 2019-2023, Alliance for Sustainable Energy, LLC, and other
|
4
4
|
# contributors. All rights reserved.
|
5
|
-
|
5
|
+
|
6
6
|
# Redistribution and use in source and binary forms, with or without modification,
|
7
7
|
# are permitted provided that the following conditions are met:
|
8
|
-
|
8
|
+
|
9
9
|
# Redistributions of source code must retain the above copyright notice, this list
|
10
10
|
# of conditions and the following disclaimer.
|
11
|
-
|
11
|
+
|
12
12
|
# Redistributions in binary form must reproduce the above copyright notice, this
|
13
13
|
# list of conditions and the following disclaimer in the documentation and/or other
|
14
14
|
# materials provided with the distribution.
|
15
|
-
|
15
|
+
|
16
16
|
# Neither the name of the copyright holder nor the names of its contributors may be
|
17
17
|
# used to endorse or promote products derived from this software without specific
|
18
18
|
# prior written permission.
|
19
|
-
|
20
|
-
#
|
21
|
-
#
|
22
|
-
#
|
23
|
-
#
|
24
|
-
#
|
25
|
-
#
|
26
|
-
#
|
27
|
-
#
|
28
|
-
#
|
29
|
-
|
19
|
+
|
20
|
+
# Redistribution of this software, without modification, must refer to the software
|
21
|
+
# by the same designation. Redistribution of a modified version of this software
|
22
|
+
# (i) may not refer to the modified version by the same designation, or by any
|
23
|
+
# confusingly similar designation, and (ii) must refer to the underlying software
|
24
|
+
# originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
|
25
|
+
# the term “URBANopt”, or any confusingly similar designation may not be used to
|
26
|
+
# refer to any modified version of this software or any modified version of the
|
27
|
+
# underlying software originally provided by Alliance without the prior written
|
28
|
+
# consent of Alliance.
|
29
|
+
|
30
|
+
# The name of the copyright holder(s), any contributors, the United States Government,
|
31
|
+
# the United States Department of Energy, or any of their employees may not be used to
|
32
|
+
# endorse or promote products derived from this software without specific prior written
|
33
|
+
# permission from the respective party.
|
34
|
+
|
35
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS "AS IS" AND
|
36
|
+
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
37
|
+
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
38
|
+
# THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE UNITED STATES GOVERNMENT, OR THE UNITED STATES
|
39
|
+
# DEPARTMENT OF ENERGY, NOR ANY OF THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT,
|
40
|
+
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
41
|
+
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
42
|
+
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
43
|
+
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
44
|
+
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
45
|
+
|
30
46
|
# *********************************************************************************
|
31
47
|
%>
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/* @preserve
|
2
|
-
* URBANopt
|
3
|
-
*
|
2
|
+
* URBANopt (tm), Copyright (c) Alliance for Sustainable Energy, LLC.
|
3
|
+
* See also https://github.com/urbanopt/urbanopt-reopt-gem/blob/develop/LICENSE.md
|
4
4
|
*/
|
@@ -1,29 +1,4 @@
|
|
1
1
|
# *********************************************************************************
|
2
|
-
# URBANopt
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# Redistribution and use in source and binary forms, with or without modification,
|
6
|
-
# are permitted provided that the following conditions are met:
|
7
|
-
#
|
8
|
-
# Redistributions of source code must retain the above copyright notice, this list
|
9
|
-
# of conditions and the following disclaimer.
|
10
|
-
#
|
11
|
-
# Redistributions in binary form must reproduce the above copyright notice, this
|
12
|
-
# list of conditions and the following disclaimer in the documentation and/or other
|
13
|
-
# materials provided with the distribution.
|
14
|
-
#
|
15
|
-
# Neither the name of the copyright holder nor the names of its contributors may be
|
16
|
-
# used to endorse or promote products derived from this software without specific
|
17
|
-
# prior written permission.
|
18
|
-
#
|
19
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
20
|
-
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
21
|
-
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
22
|
-
# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
23
|
-
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
24
|
-
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
25
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
26
|
-
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
27
|
-
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
28
|
-
# OF THE POSSIBILITY OF SUCH DAMAGE.
|
2
|
+
# URBANopt (tm), Copyright (c) Alliance for Sustainable Energy, LLC.
|
3
|
+
# See also https://github.com/urbanopt/urbanopt-reopt-gem/blob/develop/LICENSE.md
|
29
4
|
# *********************************************************************************
|
data/docs/README.md
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
### <StaticLink target="\_blank" href="rdoc/">Rdocs</StaticLink>
|
4
4
|
|
5
5
|
The **URBANopt<sup>™</sup> REopt Gem** extends a **URBANopt::Reporting::DefaultReports::ScenarioReport** and **URBANopt::Reporting::DefaultReports::FeatureReport** with the ability to derive cost-optimal distributed energy resource (DER) technology sizes and annual dispatch strageties via the <StaticLink target="\_blank" href="https://reopt.nrel.gov/tool">REopt Lite</StaticLink> decision support platform.
|
6
|
-
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt
|
6
|
+
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt/v2/">https://developer.nrel.gov/docs/energy-optimization/reopt/v2/</StaticLink> for more detailed information on input parameters and default assumptions.
|
7
7
|
|
8
8
|
The REopt Gem accomplishes three basic functions (described more below in the _Functionality_ section):
|
9
9
|
|
@@ -99,7 +99,7 @@ Moreover, the following optimal dispatch fields are added to its timeseries CSV.
|
|
99
99
|
| ElectricityProduced:Wind:ToGrid | kWh |
|
100
100
|
|
101
101
|
|
102
|
-
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt
|
102
|
+
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See <StaticLink target="\_blank" href="https://developer.nrel.gov/docs/energy-optimization/reopt/v2/">https://developer.nrel.gov/docs/energy-optimization/reopt/v2/</StaticLink> for more detailed information on input parameters and default assumptions.
|
103
103
|
|
104
104
|
<b>Note:</b> Required attributes for a REopt run include latitude and longitude, parsed from the Feature or Scenario Report attributes. If no utility rate is specified in your assumptions, then a constant rate of $0.13 is assumed without demand charges. Also, by default, only solar PV and storage are considered in the analysis (i.e. Wind and Generators are excluded from consideration).
|
105
105
|
|
data/docs/package-lock.json
CHANGED
@@ -6650,13 +6650,10 @@
|
|
6650
6650
|
}
|
6651
6651
|
},
|
6652
6652
|
"node_modules/eventsource": {
|
6653
|
-
"version": "1.1.
|
6654
|
-
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.
|
6655
|
-
"integrity": "sha512-
|
6653
|
+
"version": "1.1.2",
|
6654
|
+
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.2.tgz",
|
6655
|
+
"integrity": "sha512-xAH3zWhgO2/3KIniEKYPr8plNSzlGINOUqYj0m0u7AB81iRw8b/3E73W6AuU+6klLbaSFmZnaETQ2lXPfAydrA==",
|
6656
6656
|
"dev": true,
|
6657
|
-
"dependencies": {
|
6658
|
-
"original": "^1.0.0"
|
6659
|
-
},
|
6660
6657
|
"engines": {
|
6661
6658
|
"node": ">=0.12.0"
|
6662
6659
|
}
|
@@ -7540,7 +7537,7 @@
|
|
7540
7537
|
"node_modules/glob-parent": {
|
7541
7538
|
"version": "3.1.0",
|
7542
7539
|
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
7543
|
-
"integrity": "
|
7540
|
+
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
7544
7541
|
"dev": true,
|
7545
7542
|
"dependencies": {
|
7546
7543
|
"is-glob": "^3.1.0",
|
@@ -10453,15 +10450,6 @@
|
|
10453
10450
|
"webpack": "^4.0.0"
|
10454
10451
|
}
|
10455
10452
|
},
|
10456
|
-
"node_modules/original": {
|
10457
|
-
"version": "1.0.2",
|
10458
|
-
"resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
|
10459
|
-
"integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
|
10460
|
-
"dev": true,
|
10461
|
-
"dependencies": {
|
10462
|
-
"url-parse": "^1.4.3"
|
10463
|
-
}
|
10464
|
-
},
|
10465
10453
|
"node_modules/os-browserify": {
|
10466
10454
|
"version": "0.3.0",
|
10467
10455
|
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
|
@@ -14448,9 +14436,9 @@
|
|
14448
14436
|
}
|
14449
14437
|
},
|
14450
14438
|
"node_modules/terser": {
|
14451
|
-
"version": "4.8.
|
14452
|
-
"resolved": "https://registry.npmjs.org/terser/-/terser-4.8.
|
14453
|
-
"integrity": "sha512-
|
14439
|
+
"version": "4.8.1",
|
14440
|
+
"resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz",
|
14441
|
+
"integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==",
|
14454
14442
|
"dev": true,
|
14455
14443
|
"dependencies": {
|
14456
14444
|
"commander": "^2.20.0",
|
@@ -15682,7 +15670,10 @@
|
|
15682
15670
|
"node_modules/watchpack/chokidar2": {
|
15683
15671
|
"version": "0.0.1",
|
15684
15672
|
"dev": true,
|
15685
|
-
"optional": true
|
15673
|
+
"optional": true,
|
15674
|
+
"dependencies": {
|
15675
|
+
"chokidar": "^2.1.8"
|
15676
|
+
}
|
15686
15677
|
},
|
15687
15678
|
"node_modules/wbuf": {
|
15688
15679
|
"version": "1.7.3",
|
@@ -19823,7 +19814,10 @@
|
|
19823
19814
|
}
|
19824
19815
|
},
|
19825
19816
|
"chokidar2": {
|
19826
|
-
"version": "file:node_modules/watchpack/chokidar2"
|
19817
|
+
"version": "file:node_modules/watchpack/chokidar2",
|
19818
|
+
"requires": {
|
19819
|
+
"chokidar": "^2.1.8"
|
19820
|
+
}
|
19827
19821
|
},
|
19828
19822
|
"chownr": {
|
19829
19823
|
"version": "1.1.4",
|
@@ -21663,13 +21657,10 @@
|
|
21663
21657
|
"dev": true
|
21664
21658
|
},
|
21665
21659
|
"eventsource": {
|
21666
|
-
"version": "1.1.
|
21667
|
-
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.
|
21668
|
-
"integrity": "sha512-
|
21669
|
-
"dev": true
|
21670
|
-
"requires": {
|
21671
|
-
"original": "^1.0.0"
|
21672
|
-
}
|
21660
|
+
"version": "1.1.2",
|
21661
|
+
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.2.tgz",
|
21662
|
+
"integrity": "sha512-xAH3zWhgO2/3KIniEKYPr8plNSzlGINOUqYj0m0u7AB81iRw8b/3E73W6AuU+6klLbaSFmZnaETQ2lXPfAydrA==",
|
21663
|
+
"dev": true
|
21673
21664
|
},
|
21674
21665
|
"evp_bytestokey": {
|
21675
21666
|
"version": "1.0.3",
|
@@ -22363,7 +22354,7 @@
|
|
22363
22354
|
"glob-parent": {
|
22364
22355
|
"version": "3.1.0",
|
22365
22356
|
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
22366
|
-
"integrity": "
|
22357
|
+
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
22367
22358
|
"dev": true,
|
22368
22359
|
"requires": {
|
22369
22360
|
"is-glob": "^3.1.0",
|
@@ -24673,15 +24664,6 @@
|
|
24673
24664
|
"last-call-webpack-plugin": "^3.0.0"
|
24674
24665
|
}
|
24675
24666
|
},
|
24676
|
-
"original": {
|
24677
|
-
"version": "1.0.2",
|
24678
|
-
"resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
|
24679
|
-
"integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
|
24680
|
-
"dev": true,
|
24681
|
-
"requires": {
|
24682
|
-
"url-parse": "^1.4.3"
|
24683
|
-
}
|
24684
|
-
},
|
24685
24667
|
"os-browserify": {
|
24686
24668
|
"version": "0.3.0",
|
24687
24669
|
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
|
@@ -27835,9 +27817,9 @@
|
|
27835
27817
|
"dev": true
|
27836
27818
|
},
|
27837
27819
|
"terser": {
|
27838
|
-
"version": "4.8.
|
27839
|
-
"resolved": "https://registry.npmjs.org/terser/-/terser-4.8.
|
27840
|
-
"integrity": "sha512-
|
27820
|
+
"version": "4.8.1",
|
27821
|
+
"resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz",
|
27822
|
+
"integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==",
|
27841
27823
|
"dev": true,
|
27842
27824
|
"requires": {
|
27843
27825
|
"commander": "^2.20.0",
|
data/index.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# **URBANopt REopt Gem**
|
2
2
|
|
3
3
|
The **URBANopt<sup>™</sup> REopt Gem** extends **URBANopt::Reporting::DefaultReports::ScenarioReport** and **URBANopt::Reporting::DefaultReports::FeatureReport** with the ability to derive cost-optimal distributed energy resource (DER) technology sizes and annual dispatch strageties via the [REopt Lite](https://reopt.nrel.gov/tool) decision support platform.
|
4
|
-
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt
|
4
|
+
REopt Lite is a technoeconomic model which leverages mixed integer linear programming to identify the cost-optimal sizing of solar PV, Wind, Storage and/or diesel generation given an electric load profile, a utility rate tariff and other technoeconomic parameters. See [https://developer.nrel.gov/docs/energy-optimization/reopt/v2/](https://developer.nrel.gov/docs/energy-optimization/reopt/v2/) for more detailed information on input parameters and default assumptions.
|
5
5
|
|
6
6
|
See the [example project](https://github.com/urbanopt/urbanopt-example-reopt-project.git) for more infomation about usage of this gem.
|
7
7
|
|
@@ -83,7 +83,7 @@ Moreover, the following optimal dispatch fields are added to its timeseries CSV.
|
|
83
83
|
| ElectricityProduced:Wind:ToGrid | kWh |
|
84
84
|
```
|
85
85
|
|
86
|
-
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See [https://developer.nrel.gov/docs/energy-optimization/reopt
|
86
|
+
The REopt Lite has default values for all non-required input parameters that are used unless the user specifies custom assumptions. See [https://developer.nrel.gov/docs/energy-optimization/reopt/v2/](https://developer.nrel.gov/docs/energy-optimization/reopt/v2/) for more detailed information on input parameters and default assumptions.
|
87
87
|
|
88
88
|
<b>Note:</b> Required attributes for a REopt run include latitude and longitude. If no utility rate is specified in your REopt Lite assumption settings, then a constant default rate of $0.13 is assumed without demand charges. Also, by default, only solar PV and storage are considered in the analysis (i.e. Wind and Generators are excluded from consideration).
|
89
89
|
|
@@ -1,31 +1,6 @@
|
|
1
1
|
# *********************************************************************************
|
2
|
-
# URBANopt
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# Redistribution and use in source and binary forms, with or without modification,
|
6
|
-
# are permitted provided that the following conditions are met:
|
7
|
-
#
|
8
|
-
# Redistributions of source code must retain the above copyright notice, this list
|
9
|
-
# of conditions and the following disclaimer.
|
10
|
-
#
|
11
|
-
# Redistributions in binary form must reproduce the above copyright notice, this
|
12
|
-
# list of conditions and the following disclaimer in the documentation and/or other
|
13
|
-
# materials provided with the distribution.
|
14
|
-
#
|
15
|
-
# Neither the name of the copyright holder nor the names of its contributors may be
|
16
|
-
# used to endorse or promote products derived from this software without specific
|
17
|
-
# prior written permission.
|
18
|
-
#
|
19
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
20
|
-
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
21
|
-
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
22
|
-
# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
23
|
-
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
24
|
-
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
25
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
26
|
-
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
27
|
-
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
28
|
-
# OF THE POSSIBILITY OF SUCH DAMAGE.
|
2
|
+
# URBANopt (tm), Copyright (c) Alliance for Sustainable Energy, LLC.
|
3
|
+
# See also https://github.com/urbanopt/urbanopt-reopt-gem/blob/develop/LICENSE.md
|
29
4
|
# *********************************************************************************
|
30
5
|
|
31
6
|
require 'openstudio/extension'
|