Inital commit. Run Rscript to make figures
This commit is contained in:
parent
3e25346bb0
commit
68316d870a
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,4 +1,8 @@
|
|||||||
# ---> LaTex
|
# ---> LaTex
|
||||||
|
Plot.png
|
||||||
|
Total.png
|
||||||
|
*.snm
|
||||||
|
*.nav
|
||||||
*.aux
|
*.aux
|
||||||
*.glo
|
*.glo
|
||||||
*.idx
|
*.idx
|
||||||
|
|||||||
BIN
CBEA_Logo_Large.png
Normal file
BIN
CBEA_Logo_Large.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 414 KiB |
153
REMI.tex
Normal file
153
REMI.tex
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
\documentclass{beamer}
|
||||||
|
|
||||||
|
% Define UW colors
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage{tcolorbox}
|
||||||
|
\usepackage{tikz}
|
||||||
|
\usepackage{booktabs}
|
||||||
|
\usepackage{amssymb} % for checkmark
|
||||||
|
\usepackage{graphicx} % if you want to use image-based checkmarks
|
||||||
|
\usepackage{colortbl}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{cleveref}
|
||||||
|
\usetikzlibrary{shapes, arrows.meta, positioning}
|
||||||
|
\tcbuselibrary{skins}
|
||||||
|
\definecolor{UWBrown}{HTML}{492f24}
|
||||||
|
\definecolor{UWGold}{HTML}{ffcc00}
|
||||||
|
% Define custom colors (optional)
|
||||||
|
\definecolor{lightgreen}{HTML}{d6f5d6}
|
||||||
|
\definecolor{lightred}{HTML}{f8d7da}
|
||||||
|
\definecolor{lightyellow}{HTML}{fff3cd}
|
||||||
|
\definecolor{darkgreen}{HTML}{006400}
|
||||||
|
\definecolor{darkred}{HTML}{8B0000}
|
||||||
|
\definecolor{middlegreen}{HTML}{463200}
|
||||||
|
\definecolor{middlered}{HTML}{C16B6D}
|
||||||
|
\definecolor{lightorange}{HTML}{FFD8A9}
|
||||||
|
|
||||||
|
% Theme setup
|
||||||
|
\usetheme{Madrid}
|
||||||
|
\usecolortheme{default}
|
||||||
|
\setbeamertemplate{enumerate items}[default]
|
||||||
|
\setbeamercolor*{structure}{bg=white,fg=UWBrown}
|
||||||
|
|
||||||
|
% Apply custom colors
|
||||||
|
\setbeamercolor{palette primary}{bg=UWBrown, fg=UWGold}
|
||||||
|
\setbeamercolor{palette secondary}{bg=UWGold, fg=UWBrown}
|
||||||
|
\setbeamercolor{palette tertiary}{bg=UWBrown, fg=white}
|
||||||
|
|
||||||
|
% Flip heading colors
|
||||||
|
\setbeamercolor{frametitle}{bg=UWGold, fg=UWBrown}
|
||||||
|
\setbeamercolor{title}{fg=UWBrown}
|
||||||
|
|
||||||
|
% Flip footer colors
|
||||||
|
\setbeamercolor{footline}{bg=UWGold, fg=UWBrown}
|
||||||
|
|
||||||
|
% Double-height footer with logo
|
||||||
|
\setbeamertemplate{footline}{
|
||||||
|
\leavevmode%
|
||||||
|
\hbox{%
|
||||||
|
\begin{beamercolorbox}[wd=\paperwidth,ht=8ex,dp=4ex,left]{footline}%
|
||||||
|
\includegraphics[height=6ex]{UW_Logo}%
|
||||||
|
\hspace{1em} \insertshorttitle \hfill \insertframenumber{} / \inserttotalframenumber
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}%
|
||||||
|
\vskip0pt%
|
||||||
|
}
|
||||||
|
|
||||||
|
% Title info
|
||||||
|
\title[Data Center Economic Forecasting]{Application of REMI to Data Center Forecasting}
|
||||||
|
\author{Alexander Gebben}
|
||||||
|
\date{June 27, 2026}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{frame}[plain]
|
||||||
|
\begin{center}
|
||||||
|
\textcolor{UWGold}{\huge\textbf{\inserttitle}}\\
|
||||||
|
\textcolor{black}{\large\insertauthor},
|
||||||
|
\textcolor{black}{\insertdate}
|
||||||
|
\vspace{1em}
|
||||||
|
\includegraphics[width=0.7\paperwidth]{CBEA_Logo_Large}
|
||||||
|
%\textcolor{white}{\insertinstitute}\\
|
||||||
|
\end{center}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Outline}
|
||||||
|
\tableofcontents
|
||||||
|
\end{frame}
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
\section{Introduction}
|
||||||
|
\begin{frame}{Introduction}
|
||||||
|
Welcome to the presentation!
|
||||||
|
\begin{enumerate}
|
||||||
|
\item one
|
||||||
|
\item two
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item one
|
||||||
|
\item two
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
\section{Background}
|
||||||
|
\begin{frame}{What are Data Centers?}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{0.5\textwidth}
|
||||||
|
\begin{enumerate}
|
||||||
|
\item Large Language Models
|
||||||
|
\item Proff of work crypto currency mining
|
||||||
|
\item Cloud storage
|
||||||
|
\item Hosting services
|
||||||
|
\item Virtual private networks
|
||||||
|
\end{enumerate}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.5\textwidth}
|
||||||
|
\begin{itemize}
|
||||||
|
\item one
|
||||||
|
\item two
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
%%%%%%%%%%%%%%%%%
|
||||||
|
\begin{frame}[plain]{Projected Energy Use}
|
||||||
|
\only<1>{\includegraphics[width=\textwidth]{Plot.png}}
|
||||||
|
\only<2>{\includegraphics[width=\textwidth]{Total.png}}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
|
||||||
|
%%%%%%%%%%%%%%%%%
|
||||||
|
\begin{frame}[plain]{Nuclear Fuel Cycle Overview}
|
||||||
|
\begin{center}
|
||||||
|
\resizebox{\textwidth}{!}{
|
||||||
|
\begin{tikzpicture}[
|
||||||
|
node distance=2cm and 2cm,
|
||||||
|
box/.style={rectangle, draw, minimum width=5cm, minimum height=2cm, align=center},
|
||||||
|
dual/.style={rectangle split, rectangle split parts=2, draw, minimum width=5cm, minimum height=2cm, align=center},
|
||||||
|
arrow/.style={-{Latex}, thick}
|
||||||
|
]
|
||||||
|
|
||||||
|
% Nodes with overlays
|
||||||
|
\onslide<1->{\node[box,fill={yellow!20}] (mining) {Uranium Mining};}
|
||||||
|
\onslide<2->{\node[box,fill={yellow!20}, right=of mining] (enrichment) {Uranium Enrichment};}
|
||||||
|
\onslide<3->{\node[dual,text width=2cm, right=of enrichment, rectangle split part fill={blue!20, red!20}] (output)
|
||||||
|
{Electricity Production\nodepart{second}Heat Applications};}
|
||||||
|
\onslide<4->{\node[box, below=of output,fill={teal!20}] (manufacturing) {Component Manufacturing};}
|
||||||
|
\onslide<5->{\node[box, right=of output,fill={gray!20}] (waste) {Spent Nuclear Fuel};}
|
||||||
|
|
||||||
|
% Arrows with overlays
|
||||||
|
\onslide<2->{\draw[arrow] (mining) -- (enrichment);}
|
||||||
|
\onslide<3->{\draw[arrow] (enrichment) -- (output);}
|
||||||
|
\onslide<4->{\draw[arrow] (manufacturing) -- (output);}
|
||||||
|
\onslide<5->{\draw[arrow] (output) -- (waste);}
|
||||||
|
|
||||||
|
\end{tikzpicture}
|
||||||
|
}
|
||||||
|
\end{center}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
31
R_Work/EIA_Commerical_Sector_Data.csv
Normal file
31
R_Work/EIA_Commerical_Sector_Data.csv
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
Commercial Total Energy Use by End Use (Case Counterfactual Baseline case)
|
||||||
|
https://www.eia.gov/outlooks/aeo/data/browser/#/?id=5-AEO2026®ion=0-0&cases=cb2026&start=2025&end=2050&f=A&linechart=~~~~~~~~~~~~~~cb2026-d021826b.67-5-AEO2026~cb2026-d021826b.68-5-AEO2026~cb2026-d021826b.69-5-AEO2026~cb2026-d021826b.70-5-AEO2026~cb2026-d021826b.71-5-AEO2026~cb2026-d021826b.72-5-AEO2026~cb2026-d021826b.73-5-AEO2026~cb2026-d021826b.74-5-AEO2026~cb2026-d021826b.75-5-AEO2026~cb2026-d021826b.76-5-AEO2026~cb2026-d021826b.77-5-AEO2026~cb2026-d021826b.78-5-AEO2026~cb2026-d021826b.79-5-AEO2026&sourcekey=0
|
||||||
|
15:41:21 GMT-0600 (Mountain Daylight Time)
|
||||||
|
Data source: U.S. Energy Information Administration
|
||||||
|
Year,Space Heating quads,Space Cooling quads,Water Heating quads,Ventilation quads,Cooking quads,Lighting quads,Refrigeration quads,Data Center Servers quads,Computers and Office Equipment quads,Other Uses quads,Total Gross End-use Consumption quads,Purchased Electricity for EV Charging quads,Generation for Own Use quads
|
||||||
|
2050,1.659849,1.457669,0.431731,1.744314,0.593602,0.817266,0.696621,2.755819,0.273442,6.48524,16.915556,2.562196,0.30881
|
||||||
|
2049,1.676717,1.438343,0.430507,1.730065,0.592048,0.819066,0.695659,2.724611,0.278773,6.461623,16.847412,2.515952,0.305663
|
||||||
|
2048,1.693073,1.417299,0.429098,1.713517,0.59021,0.819967,0.693574,2.685243,0.283228,6.4332,16.758408,2.459325,0.300708
|
||||||
|
2047,1.709183,1.397078,0.427635,1.697247,0.588271,0.82121,0.691556,2.637155,0.287307,6.406504,16.663143,2.397761,0.296778
|
||||||
|
2046,1.725866,1.378768,0.426288,1.682936,0.586484,0.823581,0.690199,2.583058,0.291259,6.385467,16.573908,2.33095,0.291998
|
||||||
|
2045,1.742192,1.361752,0.424943,1.669847,0.584637,0.827052,0.68932,2.523058,0.293967,6.368581,16.485348,2.257984,0.289239
|
||||||
|
2044,1.757432,1.346819,0.423508,1.659719,0.582573,0.832583,0.689516,2.459334,0.297855,6.357899,16.40724,2.181226,0.285402
|
||||||
|
2043,1.773971,1.335122,0.422396,1.652779,0.580816,0.84042,0.690907,2.393408,0.301899,6.355707,16.347425,2.101125,0.281202
|
||||||
|
2042,1.789298,1.315987,0.420822,1.636756,0.578425,0.844496,0.688385,2.307624,0.304857,6.33237,16.219021,2.000762,0.277589
|
||||||
|
2041,1.805987,1.301274,0.419733,1.626142,0.576604,0.852542,0.688056,2.224456,0.30739,6.323893,16.126076,1.895763,0.272037
|
||||||
|
2040,1.821847,1.284907,0.418338,1.612498,0.574327,0.860149,0.686575,2.133115,0.310962,6.311166,16.013882,1.779732,0.268748
|
||||||
|
2039,1.838078,1.277422,0.417405,1.608167,0.572659,0.874721,0.688738,2.047362,0.315357,6.314445,15.954354,1.659679,0.262034
|
||||||
|
2038,1.858292,1.288098,0.417912,1.626034,0.572617,0.898407,0.700017,1.983303,0.32347,6.370639,16.03879,1.551354,0.257778
|
||||||
|
2037,1.874785,1.282206,0.417006,1.623933,0.570782,0.912704,0.70207,1.888198,0.328588,6.371848,15.972122,1.410142,0.245332
|
||||||
|
2036,1.889226,1.266219,0.415566,1.608596,0.568292,0.92091,0.699875,1.781086,0.33223,6.355659,15.83766,1.254792,0.240122
|
||||||
|
2035,1.901177,1.250283,0.413921,1.592981,0.565451,0.930494,0.698316,1.675538,0.336487,6.343416,15.708065,1.094612,0.237493
|
||||||
|
2034,1.915801,1.242643,0.413373,1.58819,0.563841,0.947991,0.701745,1.5806,0.344164,6.364753,15.663101,0.933083,0.235489
|
||||||
|
2033,1.934851,1.243166,0.414311,1.593831,0.564016,0.972686,0.70946,1.493093,0.353985,6.411701,15.6911,0.767953,0.233069
|
||||||
|
2032,1.963538,1.26184,0.417944,1.622606,0.567591,1.013016,0.726553,1.421088,0.369245,6.507271,15.870693,0.609479,0.228893
|
||||||
|
2031,2.007483,1.307043,0.42613,1.685724,0.576866,1.076867,0.75847,1.370873,0.393732,6.691508,16.294697,0.460414,0.224558
|
||||||
|
2030,2.047686,1.322442,0.432243,1.70979,0.583937,1.119353,0.772259,1.281598,0.408664,6.767422,16.445393,0.32972,0.213571
|
||||||
|
2029,2.087349,1.329668,0.437624,1.722502,0.590297,1.157596,0.783538,1.185236,0.422783,6.827823,16.544415,0.22721,0.207113
|
||||||
|
2028,2.121859,1.329303,0.441425,1.719852,0.594588,1.17398,0.790209,1.085073,0.436468,6.875392,16.56815,0.16827,0.202564
|
||||||
|
2027,2.151664,1.347557,0.445993,1.741829,0.599262,1.210878,0.810267,1.002403,0.458344,6.997755,16.765951,0.126609,0.194802
|
||||||
|
2026,2.180328,1.394059,0.452405,1.801554,0.605305,1.281172,0.84733,0.93473,0.490278,7.182669,17.16983,0.099923,0.178672
|
||||||
|
2025,2.220217,1.337283,0.449794,1.801248,0.601213,1.316465,0.85503,0.833948,0.505819,6.840589,16.761606,0.075689,0.159509
|
||||||
|
28
R_Work/make_figures.r
Normal file
28
R_Work/make_figures.r
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
library(tidyverse)
|
||||||
|
library(janitor)
|
||||||
|
library(scales)
|
||||||
|
library(paletteer)
|
||||||
|
|
||||||
|
CONSUMPTION <- read_csv('EIA_Commerical_Sector_Data.csv',skip=4) %>% clean_names()
|
||||||
|
CONSUMPTION[,c(2:14)] <- 33.43* CONSUMPTION[,c(2:14)]
|
||||||
|
colnames(CONSUMPTION) <- gsub("_quads","",colnames(CONSUMPTION))
|
||||||
|
CONSUMPTION <- CONSUMPTION %>% pivot_longer(-year,values_to='GW',names_to="Use")
|
||||||
|
TOTAL <- CONSUMPTION %>% filter(Use=='total_gross_end_use_consumption')
|
||||||
|
CONSUMPTION <-CONSUMPTION %>% filter(Use!='total_gross_end_use_consumption')
|
||||||
|
|
||||||
|
|
||||||
|
CONSUMPTION$Use <- ifelse(CONSUMPTION$Use!='data_center_servers',"Other","Data Centers")
|
||||||
|
CONSUMPTION <- CONSUMPTION %>% group_by(year,Use) %>% summarize(GW=sum(GW)) %>% ungroup
|
||||||
|
CONSUMPTION$Use <- factor(CONSUMPTION$Use,level=c("Other","Data Centers"))
|
||||||
|
|
||||||
|
CONSUMPTION <- CONSUMPTION %>% group_by(Use) %>% mutate(Change=GW-sum(ifelse(year==2025,GW,0))) %>% ungroup
|
||||||
|
|
||||||
|
STACK_PLOT <- ggplot(CONSUMPTION,aes(x=year,y=Change,fill=Use)) +geom_area()+theme_bw()+facet_wrap(~Use)+ theme(legend.position = "top",text = element_text(size = 20))+scale_fill_manual(values=paletteer_d("PNWColors::Shuksan2"))+ylab("Change GW-year")
|
||||||
|
|
||||||
|
STACK_TOTAL<- ggplot(CONSUMPTION,aes(x=year,y=GW,fill=Use)) +geom_area()+theme_bw()+ theme(legend.position = "top",text = element_text(size = 20))+scale_fill_manual(values=paletteer_d("PNWColors::Shuksan2"))+ylab("Total Consumpiotn (GW-year)")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ggsave("../Plot.png",STACK_PLOT,width=12,height=8,units="in",dpi=600)
|
||||||
|
ggsave("../Total.png",STACK_TOTAL,width=12,height=8,units="in",dpi=600)
|
||||||
|
|
||||||
BIN
UW_Logo.png
Normal file
BIN
UW_Logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 99 KiB |
Loading…
x
Reference in New Issue
Block a user