diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index a670230..9f78880 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -74,11 +74,29 @@ jobs: initexmf --mklinks initexmf --mklangs fi + + - name: Debug conda environment + shell: bash -l {0} + run: | + echo "Conda info:" + conda info + echo "Conda envs:" + conda env list + echo "Current PATH:" + echo $PATH + echo "Which python:" + which python + echo "Which snakemake:" + which snakemake || echo "snakemake not found" # Execute the Snakemake workflow - name: Run Snakemake workflow + shell: bash -l {0} # Explicitly use login shell run: | - cd analysis && snakemake -j2 + conda activate 2025-dotson-thesis + which python + which snakemake + cd analysis && snakemake -j2 --force # Upload the generated PDF as an artifact - name: Upload PDF artifact diff --git a/analysis/Snakefile b/analysis/Snakefile index 510c577..119a816 100644 --- a/analysis/Snakefile +++ b/analysis/Snakefile @@ -270,8 +270,8 @@ rule benchmark_chapter: done """ #============================EXAMPLES CHAPTER================================ -app_d_url = "https://fuelcycleevaluation.inl.gov/Shared%20Documents/ES%20Appendix%20D.pdf" -app_c_url = "https://fuelcycleevaluation.inl.gov/Shared%20Documents/ES%20Appendix%20C.pdf" +app_d_url = "https://sai.inl.gov/content/uploads/29/2024/11/es_appendix_d.pdf" +app_c_url = "https://sai.inl.gov/content/uploads/29/2024/11/es_appendix_c.pdf" atbe_url = "https://oedi-data-lake.s3.amazonaws.com/ATB/electricity/csv/2024/v3.0.0/ATBe.csv" rule retrieve_fuel_cycles_report_D: diff --git a/analysis/introduction_chapter_dag.png b/analysis/introduction_chapter_dag.png index bfe58fc..ff1ec26 100644 Binary files a/analysis/introduction_chapter_dag.png and b/analysis/introduction_chapter_dag.png differ diff --git a/analysis/scripts/05-examples-scripts/solve_datacenter.py b/analysis/scripts/05-examples-scripts/solve_datacenter.py index 38a000c..0f93219 100644 --- a/analysis/scripts/05-examples-scripts/solve_datacenter.py +++ b/analysis/scripts/05-examples-scripts/solve_datacenter.py @@ -37,10 +37,11 @@ with open(snakemake.input.dc_problem, "rb") as file: problem = pickle.load(file) + use_checkpoints = False checkpoint_list = glob("checkpoint_*.pkl") checkpoint_list.sort() - if len(checkpoint_list) > 0: + if (len(checkpoint_list) > 0) and use_checkpoints: with open(checkpoint_list[-1], 'rb') as f: algorithm = pickle.load(f) algorithm.termination = MaximumGenerationTermination(200) diff --git a/data/metric_data.csv b/data/metric_data.csv deleted file mode 100644 index 1836c44..0000000 --- a/data/metric_data.csv +++ /dev/null @@ -1,41 +0,0 @@ -EG,mass snf hlw disposal [t/GWe-yr],activity at 100 yrs [Ci/GWe-yr],activity at 100k years [Ci/GWe-yr],mass du ru rth disposal [t/GWe-yr],volume llw disposal [m3],safety challenges [Data],land use [km2/GWe-yr],water use [ML/GWe-yr],carbon dioxide emissions [CO2/GWe-yr],total worker dose [person-mSv/GWe-yr],natural uranium required [t/GWe-yr],natural thorium utilization [t/GWe-yr],development cost [Data],development time [Data],foak cost [Data],incompatibility [Data],unfamiliarity [Data] -EG01,21.92,1340000.0,1650.0,166.67,398.84,0.0,0.175,23891.0,44.1,1.1,188.63,0.0,0.0,0.0,0.0,0.0,0.0 -EG02,9.22,1430000.0,2050.0,296.48,414.23,0.0,0.21,23994.0,54.9,1.28,305.73,0.0,1.0,1.0,1.0,0.0,0.0 -EG03,147.57,1340000.0,2460.0,0.0,373.0,0.0,0.247,23924.0,87.1,2.41,147.87,0.0,0.0,0.0,0.0,1.0,1.0 -EG04,3.99,805000.0,1640.0,0.0,278.6,0.0,0.082,23706.0,13.5,1.22,4.0,0.0,2.0,2.0,2.0,2.0,2.0 -EG05,11.41,1390000.0,7380.0,282.41,412.58,0.0,0.206,23981.0,53.9,1.27,289.2,4.65,1.0,1.0,1.0,3.0,3.0 -EG06,9.86,1770000.0,13000.0,0.0,835.32,1.0,0.119,31308.0,59.1,2.81,0.0,9.88,3.0,2.0,3.0,2.0,3.0 -EG07,31.97,1780000.0,9480.0,0.0,342.2,1.0,0.167,37831.0,45.7,4.54,32.03,0.0,3.0,2.0,3.0,2.0,3.0 -EG08,1.62,909000.0,1690.0,0.0,826.47,1.0,0.109,33640.0,25.4,2.93,0.0,1.62,3.0,2.0,3.0,2.0,3.0 -EG09,2.24,882000.0,942.0,0.0,359.0,0.0,0.081,23709.0,17.5,1.21,2.25,0.0,3.0,2.0,4.0,2.0,3.0 -EG10,10.84,1420000.0,10800.0,0.0,2796.69,0.0,0.098,23767.0,79.5,0.61,0.0,10.86,3.0,2.0,4.0,2.0,3.0 -EG11,4.54,1020000.0,9140.0,104.29,401.01,0.0,0.126,23810.0,31.8,1.4,106.8,2.05,3.0,2.0,4.0,2.0,3.0 -EG12,7.27,1400000.0,1420.0,104.96,1646.12,0.0,0.137,23912.0,113.3,2.02,112.46,0.0,4.0,3.0,3.0,1.0,2.0 -EG13,3.42,1330000.0,1320.0,167.69,621.88,0.0,0.156,23897.0,52.7,1.12,171.16,0.0,4.0,3.0,3.0,3.0,2.0 -EG14,8.34,1140000.0,1240.0,0.0,618.99,0.0,0.094,23728.0,28.5,1.18,8.38,0.0,2.0,2.0,4.0,1.0,2.0 -EG15,2.11,1240000.0,1140.0,169.81,611.53,0.0,0.149,23881.0,48.8,1.12,171.96,0.0,2.0,2.0,3.0,3.0,2.0 -EG16,1.52,1260000.0,1030.0,175.99,630.76,1.0,0.152,24495.0,50.9,1.26,177.56,0.0,3.0,2.0,4.0,3.0,3.0 -EG17,3.37,1330000.0,3090.0,170.88,624.09,0.0,0.151,23883.0,49.9,1.1,172.41,1.88,2.0,2.0,4.0,3.0,3.0 -EG18,6.95,1450000.0,6950.0,148.6,567.72,0.0,0.147,23861.0,43.9,1.04,152.16,3.42,3.0,2.0,4.0,3.0,3.0 -EG19,2.59,1140000.0,765.0,65.54,2134.12,0.0,0.121,23897.0,127.9,2.04,68.41,0.0,4.0,3.0,3.0,1.0,2.0 -EG20,2.61,1050000.0,557.0,69.36,2343.8,0.0,0.123,23909.0,134.9,2.06,72.26,0.0,3.0,2.0,4.0,1.0,3.0 -EG21,1.46,1140000.0,800.0,157.51,678.04,0.0,0.143,23874.0,51.1,1.05,159.02,0.0,4.0,3.0,3.0,3.0,2.0 -EG22,1.39,994000.0,581.0,175.42,691.19,0.0,0.15,23891.0,53.3,1.08,176.86,0.0,3.0,2.0,4.0,3.0,3.0 -EG23,1.31,1030000.0,728.0,0.0,549.49,0.0,0.081,23717.0,24.1,1.21,1.34,0.0,2.0,2.0,3.0,2.0,2.0 -EG24,1.34,1040000.0,606.0,0.0,561.42,0.0,0.082,23717.0,24.1,1.21,1.37,0.0,3.0,2.0,4.0,2.0,3.0 -EG25,1.51,1300000.0,864.0,112.81,853.46,0.0,0.128,23839.0,51.5,0.95,113.54,0.85,3.0,2.0,4.0,2.0,3.0 -EG26,1.25,1300000.0,1370.0,0.0,2830.6,0.0,0.086,23762.0,77.3,0.55,0.0,1.25,3.0,2.0,4.0,2.0,3.0 -EG27,2.25,1300000.0,3620.0,184.74,1160.73,0.0,0.16,23909.0,67.3,1.54,186.62,0.45,3.0,2.0,4.0,2.0,3.0 -EG28,1.58,1180000.0,3010.0,0.0,1168.72,0.0,0.086,23748.0,50.1,1.24,0.0,1.68,3.0,2.0,4.0,2.0,3.0 -EG29,1.45,1130000.0,917.0,0.0,662.22,0.0,0.083,23725.0,30.5,1.02,1.49,0.0,2.0,2.0,4.0,1.0,2.0 -EG30,1.3,954000.0,571.0,0.0,602.99,0.0,0.081,23719.0,26.1,1.14,1.33,0.0,3.0,2.0,4.0,1.0,3.0 -EG31,1.37,1180000.0,697.0,136.55,567.85,0.0,0.134,23847.0,42.7,1.13,137.96,0.0,2.0,2.0,3.0,1.0,2.0 -EG32,1.32,1080000.0,519.0,127.15,579.27,0.0,0.13,23838.0,41.6,1.13,128.5,0.0,3.0,2.0,4.0,1.0,3.0 -EG33,1.59,1220000.0,879.0,0.0,753.51,1.0,0.095,27521.0,39.1,2.84,1.64,0.0,3.0,2.0,4.0,1.0,3.0 -EG34,1.5,1070000.0,669.0,0.0,696.42,1.0,0.093,27104.0,38.2,2.7,1.55,0.0,5.0,2.0,4.0,1.0,3.0 -EG35,1.42,1200000.0,741.0,163.92,621.45,1.0,0.149,24957.0,49.5,1.43,165.37,0.0,3.0,2.0,4.0,3.0,3.0 -EG36,1.39,1020000.0,535.0,149.1,735.16,1.0,0.14,23887.0,49.7,1.14,150.54,0.0,5.0,2.0,4.0,3.0,3.0 -EG37,1.33,1120000.0,762.0,23.42,624.52,0.0,0.091,23717.0,31.9,1.01,24.36,0.43,3.0,2.0,4.0,1.0,3.0 -EG38,1.79,1270000.0,3170.0,0.0,1518.73,1.0,0.09,23770.0,67.0,1.18,0.0,1.93,3.0,2.0,4.0,1.0,3.0 -EG39,1.4,1300000.0,763.0,114.17,677.49,1.0,0.13,24623.0,41.7,1.14,114.85,0.75,5.0,2.0,4.0,3.0,3.0 -EG40,1.47,1490000.0,1280.0,0.0,592.98,1.0,0.094,27306.0,29.4,1.49,0.0,1.51,5.0,2.0,4.0,3.0,3.0 diff --git a/docs/00-outline.tex b/docs/00-outline.tex index 9a6e9f5..f337a03 100644 --- a/docs/00-outline.tex +++ b/docs/00-outline.tex @@ -2,26 +2,26 @@ \chapter{Introduction} \label{chapter:introduction} \input{1-introduction/1-introduction.tex} -% \chapter{Literature Review} -% \label{chapter:lit-review} -% \input{2-literature/20-literature} +\chapter{Literature Review} +\label{chapter:lit-review} +\input{2-literature/20-literature} -% \chapter{\acf{osier}} -% \label{chapter:osier} -% \input{3-osier/30-intro} +\chapter{\acf{osier}} +\label{chapter:osier} +\input{3-osier/30-intro} -% \chapter{Benchmark Results} -% \label{chapter:benchmark-results} -% \input{4-benchmark-results/40-benchmark.tex} +\chapter{Benchmark Results} +\label{chapter:benchmark-results} +\input{4-benchmark-results/40-benchmark.tex} -% \chapter{Examples with \acs{osier}} -% \label{chapter:examples} -% \input{5-examples/50-intro.tex} +\chapter{Examples with \acs{osier}} +\label{chapter:examples} +\input{5-examples/50-intro.tex} -% \chapter{Energy modeling, planning, and justice} -% \label{chapter:communities} -% \input{7-interviews/70-outline} +\chapter{Energy modeling, planning, and justice} +\label{chapter:communities} +\input{7-interviews/70-outline} -% \chapter{Conclusions} -% \label{chapter:conclusions} -% \input{8-conclusion/80-conclusion.tex} +\chapter{Conclusions} +\label{chapter:conclusions} +\input{8-conclusion/80-conclusion.tex} diff --git a/docs/02-acks.tex b/docs/02-acks.tex new file mode 100644 index 0000000..9696101 --- /dev/null +++ b/docs/02-acks.tex @@ -0,0 +1,43 @@ +Writing a thesis can often feel like a solitary experience. Despite appearances, +such an endeavor is only possible through the collective support of mentors, +colleagues, friends, and family (and those friends who became family). + +I am profoundly indebted to my advisor and mentor, Professor Kathryn D. Huff, +who set me on this path. Her uncompromising standards for excellence are matched +only by the care and attention she affords her students. I only hope I can live +up to her example. I would also like to thank my co-advisor, Professor Madicken +Munk, for encouraging me to pursue my curiosity, which led to this sprawling +multi-disciplinary work. + +I thank the other members of my committee, James Stubbins, Clifford Singer, +McKenzie Johnson, and Denia Djoki\'c. I am particularly grateful to Professor +Johnson for her patience and humor while mentoring me through the nuances of +interacting with and writing about real people (gasp!). I am also deeply +appreciative of the time and effort Dr. Djoki\'c put into guiding myself and +Haley Williams (UC Berkeley) through the philosophy of science literature in +weekly meetings of the ``Nuclear Contextualizers." + +Of course, I thank my colleagues, past and present, from the Advanced Reactors +and Fuel Cycles (ARFC) group: Gwendolyn Chee, Sun Myung Park, Amanda Bachmann, +Nathan Ryan, Olek Yardas, Zo\"e Richter, and Luke Seifert. Their feedback and +code reviews were indispensable. + +I would like to extend a special thanks to the following people. Shannon +Anderson, thank you for helping me navigate the challenges of social science and +engaging with the energy justice literature. Roberto Fairhurst, thanks for being +a great friend and roommate. I miss interrupting you at work (and I appreciate +your patience with my interruptions). Jeremy Mettler, although I credit +Professor Huff with officially starting my journey, I truly would not be here +without your persistent, friendly nudges. Thank you for always inviting me, for +being a trusted confidant, and a dear friend. Nataly Panczyk, I adore your +curiosity, kindness, and infectious enthusiasm. I am perpetually in awe of you. + +I would also like to acknowledge the many incredible professors at the +University of Illinois and at the College of Lake County. In particular, I +acknowledge Drs. Ryan Stock, Ana Mazilu, Josephine Faulk, Kristi Dameron, and +Steve Chamberlin for encouraging me to pursue graduate studies. + +Finally, I received financial support for this work from the Nuclear Regulatory +Commission Fellowship Program, the Felix T. Adler Fellowship from the NPRE +Department at UIUC, and the Union of Concerned Scientists Professional +Development Fund. \ No newline at end of file diff --git a/docs/1-introduction/1-introduction.tex b/docs/1-introduction/1-introduction.tex index 5d59f26..91cd9dd 100644 --- a/docs/1-introduction/1-introduction.tex +++ b/docs/1-introduction/1-introduction.tex @@ -1,3 +1,69 @@ +Solving climate change will require our globalized society to transition from +fossil fuel infrastructure to clean energy infrastructure. This transition must +also be done equitably and justly to prevent entrenching further injustices to +marginalized and vulnerable communities. Current energy planning tools optimize +for a singular cost objective which challenges decision-makers' ability to +balance competing priorities such as sustainability, employment, or land use. +This thesis develops the first multi-objective energy system optimization +framework, \ac{osier}, to enhance the democratic engagement necessary for a just +transition. + +\section{Research Objectives and Outcomes} + +\ac{osier} stores comprehensive information about energy generation technologies +(e.g., wind, solar, nuclear, natural gas, etc.), including their costs, carbon +emissions, land use requirements, generation variability, and other relevant +characteristics. Users provide energy demand data and specify multiple, +simultaneous competing goals (e.g., minimizing cost while maximizing local jobs +and minimizing \ac{co2} emissions). \ac{osier} then identifies multiple optimal +energy portfolios --- each specifying how much of each technology type should be +installed to meet energy demand --- that represent different balances between +these competing objectives. Rather than prescribing a single solution, +\ac{osier} generates a set of co-optimal solutions, called a \textit{Pareto +front}, where improving one objective necessarily worsens another, making +tradeoffs explicit and negotiable. + +It is important to clarify what \ac{osier} is and is not. \ac{osier} is a +prescriptive optimization tool, not a projection or forecasting model. It +identifies what should be built to achieve specified goals rather than +predicting what will happen under various scenarios. \ac{osier} cannot model +unquantifiable values that defy mathematical formulation, though it can optimize +proxy metrics (such as using job creation as a proxy for economic development). +The tool's power lies in making quantifiable tradeoffs explicit and structured, +thereby enhancing rather than replacing human deliberation. Beyond planning, +\ac{osier} can serve as an accountability tool, enabling communities and +advocacy organizations to evaluate whether implemented energy policies align +with stated priorities. + +This dissertation has three primary objectives. +\begin{enumerate} + \item Create an open-source tool that fills two major gaps in the energy + modeling literature by enabling \acf{moo} and by facilitating open dialogue + and thereby producing more just energy policies. This objective is supported + by Chapter \ref{chapter:lit-review}, Chapter \ref{chapter:osier}, Chapter + \ref{chapter:benchmark-results}, and Chapter \ref{chapter:examples}. + \item Demonstrate the importance of participatory and deliberative processes + for developing robust energy policy. This objective is supported by Chapter + \ref{chapter:lit-review} and Chapter \ref{chapter:communities} + \item Evaluate the role of energy modeling in decision-making processes and + assess the the usability of the aforementioned tool from the perspective of + energy planners, policymakers, and advocates in the state of Illinois. This + objective is supported by Chapter \ref{chapter:communities}. +\end{enumerate} + +Chapter \ref{chapter:lit-review} discusses the existing literature and work from +several spanning disciplines, including risk assessment, energy justice, and +energy system optimization. Chapter \ref{chapter:osier} details the technical +methods I applied to create a flexible multi-objective optimization framework +called \ac{osier}. Chapter \ref{chapter:benchmark-results} validates \ac{osier} +as an \ac{esom} by comparing its results against an established representative +\ac{esom}. Chapter \ref{chapter:examples} further demonstrates \ac{osier} with +two timely examples related to fuel cycle evaluation and data center +development. Finally, Chapter \ref{chapter:communities} presents and analyzes +the results from the Illinois case studies. + +\section{Motivation and Background} + Climate change produced by growing atmospheric CO$_2$ concentrations \cite{kane_atmospheric_1996} from human activity has led to increased exposure to hazards worldwide and domestically: increased storm severity, more extreme @@ -43,40 +109,47 @@ \FloatBarrier Therefore, to achieve the almost universally shared goal of halting and -reversing the effects of climate change \cite{united_nations_paris_2015}, our -globalized society must transition away from fossil fuels to clean energy -technologies such as nuclear and renewable energy and switch our transportation -systems to electric or hydrogen powered vehicles -\cite{intergovernmental_panel_on_climate_change_climate_2021}. - +reversing the effects of anthropogenic climate change +\cite{united_nations_paris_2015}, our globalized society must transition away +from fossil fuels to clean energy technologies such as nuclear and renewable +energy and switch our transportation systems to electric or hydrogen powered +vehicles \cite{intergovernmental_panel_on_climate_change_climate_2021}. Naturally, the importance of modeling energy systems to gain insight and form strategies to achieve this transition has grown. Especially since the spatial and temporal complexities are also expected to grow with greater penetration of \ac{vre}, such as solar and wind energy --- two energy sources that are spatially diffuse and temporally challenging to predict. A class of tools called \acp{esom} are the most common method for understanding our energy systems. -However, while climate change may be the most immediate existential threat to -society \cite{hickman_climate_2021}, it is a focusing issue that brings -challenges of equity and disproportional impacts to the fore. These latter -challenges have always been concomitant with our energy system, but energy -system modeling has largely ignored the ways energy systems mediate -socio-political power alongside transporting electrons and fuel. For example, -fossil fueled power plants have always been associated with air pollution and -worsened health for nearby communities --- commonly poorer and black -communities, which are already marginalized, evincing a violation of fairness -and justice principles \cite{mohai_which_2015}. Studying these consequences of -our energy choices historically belonged to domain of the environmental justice -literature \cite{schlosberg_reconceiving_2004,mohai_environmental_2009} but has -developed further into the discipline of energy justice -\cite{sovacool_energy_2015}. + +However, current \acp{esom} face critical limitations that hinder their ability +to support a just energy transition. Existing \acp{esom} optimize exclusively +for cost, providing decision-makers with a single ``best'' solution. Yet +real-world energy decisions involve tradeoffs among multiple competing +objectives, such as cost, carbon emissions, job creation, land use, and equity +considerations. This single-objective approach prevents meaningful public +engagement, since communities cannot deliberate over priorities when presented +with only one supposedly optimal answer. Further, while climate change is among +the most immediate existential threats to society \cite{hickman_climate_2021}, +it is also a focusing issue that brings challenges of equity and disproportional +impacts to the fore. These latter challenges have always been concomitant with +our energy system, but energy system modeling has largely ignored the ways +energy systems mediate socio-political power alongside transporting electrons +and fuel. For example, fossil fueled power plants have always been associated +with air pollution and worsened health for nearby communities --- commonly +poorer and black communities, which are already marginalized, evincing a +violation of fairness and justice principles \cite{mohai_which_2015}. +% Studying these consequences of our energy choices historically belonged to +% domain of the environmental justice literature +% \cite{schlosberg_reconceiving_2004,mohai_environmental_2009} but has developed +% further into the discipline of energy justice \cite{sovacool_energy_2015}. The energy transition will require a great expansion of our energy -infrastructure to build replace fossil-fueled energy with clean energy and -additional transmission networks to carry electrons. Although the technology to -accomplish this transition is mature, there is still local public opposition to -many energy projects \cite{wolsink_wind_2007}. Particularly in empowered and -affluent communities \cite{stokes_prevalence_2023}. \acp{esom} cannot capture -these ``human dimensions'' of energy systems despite some awareness of their +infrastructure to replace fossil-fueled energy with clean energy and additional +transmission networks to carry electrons. Although the technology to accomplish +this transition is mature, there is still local public opposition to many energy +projects \cite{wolsink_wind_2007}, particularly in empowered and affluent +communities \cite{stokes_prevalence_2023}. \acp{esom} cannot capture these +``human dimensions'' of energy systems despite some awareness of their importance \cite{pfenninger_energy_2014}. This is because they only optimize a single objective --- cost (or some other aggregated economic metric). People have and express preferences over many dimensions simultaneously. Further, even @@ -89,7 +162,6 @@ only recent advances in computing power have made them a practical method for energy modeling. Hobbs (1995) wrote: -% \cite{hobbs_optimization_1995}. \begin{quote} \blockcquote[p.12]{hobbs_optimization_1995}{Multi-objective methods are more appropriately used to help people to understand the problem better, explore @@ -111,35 +183,6 @@ The result is a step towards a holistic integration of energy justice and energy system engineering. -\section{Research Objectives} - -This dissertation has three primary objectives. -\begin{enumerate} - \item Create an open-source tool that fills two major gaps in the energy - modeling literature by enabling \acf{moo} and by facilitating open dialogue - and thereby producing more just energy policies. This objective is supported - by Chapter \ref{chapter:lit-review}, Chapter \ref{chapter:osier}, Chapter - \ref{chapter:benchmark-results}, and Chapter \ref{chapter:examples}. - \item Demonstrate the importance of participatory and deliberative processes - for developing robust energy policy. This objective is supported by Chapter - \ref{chapter:lit-review} and Chapter \ref{chapter:communities} - \item Evaluate the role of energy modeling in decision-making processes and - assess the the usability of the aforementioned tool from the perspective of - energy planners, policymakers, and advocates in the state of Illinois. This - objective is supported by Chapter \ref{chapter:communities}. -\end{enumerate} - -Chapter \ref{chapter:lit-review} discusses the existing literature and work from -several spanning disciplines, including risk assessment, energy justice, and -energy system optimization. Chapter \ref{chapter:osier} details the technical -methods I applied to create a flexible multi-objective optimization framework -called \ac{osier}. Chapter \ref{chapter:benchmark-results} validates \ac{osier} -as an \ac{esom} by comparing its results against an established representative -\ac{esom}. Chapter \ref{chapter:examples} further demonstrates \ac{osier} with -two timely examples related to fuel cycle evaluation and data center -development. Finally, Chapter \ref{chapter:communities} presents and analyzes -the results from the Illinois case studies. - \section{Reproducing this work} In an effort to adhere to the scientific computing best practices described by Wilson et al. 2014 \cite{wilson_best_2014}, I produced this document and all of diff --git a/docs/2-literature/21-esoms.tex b/docs/2-literature/21-esoms.tex index d87dab3..07c61a8 100644 --- a/docs/2-literature/21-esoms.tex +++ b/docs/2-literature/21-esoms.tex @@ -8,7 +8,7 @@ \section{Modeling Energy Systems} available \acp{esom} seldom consider the role of energy systems in creating and maintaining inequitable distributions of burdens. \acp{esom} vary significantly by the energy sectors they choose to model, the degree of physical detail, -uncertainty quanitification, and forecasting capabilities. Table \ref{tab:esoms} +uncertainty quanitification, and forecasting capabilities. Table~\ref{tab:esoms} summarizes the capabilities for a comprehensive list of energy system analysis tools. These tools are approximately sorted by mathematical formulation, e.g. explicit optimization or simulation. The ``\ac{milp}'' column indicates whether @@ -20,7 +20,7 @@ \section{Modeling Energy Systems} None of the tools in Table \ref{tab:esoms} are designed to handle simultaneous optimization (i.e., \ac{moo}). For those modeling frameworks that have an ``objective'' in Table \ref{tab:esoms}, virtually all of them optimize system -costs. EnergyScope is the only exception to this, which allows users to optimize +costs. EnergyScope is the only exception to this; it allows users to optimize \ac{ghg} emissions \cite{limpens_energyscope_2019}. \textcolor{black}{The ``uncertainty'' column indicates a feature to algorithmically generate model runs for testing either parametric or structural uncertainties. @@ -153,7 +153,7 @@ \subsection{Economic Dispatch and Social Welfare} \cite{richstein_cross-border_2014}}. This simplification is valid because demand for energy is highly inelastic \cite{heuberger_power_2017, eia_price_2021, labandeira_meta-analysis_2017, csereklyei_price_2020}. Figure -\ref{fig:inelastic} shows the impact of highly inelastic demand. +\ref{fig:inelastic} shows the impact of completely inelastic demand. \begin{figure}[H] \centering diff --git a/docs/2-literature/23-social-movements.tex b/docs/2-literature/23-social-movements.tex index 3d20930..f20ea87 100644 --- a/docs/2-literature/23-social-movements.tex +++ b/docs/2-literature/23-social-movements.tex @@ -18,7 +18,7 @@ \section{Characterizing the Problem of Climate Change} vulnerabilities to its hazards are not uniformly distributed. On the contrary, the people and communities most likely to be harmed by climate change are already harmed by social inequities, a feature called -\textit{disproportionality} \cite{islam_climate_2017}. For example, low-income +\textit{disproportionality}~\cite{islam_climate_2017}. For example, low-income communities have fewer resources to respond to natural hazards, such as hurricanes, floods, or fires, and therefore take longer to recover, compared to a communities with relatively greater wealth. Recent work from Simpson et al. @@ -37,11 +37,11 @@ \section{Characterizing the Problem of Climate Change} dehghanpour_agent-based_2018} to community responses \cite{paterson_community-based_2019, elmallah_frontlining_2022}, national level policies \cite{roelfsema_taking_2020, fawzy_strategies_2020}, and levels in -between. Paterson and Charles \cite{paterson_community-based_2019} developed a +between. Paterson and Charles developed a descriptive typology for community-based hazard responses that also applies to national and global scales. The five response categories making up this typology -are: -\cite{paterson_community-based_2019} +are +\cite{paterson_community-based_2019}: \begin{enumerate} \item individual and material well-being, which seek to meet individuals' basic needs such as food, water, and shelter, as well as livelihood and diff --git a/docs/2025-dotson-thesis.tex b/docs/2025-dotson-thesis.tex index d188101..825dd8d 100644 --- a/docs/2025-dotson-thesis.tex +++ b/docs/2025-dotson-thesis.tex @@ -132,21 +132,9 @@ \hspace{10em} Joyner Lucas\\ \end{dedication} -% \begin{acknowledgments} -% People to acknowledge -% \begin{itemize} -% \item Denia Djoki\'c -% \item Shannon Anderson (UIUC) -% \item Haley Williams (UC Berkeley) -% \item Nataly Panczyk -% \item Nathan Ryan -% \item Jeremy Mettler -% \item Gwendolyn Chee -% \item Roberto Fairhurst -% \item Members of ARFC - % \item John Albers (for securing interviews) -% \end{itemize} -% \end{acknowledgments} +\begin{acknowledgments} +\input{02-acks.tex} +\end{acknowledgments} { \hypersetup{linkcolor=black} % disable link coloring locally diff --git a/docs/5-examples/51-set-tool.tex b/docs/5-examples/51-set-tool.tex index 6027ea6..659b671 100644 --- a/docs/5-examples/51-set-tool.tex +++ b/docs/5-examples/51-set-tool.tex @@ -224,7 +224,7 @@ \subsection{Results} \caption{Summary of \ac{set} and \ac{osier} data. Highlighted rows indicate disagreement between \ac{osier} and \ac{set} results.} \label{tab:summary-data} - \resizebox*{\textwidth}{!}{\input{tables/summary_data.tex}} + \resizebox*{\textwidth}{!}{\input{tables/summary_data_highlighted.tex}} \end{table} \FloatBarrier diff --git a/docs/tables/metric_data.tex b/docs/tables/metric_data.tex deleted file mode 100644 index 1404e92..0000000 --- a/docs/tables/metric_data.tex +++ /dev/null @@ -1,47 +0,0 @@ -\begin{tabular}{lrrrrrrrrrrrrrrrrr} -\toprule - & mass snf hlw disposal [t/GWe-yr] & activity at 100 yrs [Ci/GWe-yr] & activity at 100k years [Ci/GWe-yr] & mass du ru rth disposal [t/GWe-yr] & volume llw disposal [m3] & safety challenges [Data] & land use [km2/GWe-yr] & water use [ML/GWe-yr] & carbon dioxide emissions [CO2/GWe-yr] & total worker dose [person-mSv/GWe-yr] & natural uranium required [t/GWe-yr] & natural thorium utilization [t/GWe-yr] & development cost [Data] & development time [Data] & foak cost [Data] & incompatibility [Data] & unfamiliarity [Data] \\ -EG & & & & & & & & & & & & & & & & & \\ -\midrule -EG01 & 21.92 & 1340000.00 & 1650.00 & 166.67 & 398.84 & 0.00 & 0.17 & 23891.00 & 44.10 & 1.10 & 188.63 & 0.00 & 0.00 & 0.00 & 0.00 & 0.00 & 0.00 \\ -EG02 & 9.22 & 1430000.00 & 2050.00 & 296.48 & 414.23 & 0.00 & 0.21 & 23994.00 & 54.90 & 1.28 & 305.73 & 0.00 & 1.00 & 1.00 & 1.00 & 0.00 & 0.00 \\ -EG03 & 147.57 & 1340000.00 & 2460.00 & 0.00 & 373.00 & 0.00 & 0.25 & 23924.00 & 87.10 & 2.41 & 147.87 & 0.00 & 0.00 & 0.00 & 0.00 & 1.00 & 1.00 \\ -EG04 & 3.99 & 805000.00 & 1640.00 & 0.00 & 278.60 & 0.00 & 0.08 & 23706.00 & 13.50 & 1.22 & 4.00 & 0.00 & 2.00 & 2.00 & 2.00 & 2.00 & 2.00 \\ -EG05 & 11.41 & 1390000.00 & 7380.00 & 282.41 & 412.58 & 0.00 & 0.21 & 23981.00 & 53.90 & 1.27 & 289.20 & 4.65 & 1.00 & 1.00 & 1.00 & 3.00 & 3.00 \\ -EG06 & 9.86 & 1770000.00 & 13000.00 & 0.00 & 835.32 & 1.00 & 0.12 & 31308.00 & 59.10 & 2.81 & 0.00 & 9.88 & 3.00 & 2.00 & 3.00 & 2.00 & 3.00 \\ -EG07 & 31.97 & 1780000.00 & 9480.00 & 0.00 & 342.20 & 1.00 & 0.17 & 37831.00 & 45.70 & 4.54 & 32.03 & 0.00 & 3.00 & 2.00 & 3.00 & 2.00 & 3.00 \\ -EG08 & 1.62 & 909000.00 & 1690.00 & 0.00 & 826.47 & 1.00 & 0.11 & 33640.00 & 25.40 & 2.93 & 0.00 & 1.62 & 3.00 & 2.00 & 3.00 & 2.00 & 3.00 \\ -EG09 & 2.24 & 882000.00 & 942.00 & 0.00 & 359.00 & 0.00 & 0.08 & 23709.00 & 17.50 & 1.21 & 2.25 & 0.00 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG10 & 10.84 & 1420000.00 & 10800.00 & 0.00 & 2796.69 & 0.00 & 0.10 & 23767.00 & 79.50 & 0.61 & 0.00 & 10.86 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG11 & 4.54 & 1020000.00 & 9140.00 & 104.29 & 401.01 & 0.00 & 0.13 & 23810.00 & 31.80 & 1.40 & 106.80 & 2.05 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG12 & 7.27 & 1400000.00 & 1420.00 & 104.96 & 1646.12 & 0.00 & 0.14 & 23912.00 & 113.30 & 2.02 & 112.46 & 0.00 & 4.00 & 3.00 & 3.00 & 1.00 & 2.00 \\ -EG13 & 3.42 & 1330000.00 & 1320.00 & 167.69 & 621.88 & 0.00 & 0.16 & 23897.00 & 52.70 & 1.12 & 171.16 & 0.00 & 4.00 & 3.00 & 3.00 & 3.00 & 2.00 \\ -EG14 & 8.34 & 1140000.00 & 1240.00 & 0.00 & 618.99 & 0.00 & 0.09 & 23728.00 & 28.50 & 1.18 & 8.38 & 0.00 & 2.00 & 2.00 & 4.00 & 1.00 & 2.00 \\ -EG15 & 2.11 & 1240000.00 & 1140.00 & 169.81 & 611.53 & 0.00 & 0.15 & 23881.00 & 48.80 & 1.12 & 171.96 & 0.00 & 2.00 & 2.00 & 3.00 & 3.00 & 2.00 \\ -EG16 & 1.52 & 1260000.00 & 1030.00 & 175.99 & 630.76 & 1.00 & 0.15 & 24495.00 & 50.90 & 1.26 & 177.56 & 0.00 & 3.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG17 & 3.37 & 1330000.00 & 3090.00 & 170.88 & 624.09 & 0.00 & 0.15 & 23883.00 & 49.90 & 1.10 & 172.41 & 1.88 & 2.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG18 & 6.95 & 1450000.00 & 6950.00 & 148.60 & 567.72 & 0.00 & 0.15 & 23861.00 & 43.90 & 1.04 & 152.16 & 3.42 & 3.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG19 & 2.59 & 1140000.00 & 765.00 & 65.54 & 2134.12 & 0.00 & 0.12 & 23897.00 & 127.90 & 2.04 & 68.41 & 0.00 & 4.00 & 3.00 & 3.00 & 1.00 & 2.00 \\ -EG20 & 2.61 & 1050000.00 & 557.00 & 69.36 & 2343.80 & 0.00 & 0.12 & 23909.00 & 134.90 & 2.06 & 72.26 & 0.00 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG21 & 1.46 & 1140000.00 & 800.00 & 157.51 & 678.04 & 0.00 & 0.14 & 23874.00 & 51.10 & 1.05 & 159.02 & 0.00 & 4.00 & 3.00 & 3.00 & 3.00 & 2.00 \\ -EG22 & 1.39 & 994000.00 & 581.00 & 175.42 & 691.19 & 0.00 & 0.15 & 23891.00 & 53.30 & 1.08 & 176.86 & 0.00 & 3.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG23 & 1.31 & 1030000.00 & 728.00 & 0.00 & 549.49 & 0.00 & 0.08 & 23717.00 & 24.10 & 1.21 & 1.34 & 0.00 & 2.00 & 2.00 & 3.00 & 2.00 & 2.00 \\ -EG24 & 1.34 & 1040000.00 & 606.00 & 0.00 & 561.42 & 0.00 & 0.08 & 23717.00 & 24.10 & 1.21 & 1.37 & 0.00 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG25 & 1.51 & 1300000.00 & 864.00 & 112.81 & 853.46 & 0.00 & 0.13 & 23839.00 & 51.50 & 0.95 & 113.54 & 0.85 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG26 & 1.25 & 1300000.00 & 1370.00 & 0.00 & 2830.60 & 0.00 & 0.09 & 23762.00 & 77.30 & 0.55 & 0.00 & 1.25 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG27 & 2.25 & 1300000.00 & 3620.00 & 184.74 & 1160.73 & 0.00 & 0.16 & 23909.00 & 67.30 & 1.54 & 186.62 & 0.45 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG28 & 1.58 & 1180000.00 & 3010.00 & 0.00 & 1168.72 & 0.00 & 0.09 & 23748.00 & 50.10 & 1.24 & 0.00 & 1.68 & 3.00 & 2.00 & 4.00 & 2.00 & 3.00 \\ -EG29 & 1.45 & 1130000.00 & 917.00 & 0.00 & 662.22 & 0.00 & 0.08 & 23725.00 & 30.50 & 1.02 & 1.49 & 0.00 & 2.00 & 2.00 & 4.00 & 1.00 & 2.00 \\ -EG30 & 1.30 & 954000.00 & 571.00 & 0.00 & 602.99 & 0.00 & 0.08 & 23719.00 & 26.10 & 1.14 & 1.33 & 0.00 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG31 & 1.37 & 1180000.00 & 697.00 & 136.55 & 567.85 & 0.00 & 0.13 & 23847.00 & 42.70 & 1.13 & 137.96 & 0.00 & 2.00 & 2.00 & 3.00 & 1.00 & 2.00 \\ -EG32 & 1.32 & 1080000.00 & 519.00 & 127.15 & 579.27 & 0.00 & 0.13 & 23838.00 & 41.60 & 1.13 & 128.50 & 0.00 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG33 & 1.59 & 1220000.00 & 879.00 & 0.00 & 753.51 & 1.00 & 0.10 & 27521.00 & 39.10 & 2.84 & 1.64 & 0.00 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG34 & 1.50 & 1070000.00 & 669.00 & 0.00 & 696.42 & 1.00 & 0.09 & 27104.00 & 38.20 & 2.70 & 1.55 & 0.00 & 5.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG35 & 1.42 & 1200000.00 & 741.00 & 163.92 & 621.45 & 1.00 & 0.15 & 24957.00 & 49.50 & 1.43 & 165.37 & 0.00 & 3.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG36 & 1.39 & 1020000.00 & 535.00 & 149.10 & 735.16 & 1.00 & 0.14 & 23887.00 & 49.70 & 1.14 & 150.54 & 0.00 & 5.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG37 & 1.33 & 1120000.00 & 762.00 & 23.42 & 624.52 & 0.00 & 0.09 & 23717.00 & 31.90 & 1.01 & 24.36 & 0.43 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG38 & 1.79 & 1270000.00 & 3170.00 & 0.00 & 1518.73 & 1.00 & 0.09 & 23770.00 & 67.00 & 1.18 & 0.00 & 1.93 & 3.00 & 2.00 & 4.00 & 1.00 & 3.00 \\ -EG39 & 1.40 & 1300000.00 & 763.00 & 114.17 & 677.49 & 1.00 & 0.13 & 24623.00 & 41.70 & 1.14 & 114.85 & 0.75 & 5.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -EG40 & 1.47 & 1490000.00 & 1280.00 & 0.00 & 592.98 & 1.00 & 0.09 & 27306.00 & 29.40 & 1.49 & 0.00 & 1.51 & 5.00 & 2.00 & 4.00 & 3.00 & 3.00 \\ -\bottomrule -\end{tabular} diff --git a/docs/tables/summary_data.tex b/docs/tables/summary_data.tex index aa3a4bf..7dae8fc 100644 --- a/docs/tables/summary_data.tex +++ b/docs/tables/summary_data.tex @@ -3,62 +3,41 @@ & Fuel Cycle Type & Reactor Type & EST Conclusion & Pareto Optimal \\ EG & & & & \\ \midrule -\rowcolor{orange} EG01 & once-through & PWR & Not promising & True \\ -\rowcolor{orange} EG02 & once-through & HTGR & Not promising & True \\ -\rowcolor{orange} EG03 & once-through & HWR & Not promising & True \\ -\rowcolor{lime} EG04 & once-through & SFR & Less promising & True \\ -\rowcolor{orange} EG05 & once-through & HTGR & Not promising & True \\ EG06 & once-through & FFH & Potentially promising & True \\ -\rowcolor{yellow} EG07 & once-through & ADS & Potentially promising & False \\ EG08 & once-through & FFH & Potentially promising & True \\ EG09 & limited-recycle & SFR & Potentially promising & True \\ EG10 & limited-recycle & MSR & Less promising & True \\ EG11 & limited-recycle & SFR & Not promising & False \\ -\rowcolor{orange} EG12 & limited-recycle & HWR & Not promising & True \\ -\rowcolor{orange} EG13 & limited-recycle & PWR & Not promising & True \\ EG14 & limited-recycle & SFR & Less promising & True \\ -\rowcolor{orange} EG15 & limited-recycle & SFR & Not promising & True \\ EG16 & limited-recycle & ADS & Not promising & False \\ -\rowcolor{orange} EG17 & limited-recycle & PWR & Not promising & True \\ -\rowcolor{orange} EG18 & limited-recycle & PWR & Not promising & True \\ -\rowcolor{orange} EG19 & continuous-recycle & HWR & Not promising & True \\ -\rowcolor{orange} EG20 & continuous-recycle & HWR & Not promising & True \\ -\rowcolor{orange} EG21 & continuous-recycle & PWR & Not promising & True \\ -\rowcolor{orange} EG22 & continuous-recycle & PWR & Not promising & True \\ EG23 & continuous-recycle & SFR & Most promising & True \\ EG24 & continuous-recycle & SFR & Most promising & True \\ -\rowcolor{orange} EG25 & continuous-recycle & PWR & Not promising & True \\ EG26 & continuous-recycle & MSR & Potentially promising & True \\ EG27 & continuous-recycle & SFR & Not promising & False \\ EG28 & continuous-recycle & SFR & Potentially promising & True \\ EG29 & continuous-recycle & SFR & Most promising & True \\ EG30 & continuous-recycle & SFR & Most promising & True \\ -\rowcolor{orange} EG31 & continuous-recycle & SFR & Not promising & True \\ -\rowcolor{orange} EG32 & continuous-recycle & SFR & Not promising & True \\ -\rowcolor{yellow} EG33 & continuous-recycle & ADS & Potentially promising & False \\ -\rowcolor{yellow} EG34 & continuous-recycle & ADS & Potentially promising & False \\ EG35 & continuous-recycle & ADS & Not promising & False \\ -\rowcolor{orange} EG36 & continuous-recycle & ADS & Not promising & True \\ EG37 & continuous-recycle & SFR & Potentially promising & True \\ EG38 & continuous-recycle & SFR & Potentially promising & True \\ diff --git a/docs/tables/summary_data_highlighted.tex b/docs/tables/summary_data_highlighted.tex new file mode 100644 index 0000000..dc62245 --- /dev/null +++ b/docs/tables/summary_data_highlighted.tex @@ -0,0 +1,68 @@ +\begin{tabular}{lllll} +\toprule + & Fuel Cycle Type & Reactor Type & EST Conclusion & Pareto Optimal \\ +EG & & & & \\ +\midrule +\rowcolor{orange} +EG01 & once-through & PWR & Not promising & True \\ +\rowcolor{orange} +EG02 & once-through & HTGR & Not promising & True \\ +\rowcolor{orange} +EG03 & once-through & HWR & Not promising & True \\ +\rowcolor{lime} +EG04 & once-through & SFR & Less promising & True \\ +\rowcolor{orange} +EG05 & once-through & HTGR & Not promising & True \\ +EG06 & once-through & FFH & Potentially promising & True \\ +\rowcolor{yellow} +EG07 & once-through & ADS & Potentially promising & False \\ +EG08 & once-through & FFH & Potentially promising & True \\ +EG09 & limited-recycle & SFR & Potentially promising & True \\ +EG10 & limited-recycle & MSR & Less promising & True \\ +EG11 & limited-recycle & SFR & Not promising & False \\ +\rowcolor{orange} +EG12 & limited-recycle & HWR & Not promising & True \\ +\rowcolor{orange} +EG13 & limited-recycle & PWR & Not promising & True \\ +EG14 & limited-recycle & SFR & Less promising & True \\ +\rowcolor{orange} +EG15 & limited-recycle & SFR & Not promising & True \\ +EG16 & limited-recycle & ADS & Not promising & False \\ +\rowcolor{orange} +EG17 & limited-recycle & PWR & Not promising & True \\ +\rowcolor{orange} +EG18 & limited-recycle & PWR & Not promising & True \\ +\rowcolor{orange} +EG19 & continuous-recycle & HWR & Not promising & True \\ +\rowcolor{orange} +EG20 & continuous-recycle & HWR & Not promising & True \\ +\rowcolor{orange} +EG21 & continuous-recycle & PWR & Not promising & True \\ +\rowcolor{orange} +EG22 & continuous-recycle & PWR & Not promising & True \\ +EG23 & continuous-recycle & SFR & Most promising & True \\ +EG24 & continuous-recycle & SFR & Most promising & True \\ +\rowcolor{orange} +EG25 & continuous-recycle & PWR & Not promising & True \\ +EG26 & continuous-recycle & MSR & Potentially promising & True \\ +EG27 & continuous-recycle & SFR & Not promising & False \\ +EG28 & continuous-recycle & SFR & Potentially promising & True \\ +EG29 & continuous-recycle & SFR & Most promising & True \\ +EG30 & continuous-recycle & SFR & Most promising & True \\ +\rowcolor{orange} +EG31 & continuous-recycle & SFR & Not promising & True \\ +\rowcolor{orange} +EG32 & continuous-recycle & SFR & Not promising & True \\ +\rowcolor{yellow} +EG33 & continuous-recycle & ADS & Potentially promising & False \\ +\rowcolor{yellow} +EG34 & continuous-recycle & ADS & Potentially promising & False \\ +EG35 & continuous-recycle & ADS & Not promising & False \\ +\rowcolor{orange} +EG36 & continuous-recycle & ADS & Not promising & True \\ +EG37 & continuous-recycle & SFR & Potentially promising & True \\ +EG38 & continuous-recycle & SFR & Potentially promising & True \\ +EG39 & continuous-recycle & ADS & Not promising & False \\ +EG40 & continuous-recycle & ADS & Potentially promising & True \\ +\bottomrule +\end{tabular} \ No newline at end of file diff --git a/environment.yml b/environment.yml index 48ab524..aeb3025 100644 --- a/environment.yml +++ b/environment.yml @@ -54,7 +54,7 @@ dependencies: - deap - dill - openpyxl - - git+https://github.com/arfc/osier.git + - osier - highspy - python-dotenv - git+https://github.com/kmax12/gridstatus.git