Skip to content

Commit

Permalink
transfer cases from heron_cases repo
Browse files Browse the repository at this point in the history
  • Loading branch information
PaulTalbot-INL committed Apr 21, 2022
1 parent 3adc48c commit 2ec8cef
Show file tree
Hide file tree
Showing 751 changed files with 216,379 additions and 0 deletions.
Empty file added __init__.py
Empty file.
Empty file added src/__init__.py
Empty file.
34 changes: 34 additions & 0 deletions use_cases/2020_12/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@

Cases for M2 HERON Milestone due 2020-12-15.

PI: Paul Talbot
Project Contact: Cristian Rabiti
Contributors: Dylan McDowell, James Richards

Data for the load (in many different breakdowns) as well as marginal price
and capacity evolution every 5 years for 40 electricity technologies was
provided by EPRI for 6 different cases using US-REGEN (for 2 states, but we
focused on IL for this analysis):

Policy: Nominal, CarbonTax, RPS
Pricing: Default, LNHR

Note Default and Nominal are only different names to help distinguish cases.

The data from EPRI is provided in excel spreadsheets under ./data/from_EPRI.
To turn these cases into trainable signals, use ./scripts/raw_data_proc.py
targetting the excel sheet of the case you want to train. This requires the
python library xlrd to be available (it's on conda).

The ARMA training algorithms are in ./train by case. Any cases must have an
ARMA trained before they can be run.

To run the cases, run ./run/write_cases.py, which populated the regulated and
deregulated cases using the dereg_template.xml and reg_template.xml. Then
navigate into any folder (for which there's trained ARMAs) and run HERON on
the generated XML file. Then run RAVEN on the generated outer.xml, tweaking
any cluster run parameters desired first.

The operating branches for this analysis:
RAVEN: arma_eval_pk on PaulTalbot-INL/raven
HERON: milestone_changes on PaulTalbot-INL/HERON
Binary file added use_cases/2020_12/data/IL_combined.ncdf4
Binary file not shown.
Binary file added use_cases/2020_12/data/IL_truncated.ncdf4
Binary file not shown.
132 changes: 132 additions & 0 deletions use_cases/2020_12/data/extract_cap_marg.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
"""
Extracts the 5D capacity and marginal costs of components from the
slightly-modified EPRI XLSX data
"""

import os
from itertools import islice

# conda installs: xlrd, openpyxl
import numpy as np
import pandas as pd
import xarray as xr
import openpyxl as xl

case_set = False # track whether trimming for the state/strat/price has happened yet

states = ['IL']
strategies = ['Nominal', 'RPS', 'CarbonTax']
price_structs = ['Default', 'LNHR']
years = [2025, 2030, 2035, 2040, 2045, 2050]
# get from xlsx directly below; components = ['clcl-x1', 'clcl-x2', 'clcl-x3', 'clcl-x4', 'clng-r1', 'clng-r2', 'clng-r3', 'cbcf-x1', 'cbcf-x2', 'cbcf-x3', 'cbcf-x4', 'ngcc-x1', 'ngcc-x2', 'ngcc-x3', 'ngcc-n', 'ngst-x', 'nggt-x1', 'nggt-x2', 'nggt-x3', 'nggt-n', 'ptsg-x', 'othc-x', 'h2cc-n', 'h2cc-ig', 'bioe-r1', 'becs-n', 'h2cc-igcs', 'ngcs-n', 'nucl-n1', 'nucl-n2', 'hydr-x', 'wind-r', 'wind-n3', 'wind-n4', 'wind-n5', 'wind-n6', 'wnos-n1', 'pvft-n4', 'pvsx-n4', 'pvdx-n4']

cwd = os.path.abspath(os.path.join(__file__, '..'))
filename = os.path.abspath(os.path.join(cwd, 'from_EPRI','Final Illinois Capacity and Costs.xlsx'))
wb = xl.load_workbook(filename=filename, read_only=True)
ws = wb['CapCost']

# Add overflow component that's not in the workbook.
components = [c.value for c in ws['F1':'AX1'][0]] + ['overflow']

indexers = [states, strategies, price_structs, components, years]
# data_heads = ['capacity', 'marg_cost']
shape = tuple([len(x) for x in indexers])
cap_table = np.zeros(shape, dtype=float)
mgc_table = np.zeros(shape, dtype=float)
# 1:state, 2:strategy, 3:price, 4:component, 5:year

# load capacities, in GW
ci = 'B'
cf = 'AX'
for sp in range(6):
ri = sp * 8 + 1
df = pd.read_excel(filename,
sheet_name='CapCost',
header=0,
index_col=[0,1,2,3],
usecols=f'{ci}:{cf}',
skiprows=ri-1,
nrows=6).fillna(0)
# Assign overflow component for times when load exceeds stack.
df = df.assign(overflow = 1000.0)
identifier = df.index[0][:3]
t = states.index(identifier[0])
s = strategies.index(identifier[1])
p = price_structs.index(identifier[2])
cap_table[t, s, p, :, :] = df.values.T

# load marginal prices, initially in $/MW
ci = 'BA'
cf = 'CT'
for t, state in enumerate(states):
for s, strategy in enumerate(strategies):
for p, struct in enumerate(price_structs):
if strategy == 'CarbonTax':
ri = 1
else:
ri = 17
df = pd.read_excel(filename,
sheet_name='CapCost',
header=0,
index_col=[0],
usecols=f'{ci}:{cf}',
skiprows=ri-1,
nrows=6).fillna(0)
# Assign overflow component for times when load exceeds stack.
df = df.assign(overflow = 1000.0)
table_part = mgc_table[t, s, p, :, :]
mgc_table[t, s, p, :, :] = df.values.T * 1000 # $/MW to $/GW

# 1:state, 2:strategy, 3:price, 4:component, 5:year
coords = {'state': states,
'strategy': strategies,
'price_struct': price_structs,
'component': components,
'year': years}
cap_DA = xr.DataArray(cap_table, coords=coords, dims=list(coords.keys()), name='capacity')
mgc_DA = xr.DataArray(mgc_table, coords=coords, dims=list(coords.keys()), name='marginal_cost')

# customize nuclear margins
mgc_DA.loc['IL', :, :, ['nucl-x', 'nucl-n1', 'nucl-n2'], :] *= 1e-10
# customize VRE margins for PTC
VREs = ['wind-r','wind-n3','wind-n4','wind-n5','wind-n6','wnos-n1','pvft-n3','pvft-n4','pvsx-n3','pvsx-n4','pvdx-n3','pvdx-n4']
mgc_DA.loc['IL', :, :, VREs, :] -= 17000

ds = xr.Dataset({'capacity': cap_DA, 'marginal_cost': mgc_DA})
# interpolate years
ds = ds.interp(year=np.arange(min(years), max(years)+1))
ds.to_netcdf(cwd+'/IL_combined.ncdf4')
print(f'Wrote {cwd+"/IL_combined.ncdf4"}')


# collapse for regulated case
techmap = {
'coal': 'clcl-x1|clcl-x2|clcl-x3|clcl-x4|clng-r1|clng-r2|clng-r3|clng-r4|cbcf-x1|cbcf-x2|cbcf-x3|cbcf-x4'.split('|'),
'gas': 'ngcc-x1|ngcc-x2|ngcc-x3|ngcc-n|ngst-x|nggt-x1|nggt-x2|nggt-x3|nggt-n|ngcs-n'.split('|'),
'petrol': ['ptsg-x', 'overflow'],
'other': ['othc-x', 'bioe-r1', 'becs-n'],
'h2gen': ['h2cc-n', 'h2cc-ig', 'h2cc-igcs'],
'nuclear': ['nucl-n1', 'nucl-n2', 'nucl-x'],
'VRE': 'hydr-x|wind-r|wind-n3|wind-n4|wind-n5|wind-n6|wnos-n1|pvft-n4|pvsx-n4|pvdx-n4'.split('|'),
}

# DEBUG
## select the subset
arrays = {}
comp_ax = list(ds.capacity.dims).index('component')
for t, (tech, members) in enumerate(techmap.items()):
subset = ds.sel(component=members)
caps = subset.capacity.sum(dim='component')# .expand_dims(axis=comp_ax, component=[tech])
costs = (subset.capacity / caps * subset.marginal_cost).sum(dim='component').expand_dims(axis=comp_ax, component=[tech])
caps = caps.expand_dims(axis=comp_ax, component=[tech])
new = xr.Dataset({'capacity': caps, 'marginal_cost': costs})
if t == 0:
truncated = new
else:
truncated = truncated.merge(new)

truncated.to_netcdf(cwd+'/IL_truncated.ncdf4')
print(f'Wrote {cwd+"/IL_truncated.ncdf4"}')

print('done')

Binary file added use_cases/2020_12/data/from_EPRI/Carbontax.xlsx
Binary file not shown.
Binary file not shown.
Binary file added use_cases/2020_12/data/from_EPRI/Default.xlsx
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added use_cases/2020_12/data/from_EPRI/INL.zip
Binary file not shown.
Binary file not shown.
Binary file added use_cases/2020_12/data/from_EPRI/rps.xlsx
Binary file not shown.
Binary file added use_cases/2020_12/data/from_EPRI/rps_LNHR.xlsx
Binary file not shown.
7 changes: 7 additions & 0 deletions use_cases/2020_12/data/stack_IL_carbontax.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Year,clcl-x1,clcl-x2,clcl-x3,clcl-x4,clng-r1,clng-r2,clng-r3,clng-r4,cbcf-x1,cbcf-x2,cbcf-x3,cbcf-x4,ngcc-x1,ngcc-x2,ngcc-x3,ngcc-n,ngst-x,nggt-x1,nggt-x2,nggt-x3,nggt-n,ptsg-x,othc-x,h2cc-n,h2cc-ig,bioe-r1,becs-n,h2cc-igcs,ngcs-n,nucl-n1,nucl-n2,hydr-x,wind-r,wind-n3,wind-n4,wind-n5,wind-n6,wnos-n1,pvft-n4,pvsx-n4,pvdx-n4
2025,59.93,62.62,65.94,71.60,61.62,64.35,67.78,73.62,57.00,59.57,62.72,68.10,44.80,45.36,47.78,44.58,99.07,63.54,68.38,75.99,71.86,215.94,2.06,40.45,40.45,1.20,-60.66,40.45,34.48,8.00,8.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2030,69.21,72.29,76.14,82.68,65.87,68.78,72.46,78.70,65.81,68.75,72.40,78.63,47.85,48.46,51.07,47.54,105.90,67.94,73.13,81.27,76.58,236.65,2.06,39.62,39.62,1.20,-75.10,39.62,33.71,9.30,9.30,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2035,88.36,92.26,97.20,105.57,68.79,71.83,75.67,82.19,84.01,87.73,92.41,100.37,49.95,50.60,53.33,49.58,110.58,70.97,76.39,84.90,79.83,250.58,2.06,37.83,37.83,1.20,-92.67,37.83,30.95,10.80,10.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2040,102.26,106.75,112.49,122.18,77.65,81.06,85.42,92.77,97.21,101.49,106.94,116.15,56.30,57.07,60.19,55.74,124.79,80.15,86.27,95.90,89.67,269.43,2.06,36.59,36.59,1.20,-114.05,36.59,31.87,12.50,12.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2045,119.22,124.44,131.14,142.44,88.80,92.69,97.68,106.10,113.32,118.29,124.66,135.40,64.31,65.21,68.83,63.50,142.68,91.71,98.72,109.74,102.06,280.67,2.06,36.73,36.73,1.20,-140.06,36.73,33.29,14.50,14.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2050,139.96,146.07,153.96,167.23,102.88,107.37,113.17,122.92,133.03,138.85,146.33,158.95,74.41,75.49,79.73,73.30,165.27,106.30,114.44,127.23,117.71,305.07,2.06,36.73,36.73,1.20,-171.70,36.73,35.43,16.80,16.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
7 changes: 7 additions & 0 deletions use_cases/2020_12/data/stack_IL_notax.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Year,clcl-x1,clcl-x2,clcl-x3,clcl-x4,clng-r1,clng-r2,clng-r3,clng-r4,cbcf-x1,cbcf-x2,cbcf-x3,cbcf-x4,ngcc-x1,ngcc-x2,ngcc-x3,ngcc-n,ngst-x,nggt-x1,nggt-x2,nggt-x3,nggt-n,ptsg-x,othc-x,h2cc-n,h2cc-ig,bioe-r1,becs-n,h2cc-igcs,ngcs-n,nucl-n1,nucl-n2,hydr-x,wind-r,wind-n3,wind-n4,wind-n5,wind-n6,wnos-n1,pvft-n4,pvsx-n4,pvdx-n4
2025,16.07,16.88,17.70,19.19,34.87,36.46,38.37,41.66,15.33,16.12,16.89,18.31,25.60,25.83,27.07,25.97,56.17,35.82,38.53,42.78,42.14,168.17,2.06,44.52,44.52,1.20,6.00,44.52,32.33,8.00,8.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2030,15.84,16.64,17.44,18.91,33.33,34.85,36.68,39.82,15.11,15.89,16.65,18.04,24.50,24.70,25.88,24.90,53.70,34.22,36.81,40.87,40.43,178.52,2.06,45.27,45.27,1.20,6.00,45.27,31.08,9.30,9.30,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2035,23.43,24.56,25.79,27.98,29.20,30.55,32.14,34.89,22.32,23.41,24.58,26.66,21.54,21.69,22.68,22.03,47.07,29.94,32.20,35.74,35.84,179.86,2.06,45.76,45.76,1.20,6.00,45.76,27.75,10.80,10.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2040,23.26,24.38,25.61,27.78,29.49,30.84,32.45,35.22,22.16,23.24,24.40,26.47,21.74,21.89,22.90,22.22,47.53,30.23,32.51,36.09,36.15,183.39,2.06,46.03,46.03,1.20,6.00,46.03,27.98,12.50,12.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2045,23.10,24.22,25.43,27.59,30.20,31.59,33.24,36.08,22.02,23.08,24.24,26.29,22.25,22.42,23.45,22.72,48.68,30.98,33.31,36.98,36.95,175.99,2.06,47.07,47.07,1.20,6.00,47.07,28.56,14.50,14.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2050,23.03,24.14,25.35,27.50,31.59,33.03,34.76,37.73,21.95,23.01,24.16,26.21,23.25,23.43,24.53,23.69,50.90,32.41,34.86,38.70,38.49,177.72,2.06,47.96,47.96,1.20,6.00,47.96,29.68,16.80,16.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
7 changes: 7 additions & 0 deletions use_cases/2020_12/data/stack_OH_carbontax.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Year,clcl-x1,clcl-x2,clcl-x3,clcl-x4,clng-r1,clng-r2,clng-r3,cbcf-x1,cbcf-x2,cbcf-x3,cbcf-x4,ngcc-x1,ngcc-x2,ngcc-x3,ngcc-n,ngst-x,nggt-x1,nggt-x2,nggt-x3,nggt-n,ptsg-x,othc-x,h2cc-n,h2cc-ig,bioe-r1,becs-n,h2cc-igcs,ngcs-n,nucl-n1,nucl-n2,hydr-x,wind-r,wind-n3,wind-n4,wind-n5,wind-n6,wnos-n1,pvft-n4,pvsx-n4,pvdx-n4
2025,59.96,62.84,63.80,66.91,50.76,53.22,54.04,53.89,56.74,57.57,60.21,33.85,36.97,37.65,38.21,78.67,56.00,61.63,69.26,61.69,216.74,1.59,38.31,38.31,1.78,-60.66,38.31,27.10,8.00,8.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2030,68.84,72.19,73.29,76.83,59.21,62.13,63.07,61.89,65.17,66.12,69.15,39.52,43.21,43.98,44.36,91.82,65.42,72.07,80.97,71.50,237.47,1.59,37.21,37.21,1.78,-75.10,37.21,30.02,9.30,9.30,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2035,85.74,89.98,91.34,95.71,68.36,71.76,72.84,77.42,81.51,82.70,86.49,45.64,49.95,50.84,51.01,106.05,75.62,83.36,93.64,82.12,250.78,1.59,35.00,35.00,1.78,-92.67,35.00,32.61,10.80,10.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2040,99.05,103.99,105.55,110.58,76.85,80.69,81.90,89.42,94.15,95.53,99.90,51.32,56.21,57.20,57.17,119.25,85.07,93.83,105.40,91.96,269.65,1.59,31.28,31.28,1.78,-114.05,31.28,33.53,12.50,12.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2045,115.28,121.09,122.90,128.72,87.52,91.93,93.31,104.07,109.57,111.17,116.27,58.47,64.09,65.20,64.93,135.86,96.97,107.00,120.19,104.35,280.90,1.59,29.01,29.01,1.78,-140.06,29.01,34.95,14.50,14.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2050,135.15,142.01,144.12,150.91,101.00,106.13,107.71,121.99,128.45,130.32,136.30,67.50,74.03,75.30,74.73,156.83,112.00,123.64,138.87,120.00,305.33,1.59,29.01,29.01,1.78,-171.70,29.01,37.09,16.80,16.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
7 changes: 7 additions & 0 deletions use_cases/2020_12/data/stack_OH_notax.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Year,clcl-x1,clcl-x2,clcl-x3,clcl-x4,clng-r1,clng-r2,clng-r3,cbcf-x1,cbcf-x2,cbcf-x3,cbcf-x4,ngcc-x1,ngcc-x2,ngcc-x3,ngcc-n,ngst-x,nggt-x1,nggt-x2,nggt-x3,nggt-n,ptsg-x,othc-x,h2cc-n,h2cc-ig,bioe-r1,becs-n,h2cc-igcs,ngcs-n,nucl-n1,nucl-n2,hydr-x,wind-r,wind-n3,wind-n4,wind-n5,wind-n6,wnos-n1,pvft-n4,pvsx-n4,pvdx-n4
2025,17.96,18.62,18.94,19.99,25.15,26.26,26.68,15.98,16.83,17.08,17.86,16.71,18.09,18.46,19.60,38.83,27.46,30.03,33.78,31.97,168.92,1.59,43.83,43.83,1.78,6.00,43.83,24.94,8.00,8.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2030,17.74,18.39,18.70,19.74,28.06,29.32,29.79,15.77,16.61,16.85,17.62,18.65,20.23,20.63,21.72,43.35,30.70,33.61,37.81,35.34,179.28,1.59,44.45,44.45,1.78,6.00,44.45,27.39,9.30,9.30,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2035,23.57,24.52,24.92,26.25,30.46,31.85,32.35,21.31,22.44,22.76,23.81,20.26,22.00,22.43,23.46,47.09,33.37,36.57,41.13,38.13,179.99,1.59,45.48,45.48,1.78,6.00,45.48,29.41,10.80,10.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2040,23.41,24.35,24.75,26.07,30.73,32.13,32.64,21.15,22.27,22.60,23.64,20.44,22.20,22.64,23.66,47.51,33.68,36.91,41.51,38.44,183.52,1.59,45.27,45.27,1.78,6.00,45.27,29.64,12.50,12.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2045,23.26,24.19,24.59,25.90,31.42,32.86,33.37,21.01,22.13,22.45,23.48,20.90,22.71,23.15,24.16,48.58,34.44,37.76,42.46,39.24,176.12,1.59,45.83,45.83,1.78,6.00,45.83,30.22,14.50,14.50,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
2050,23.19,24.12,24.51,25.82,32.74,34.25,34.79,20.94,22.05,22.38,23.40,21.79,23.68,24.14,25.12,50.64,35.92,39.39,44.29,40.78,177.84,1.59,46.03,46.03,1.78,6.00,46.03,31.34,16.80,16.80,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00
41 changes: 41 additions & 0 deletions use_cases/2020_12/data/stack_key.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
Designation,Name
clcl-x1,Existing Coal Class 1
clcl-x2,Existing Coal Class 2
clcl-x3,Existing Coal Class 3
clcl-x4,Existing Coal Class 4
clng-r1,Coal refit to NG Class 1
clng-r2,Coal refit to NG Class 2
clng-r3,Coal refit to NG Class 3
cbcf-x1,Coal co-burn Biofuel Class 1
cbcf-x2,Coal co-burn Biofuel Class 2
cbcf-x3,Coal co-burn Biofuel Class 3
cbcf-x4,Coal co-burn Biofuel Class 4
ngcc-x1,NG Combined Cycle Class 1
ngcc-x2,NG Combined Cycle Class 2
ngcc-x3,NG Combined Cycle Class 3
ngcc-n,NG Combined Cycle New
ngst-x,NG Steam Existing
nggt-x1,NG Gas Turbine Class 1
nggt-x2,NG Gas Turbine Class 2
nggt-x3,NG Gas Turbine Class 3
nggt-n,NG Gas Turbine New
ptsg-x,Petroleum Steam Gas Turbine
othc-x,Existing Biomass/Other
h2cc-n,Hydrogen Combined Cycle
h2cc-ig,Integrated Gasification Hydrogen Combined Cycle
bioe-r1,Bioenergy - Repowered
becs-n,Bioenergy - New
h2cc-igcs,Integrated Gasification Hydrogen Combined Cycle w/ Carbon Capture
ngcs-n,NG Combined Cycle w/ Carbon Capture
nucl-n1,New Nuclear (Traditional)
nucl-n2,New Nuclear (SMR)
hydr-x,Existing Hydropower
wind-r,Repowered Wind
wind-n3,Wind (Class 3 Resource)
wind-n4,Wind (Class 4 Resource)
wind-n5,Wind (Class 5 Resource)
wind-n6,Wind (Class 6 Resource)
wnos-n1,Offshore Wind
pvft-n4,PV - Fixed Axis (Class 4 Resource)
pvsx-n4,PV - Single Axis Tracking (Class 4 Resource)
pvdx-n4,PV - Dual Axis Tracking (Class 4 Resource)
Binary file not shown.
31 changes: 31 additions & 0 deletions use_cases/2020_12/reports/ARMA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# ARMA

An AutoRegressiveMovingAverage (ARMA) model was used to train the synthetic power histories

\begin{align}
x_t = \Sigma_{i=1}^{p} \phi_{i}x_{t-i} + \alpha_{t} + \Sigma_{j=1}^{q} \theta_{j}\alpha_{t-j},
\end{align}

where x is a vector of dimension $n$, and $\phi_{i}$ and $\theta_{j}$ are both $n$
by $n$ matrices. When $q=0$, the above is an autoregressive (AR) model of order
$p$; when $p=0$, the above is a moving average model of order $q$.

Before training the ARMA, a Fourier series is used to detrend the time series.

\begin{align}
x_t = y_t - \Sigma_{m} \left{a_{m}\sin\left(2 \pi f_{m} t\right) + b_{m}\cos\left(2\pi f_{m} t\right)\right},
\end{align}

where $1/f_{m}$ is defined as the basis points to detrend on.

## Default

## Default LNHR

## Carbon-Tax

## Carbon-Tax LNHR

## RPS

## RPS LNHR
Empty file.
Loading

0 comments on commit 2ec8cef

Please sign in to comment.