Overview
PyPSA-GB is an open, peer-reviewed model of the Great Britain power system, built at the University of Edinburgh on the PyPSA framework. It represents the GB generation fleet, demand, and transmission network and solves a least-cost economic dispatch over a full year of hourly snapshots. We publish it here exactly as configured upstream — uncalibrated — and free, so you have an open, transparent baseline you can open, inspect, and re-solve in Convexity without building a model from scratch.
This is the quality: External tier: PyPSA-GB is a third-party model published as-is, validated by its own authors (see their paper below), not graded on our internal Bronze/Silver/Gold scale. Our own calibration is shipped separately as the paid products.
What's in the model
PyPSA-GB ships in two network representations, and we publish both:
- Wholesale — the reduced ~32-bus network solved copper-plate, for a single GB day-ahead clearing price and the national generation mix.
- Nodal — the ETYS transmission network clustered to ~GSP buses, solved as a nodal LP with NESO aggregate-boundary limits, for locational dispatch and renewable curtailment.
Each is published per year (2023, 2024) plus a 2030 FES Holistic Transition projection, as:
- a solved PyPSA
.nc— a raw rolling-horizon economic-dispatch solve of the upstream network, for scripting and analysis; and - a matching Convexity
.db— the very same solve, openable in the Convexity app: pan the network on a map, inspect any bus/line/generator, read dispatch and prices per snapshot, and re-solve it (weekly-chunked, runs on a laptop — no Python, no MOSEK assumption).
The .nc and .db are the same solve
We publish a single raw rolling-horizon economic dispatch of the PyPSA-GB network, exported in both formats — so the .nc and the .db are byte-equivalent (one solve, two files). Open either and you get identical dispatch and prices.
What we deliberately don't reproduce here is PyPSA-GB's bespoke day-ahead market-clearing routine (its rolling_day_ahead market module). We ship a clean, standard economic dispatch instead — if you need the upstream market routine, run it from the upstream repo. Because this free model is uncalibrated, its prices differ from the observed market: the Validation tab shows the raw model against observed, and the calibrated GB Price Formation / GB Curtailment products close that gap.
Quick-solve demos
For a fast, hands-on try — without committing to a full-year run — the Files tab also has 1-week (Jan 1–7 2024) demo databases for both networks: pypsa-gb-wholesale-2024-demo.db and pypsa-gb-nodal-2024-demo.db (each with its .nc). They're a small slice of the full model, so they open and re-solve in Convexity in a couple of minutes on a laptop:
| Demo (1 week, 2024) | Build + solve | Peak RAM |
|---|---|---|
| Wholesale | ~1.8 min | ~2.4 GB |
| Nodal | ~2.5 min | ~2.5 GB |
(Figures are the end-to-end build + solve measured in CI; the in-app .db re-solve alone is lighter.) Use these to learn the solve workflow before running a full-year .db. They're the latest historical year — upstream PyPSA-GB has no 2025 historical data yet.
Calibrated products
For decision-grade numbers, our calibrated versions build on this open core:
- GB Price Formation — wholesale day-ahead prices, merit order tuned to the Ember day-ahead curve.
- GB Curtailment — nodal renewable curtailment with re-imposed NESO boundary limits and observed wind, validated against NESO hindcast.
Source & references
PyPSA-GB is the work of its upstream authors — please cite them:
- Code: github.com/andrewlyden/PyPSA-GB
- Documentation: pypsa-gb.readthedocs.io
- Paper: Lyden et al., PyPSA-GB: An open-source model of Great Britain's power system — ScienceDirect
- Author: Dr Andrew Lyden, University of Edinburgh
License: MIT (upstream). Published in the Convexity Modelverse with credit to the original authors.