Skip to content

Commit bdd7536

Browse files
committed
Merge branch 'develop' into mg-ravens
2 parents 0c79522 + d93fbfa commit bdd7536

101 files changed

Lines changed: 420 additions & 208 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
### Please check if the PR fulfills these requirements
2+
- [ ] CHANGELOG.md is updated
3+
- [ ] Docs have been added / updated if applicable
4+
- [ ] Any new packages have been added to the [compat] section of Project.toml
5+
- [ ] REopt version number is updated in Project.toml and CHANGELOG.md if merging into master (do this right before or right after merging)
6+
- [ ] Tests for the changes have been added. These tests should compare against expected values that are calculated independently of running REopt. Tests should also include garbage collection (see other tests for examples).
7+
- [ ] Any new REopt outputs and required inputs have been added to the corresponding Django model in the REopt API
8+
9+
### Replace this with a description of the changes (can just copy from CHANGELOG.md)

.github/workflows/CI.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ jobs:
2222
version: ${{ matrix.julia-version }}
2323
- uses: julia-actions/julia-buildpkg@latest
2424
# - uses: mxschmitt/action-tmate@v3 # for interactive debugging
25-
- run: julia --project=. -e 'using Pkg; Pkg.activate("test"); Pkg.rm("Xpress"); Pkg.activate("."); using TestEnv; TestEnv.activate(); Pkg.add(PackageSpec(name="GhpGhx", url="https://github.com/NREL/GhpGhx.jl.git")); using GhpGhx; cd("test"); include("runtests.jl")'
25+
- run: julia --project=. -e 'using Pkg; Pkg.activate("test"); Pkg.rm("Xpress"); Pkg.activate("."); using TestEnv; TestEnv.activate(); Pkg.add(PackageSpec(name="GhpGhx", url="https://github.com/NatLabRockies/GhpGhx.jl.git")); using GhpGhx; cd("test"); include("runtests.jl")'
2626
shell: bash

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,16 @@ Classify the change according to the following categories:
2525
### Deprecated
2626
### Removed
2727

28+
## v0.57.0
29+
### Fixed
30+
- Include boiler emissions in emissions calculations
31+
- Update links that broke with NLR domain change and update other references to NREL
32+
### Changed
33+
- Updated defaults for **Financial** inputs **elec_cost_escalation_rate_fraction**, **boiler_fuel_cost_escalation_rate_fraction**, **existing_boiler_fuel_cost_escalation_rate_fraction**, **chp_fuel_cost_escalation_rate_fraction**, **generator_fuel_cost_escalation_rate_fraction**, **om_cost_escalation_rate_fraction**, and **offtaker_discount_rate_fraction** when **sector** is "federal" (based on the 2025 NIST Handbook and Annual Supplement)
34+
- Changed expected best dataset determined from Solar Dataset Query API in response to addition of Polar data to NSRDB
35+
### Added
36+
- Created a default PR template
37+
2838
## v0.56.4
2939
### Fixed
3040
- Bug where storage input with only _Int_ values restricted _Dict_ subtype passed into `set_sector_defaults!` and caused _InexactError_

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "REopt"
22
uuid = "d36ad4e8-d74a-4f7a-ace1-eaea049febf6"
33
authors = ["Nick Laws", "Hallie Dunham <hallie.dunham@nrel.gov>", "Bill Becker <william.becker@nrel.gov>", "Bhavesh Rathod <bhavesh.rathod@nrel.gov>", "Alex Zolan <alexander.zolan@nrel.gov>", "Amanda Farthing <amanda.farthing@nrel.gov>", "Xiangkun Li <xiangkun.li@nrel.gov>", "An Pham <an.pham@nrel.gov>", "Byron Pullutasig <byron.pullatasig@nrel.gov>"]
4-
version = "0.56.4"
4+
version = "0.57.0"
55

66
[deps]
77
ArchGDAL = "c9ce4bd3-c3d5-55b8-8973-c0e20141b8c3"

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# REopt® Julia package
2-
REopt.jl is the core module of the [REopt® techno-economic decision support platform](https://www.nrel.gov/reopt/), developed by the National Renewable Energy Laboratory (NREL). REopt optimizes the sizing and dispatch of energy systems for buildings, campuses, communities, microgrids, and more. REopt identifies the cost-optimal mix of generation, storage, and heating and cooling technologies to meet cost savings, resilience, emissions reductions, and energy performance goals.
2+
REopt.jl is the core module of the [REopt® techno-economic decision support platform](https://www.nlr.gov/reopt/), developed by the National Laboratory of the Rockies (NLR). REopt optimizes the sizing and dispatch of energy systems for buildings, campuses, communities, microgrids, and more. REopt identifies the cost-optimal mix of generation, storage, and heating and cooling technologies to meet cost savings, resilience, emissions reductions, and energy performance goals.
33

4-
REopt.jl (this package) is used within the publicly-accessible and open-source [REopt API](https://github.com/NREL/REopt_API), and the publicly-available [REopt Web Tool](https://reopt.nrel.gov/tool) calls the REopt API.
4+
REopt.jl (this package) is used within the publicly-accessible and open-source [REopt API](https://github.com/NatLabRockies/REopt_API), and the publicly-available [REopt Web Tool](https://reopt.nlr.gov/tool) calls the REopt API.
55

66
For more information about REopt.jl please see the Julia documentation:
7-
<!-- [![](https://img.shields.io/badge/docs-stable-blue.svg)](https://nrel.github.io/REopt.jl/stable) -->
8-
[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://nrel.github.io/REopt.jl/dev)
7+
<!-- [![](https://img.shields.io/badge/docs-stable-blue.svg)](https://natlabrockies.github.io/REopt.jl/stable) -->
8+
[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://natlabrockies.github.io/REopt.jl/dev)
99

1010

1111
## Quick Start
@@ -20,4 +20,4 @@ results = run_reopt(m, "pv_storage.json")
2020
```
2121
See the `test/scenarios` directory for examples of `scenario.json`.
2222

23-
For more details, including installation instructions, see the [documentation](https://nrel.github.io/REopt.jl/dev).
23+
For more details, including installation instructions, see the [documentation](https://natlabrockies.github.io/REopt.jl/dev).

data/sector_dependent_defaults.json

Lines changed: 187 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,69 @@
22
"federal": {
33
"fedowned_dirpurch": {
44
"Financial": {
5-
"om_cost_escalation_rate_fraction": 0.012,
6-
"elec_cost_escalation_rate_fraction": {"West": -0.00088, "Midwest": 0.00397, "South": 0.00468, "Northeast": 0.01077, "National": 0.00415},
7-
"existing_boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
8-
"boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
9-
"chp_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
10-
"generator_fuel_cost_escalation_rate_fraction": {"West": -0.00813, "Midwest": -0.011, "South": -0.00807, "Northeast": -0.0094, "National": -0.00918},
5+
"om_cost_escalation_rate_fraction": 0.015,
6+
"elec_cost_escalation_rate_fraction": {
7+
"Pacific": -0.0062,
8+
"Mountain": 0.0068,
9+
"West North Central": 0.0115,
10+
"East North Central": 0.0064,
11+
"West South Central": 0.0136,
12+
"East South Central": 0.0083,
13+
"South Atlantic": 0.0129,
14+
"Middle Atlantic": 0.0101,
15+
"New England": -0.0003,
16+
"National": 0.0074
17+
},
18+
"existing_boiler_fuel_cost_escalation_rate_fraction": {
19+
"Pacific": 0.0079,
20+
"Mountain": 0.0325,
21+
"West North Central": 0.0363,
22+
"East North Central": 0.0338,
23+
"West South Central": 0.023,
24+
"East South Central": 0.0345,
25+
"South Atlantic": 0.0302,
26+
"Middle Atlantic": 0.0055,
27+
"New England": 0.026,
28+
"National": 0.024
29+
},
30+
"boiler_fuel_cost_escalation_rate_fraction": {
31+
"Pacific": 0.0079,
32+
"Mountain": 0.0325,
33+
"West North Central": 0.0363,
34+
"East North Central": 0.0338,
35+
"West South Central": 0.023,
36+
"East South Central": 0.0345,
37+
"South Atlantic": 0.0302,
38+
"Middle Atlantic": 0.0055,
39+
"New England": 0.026,
40+
"National": 0.024
41+
},
42+
"chp_fuel_cost_escalation_rate_fraction": {
43+
"Pacific": 0.0079,
44+
"Mountain": 0.0325,
45+
"West North Central": 0.0363,
46+
"East North Central": 0.0338,
47+
"West South Central": 0.023,
48+
"East South Central": 0.0345,
49+
"South Atlantic": 0.0302,
50+
"Middle Atlantic": 0.0055,
51+
"New England": 0.026,
52+
"National": 0.024
53+
},
54+
"generator_fuel_cost_escalation_rate_fraction": {
55+
"Pacific": 0.01,
56+
"Mountain": 0.0108,
57+
"West North Central": 0.0092,
58+
"East North Central": 0.0093,
59+
"West South Central": 0.0109,
60+
"East South Central": 0.0109,
61+
"South Atlantic": 0.0111,
62+
"Middle Atlantic": 0.0103,
63+
"New England": 0.0106,
64+
"National": 0.0101
65+
},
1166
"offtaker_tax_rate_fraction": 0.0,
12-
"offtaker_discount_rate_fraction": 0.042,
67+
"offtaker_discount_rate_fraction": 0.045,
1368
"third_party_ownership": false
1469
},
1570
"CHP": {
@@ -44,14 +99,70 @@
4499
},
45100
"fedowned_thirdparty": {
46101
"Financial": {
47-
"om_cost_escalation_rate_fraction": 0.012,
48-
"elec_cost_escalation_rate_fraction": {"West": -0.00088, "Midwest": 0.00397, "South": 0.00468, "Northeast": 0.01077, "National": 0.00415},
49-
"existing_boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
50-
"boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
51-
"chp_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
52-
"generator_fuel_cost_escalation_rate_fraction": {"West": -0.00813, "Midwest": -0.011, "South": -0.00807, "Northeast": -0.0094, "National": -0.00918},
102+
"om_cost_escalation_rate_fraction": 0.015,
103+
"elec_cost_escalation_rate_fraction": {
104+
"Pacific": -0.0062,
105+
"Mountain": 0.0068,
106+
"West North Central": 0.0115,
107+
"East North Central": 0.0064,
108+
"West South Central": 0.0136,
109+
"East South Central": 0.0083,
110+
"South Atlantic": 0.0129,
111+
"Middle Atlantic": 0.0101,
112+
"New England": -0.0003,
113+
"National": 0.0074
114+
},
115+
116+
"existing_boiler_fuel_cost_escalation_rate_fraction": {
117+
"Pacific": 0.0079,
118+
"Mountain": 0.0325,
119+
"West North Central": 0.0363,
120+
"East North Central": 0.0338,
121+
"West South Central": 0.023,
122+
"East South Central": 0.0345,
123+
"South Atlantic": 0.0302,
124+
"Middle Atlantic": 0.0055,
125+
"New England": 0.026,
126+
"National": 0.024
127+
},
128+
"boiler_fuel_cost_escalation_rate_fraction": {
129+
"Pacific": 0.0079,
130+
"Mountain": 0.0325,
131+
"West North Central": 0.0363,
132+
"East North Central": 0.0338,
133+
"West South Central": 0.023,
134+
"East South Central": 0.0345,
135+
"South Atlantic": 0.0302,
136+
"Middle Atlantic": 0.0055,
137+
"New England": 0.026,
138+
"National": 0.024
139+
},
140+
"chp_fuel_cost_escalation_rate_fraction": {
141+
"Pacific": 0.0079,
142+
"Mountain": 0.0325,
143+
"West North Central": 0.0363,
144+
"East North Central": 0.0338,
145+
"West South Central": 0.023,
146+
"East South Central": 0.0345,
147+
"South Atlantic": 0.0302,
148+
"Middle Atlantic": 0.0055,
149+
"New England": 0.026,
150+
"National": 0.024
151+
},
152+
"generator_fuel_cost_escalation_rate_fraction": {
153+
"Pacific": 0.01,
154+
"Mountain": 0.0108,
155+
"West North Central": 0.0092,
156+
"East North Central": 0.0093,
157+
"West South Central": 0.0109,
158+
"East South Central": 0.0109,
159+
"South Atlantic": 0.0111,
160+
"Middle Atlantic": 0.0103,
161+
"New England": 0.0106,
162+
"National": 0.0101
163+
},
53164
"offtaker_tax_rate_fraction": 0.0,
54-
"offtaker_discount_rate_fraction": 0.042,
165+
"offtaker_discount_rate_fraction": 0.045,
55166
"third_party_ownership": true,
56167
"owner_tax_rate_fraction": 0.26,
57168
"owner_discount_rate_fraction": 0.0624
@@ -88,14 +199,69 @@
88199
},
89200
"privateowned_thirdparty": {
90201
"Financial": {
91-
"om_cost_escalation_rate_fraction": 0.012,
92-
"elec_cost_escalation_rate_fraction": {"West": -0.00088, "Midwest": 0.00397, "South": 0.00468, "Northeast": 0.01077, "National": 0.00415},
93-
"existing_boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
94-
"boiler_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
95-
"chp_fuel_cost_escalation_rate_fraction": {"West": 0.01022, "Midwest": 0.00387, "South": 0.0112, "Northeast": -0.00184, "National": 0.00581},
96-
"generator_fuel_cost_escalation_rate_fraction": {"West": -0.00813, "Midwest": -0.011, "South": -0.00807, "Northeast": -0.0094, "National": -0.00918},
202+
"om_cost_escalation_rate_fraction": 0.015,
203+
"elec_cost_escalation_rate_fraction": {
204+
"Pacific": -0.0062,
205+
"Mountain": 0.0068,
206+
"West North Central": 0.0115,
207+
"East North Central": 0.0064,
208+
"West South Central": 0.0136,
209+
"East South Central": 0.0083,
210+
"South Atlantic": 0.0129,
211+
"Middle Atlantic": 0.0101,
212+
"New England": -0.0003,
213+
"National": 0.0074
214+
},
215+
"existing_boiler_fuel_cost_escalation_rate_fraction": {
216+
"Pacific": 0.0079,
217+
"Mountain": 0.0325,
218+
"West North Central": 0.0363,
219+
"East North Central": 0.0338,
220+
"West South Central": 0.023,
221+
"East South Central": 0.0345,
222+
"South Atlantic": 0.0302,
223+
"Middle Atlantic": 0.0055,
224+
"New England": 0.026,
225+
"National": 0.024
226+
},
227+
"boiler_fuel_cost_escalation_rate_fraction": {
228+
"Pacific": 0.0079,
229+
"Mountain": 0.0325,
230+
"West North Central": 0.0363,
231+
"East North Central": 0.0338,
232+
"West South Central": 0.023,
233+
"East South Central": 0.0345,
234+
"South Atlantic": 0.0302,
235+
"Middle Atlantic": 0.0055,
236+
"New England": 0.026,
237+
"National": 0.024
238+
},
239+
"chp_fuel_cost_escalation_rate_fraction": {
240+
"Pacific": 0.0079,
241+
"Mountain": 0.0325,
242+
"West North Central": 0.0363,
243+
"East North Central": 0.0338,
244+
"West South Central": 0.023,
245+
"East South Central": 0.0345,
246+
"South Atlantic": 0.0302,
247+
"Middle Atlantic": 0.0055,
248+
"New England": 0.026,
249+
"National": 0.024
250+
},
251+
"generator_fuel_cost_escalation_rate_fraction": {
252+
"Pacific": 0.01,
253+
"Mountain": 0.0108,
254+
"West North Central": 0.0092,
255+
"East North Central": 0.0093,
256+
"West South Central": 0.0109,
257+
"East South Central": 0.0109,
258+
"South Atlantic": 0.0111,
259+
"Middle Atlantic": 0.0103,
260+
"New England": 0.0106,
261+
"National": 0.0101
262+
},
97263
"offtaker_tax_rate_fraction": 0.0,
98-
"offtaker_discount_rate_fraction": 0.042,
264+
"offtaker_discount_rate_fraction": 0.045,
99265
"third_party_ownership": true,
100266
"owner_tax_rate_fraction": 0.26,
101267
"owner_discount_rate_fraction": 0.0624

docs/make.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,5 @@ makedocs(
2828
)
2929

3030
deploydocs(
31-
repo = "github.com/NREL/REopt.jl.git",
31+
repo = "github.com/NatLabRockies/REopt.jl.git",
3232
)

docs/src/index.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
# REopt.jl
2-
REopt.jl is the core module of the [REopt® techno-economic decision support platform](https://www.nrel.gov/reopt/), developed by the National Renewable Energy Laboratory (NREL). REopt optimizes the sizing and dispatch of integrated energy systems for buildings, campuses, communities, microgrids, and more. REopt identifies the cost-optimal mix of generation, storage, and heating and cooling technologies to meet cost savings, resilience, emissions reductions, and energy performance goals. The open-source REopt.jl code is available on GitHub: https://github.com/NREL/REopt.jl.
2+
REopt.jl is the core module of the [REopt® techno-economic decision support platform](https://www.nlr.gov/reopt/), developed by the National Laboratory of the Rockies (NLR). REopt optimizes the sizing and dispatch of integrated energy systems for buildings, campuses, communities, microgrids, and more. REopt identifies the cost-optimal mix of generation, storage, and heating and cooling technologies to meet cost savings, resilience, emissions reductions, and energy performance goals. The open-source REopt.jl code is available on GitHub: https://github.com/NatLabRockies/REopt.jl.
33

44
!!! note
5-
This REopt.jl package is used as the core model of the [REopt API](https://github.com/NREL/REopt_API) and the [REopt Web Tool](https://reopt.nrel.gov/tool). This package contains additional functionality and flexibility to run locally and customize.
5+
This REopt.jl package is used as the core model of the [REopt API](https://github.com/NatLabRockies/REopt_API) and the [REopt Web Tool](https://reopt.nlr.gov/tool). This package contains additional functionality and flexibility to run locally and customize.
66

77
## Installing
88
REopt evaluations for all system types except GHP (see below) can be performed using the following installation instructions from the package manager mode (`]`) of the Julia REPL:
99
```sh
1010
(active_env) pkg> add REopt JuMP HiGHS
1111
```
1212

13-
### Add NREL developer API key for PV, CST, and Wind
14-
If you don't have an NREL developer network API key, [sign up here on https://developer.nrel.gov to get one (free)](https://developer.nrel.gov/signup); this is required to load PV and Wind resource profiles from PVWatts and the Wind Toolkit APIs from within REopt.jl.
13+
### Add NLR developer API key for PV, CST, and Wind
14+
If you don't have an NLR developer network API key, [sign up here on https://developer.nrel.gov to get one (free)](https://developer.nrel.gov/signup); this is required to load PV and Wind resource profiles from PVWatts and the Wind Toolkit APIs from within REopt.jl.
1515
Assign your API key to the expected environment variable:
1616
```julia
1717
ENV["NREL_DEVELOPER_API_KEY"]="your API key"
@@ -22,14 +22,16 @@ ENV["NREL_DEVELOPER_EMAIL"]="your contact email"
2222
```
2323

2424
### Additional package loading for GHP
25-
GHP evaluations must load in the [`GhpGhx.jl`](https://github.com/NREL/GhpGhx.jl) package separately because it has a more [restrictive license](https://github.com/NREL/GhpGhx.jl/blob/main/LICENSE.md) and is not a registered Julia package.
25+
GHP evaluations must load in the [`GhpGhx.jl`](https://github.com/NatLabRockies/GhpGhx.jl) package separately because it has a more [restrictive license](https://github.com/NatLabRockies/GhpGhx.jl/blob/main/LICENSE.md) and is not a registered Julia package.
2626

27-
First add the GhpGhx.jl package to the project's dependencies from the package manager (`]`):
27+
Install gcc via homebrew (if running on a Mac).
28+
29+
Add the GhpGhx.jl package to the project's dependencies from the package manager (`]`):
2830
```sh
29-
(active_env) pkg> add "https://github.com/NREL/GhpGhx.jl"
31+
(active_env) pkg> add "https://github.com/NatLabRockies/GhpGhx.jl"
3032
```
3133

32-
Then load in the package from the script where `run_reopt()` is called:
34+
Load in the package from the script where `run_reopt()` is called:
3335
```julia
3436
using GhpGhx
35-
```
37+
```

docs/src/mpc/examples.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ using REopt, JuMP, Cbc
66
model = Model(Cbc.Optimizer)
77
results = run_mpc(model, "./test/scenarios/mpc.json")
88
```
9-
See [mpc.json](https://github.com/NREL/REopt/blob/master/test/scenarios/mpc.json) for details on the Scenario.
9+
See [mpc.json](https://github.com/NatLabRockies/REopt/blob/master/test/scenarios/mpc.json) for details on the Scenario.

0 commit comments

Comments
 (0)