Skip to content

ATB 2025 Update - #214

Open
Yunzhi-Chen wants to merge 11 commits into
mainfrom
yc/atb25
Open

Yunzhi-Chen wants to merge 11 commits into
mainfrom
yc/atb25

Conversation

@Yunzhi-Chen

@Yunzhi-Chen Yunzhi-Chen commented Sep 3, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds NLR ATB 2025 plant cost and performance inputs and makes ATB 2025 the default for the technologies it covers. 32 new files spanning battery, biopower, coal, coal-ccs, csp, fuelcell, gas, gas-ccs, nuclear, nuclear-smr, ons-wind, ofs-wind, and upv. No files are removed; every ATB 2023 and 2024 vintage remains selectable.

Because 13 switch defaults move from ATB 2024 to ATB 2025, this changes default-case results.

Technical details

Implementation notes

  • Files were generated by the config-driven pipeline in ReEDS_Input_Processing (branch yc/25ATB), which reads the ATB flat file and workbook directly. The outputs were not hand-edited.
  • ATB 2025 reports in 2023$ (ATB 2024 was 2022$). All 32 new scenarios are recorded at 2023 in inputs/plant_characteristics/dollaryear.csv.
  • Files run through 2060. In order to pass the check_input.py, the ATB aggregation is still pick before 2050 in plantcostprep.py.

Additional changes

  • Documentation: new "Technology Cost and Performance Trajectories" section in model_documentation.md with three ATB 2025 figures, five ATB citations repointed from 2024 to 2025, and two ATB 2025 bibliography entries added.

Switches added/removed/changed

Thirteen plantchar_* defaults move to *_ATB_2025_moderate: battery, biopower, coal, coal_ccs, csp, fuelcell, gas, gas_ccs, nuclear, nuclear_smr, ofswind, onswind, upv. plantchar_geo and plantchar_h2combustion stay on ATB 2024, the most recent vintage covering those technologies. Option lists gained 2025; all previously valid options are retained.

Relevant sources or documentation

Validation, testing, and comparison report(s)

ATB 2025 components:

gas-ccs_ATB_2025 nuclear_ATB_2025 nuclear-smr_ATB_2025 ofs-wind_ATB_2025 ons-wind_ATB_2025 upv_ATB_2025 battery_ATB_2025 biopower_ATB_2025 coal_ATB_2025 coal-ccs_ATB_2025 csp_ATB_2025 fuelcell_ATB_2025 gas_ATB_2025

Checklist for author

Details to double-check

  • Charge code provided to reviewers
  • Included comparison reports for appropriate test cases
  • Documentation updated if necessary
  • If input data added/modified:
    • Dollar year recorded and converted to 2004$ for GAMS
    • Units are specified
    • Preprocessing steps have been documented and committed to ReEDS_Input_Processing
    • New large data files handled with .h5 instead of .csv (n/a, all files are small)
  • Code formatting standardized
  • Reusable functions used where possible instead of copy/pasted code

General information to guide review

  • Zero impact on results of default case
  • No large data file(s) added/modified
  • No substantive impact on runtime for full-US reference case
  • No substantive impact on folder size for full-US reference case
  • No change to process flow
  • No change to code organization
  • No change to package requirements

Did you use LLM tools (chatbot or copilot) in the preparation of this PR? If so, describe how

Claude Code was used in coding and writing.

Tag points of contact here if you would like additional review of the relevant parts of the model

@Yunzhi-Chen Yunzhi-Chen self-assigned this Sep 3, 2026
@Yunzhi-Chen Yunzhi-Chen changed the title Add ATB 2025 and delete ATB 2023 ATB 2025 Update Sep 3, 2026
@patrickbrown4

patrickbrown4 commented Sep 3, 2026 •

Copy link
Copy Markdown
Contributor

Exciting!

  • The "Choices" column in cases.csv needs to be updated to make the new scenarios usable:

    ReEDS/cases.csv

    Lines 11 to 29 in 362f9cb

    plantchar_battery,Battery cost and performance inputs (inputs\plant_characteristics\{plantchar_battery}.csv). The options for plantchar_battery start with 'battery_' and the switch should be set to the entire file name (ex: battery_ATB_2024_advanced),battery_ATB_(2023|2024)_(conservative|moderate|advanced),battery_ATB_2024_moderate,
    plantchar_beccs,BECCS cost and performance inputs (inputs\plant_characteristics\{plantchar_beccs}.csv) The options for plantchar_beccs start with 'beccs_' and the switch should be set to the entire file name (ex: beccs_reference),(beccs_BVRE_2021_(high|mid|low)|beccs_(reference|lowcost)),beccs_reference,
    plantchar_biopower,Biopower generators cost and performance characteristics (inputs\plant_characteristics\{plantchar_biopower}.csv). Options start with 'biopower_' and the switch should be set to the entire file name (ex: biopower_ATB_2024_moderate),biopower_ATB_(2024)_(moderate),biopower_ATB_2024_moderate,
    plantchar_coal_ccs,Coal CCS generators cost and performance characteristics (inputs\plant_characteristics\{plantchar_coal_ccs}.csv). Options start with 'coal-ccs_' and the switch should be set to the entire file name (ex: coal-ccs_ATB_2024_moderate),coal-ccs_ATB_(2024)_(conservative|moderate|advanced),coal-ccs_ATB_2024_moderate,
    plantchar_coal,Coal generators cost and performance characteristics (inputs\plant_characteristics\{plantchar_coal}.csv). Options start with 'coal_' and the switch should be set to the entire file name (ex: coal_ATB_2024_moderate),coal_ATB_(2024)_(moderate),coal_ATB_2024_moderate,
    plantchar_csp,CSP cost and performance characteristics (inputs\plant_characteristics\{plantchar_csp}.csv). The options for plantchar_csp start with 'csp_' and the switch should be set to the entire file name (ex: csp_ATB_2024_advanced),csp_ATB_(2023|2024)_(conservative|moderate|advanced),csp_ATB_2024_moderate,
    plantchar_fuelcell,Fuel cell cost and performance characteristics (inputs\plant_characteristics\{plantchar_fuelcell}.csv). The options for plantchar_fuelcell start with 'fuelcell_' and the switch should be set to the entire file name (ex: fuelcell_ATB_2024_advanced),fuelcell_ATB_2024_(moderate|advanced),fuelcell_ATB_2024_moderate,
    plantchar_gas_ccs,Natural gas CCS generator cost and performance characteristics (inputs\plant_characteristics\{plantchar_gas_ccs}.csv). Options start with 'gas-ccs' and the switch should be set to the entire file name (ex: gas-ccs_ATB_2024_moderate),gas-ccs_ATB_(2024)_(conservative|moderate|advanced),gas-ccs_ATB_2024_moderate,
    plantchar_gas,Natural gas generator cost and performance characteristics (inputs\plant_characteristics\{plantchar_gas}.csv). Options start with 'gas_' and the switch should be set to the entire file name (ex: gas_ATB_2024_moderate),gas_ATB_(2024)_(moderate),gas_ATB_2024_moderate,
    plantchar_geo,Geothermal cost setting (inputs\plant_characteristics\{plantchar_geo}.csv).The options for plantchar_geo start with 'geo_' and the switch should be set to the entire file name (ex: geo_ATB_2023_conservative),geo_ATB_(2023|2024)_(conservative|moderate|advanced),geo_ATB_2024_moderate,
    plantchar_h2fuelcell,H2 fuel cell cost and performance characteristics (inputs\plant_characteristics\{plantchar_h2fuelcell}.csv). The options for plantchar_h2fuelcell start with 'h2fuelcell_' and the switch should be set to the entire file name (ex: h2fuelcell_moderate),h2fuelcell_(conservative|moderate|advanced),h2fuelcell_moderate,
    plantchar_h2combustion,H2-CT/CC cost and performance inputs (inputs/plant_characteristics/{h2combustionscen}.csv). The options for h2combustionscen start with 'h2-combustion_' and the switch should be set to the entire file name (ex: h2-combustion_ATB_2023),h2-combustion_ATB_(2024),h2-combustion_ATB_2024,
    plantchar_hydro,Hydropower cost inputs (inputs/plant_characteristics/{plantchar_hydro}.csv). The options for plantchar_hydro start with 'hydro_' and the switch should be set to the entire file name (ex: hydro_ATB_2019_low),hydro_ATB_2019_(constant|mid|low),hydro_ATB_2019_mid,
    plantchar_nuclear_smr,Small modular reactor (SMR) cost and performance characteristics (inputs\plant_characteristics\{plantchar_nuclear_smr}.csv). Options start with 'nuclear_smr' and the switch should be set to the entire file name (ex: nuclear-smr_ATB_2024_moderate),nuclear-smr_ATB_(2024)_(conservative|moderate|advanced),nuclear-smr_ATB_2024_moderate,
    plantchar_nuclear,Large nuclear cost and performance characteristics (inputs\plant_characteristics\{plantchar_nuclear}.csv). Options start with 'nuclear_' and the switch should be set to the entire file name (ex: nuclear_ATB_2024_moderate),nuclear_ATB_(2024)_(conservative|moderate|advanced),nuclear_ATB_2024_moderate,
    plantchar_ofswind,Offshore wind cost and performance inputs (inputs/plant_characteristics/{plantchar_ofswind}.csv). The options for plantchar_ofswind start with 'ofs-wind_' and the switch should be set to the entire file name (ex: ofs-wind_ATB_2023_advanced),ofs-wind_ATB_(2023|2024)_(conservative|moderate|advanced|moderate_noFloating),ofs-wind_ATB_2024_moderate,
    plantchar_onswind,Onshore wind cost and performance inputs (inputs/plant_characteristics/{plantchar_onswind}.csv). The options for plantchar_onswind start with 'ons-wind_' and the switch should be set to the entire file name (ex: ons-wind_ATB_2023_advanced).,ons-wind_ATB_(2023|2024)_(conservative|moderate|advanced),ons-wind_ATB_2024_moderate,
    plantchar_other,Cost and performance characteristics for lfill-gas and o-g-s (inputs\plant_characteristics\{plantchar_other}.csv). Options start with 'other_' and the switch should be set to the entire file name (ex: other_plantchar)',other_plantchar,other_plantchar,
    plantchar_upv,UPV cost and performance inputs (inputs/plant_characteristics/{plantchar_upv}.csv). The options for plantchar_upv start with 'upv_' and the switch should be set to the entire file name (ex: upv_ATB_2023_advanced).,upv_ATB_(2023|2024)_(conservative|moderate|advanced),upv_ATB_2024_moderate,
  • Can we change the defaults from 2024 to 2025?
  • If the 2023 profiles still work, could we leave them? The main reason in my mind to remove them is if it simplifies the code, but if the code is the same, it could be nice to keep them for uncertainty assessment and for reproducing past studies.
  • I think we should keep the values to 2060 instead of dropping 2051-2060

@github-actions github-actions Bot added the docs label Sep 3, 2026
@Yunzhi-Chen
Yunzhi-Chen requested a review from bsergi September 4, 2026 00:06
Comment thread inputs/plant_characteristics/upv_ATB_2025_moderate.csv Outdated
Comment thread cases.csv
calc_csp_cc,Switch to turn on CSP capacity credit calculations,0; 1,0,
plantchar_battery,Battery cost and performance inputs (inputs\plant_characteristics\{plantchar_battery}.csv). The options for plantchar_battery start with 'battery_' and the switch should be set to the entire file name (ex: battery_ATB_2024_advanced),battery_ATB_(2023|2024)_(conservative|moderate|advanced),battery_ATB_2024_moderate,
plantchar_battery,Battery cost and performance inputs (inputs\plant_characteristics\{plantchar_battery}.csv). The options for plantchar_battery start with 'battery_' and the switch should be set to the entire file name (ex: battery_ATB_2024_advanced),battery_ATB_(2023|2024|2025)_(conservative|moderate|advanced),battery_ATB_2025_moderate,
plantchar_beccs,BECCS cost and performance inputs (inputs\plant_characteristics\{plantchar_beccs}.csv) The options for plantchar_beccs start with 'beccs_' and the switch should be set to the entire file name (ex: beccs_reference),(beccs_BVRE_2021_(high|mid|low)|beccs_(reference|lowcost)),beccs_reference,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I belive the ATB has BECCS now so we might considering updating this one too. It seems from your input processing PR that this option was just commented out, so might just require re-running with that fixed.

url = {https://atb.nlr.gov/electricity/2024/data}
}

@techreport{nrel2025AnnualTechnology2025,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why have two entries? Is there actually a tech report? Also for the 2025 edition we should list NLR as the author and use https://atb.nlr.gov.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants