Skip to main content

Welcome to GridOverture

GridOverture is an open-source Python library that unifies power system solvers behind a single, clean API. Instead of learning the quirks of each solver individually, you write one script and run it against any backend.

Load. Solve. Compare.

import gridoverture as go

net = go.load("ieee39")
result = go.run_load_flow(net, solver="veragrid")
comparison = go.compare(net, solvers=["andes", "veragrid", "pypsa"])

Who is GridOverture for?

Researchers

Benchmark solvers side-by-side, generate ML-ready datasets, and reproduce cascade simulations calibrated against PowerGraph (ETH Zurich, NeurIPS 2024).

Engineers

Run power flow and OPF studies across multiple backends without rewriting your pipeline. Switch solvers with a single parameter.

Students

Learn power systems with built-in IEEE test networks and an approachable Python API. No boilerplate, no configuration files.

What problems does it solve?

  • Solver lock-in: Each power system tool has its own data format, API conventions, and output structure. GridOverture abstracts these differences behind a unified interface.
  • Reproducibility: Compare results across solvers deterministically. The cross-solver comparison engine highlights discrepancies in bus voltages, line flows, and losses.
  • Dataset generation: Produce ML-ready datasets from realistic cascade simulations for GNN and other graph-based models.
  • Fragmented tooling: Instead of maintaining separate scripts for ANDES, PyPSA, pandapower, and others, maintain one.

Key Features

7 Solver Backends

andes, veragrid, pypsa, pandapower, dc, pypsa-dc, pandapower-dc

8 Test Networks

ieee14, ieee24, ieee39, ieee57, ieee118, ieee300, uk_29bus, wecc240

Cascade Simulator

Calibrated against PowerGraph (ETH Zurich, NeurIPS 2024)

Cross-Solver Comparison

Side-by-side voltage, flow, and loss comparisons

OPF Support

PyPSA LOPF and pandapower AC OPF

Apache 2.0 License

Free for commercial and academic use