Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3097 commits
Select commit Hold shift + click to select a range
ced7804
delete old commented out code
hdunham Sep 19, 2023
499ed4e
set wind_kw_ac_time_series in backup_reliability_reopt_inputs
hdunham Sep 19, 2023
a186bee
correct _without_storage to _without_battery
hdunham Sep 19, 2023
0ff719f
fix missed var name change
hdunham Sep 19, 2023
bb403a9
change PV to wind in backup_reliability_reopt_inputs.json
hdunham Sep 19, 2023
5ee1bea
presave reopt result in erp test
hdunham Sep 19, 2023
b66a2c9
Update runtests.jl
hdunham Sep 19, 2023
320afe9
uncomment tests
hdunham Sep 19, 2023
e640eea
Update CHANGELOG.md
hdunham Sep 19, 2023
80c5acd
update backup_reliability docstrings with wind and corrections
hdunham Sep 19, 2023
bde9aef
condense some ERP tests PV and wind
hdunham Sep 19, 2023
578232c
condense syntax
hdunham Sep 19, 2023
b3c91f4
Debug fuel cell hydrogen consumption output
lixiangk1 Sep 19, 2023
c725f0f
Debug fuel cell hydrogen consumption output
lixiangk1 Sep 19, 2023
18cef5e
Zero out more variables when techs aren't included
lixiangk1 Sep 19, 2023
c1374b1
Zero out more variables when techs aren't included
lixiangk1 Sep 19, 2023
6e1143c
Add Wind to stochastic outage results
Bill-Becker Sep 19, 2023
b8c9d6c
Update LICENSE per Angela Hupp email 2023.07.21
Bill-Becker Sep 20, 2023
d368be0
Update README with REopt registered trademark
Bill-Becker Sep 20, 2023
7efe4df
Update REopt Copyright language for each file
Bill-Becker Sep 20, 2023
115e2ce
add wind_production_factor_series to dictkeys_tosymbols
hdunham Sep 20, 2023
5d65351
fix Wind series outputs being JuMP.Containers.DenseAxisArray instead …
hdunham Sep 20, 2023
7151ae9
uncomment tests
hdunham Sep 20, 2023
1d17ce0
correct batt efficiencies input names in docstrings
hdunham Sep 20, 2023
ba62b6c
Merge pull request #265 from NREL/license-update
Bill-Becker Sep 20, 2023
078b49d
Merge branch 'develop' into outages-results
Bill-Becker Sep 20, 2023
05255c8
update output name: fuel_survival_final_time_step
hdunham Sep 20, 2023
c77e268
Merge branch 'hydrogen' into h2-erp
indu-manogaran Sep 20, 2023
96f7a01
Merge branch 'hydrogen' into h2-erp
indu-manogaran Sep 20, 2023
bf8d9ed
Merge branch 'develop' into hydrogen
indu-manogaran Sep 20, 2023
8f746a6
Merge branch 'develop' into hydrogen
indu-manogaran Sep 20, 2023
fbc6710
Merge branch 'hydrogen' into h2-erp
indu-manogaran Sep 20, 2023
e3f762d
Merge branch 'hydrogen' into h2-erp
indu-manogaran Sep 20, 2023
c83a917
Add critical load and storage SOC series to outage results
Bill-Becker Sep 20, 2023
fa7de06
Make load balance for stochastic outages == instead of supply >= load
Bill-Becker Sep 20, 2023
ef29095
Add tests for outage load balance mod and results additions
Bill-Becker Sep 20, 2023
9b5111c
Fix name issue in new test
Bill-Becker Sep 20, 2023
af925d7
Merge pull request #263 from NREL/wind-erp
hdunham Sep 21, 2023
3e89032
Merge branch 'master' into develop
hdunham Sep 21, 2023
0551823
Update Project.toml
hdunham Sep 21, 2023
a098439
Update CHANGELOG.md
hdunham Sep 21, 2023
9c1baee
Merge branch 'develop' into erp-fixes
hdunham Sep 21, 2023
5f27048
update H2 default efficiencies in ERP
hdunham Sep 21, 2023
2cdeee6
update H2 default efficiencies in ERP
hdunham Sep 21, 2023
e142320
correct default in Electrolyzer docstring
hdunham Sep 21, 2023
e67fab9
correct default in Electrolyzer docstring
hdunham Sep 21, 2023
85a42fd
update H2_operational_availability default
hdunham Sep 21, 2023
e2c0fc4
update H2_operational_availability default
hdunham Sep 21, 2023
de05ef0
add electric_storage_microgrid_upgraded to Outages outputs
hdunham Sep 21, 2023
efd0a7e
replace use of non-existent storage_upgraded with electric_storage_mi…
hdunham Sep 21, 2023
47b2632
replace use of non-existent <tech>_upgraded in ERP
hdunham Sep 21, 2023
8333b2d
use production_factor_series instead of summing dispatch series
hdunham Sep 21, 2023
97a3ed9
correct calc of diesel gen size in backup_reliability_reopt_inputs
hdunham Sep 21, 2023
37898b4
use ternary operator instead of if else to avoid scope issues
hdunham Sep 21, 2023
2135a20
calc prime gen size in backup_reliability_reopt_inputs
hdunham Sep 21, 2023
bbd20a3
temp hack to handle multiple PV in results results in ERP
hdunham Sep 21, 2023
f63b922
temp hack to handle multiple PV in results results in ERP
hdunham Sep 21, 2023
1cc38b5
convert some reopt outputs from denseaxisarray to vector
hdunham Sep 22, 2023
b0a8a89
get erp generator inputs from reopt results/inputs backup_reliability…
hdunham Sep 22, 2023
54b34aa
don't production_factor_series instead of summing dispatch series
hdunham Sep 22, 2023
2ea6472
Update CHANGELOG.md
hdunham Sep 22, 2023
c6b049b
Fix Wind outage docstring naming
Bill-Becker Sep 22, 2023
d24c2e2
Remove _n for outages, not multi-node compatible
Bill-Becker Sep 22, 2023
9275b0d
Use p.storage.types.elec instead of ElectricStorage for indexing Stor…
Bill-Becker Sep 22, 2023
6e3e85a
Make "no-storage" case have empty arrays for storage outage outputs
Bill-Becker Sep 22, 2023
abdf8b6
Change outage critical load series to same shape as other outage time…
Bill-Becker Sep 22, 2023
5dbfb71
Update indexing in wind outage load test
Bill-Becker Sep 23, 2023
23b2967
Merge branch 'develop' into outages-results
Bill-Becker Sep 23, 2023
c4e5535
Merge pull request #269 from NREL/erp-fixes
hdunham Sep 23, 2023
a037851
Merge branch 'develop' into outages-results
hdunham Sep 23, 2023
9b9966e
Merge pull request #266 from NREL/outages-results
Bill-Becker Sep 23, 2023
fde4362
Update CHANGELOG.md
Bill-Becker Sep 23, 2023
36f1005
Merge branch 'develop' into h2-erp
hdunham Sep 27, 2023
a0f7682
Merge branch 'develop' into h2-erp
hdunham Sep 27, 2023
3453d8f
delete dupe tests
hdunham Sep 27, 2023
a343c40
delete dupe tests
hdunham Sep 27, 2023
1dba5f2
fix system_characteristics prob calcs
hdunham Sep 27, 2023
62166e9
fix system_characteristics prob calcs
hdunham Sep 27, 2023
2a2b8a7
fix merge mistakes
hdunham Sep 28, 2023
825c77c
fix merge mistakes
hdunham Sep 28, 2023
d6ec4ec
Debug load balance
indu-manogaran Sep 28, 2023
1e04f6b
Debug load balance
indu-manogaran Sep 28, 2023
71efc91
Add OM costs and update defaults
indu-manogaran Sep 28, 2023
6eb1a70
Add OM costs and update defaults
indu-manogaran Sep 28, 2023
a27df05
Merge branch 'h2-erp' of https://github.com/NREL/REopt.jl into h2-erp
indu-manogaran Sep 28, 2023
d30bf83
Merge branch 'h2-erp' of https://github.com/NREL/REopt.jl into h2-erp
indu-manogaran Sep 28, 2023
eb2c559
Merge branch 'h2-erp' of https://github.com/NREL/REopt.jl into h2-erp
hdunham Sep 28, 2023
bbe572d
Merge branch 'h2-erp' of https://github.com/NREL/REopt.jl into h2-erp
hdunham Sep 28, 2023
8f5e77c
Merge branch 'wind-erp' into h2-new
hdunham Sep 28, 2023
7d05b89
merge dupe tests
hdunham Sep 28, 2023
ddc0e38
fix system_characteristics dict
hdunham Sep 28, 2023
68e7a80
correct var names
hdunham Sep 28, 2023
934016e
rerun and presave reopt in erp tests
hdunham Sep 28, 2023
c3dacc5
re-presave outagesim results in erp tests
hdunham Sep 28, 2023
ede4551
update presaved results for erp tests
hdunham Sep 28, 2023
518ca96
use presaved results in erp tests
hdunham Sep 28, 2023
088a6dd
simplify system_characteristics prob calcs
hdunham Sep 28, 2023
9b47dc1
test system_characteristics simplification
hdunham Sep 28, 2023
645ae5c
fix system_characteristics_probability
hdunham Sep 28, 2023
ba82bb0
Revert "test system_characteristics simplification"
hdunham Sep 28, 2023
daf6347
Merge branch 'develop' into h2-new
hdunham Sep 29, 2023
e9e6c25
Debug load balance
indu-manogaran Sep 28, 2023
c293b50
Add OM costs and update defaults
indu-manogaran Sep 28, 2023
0da4d62
merge fix of temp hack to handle multiple PVs in ERP
hdunham Sep 29, 2023
462e75c
Merge branch 'master' into develop
Bill-Becker Oct 10, 2023
47c1da5
Merge branch 'develop' of https://github.com/NREL/REopt.jl into develop
Bill-Becker Oct 10, 2023
b7ae547
add storage leakage function to erp
hdunham Oct 13, 2023
de5caa2
test storage leakage function
hdunham Oct 13, 2023
b1658ca
move storage leakage to after all dispatch in ts
hdunham Oct 13, 2023
2b715b1
pass through args for storage leakage rates
hdunham Oct 13, 2023
f583eb9
test erp run with leakage
hdunham Oct 13, 2023
424d8d4
fix leage arg mistakes and missed docs
hdunham Oct 13, 2023
d09f463
Update runtests.jl
hdunham Oct 13, 2023
2c4fb66
uncomment tests
hdunham Oct 13, 2023
ff01dcd
trigger tests
hdunham Oct 15, 2023
6d4e09a
Update runtests.jl
hdunham Oct 15, 2023
31473a3
rm unit test of storage_leakage now that in integration tests
hdunham Oct 15, 2023
0c17bf2
update erp leakage defaults
hdunham Oct 20, 2023
7411803
add missing tech tech sets to Techs(s::MPCScenario)
hdunham Oct 20, 2023
1d55abf
restrict HiGHS version due to bug in 1.7
hdunham Oct 20, 2023
ef1b2a5
Revert "restrict HiGHS version due to bug in 1.7"
hdunham Oct 23, 2023
7ffa743
Merge branch 'develop' into h2-new
hdunham Oct 23, 2023
8115d6d
trigger tests
hdunham Oct 24, 2023
246bb8f
Merge branch 'develop' into h2-new
lixiangk1 Nov 1, 2023
add952d
Add h2 leakage and battery self discharge
lixiangk1 Nov 1, 2023
b2903bf
Update hydrogen storage tank min soc
lixiangk1 Nov 1, 2023
c62c58f
Update LP storage results variable name
lixiangk1 Nov 1, 2023
52c9a9b
Merge branch 'develop' into h2-new
indu-manogaran Nov 29, 2023
c3faecc
Merge branch 'develop' into h2-tldrd-mpc
lixiangk1 Feb 29, 2024
6e0c7c6
Merge branch 'add-process-heat-load' into h2-tldrd-mpc
lixiangk1 Mar 6, 2024
4861d45
Hydrogen storage model
indu-manogaran Mar 21, 2024
64af7ba
Initial implementation of electric heater and process heating load in…
lixiangk1 Mar 22, 2024
16de677
Hydrogen storage MPC model
indu-manogaran Mar 26, 2024
7e2c07e
Distinguish between all techs and elec techs in mpc runs
lixiangk1 Mar 26, 2024
7555100
Add MPC fuel cell to elec techs
indu-manogaran Mar 27, 2024
b5f18ad
Add initial solid-state TES implementation
lixiangk1 Mar 27, 2024
900af9f
MPC results keys renaming
indu-manogaran Mar 27, 2024
a989188
Add separate charge vs discharge limits on HighTempThermalStorage in mpc
lixiangk1 Mar 28, 2024
38a33ae
Merge branch 'develop' into h2-tldrd-mpc
lixiangk1 Mar 28, 2024
53cd29e
Add Wind to MPC
lixiangk1 Apr 30, 2024
d26ba78
Merge branch 'h2-erp' of https://github.com/NREL/REopt.jl into h2-erp
indu-manogaran Apr 30, 2024
eca4526
Merge branch 'develop' into h2-erp
indu-manogaran May 6, 2024
e08044c
Syntax error correction
indu-manogaran May 9, 2024
97b8eb8
Add hydrogen to multiple outages
lixiangk1 May 23, 2024
1fe4d5e
Initial off-grid implementation for mpc (no h2)
lixiangk1 Jun 12, 2024
15b2c50
Hydrogen model updates
indu-manogaran Jun 22, 2024
b78be8a
Merge branch 'develop' into h2-erp
indu-manogaran Jun 22, 2024
1b01a63
Add heuristics BESS dispatch, correct mpc battery efficiency defaults
lixiangk1 Jul 7, 2024
0757902
Merge branch 'develop' into h2-erp
hdunham Jul 15, 2024
7366b59
remove xpress docker files
hdunham Jul 15, 2024
54c8eb1
small code simplification
hdunham Jul 15, 2024
c67aae1
Hydrogen model updates multiple updates
indu-manogaran Jul 18, 2024
0877cdc
Merge branch 'develop' into h2-tldrd-mpc
hdunham Jul 22, 2024
a6f7f9e
syntax consistency
hdunham Jul 24, 2024
4b68fdb
confirm techs not nothing before accessing fields
hdunham Jul 24, 2024
689c861
correct Tech struct docstring
hdunham Jul 24, 2024
0fd049b
eliminate unnecessary steps
hdunham Jul 24, 2024
31b027a
conciseness
hdunham Jul 26, 2024
408275b
add override warning
hdunham Jul 26, 2024
be75a33
if else clarity
hdunham Jul 30, 2024
a457e34
uodate add_electric_load_results docstring
hdunham Jul 30, 2024
f0d9491
add critical_load_series_kw to MPC outputs
hdunham Jul 30, 2024
6c2a13a
MPC: add emissions accounting and CO2 cost to objective function
lixiangk1 Jul 30, 2024
31a0ee2
Merge branch 'h2-tldrd-mpc' of https://github.com/NREL/REopt.jl into …
lixiangk1 Jul 30, 2024
bdbc423
rm dupe if condition
hdunham Jul 31, 2024
bec41fe
add clarity to emissions warning msg
hdunham Jul 31, 2024
228b2ed
tie grid_charge_efficiency default to charge_efficiency
hdunham Jul 31, 2024
c4c5f0d
add docstrings
hdunham Jul 31, 2024
82eccb8
add to add_hot_storage_results docstring
hdunham Aug 1, 2024
e63a83d
Hydrogen model debug
indu-manogaran Aug 5, 2024
d1eaaad
Merge branch 'h2-erp' into h2-tldrd-mpc
indu-manogaran Aug 5, 2024
6174dfd
Bug fix
indu-manogaran Aug 6, 2024
14fd1f0
Allow init soc to be read for MPCElectricStorage
lixiangk1 Aug 8, 2024
65dcdd6
Add time series intermediary emissions variables for MPC
lixiangk1 Aug 8, 2024
48424e1
Hydrogen model update
indu-manogaran Aug 8, 2024
cec4cca
Merge branch 'h2-erp' into h2-tldrd-mpc
indu-manogaran Aug 8, 2024
3e4f8b1
Change sum operator to expression emissions
indu-manogaran Aug 11, 2024
cde2917
Change sum operator to expression emissions
indu-manogaran Aug 12, 2024
13ede1e
RE accounting hydrogen
indu-manogaran Aug 13, 2024
04ed96e
Merge branch 'develop' into h2-tldrd-mpc
lixiangk1 Aug 14, 2024
c86a7c5
Hydrogen model debug
indu-manogaran Aug 20, 2024
cfc164a
Merge branch 'develop' into h2-erp
hdunham Sep 6, 2024
cafea0f
merge changes to testset Backup Generator Reliability
hdunham Sep 6, 2024
6468462
rm dupe test using for ref in merge
hdunham Sep 6, 2024
fa42f96
Debug tests - update RE calculations and multinode variable declaration
lixiangk1 Sep 9, 2024
be4b8a0
Update check for h2 techs in RE calc
lixiangk1 Sep 10, 2024
2bb93ec
Debug multinode and mpc tests
lixiangk1 Sep 10, 2024
e7b0e7c
Debug emissions and simultaneous import export tests
lixiangk1 Sep 10, 2024
b299673
Revert "Debug emissions and simultaneous import export tests"
lixiangk1 Sep 10, 2024
8ea65ea
add Logging to test Project
hdunham Sep 11, 2024
036d516
Hydrogen bug fixes
lixiangk1 Sep 11, 2024
21b5ed2
Update storage constraints to enable require_start_and_end_charge_to_…
lixiangk1 Feb 21, 2025
31d1646
Merge remote-tracking branch 'origin/h2-tldrd-mpc' into merge-h2-bran…
zolanaj May 13, 2025
f230faf
Merge branch 'develop' into merge-h2-branches
zolanaj May 14, 2025
73bcfe4
fix syntax from merge conflicts
zolanaj May 15, 2025
90d87b5
reintroduce backup reliability with H2 tests
zolanaj May 15, 2025
5bc54bb
reconcile storage sum, storage sum grid constraints
zolanaj May 16, 2025
38865db
add storage to indices of dvMGProductionToStorage
zolanaj May 16, 2025
d51b18e
rm duplicate MPC test
zolanaj May 16, 2025
837aa54
rm dvMGProductionToStorage from outage results when no electric stora…
zolanaj May 16, 2025
c11df64
MPC hydrogen model updates
indu-manogaran May 22, 2025
5107101
MPC hydrogen model updates
indu-manogaran May 22, 2025
fe196a8
Merge remote-tracking branch 'origin/h2-tldrd-mpc' into merge-h2-bran…
zolanaj May 28, 2025
57c2b4a
temporarily suppress outage constraints
zolanaj May 28, 2025
e7f5610
Merge branch 'develop' into merge-h2-branches
zolanaj May 28, 2025
0e9597e
fix syntax in MPC from merge conflict resolution
zolanaj May 29, 2025
fdbb45f
make default critical_load_fraction zero for hydrogen
zolanaj May 30, 2025
edfe260
return vectors of zeros for yr1 emissions if !(p.s.site.include_expor…
zolanaj May 30, 2025
a17bc63
uncomment previous tests
zolanaj May 30, 2025
3fe0461
Add HighTempThermalStorage
lixiangk1 Jun 8, 2025
b53ce62
Merge remote-tracking branch 'origin/h2-tldrd-mpc' into merge-h2-bran…
zolanaj Jun 9, 2025
96ed90d
HighTempThermalStorage - add optional constraints for constraining di…
lixiangk1 Jun 14, 2025
6068d6a
only add storage sum grid constraints when storage is present
zolanaj Jun 17, 2025
9a30170
check for high temp storage before building specific high-temp constr…
zolanaj Jun 17, 2025
671bbc3
add ElectricUtility to MPC docs
hdunham Jun 26, 2025
705784d
rename input tou_demand_time_steps for consistency
hdunham Jun 26, 2025
7123778
Update CHANGELOG.md
zolanaj Jul 11, 2025
42c6c4e
pass thru some missing MPC ElectricUtility inputs
hdunham Jul 17, 2025
735d245
(part 2) rename input tou_demand_time_steps for consistency
hdunham Jul 24, 2025
0cf5c4b
Update documentation for hydrogen and MPC techs
lixiangk1 Jul 27, 2025
b583386
add todo
hdunham Jul 29, 2025
4ddfb52
add electric_to_electrolyer when calculating pv, wind output in backu…
zolanaj Aug 4, 2025
3c89e5b
transpose markov matrix and correct example probability in docs
zolanaj Aug 5, 2025
0a68271
comments
hdunham Aug 6, 2025
60e3103
error typo
hdunham Aug 6, 2025
a2453de
rename function for specificity
hdunham Aug 6, 2025
bc4f668
carry transposition into matrix operations (probability array is a ro…
zolanaj Aug 6, 2025
cc8270b
docstrings for survival_with_storage_single_start_time
zolanaj Aug 6, 2025
f0e811f
Merge branch 'h2-tldrd-mpc' into merge-h2-branches
zolanaj Aug 6, 2025
1e0f78f
Merge branch 'h2-erp' into merge-h2-branches
zolanaj Aug 6, 2025
3e08948
Merge branch 'h2-tldrd-mpc' of https://github.com/NREL/REopt.jl into …
hdunham Aug 7, 2025
a5dcf25
Update electric, thermal, and h2 storage self-discharge modeling
lixiangk1 Aug 14, 2025
c8f9d33
additional notes on probability matrix update
zolanaj Aug 19, 2025
2d0aa19
addditional notes on survival_with_storage_single_start_time
zolanaj Aug 19, 2025
6841bf0
transpose matrices in gen_only_survival_single_start_time
zolanaj Aug 19, 2025
a3cc4f6
flatten probability array for states and add notes on order
zolanaj Aug 21, 2025
c906df3
fix starting state calculation
zolanaj Aug 26, 2025
689420d
translate probability vector to match 3D array for storage shifts
zolanaj Aug 26, 2025
63840b4
update license reference to single line for new files
zolanaj Aug 26, 2025
fcedba0
suppress print statement
zolanaj Aug 26, 2025
a9b7095
Add hydrogen load results in MPC outputs when compressor is not selected
lixiangk1 Sep 1, 2025
116ef37
Merge branch 'h2-tldrd-mpc' of https://github.com/NREL/REopt.jl into …
hdunham Sep 11, 2025
fbcfcd4
update self discharge docs descriptions
hdunham Sep 11, 2025
ed68a84
readability
hdunham Sep 11, 2025
8c3b8e6
update thermal stor docstrings
hdunham Sep 11, 2025
55a5fb9
align thermal stor field names
hdunham Sep 11, 2025
09d2c47
align outage_constraints w/ new self-discharge model
hdunham Sep 11, 2025
2964281
Update MPC documentation
lixiangk1 Sep 15, 2025
69b8a20
revert all changes in backup_reliability.jl
hdunham Oct 17, 2025
a8b92b1
Add H2 tests
lixiangk1 Jan 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 62 additions & 1 deletion docs/src/mpc/inputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ Here is a more complex `MPCScenario`, which is used in [MPC Examples](@ref):
"monthly_demand_rates": [10.0],
"monthly_previous_peak_demands": [98.0],
"tou_demand_rates": [0.0, 15.0],
"tou_demand_time_steps": [
"tou_demand_ratchet_time_steps": [
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
[16, 17, 18, 19, 20, 21, 22, 23, 24]
],
Expand Down Expand Up @@ -172,14 +172,75 @@ REopt.MPCFinancial
REopt.MPCPV
```

## MPCWind
```@docs
REopt.MPCWind
```

## MPCGenerator
```@docs
REopt.MPCGenerator
```

## MPCElectrolyzer
```@docs
REopt.MPCElectrolyzer
```

## MPCCompressor
```@docs
REopt.MPCCompressor
```

## MPCHydrogenStorage
```@docs
REopt.MPCHydrogenStorage
```

## MPCFuelCell
```@docs
REopt.MPCFuelCell
```

## MPCHydrogenLoad
```@docs
REopt.MPCHydrogenLoad
```

## MPCProcessHeatLoad
```@docs
REopt.MPCProcessHeatLoad
```

## MPCElectricHeater
```@docs
REopt.MPCElectricHeater
```

## MPCHighTempThermalStorage
```@docs
REopt.MPCHighTempThermalStorage
```

## MPCSettings
The MPCSettings is the same as the [Settings](@ref).

## ElectricUtility
MPC uses the standard [ElectricUtility](@ref) struct.
```@docs
REopt.ElectricUtility
```

## Settings
MPC uses the standard [Settings](@ref) struct.
```@docs
REopt.Settings
```

## Site
```@docs
REopt.MPCSite
```

## MPCLimits
```@docs
Expand Down
57 changes: 48 additions & 9 deletions docs/src/mpc/outputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,14 @@
REopt.mpc_results
```

## MPC ElectricStorage outputs
```@docs
REopt.add_electric_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
```

## MPC HotThermalStorage outputs
## MPC ElectricLoad outputs
```@docs
REopt.add_hot_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
REopt.add_electric_load_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
```

## MPC ColdThermalStorage outputs
## MPC ElectricStorage outputs
```@docs
REopt.add_cold_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
REopt.add_electric_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
```

## MPC ElectricTariff outputs
Expand All @@ -33,8 +28,52 @@ REopt.add_electric_utility_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
REopt.add_pv_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC Wind outputs
```@docs
REopt.add_wind_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC Generator outputs
```@docs
REopt.add_generator_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC HydrogenLoad outputs
```@docs
REopt.add_hydrogen_load_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC Electrolyzer outputs
```@docs
REopt.add_electrolyzer_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC Compressor outputs
```@docs
REopt.add_compressor_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC HydrogenStorage outputs
```@docs
REopt.add_hydrogen_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
```

## MPC FuelCell outputs
```@docs
REopt.add_fuel_cell_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC HeatingLoad outputs
```@docs
REopt.add_heating_load_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC ElectricHeater outputs
```@docs
REopt.add_electric_heater_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict)
```

## MPC HighTempThermalStorage outputs
```@docs
REopt.add_high_temp_storage_results(::JuMP.AbstractModel, ::MPCInputs, ::Dict, ::String)
```
30 changes: 30 additions & 0 deletions docs/src/reopt/inputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,11 @@ REopt.Boiler
REopt.HotThermalStorageDefaults
```

## HighTempThermalStorage
```@docs
REopt.HighTempThermalStorageDefaults
```

## ColdThermalStorage
```@docs
REopt.ColdThermalStorageDefaults
Expand Down Expand Up @@ -176,3 +181,28 @@ REopt.ElectricHeater
```@docs
REopt.ASHP
```

## HydrogenLoad
```@docs
REopt.## HydrogenLoad
```

## Electrolyzer
```@docs
REopt.Electrolyzer
```

## Compressor
```@docs
REopt.Compressor
```

## HydrogenStorage
```@docs
REopt.HydrogenStorage
```

## FuelCell
```@docs
REopt.FuelCell
```
30 changes: 30 additions & 0 deletions docs/src/reopt/outputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,11 @@ REopt.add_electric_storage_results(::JuMP.AbstractModel, ::REoptInputs, ::Dict,
REopt.add_hot_storage_results(::JuMP.AbstractModel, ::REoptInputs, ::Dict, ::String)
```

## HighTempThermalStorage outputs
```@docs
REopt.add_high_temp_storage_results(::JuMP.AbstractModel, ::REoptInputs, ::Dict, ::String)
```

## ColdThermalStorage outputs
```@docs
REopt.add_cold_storage_results(::JuMP.AbstractModel, ::REoptInputs, ::Dict, ::String)
Expand Down Expand Up @@ -98,4 +103,29 @@ REopt.add_flexible_hvac_results
## SteamTurbine outputs
```@docs
REopt.add_steam_turbine_results
```

## HydrogenLoad outputs
```@docs
REopt.add_hydrogen_load_results
```

## Electrolyzer outputs
```@docs
REopt.add_electrolyzer_results
```

## Compressor outputs
```@docs
REopt.add_compressor_results
```

## HydrogenStorage outputs
```@docs
REopt.add_hydrogen_storage_results
```

## FuelCell outputs
```@docs
REopt.add_fuel_cell_results
```
15 changes: 15 additions & 0 deletions src/REopt.jl
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ export
run_mpc,
build_mpc!,
backup_reliability,
shift_gen_storage_prob_matrix!,
backup_reliability_reopt_inputs,
get_maximum_generation,
storage_leakage!,
get_chp_defaults_prime_mover_size_class,
get_steam_turbine_defaults_size_class,
simulated_load,
Expand Down Expand Up @@ -121,9 +125,14 @@ include("core/wind.jl")
include("core/energy_storage/storage.jl")
include("core/energy_storage/electric_storage.jl")
include("core/energy_storage/thermal_storage.jl")
include("core/energy_storage/hydrogen_storage.jl")
include("core/electrolyzer.jl")
include("core/compressor.jl")
include("core/fuel_cell.jl")
include("core/generator.jl")
include("core/doe_commercial_reference_building_loads.jl")
include("core/electric_load.jl")
include("core/hydrogen_load.jl")
include("core/existing_boiler.jl")
include("core/boiler.jl")
include("core/existing_chiller.jl")
Expand Down Expand Up @@ -163,6 +172,7 @@ include("constraints/ghp_constraints.jl")
include("constraints/steam_turbine_constraints.jl")
include("constraints/renewable_energy_constraints.jl")
include("constraints/emissions_constraints.jl")
include("constraints/hydrogen_constraints.jl")

include("mpc/structs.jl")
include("mpc/scenario.jl")
Expand Down Expand Up @@ -193,6 +203,11 @@ include("results/flexible_hvac.jl")
include("results/ghp.jl")
include("results/steam_turbine.jl")
include("results/electric_heater.jl")
include("results/hydrogen_load.jl")
include("results/hydrogen_storage.jl")
include("results/electrolyzer.jl")
include("results/compressor.jl")
include("results/fuel_cell.jl")
include("results/ashp.jl")

include("core/reopt.jl")
Expand Down
8 changes: 6 additions & 2 deletions src/constraints/electric_utility_constraints.jl
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,9 @@ function add_simultaneous_export_import_constraint(m, p; _n="")
@constraint(m, NoGridPurchasesBinary[ts in p.time_steps],
m[Symbol("binNoGridPurchases"*_n)][ts] => {
sum(m[Symbol("dvGridPurchase"*_n)][ts, tier] for tier in 1:p.s.electric_tariff.n_energy_tiers) +
sum(m[Symbol("dvGridToStorage"*_n)][b, ts] for b in p.s.storage.types.elec) <= 0
sum(m[Symbol("dvGridToStorage"*_n)][b, ts] for b in p.s.storage.types.elec) +
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems unnecessary for dvGridToStorage, dvGridToElectrolyzer, and dvGridToCompressor to be added here since they already have to be <= dvGridPurchase

m[Symbol("dvGridToElectrolyzer"*_n)][ts] +
m[Symbol("dvGridToCompressor"*_n)][ts] <= 0
}
)
@constraint(m, ExportOnlyAfterSiteLoadMetCon[ts in p.time_steps],
Expand All @@ -282,7 +284,9 @@ function add_simultaneous_export_import_constraint(m, p; _n="")
bigM_hourly_load = maximum(p.s.electric_load.loads_kw)+maximum(p.s.space_heating_load.loads_kw)+maximum(p.s.process_heat_load.loads_kw)+maximum(p.s.dhw_load.loads_kw)+maximum(p.s.cooling_load.loads_kw_thermal)
@constraint(m, NoGridPurchasesBinary[ts in p.time_steps],
sum(m[Symbol("dvGridPurchase"*_n)][ts, tier] for tier in 1:p.s.electric_tariff.n_energy_tiers) +
sum(m[Symbol("dvGridToStorage"*_n)][b, ts] for b in p.s.storage.types.elec) <= bigM_hourly_load*(1-m[Symbol("binNoGridPurchases"*_n)][ts])
sum(m[Symbol("dvGridToStorage"*_n)][b, ts] for b in p.s.storage.types.elec) +
m[Symbol("dvGridToElectrolyzer"*_n)][ts] +
m[Symbol("dvGridToCompressor"*_n)][ts] <= bigM_hourly_load*(1-m[Symbol("binNoGridPurchases"*_n)][ts])
)
@constraint(m, ExportOnlyAfterSiteLoadMetCon[ts in p.time_steps],
sum(m[Symbol("dvProductionToGrid"*_n)][t,u,ts] for t in p.techs.elec, u in p.export_bins_by_tech[t]) <= bigM_hourly_load * m[Symbol("binNoGridPurchases"*_n)][ts]
Expand Down
Loading
Loading