This repo builds DCPlus loadflow solver implementation from Elia Group. This DCPlus loadflow solver is based on the paper "Voltage-sensitive distribution factors for contingency analysis and topology optimization". It is a linearization around the N-0 AC loadflow and approximates the changes in the network by computing an equivalent to one AC Newton-Raphson iteration step.
If you want to get started with the engine, we recommend the test test_lodf_jax_full_rank_update_compare_powsybl to get an idea of how to use the solver. A more user-friendly introductory notebook will be added to the notebooks/ directory at a later point.
If you want to contribute to this repository, we recommend using VS Code's Devcontainer Environment. This allows the developers to use the same environment to develop in.
For this setup, you need to install:
uvMicrosoft VS CodeDocker
You can follow our installation guide on our Contributing page.
In order to understand the functionalities of this repo, please have a look at our examples in notebooks/.
There you can find several Jupyter notebooks that explain how to use the engine.
For example, you can load a grid file and compute the DC loadflow using our GPU-based loadflow solver.
Or you can load an example grid and minimise the branch overload by running the topology optimizer.
You can also build the documentation and open it on your web browser by running
uv sync --all-groups
uv run mkdocs servePlease have a look at our CONTRIBUTING.md.
Distributed under MPL 2.0. See LICENSE.
If you use our work in scientific research, please cite our paper on loadflowsolving and soon also the work on the optimizer architecture, which is to be released soon.
Team – loadflowsolver@eliagroup.eu
Thanks to the Energy Transition Fund of the Federal Public Service Economy for their support of the OptOmni project, which led to the development of DC+.| SPF Economie
We credit the authors of JAX.
@software{jax2018github,
author = {James Bradbury and Roy Frostig and Peter Hawkins and Matthew James Johnson and Chris Leary and Dougal Maclaurin and George Necula and Adam Paszke and Jake Vander{P}las and Skye Wanderman-{M}ilne and Qiao Zhang},
title = {{JAX}: composable transformations of {P}ython+{N}um{P}y programs},
url = {http://github.com/jax-ml/jax},
version = {0.3.13},
year = {2018},
}