Version 2 Summary #288
dt-woods
started this conversation in
Show and tell
Replies: 2 comments 5 replies
-
@bl-young or @m-jamieson, let me know if you want to review the PR #310; otherwise, 🎊 on version 2.0 |
Beta Was this translation helpful? Give feedback.
3 replies
-
The ElectricityLCI model run for 2022 is now public (note the DOI URLs may take 24–48 hr to publish).
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
The following summarizes the updates and improvements made to the ElectricityLCI Python package as completed towards the release of version 2, which included over 20 new issues on GitHub over the past six months1. The updates since March 2024 resolve over 16 tracked issues with the goals of preserving the 2016 electricity baseline model run and refining the 2022 baseline. Several quality improvements, fixes, documentation updates, and miscellaneous changes to the code were made over this period. The key changes include:
_read_fedefl()
#257).get_generation_process_df
method (i.e., skips aggregation for facility-level analyses).Unresolved new issues include failing to read the XML format of EIA's public coal workbooks (#230), adding energy storage to generation or storage mix process (#245), identifying unlinked coal and natural gas upstream processes (#252), addressing high tritium emissions in coal and renewable inventories (#255), and aggregating U.S. average inventory by fuel type (#256). In addition to these unresolved issues, a current list of challenges is discussed in the Appendix.
Additional key changes and improvements to the code base include the following, which were completed in the development branch in the months prior to March 2024:
Limitations and challenges remaining with the proposed code base are outlined in Appendix A and in the unresolved issues on GitHub (i.e., not marked as "in v2"). The 2021–2022 baseline inventories were created using the proposed version 2 of the code. Select results from these runs are shown in Appendix B, including the reproducibility of the same model config across systems.
Appendix A
The Single Citation Problem
The electricity baseline, as it is found on the Federal LCA Commons, points to a single source, "Ingwersen et al. electricitylci: A Python package for U.S. regionalized electricity life cycle inventory data creation," which is labeled as "in development." This work is abandoned. In the interim, the following citation was recommended: "EPA, 'Electricity Life Cycle Inventory,' March 2022 [Online]. Available: 43ab081"
In 2024, a meeting was held between NETL and EPA to discuss the ElectricityLCI manuscript. A historical manuscript draft was shared between parties. NETL (if resources are available) intends to complete the manuscript, which will focus on describing the tool.
The Data Vintage Problem
In eLCI v2, the coal baseline inventory was updated to reflect the latest literature (see here). Users can select between the previous and current coal model inventories (both are hosted in the Python package's data).
A select number of renewable models (e.g., solar PV, solar thermal, and wind) were updated and corrected. Users can select between renewable model vintages. Inventories for geothermal, hydropower, and nuclear are unchanged.
The 2020 natural gas baseline (published in 2025) is not currently incorporated in v2 (see here for model details).
As more life cycle inventories are added to the model space, it becomes a challenge to host, organize, and track. A stretch goal for v2 is to move to a new data store for inventory models on NETL's Energy Data eXchange (EDX).
The EIA Bulk Data Problem
EIA's U.S. Electric System Operating Data for 2016–2018 are no longer supported in either the bulk EBA (http://api.eia.gov/bulk/EBA.zip) or via their Opendata API portal (https://www.eia.gov/opendata/), which are needed for legacy versions of the electricity baseline. A version of the EBA bulk data file was archived (from March 12, 2024) that has historical data dating back to 2015, which is the only known surviving copy of EIA bulk data available to support the 2016 electricity baseline.
The API Requirement Problem
The ElectricityLCI models require internet access to work. Some of the data downloaded are accessed through APIs (e.g.,EPA, EIA, EDX, and the Federal LCA Commons). API key registration is required from three of the services. The first API key required is from the EPA2, which provides data from the Continuous Emission Monitoring Systems (CEMS) through the Clean Air Markets Program Data (CAMPD)—one of the reporting agencies for developing power plant emissions inventories. The second API key required is from EIA3, which provides bulk U.S. Electric Systems Operating Data necessary for net trading calculations. The third is NETL's EDX4, which is required for accessing the latest coal model transportation inventory workbook. The Federal LCA Commons utilizes a public API, which is used to gather units, unit groups, and data quality indicators.
The Tritium Problem
In Issue #255, high levels of tritium were identified across renewable and coal inventories, with values ranging from 1×10^9^ to 1×10^22^ kBq, which are orders of magnitude higher than the tritium emissions from the Fukushima disaster of 2011 (i.e., 3×10^12^ kBq), and were tracked to the aluminum production (e.g., from primary and secondary ingot) from 2009--2014 Gabi databases. These high emission values impact renewable inventories (e.g., wind, solar, solar thermal, and geothermal), and coal and gas inventories (via coal mining and petroleum extraction and processing).
The Memory Management Problem
There are a few computations in ElectricityLCI that spike a user's computer's memory, namely: upstream construction regionalization (new), uncertainty calculation, and electricity trading. Memory requirements can be in excess of 20 GB and crash a user's model execution if their computer does not have enough memory.
The NETL Water Use Problem
A significant amount of energy is unaccounted for in the plant water use methods in ElectricityLCI. This error is rooted in the aggregation method, which uses the water type category for grouping. The presence of "not a number" values in this category cause a significant portion of water entries in the dataset to get filtered out of the calculation. A proposed method is presented on GitHub that replaces this data file and calculates power-plant water consumption from EIA's water data (https://www.eia.gov/electricity/data/water/).
The EPA Trading Method Problem
While version 2 of the ElectricityLCI was updated to support the reproduction of the 2016 baseline (i.e., ELCI_1_config), the EPA trading method used in other model configurations needs to be updated, as it is not known to be working.
The Manufactured Uncertainty Problem
Flow uncertainties are computed for life cycle processes based on the Hawkins-Young method, which models uncertainty assuming an underlying log-normal distribution designed to reproduce the calculated emission factor as the expected value of the log-normal distribution and the 95th percentile as the 90% confidence interval (upper). These uncertainty values are designed to provide specific distributions in the results from Monte-Carlo runs and are not to be confused with other common definitions of uncertainty (e.g., random or systematic).
The DQI Problem
The use of the '5;5' process DQI (undocumented) is used throughout the electricity baseline.
Only electricity generation processes have DQI flow values; DQI values for upstream flows are not provided (e.g., extraction, processing, and construction).
The Reproducibility Problem
Running the same ElectricityLCI model configuration on two different computing environments can have different results. This is due to the dependence on background data, which is taken by a variety of providers (e.g., EIA, EPA, Canada Energy Regulator, and StEWI). The data pulled from these sources typically have versions (e.g., StEWI v1.1.4) or accessed date (e.g., when downloading data via an API).
In order to get the same model specifications to return the same results, the background and supporting data (including the Federal Elementary Flow List and facilitymatcher) must be the same in both environments. When this condition is met, the differences in model runs are insignificant (<0.000001%).
The 2022 electricity baseline was generated using the following vintages:
The NETL coal transportation life cycle inventory, available online here was identified having systematic errors in its results (i.e., functional unit mismatch in coal train construction). The correction was published on NETL's Energy Data eXchange, found here.
The Reverse Compatibility Problem
The ability to reproduce model runs of ELCI_1 (i.e., the 2016 baseline, as found on the Fed Commons) is a goal, but will likely result in a new inventory. Furthermore, the UUIDs of processes have changed in v2, due to a correction in how UUIDs are defined.
Appendix B
Reproducibility of Impact Results
The TRACI 2.1 impacts (from FLCAC) were calculated for ELCI_2022 in openLCA 2.4 on two model runs (win10 and macOS), both using Python 3.12 and the package dependency versions as mentioned in the repository README. The results from both model runs are given below.
Impacts Over Time Results
The following table shows the same TRACI 2.1 mid-point impact categories as described above, but for the 2020–2022 baseline runs.
The spike in GWP in 2021 is caused by a the spike in MIXED fuel category emissions (e.g., from PJM, ERCOT, and Louisville Gas & Electric).
Electricity Mix Over Time Results
The following table shows the mix fractions for "Electricity; at grid; consumption mix - US - US" process across the three baseline vintages. Note that the 'ALL' fuel category represents Canadian imports (not discretized by fuel type).
The figure below shows a graphical representation of the table above.
Footnotes
https://github.com/USEPA/ElectricityLCI/issues ↩
https://www.epa.gov/power-sector/cam-api-portal#/api-key-signup ↩
https://www.eia.gov/opendata/ ↩
https://edx.netl.doe.gov/ ↩
Beta Was this translation helpful? Give feedback.
All reactions