METAPAPER CERF – A Geospatial Model for Assessing Future Energy Production Technology Expansion Feasibility

Chris R. Vernon1, Nino Zuljevic1, Jennie S. Rice1, Timothy E. Seiple1, Michael C. W. Kintner-Meyer1, Nathalie Voisin1, Ian P. Kraucunas1, Jin Chunlian1, Jarrod Olson1, Laurel Schmidt1, Scott L. Morris1 and Pralit Patel2 1 Pacific Northwest National Laboratory, Richland, WA 99352, US 2 Joint Global Change Research Institute, Pacific Northwest National laboratory, College Park, Maryland, US Corresponding author: Chris Vernon (chris.vernon@pnnl.gov)

The Capacity Expansion Regional Feasibility (CERF) model is written in Python and C++ and was built to determine the on-the-ground feasibility of achieving energy system expansion plans generated by integrated human-Earth systems models or regional capacity expansion models.Energy expansion projections from such models are typically limited to fairly large regions (e.g., balancing authorities or control regions) and do not account for on-the-ground barriers such as protected lands, potentially hazardous areas, highly populated areas, water availability, proximity to Class 1 airsheds, and other siting constraints that may impede the ability to achieve a planned expansion.CERF was developed to evaluate the feasibility of siting a mix of energy technologies over the contiguous United States of America (CONUS) at a resolution of 1 km 2 while considering current and future socioeconomic conditions, energy demands, land use, environmental regulations, and water availability.The information gleaned from determining the feasibility of technology expansion plans can be used to provide insight into factors that may create or exacerbate vulnerabilities related to energy system resilience.
CERF is unique in that it determines feasible siting locations using a combination of on-the-ground suitability constraints (e.g., protected lands) with simulated economic competition between energy technologies using an algorithm that minimizes net locational cost (NLC) to choose specific siting locations within suitable areas. 1 The NLCs are calculated for each technology and are influenced by the distance to existing transmission infrastructure, technology-specific marginal operating costs, and technology-and location-specific marginal energy values.In effect, the algorithm posits the existence of a regional planner who determines the costs and benefits of having new generation in different locations and sites power plants in order from lowest to highest NLC.
Technologies that share the same suitable areas compete for siting locations based on the locational economics.
CERF was designed to receive input from other models regarding the amount and type of power plants to be sited in a particular geographic area (e.g., in each balancing authority) as well as other variables such as water availability and locational marginal energy prices.CERF also "inherits" the assumptions of these models; for example, water availability constraints can be static or based on the output from an Earth system model using a specific scenario of future Earth system changes and corresponding time-evolving water availability.
CERF can currently site 17 energy technologies. 2Each technology has spatial suitability rasters and technology-specific parameters that can be set by the user.A comprehensive literature review 3 was conducted to determine which suitability constraints should be applied for each technology.A suitability raster containing suitable and unsuitable areas that are common to all technologies is provided with CERF. 4 Technology-specific suitability data are also provided. 5Figure 1 demonstrates the combined suitable area that is common to all technologies as mapped onto CERF's 1 km 2 grid over the CONUS.This common suitability raster is then combined with technology-specific suitability rasters (Figure 2; example for nuclear power) to yield grid cells that are suitable for siting.Suitability constraints can be added by the user to specific technologies or to those that are common to all technologies, depending on research needs.The NLC of each grid cell is then used to determine economically feasible locations for siting in grid cells that are suitable for siting. 6  Implementation and architecture CERF is designed as a Python package that can be called in script after the user has installed the package on a Windows 7 OS.The CERF model is parameterized using an input configuration file, a required set of input XML files, and spatial data files (detailed in the Configuration section below).Ensure that local paths for the spatial data files in the technology_suitabilitymask_paths.xmlhave been set before a run.After these files have been prepared, CERF can be called from other Python scripts once installed as demonstrated in the example.pyscript 7 which is included with the package.This can be conducted as follows: # <pth> is the full path to the configuration file ini = "<pth>/config.ini" After m.execute() is called, CERF will process each state and technology sequentially to determine the geographic coordinates, net locational costs, interconnection costs, and net operational value of each power plant.This data is saved to an XML file that is ingested by CERF's outputs module to create summary graphics and tabular data as described in the outputs section below.A log file is also created during runtime which contains any pertinent runtime information.
The SAGA GIS [1] C++ API was used to provide spatial functionality related to ensuring consistent geographic projection use, calculating interconnection distance, and extracting masks of raster data.We extended SAGA GIS by developing a custom C++ module to calculate a local sum of a stacked group of rasters.This allows us to determine suitability for each 1 km 2 grid cell while maintaining the spatial integrity of the data (Figure 3).The C++ component of CERF was compiled for use in Windows 7 only and is called and parameterized through CERF's Python model.pywrapper.

Example input datasets
CERF is designed to test the suitability and feasibility of "proposed" capacity expansion plans; therefore, it requires a range of input data both in terms of those plans as well as how the suitability and feasibility criteria might change over time.The example input dataset provided with CERF was built to demonstrate the uniqueness and functionality of CERF.A modeled energy technology expansion plan and technology-specific assumptions, in the context of a specific future scenario of environmental and sociological change (namely, the Representative Concentration Pathway, or RCP, 8.5 [2]), were generated by the US 50-state version of the Global Change Assessment Model (GCAM) [3][4].Gridded water availability data was derived from a large-scale Water Management (WM) model [5][6] driven by an Earth system model using the same RCP 8.5 scenario assumptions.Locational marginal prices were provided by the PROMOD IV production cost model [7].
Publicly available datasets for transmission lines and gas pipelines were used in this demonstration as provided by the U.S. Energy Information Administration (EIA) and the Homeland Infrastructure Foundation-Level Data (HIFLD) [8][9].These datasets influence the interconnection cost for each site and play a role in determining NLC; therefore, we recommend obtaining more detailed representations of both transmission lines and gas pipelines if they are available.The solar (CSP) suitability raster simply adopted the common suitability criteria that applies to all thermoelectric technologies and should be enhanced to capture the idiosyncrasies of siting CSP.
Figure 4 demonstrates illustrative results for nuclear siting feasibility from the example data for the Eastern Interconnection in reference to a combination of  The following describes the requirements and format of each input.

Constants
This file contains constant assumptions that are applied in CERF.The file name should be constants.xml.Table 1 describes the required parameters for the constants.xmlfile.

Expansion Plan
This file contains the expansion plan expected capacity for each technology per state.Table 2 describes the required parameters for the expansionplan.xmlfile.

Utility Zone Data
This file contains specifics related to each utility zone.Table 3 describes the required parameters for the powerzones.xmlfile.

States
This file contains information for the states referenced in the expansion plan.Table 4 describes the required parameters for the states.xmlfile.

Technologies
This file contains information for each technology.This information is usually derived from the technology assumptions utilized in the model providing the technology expansion plans.Table 5 describes the required parameters for the technologies.xmlfile.

Suitability Data
This file contains the full path reference to each technologies suitability raster.

Configuration file
This file is the main configuration used to run CERF.Table 7 describes the required parameters for the configuration file.

Preparing Suitability Rasters
Rasters for spatial suitability are required to conform to the format referenced in Table 8.Suitability rasters can be prepared using any GIS.

CERF outputs
CERF outputs are generated to help the user to interpret, summarize, and visualize CERF's results.The main categories of CERF's outputs can be analyzed at the site, technology, state, or project level for: siting feasibility, interconnection cost, net locational cost, and net operating value.A geographic reference (x, y coordinates) is also included for each site so the user may plot these in a geographic information system to conduct locational analysis.
The outputs may be generated using CERF's outputs module.Usage is as follows to create a heatmap showing all states and technologies relative to one another for interconnection cost.The Python help command may be used with any method in the class to view parameterization possibilities and a description of the method.Currently supported methods are described in Table 9.

Installation
CERF can be installed as follows: 1. CERF's GitHub repository uses the Git Large File Storage 9 (LFS) extension.Run the following command before cloning if you do not already have Git LFS installed: git lfs install.interconnection_cost_gas Float for the capital cost of gas interconnection in $K/km.

Figure 1 :
Figure 1: Barriers to siting that are common to all thermo-electric technologies.Unsuitable area where no siting can occur is represented by dark blue; suitable area where siting can potentially occur is represented by yellow.

Figure 2 :
Figure 2: Barriers to siting that are common to all thermo-electric technologies combined with technology-specific barriers for nuclear plants.Unsuitable area where no siting can occur is represented by dark blue; suitable area where siting can potentially occur is represented by yellow.

Figure 3 : 8 Figure 5
Figure 3: Custom SAGA function to compute grid cell suitability.

Figure 4 :
Figure 4: Nuclear siting feasibility in the Eastern Interconnection (white polygon) in reference to suitability.Unsuitable area where no siting can occur is represented by dark blue; suitable area where siting can potentially occur is represented by yellow, and nuclear sites feasible based on econometrics and technology-specific requirements for the Eastern Interconnection are in magenta.

Figure 7 :
Figure 7: Bar plot showing planned versus achieved sitingfor each technology for Virginia from CERF's example data.This plot is used to detail when siting is not feasible for a target state.

Figure 8 :
Figure 8: Jittered strip plot showing interconnection cost per site for each technology for Virginia from CERF's example data.

Table 6
describes the required parameters for the technology_suitabilitymask_ paths.xmlfile.

Table 1 :
Parameters and descriptions for CERF's constants.xmlinputfile.Float from 0.0 to 1.0.The time value of money in real terms.carbon_taxFloat.The fee imposed on the burning of carbon-based fuels in $/ton.carbon_tax_escalationTheannual escalation rate for carbon tax.From 0.0 to 1.0.
shapeidInteger ID of the spatial reference referred to in states.xml.nameTheabbreviatedname of the power zone as a string.lmpFloat of the annualized locational marginal price for the target zone $/MWh.descriptionStringdescription of the utility zone.<lmps><cf>Float capacity factor for each LMP percentile.

Table 4 :
Parameters and descriptions for CERF's states.xmlinput file.
shapeid Unique integer ID of the feature in the input shapefile.<value>String name of the state.

Table 6 :
Parameters and descriptions for CERF's technology_suitabilitymask_paths.xml input file.

Table 7 :
Parameters and descriptions for CERF's configuration file.

Table 5 :
Parameters and descriptions for CERF's technologies.xmlinput file.Float for CO 2 content of the fuel and the heat rate of the technology in Tons/MWh.interconnection_cost_per_km Float for the capital cost of interconnection in $K/km.
categoryType of fuel (e.g., gas, coal, etc.).fuel_indexString reference for fuel index type.variable_om_2005Floatvalueforvariable operation and maintenance costs of capacity use in $/MWh.siting_bufferBuffer to place around a plant once sited.carbon_capture_rateFloatfor the rate from 0 to 1 of carbon capture.

Table 9 :
Method name and description of for output options in the Outputs class.Figure6) showing all states and technologies relative to one another for a target metric.Can produce a heatmap for interconnection cost (ic), net locational cost (nlc), or net operating value (nov).export_planned_vs_sitedExports a CSV file of sites for each state and technology that were planned but not feasible to site.Returns a Pandas Data Frame.plot_planned_vs_sitedCreates a bar plot (Figure7) of either planned versus sited number of site or capacity for a target state.eval_metric_per_techCreatesa jittered strip plot (Figure8) of sites per technology for a target state.Can produce a plot for interconnection cost (ic), net locational cost (nlc), or net operating value (nov).