Models / PyPSA-USA CAISO

An open production-cost model of the CAISO power system — full-year 2025 dispatch of the real California fleet at 3-hourly resolution, in Convexity and PyPSA format.

License: MIT
Repository
Open
licenseMITproblemLP

Overview

An open model of the California ISO (CAISO) power system across 58 county-level zones, modelling 2025 dispatch and production cost at 3-hourly resolution. It is derived from the open-source PyPSA-USA toolchain (more flexibly configurable through its full workflow); we host a ready-to-run 2025 model here for free, in Convexity .db and PyPSA .nc formats.

Model

A production-cost (historical back-cast) of the CAISO market for 2025 at 3-hourly resolution:

  • Fleet — every operable generating unit from the latest EIA record (EIA-860 2024 final plus EIA-860M 2025 monthlies, so 2025 build-out is included), placed at its true coordinates.
  • Renewables — wind and solar capacity factors from ERA5 reanalysis (2025 weather), mapped to each bus.
  • Demand — hourly EIA-930 / GridEmissions actuals for the balancing authority.
  • Dispatch — an economic-dispatch LP (coal on a must-run floor; no unit commitment yet), fixed transmission, load-shedding priced at value of lost load, solved with MOSEK.

CAISO imports roughly a quarter of its energy from neighbouring states; these are modelled explicitly as capacity-limited boundary links calibrated to observed net interchange, so gas and CO₂ read realistically rather than over-dispatching the in-state fleet. It is a research-grade back-cast: indicative, not settlement-grade. Unit fuel costs and heat rates are held at 2024 (no 2025 EIA-923 yet), and wholesale-price validation is deferred (the energy-only LP clears at marginal fuel cost and underprices vs day-ahead LMP).

A one-week demo of the 2025 model opens in Convexity and solves in about two minutes in the browser.

Scenario

Each .db ships with a what-if scenario alongside the historical-dispatch base case: a gas-price shock that raises every gas generator's marginal cost by 50%. Switch to it in Convexity and re-solve to watch gas cede the margin to nuclear, renewables and imports, with prices climbing in the hours gas would have set them. Only the changed generator costs are stored — everything else is shared with the base case.

Map

Every .db carries a US national border layer (GeoJSON from Natural Earth), drawn in the Convexity network tree and on the map, with each named unit pinned at its true county-level site — so the California footprint and its fleet sit in geographic context. Both the .db and the solved .nc are free downloads (sign-in).

Sources

  • Fleet & demand: EIA-860 / EIA-923 / EIA-930 (US Energy Information Administration, public domain).
  • Weather & renewables: ERA5 reanalysis (Copernicus / ECMWF); profiles via NREL GODEEEP.
  • Network & methodology: PyPSA-USA (MIT).
  • Solver: MOSEK.

Authors and Contributing

PyPSA-USA builds on and leverages the work of PyPSA-EUR developed by TU Berlin. PyPSA-USA is actively developed by the INES Research Group at Stanford University and the ΔE+ Research Group at Simon Fraser University. The authors welcome your contributions to this project. Please see the contributions guide in our readthedocs page for more information. Please do not hesitate to reach out to ktehranchi@stanford.edu or trevor_barnes@sfu.ca with specific questions, requests, or feature ideas.