Energy Parameters

SLiDE.partition_sedsFunction
partition_seds(dataset::Dataset, d::Dict, set::Dict)

This function prepares SEDS energy and electricity data for the Energy-Environment Module

Arguments

  • dataset::Dataset identifier
  • d::Dict of model parameters
  • set::Dict of Arrays describing parameter indices (years, regions, goods, sectors, etc.)

Returns

  • d::Dict of SEDS energy and electricity data
  • set::Dict of Arrays describing parameter indices (years, regions, goods, sectors, etc.)
  • maps::Dict of default mapping schematics and constants
source
SLiDE.partition_elegen!Function

Electricity generation by source.

\[\bar{ele}_{yr,r,src,sec} = \left\{seds\left( yr,r,src,sec \right) \;\vert\; yr, \, r, \, (ff,re) \in src, \, sec = ele \right\}\]

For fossil fuels, use heatrate to convert as follows:

\[\bar{ele}_{yr,r,ff\in src,sec} \text{ [billion kWh]} = 10^3 \cdot \dfrac{\bar{ele}_{yr,r,ff\in src,sec} \text{ [trillion btu]}} {\bar{heatrate}_{yr,src} \text{ [btu/kWh]}}\]

source
SLiDE.partition_energy!Function

\[\bar{energy}_{yr,r,src,sec} = \left\{seds\left( yr,r,src,sec \right) \;\vert\; yr, \, r, \, e \in src, \, ed \in sec \right\}\]

SLiDE._partition_energy_supply adds supply information from the electricity generation dataset output by SLiDE.partition_elegen!. The following functions are used to calculate values or make adjustments to values in the energy dataset. These operations must occur in the following order:

  1. SLiDE._partition_energy_ref
  2. SLiDE._partition_energy_ind
  3. SLiDE._partition_energy_price
source
SLiDE._partition_energy_refFunction

\[\bar{ref}_{yr,r,src=ele} \text{ [billion kWh]} = \bar{ref}_{yr,r,src=ele} \text{ [trillion btu]} \cdot \dfrac{\bar{ind}_{yr,r,src=ele} \text{ [billion kWh]}} {\bar{ind}_{yr,r,src=ele} \text{ [trillion btu]}}\]

source
SLiDE._partition_energy_priceFunction

\[\begin{aligned} \bar{ff}_{yr,r,sec=ele} \text{ [USD/million btu]} &= 10^3 \cdot \dfrac{\bar{ff}_{yr,r,sec=ele} \text{ [billion USD]}} {\bar{ff}_{yr,r,sec=ele} \text{ [trillion btu]}} \\ \bar{ele}_{yr,r,sec} \text{ [USD/thousand kWh]} &= 10^3 \cdot \dfrac{\bar{ele}_{yr,r,sec} \text{ [billion USD]}} {\bar{ele}_{yr,r,sec} \text{ [billion kWh]}} \end{aligned}\]

source
SLiDE._partition_cprice!Function

cprice(yr,r) [USD per million btu], crude oil price

\[\begin{aligned} \tilde{k}_{yr,r,src} \text{ [million btu/barrel]} &= \left\{ seds \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, src=cru,\, sec=supply \right\} \\ \tilde{p}_{yr,r,src,sec} \text{ [USD/million btu]} &= \dfrac {\bar{crude oil}_{yr} \text{ [USD/barrel]}} {\tilde{k}_{yr,r,src} \text{ [million btu/barrel]}} \circ \vec{1}_{demsec\in sec} \end{aligned}\]

Fill zero (yr,r,src=cru,sec) values using $\bar{p}_{yr,src=cru,sec}$ as computed by SLiDE.impute_mean, under the condition that crude oil quantity is defined:

\[\tilde{q}^\star_{yr,r,src=cru,sec} \text{ [trillion btu]} = \left\{ seds \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, src=cru,\, demsec\in sec,\ \right\}\]

\[\tilde{p}_{yr,r,src,sec} \text{ [USD/million btu]} = \begin{cases} \tilde{p}_{yr,r,src=cru,sec} & \tilde{p}_{yr,r,src,sec} \\ \bar{p}_{yr,src=cru,sec} \circ \vec{1}_{r} & \tilde{p}_{yr,r,src,sec}, \tilde{q}^\star_{yr,r,src=cru,sec} > 0 \end{cases}\]

source
SLiDE._partition_pedef!Function

pedef(yr,r,src), average energy demand price. This parameter can be calculated from prices $\tilde{p}_{yr,r,src,sec}$ and quantities $\tilde{q}_{yr,r,src,sec}$ for the following ($src$,$sec$).

\[\left(\tilde{p}, \tilde{q}\right)_{yr,r,src,sec} = \left\{ seds \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, (ff,ele)\in src,\, demsec\in sec \right\}\]

Average energy demand price $\hat{p}_{yr,r,src}$ is calculated as its $\tilde{q}_{yr,r,src,sec}$-weighted sectoral aggregate:

\[\hat{p}_{yr,r,src} = \dfrac {\sum_{sec} \left( \tilde{p}_{yr,r,src,sec} \cdot \tilde{q}_{yr,r,src,sec} \right)} {\sum_{sec} \tilde{q}_{yr,r,src,sec}}\]

Fill missing (yr,r,src) values using $\bar{p}_{yr,src}$, as computed by SLiDE.impute_mean, weighted by $\sum_{sec} q_{yr,r,src,sec}$.

\[\tilde{pedef}_{yr,r,src} = \begin{cases} \tilde{pedef}_{yr,r,src} & \sum_{sec} q_{yr,r,src,sec} \neq 0 \\ \bar{pedef}_{yr,src} & \sum_{sec} q_{yr,r,src,sec} = 0 \end{cases}\]

source
SLiDE._partition_pe0!Function

pe0(yr,r,src,sec), energy demand prices

\[\begin{aligned} \tilde{p}_{yr,r,src\neq cru,sec} &= \left\{ energy \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, src,\, demsec\in sec \right\} \\&\\ \tilde{p}_{yr,r,src,sec} &= \begin{cases} \tilde{p}_{yr,r,src\neq cru,sec} & src\neq cru, \tilde{p}_{yr,r,src\neq cru,sec}\neq 0 \\ \hat{p}_{yr,r,src\neq cru} \circ \vec{1}_{sec} & src\neq cru, \tilde{p}_{yr,r,src\neq cru} = 0 \\&\\ \tilde{p}_{yr,r,src=cru,sec} & src=cru \end{cases} \end{aligned}\]

with $\tilde{p}_{yr,r,src=cru,sec}$ calculated by SLiDE._partition_cprice! and $\hat{p}_{yr,r,src=cru}$ calculated by SLiDE._partition_pedef!

source
SLiDE._partition_ps0!Function

ps0(yr,src), crude oil and natural gas supply prices

\[\begin{aligned} \bar{ps}_{yr,src} &= \min_{r,sec} \tilde{p}_{yr,r,src,sec} \\ \bar{ps}_{r,src=cru} &= \frac{1}{2}\bar{ps}_{r,src=oil} \end{aligned}\]

with $\tilde{pe}_{yr,r,src,sec}$ calculated by SLiDE._partition_pe0!.

source
SLiDE._partition_prodval!Function

prodval(yr,r,src), production value (using supply prices)

\[\begin{aligned} p_{yr,src} \text{ [USD/million btu]} &= \left\{ \bar{ps}_{yr,src} \;\vert\; [cru,gas] \in src \right\} \\ \tilde{q}_{yr,r,src} \text{ [trillion btu]} &= \left\{ seds \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, [cru,gas]\in src,\, sec=supply \right\} \\ prodval_{yr,r,src} \text{ [billion USD]} &= \frac{1}{10^3} \cdot p_{yr,src} \text{ [USD/million btu]} \cdot prodbtu_{yr,r,src} \text{ [trillion btu]} \end{aligned}\]

with $\bar{ps}_{yr,src}$ calculated by SLiDE._partition_ps0!.

source
SLiDE._partition_shrgas!Function

shrgas(yr,r,src), regional share of production for gas extraction

\[\delta_{yr,r,src} = \dfrac{prodval_{yr,r,src}}{\sum_{src} prodval_{yr,r,src}}\]

Fill missing (yr,src) values using $\bar{\delta}_{yr,src}$ as computed by SLiDE.impute_mean, under the condition that there is some non-zero supply of goods from the cng sector:

\[ys0^\star_{yr,r,src} = \sum_{g} ys_{yr,r,s=cng,g} \circ \vec{1}_{demsec \in sec} > 0\]

\[\delta_{yr,r,src} = \begin{cases} \delta_{yr,r,src} & \sum_{src}prodval_{yr,r,src} \neq 0 \\ \bar{\delta}_{yr,r,src} & \sum_{src}prodval_{yr,r,src}=0,\, ys0^\star_{yr,r,src} > 0 \end{cases}\]

Ensure all sectoral shares sum to 1.

\[\delta_{yr,r,src} = \dfrac{\delta_{yr,r,src}}{\sum_{src}\delta_{yr,r,src}}\]

source
SLiDE._partition_netgen!Function

netgen(yr,r), net interstate electricity flow This can be computed using both SEDS data and regional parameters. Using SEDS data:

\[\begin{aligned} p \text{ [USD/thousand kWh]} &= \left\{ \bar{ps}_{yr,src} \;\vert\; src=ele \right\} \\ q \text{ [billion kWh]} &= \left\{ seds(yr,r,src,sec) \;\vert\; src=ele,\, sec=netgen \right\} \end{aligned}\]

with $\bar{ps}_{yr,src}$ calculated by SLiDE._partition_ps0!.

\[v_{yr,r} \text{ [billion USD]} = \dfrac{1}{10^3} \cdot \dfrac {p \text{ [USD/thousand kWh]}} {q \text{ [billion kWh]}}\]

Using regional parameters:

\[v_{yr,r} = nd_{yr,r,g=ele} - xn_{yr,r,g=ele}\]

source
SLiDE._partition_trdele!Function

trdele(yr,r,g=ele,t), electricity imports-exports to/from U.S.

\[\tilde{trdele}_{yr,r,t} \text{ [billion usd]} = \left\{ seds \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, src=ele,\, [imports,exports]\in sec \right\}\]

source
SLiDE._partition_pctgen!Function

pctgen(yr,r,src,sec), percent of electricity generation

\[pctgen_{yr,r,src} = \left\{ \dfrac{elegen_{yr,r,src}}{\sum_{src} elegen_{yr,r,src}} \;\vert\; ff \in src \right\} \circ \vec{1}_{sec=ele}\]

source
SLiDE._partition_eq0!Function

eq0(yr,r,src,sec), energy demand

\[\tilde{eq}_{yr,r,src,sec} = \left\{ energy \left( yr, r, src, sec \right) \;\vert\; yr,\, r,\, e\in src,\, demsec\in sec \right\}\]

source
SLiDE._partition_ed0!Function

ed0(yr,r,src,sec), energy demand

\[\tilde{ed}_{yr,r,src,sec} = \dfrac {\tilde{pe}_{yr,r,src,sec}} {\tilde{eq}_{yr,r,src,sec}}\]

source
SLiDE._partition_emarg0!Function

emarg0(yr,r,src,sec), margin demand for energy markups

\[\tilde{emarg}_{yr,r,src,sec} = \dfrac {\tilde{pe}_{yr,r,src,sec} - \tilde{ps}_{yr,src}} {\tilde{eq}_{yr,r,src,sec}}\]

source
SLiDE._partition_ned0!Function

ned0(yr,r,src,sec), net energy demand

\[\tilde{ned}_{yr,r,src,sec} = \tilde{ed}_{yr,r,src,sec} - \tilde{emarg}_{yr,r,src,sec}\]

source