DPsim
A solver library for dynamic power system simulation.
https://github.com/sogno-platform/dpsim
Category: Energy Systems
Sub Category: Energy System Modeling Frameworks
Keywords
dynamic-phasors electromagnetic-transient emt power-systems powerflow quasi-stationary real-time simulation
Keywords from Contributors
villas co-simulation cim iec61970 cim-import cim-export fiware fiware-iot-agents fiware-ngsi-v2 fiware-orion
Last synced: about 15 hours ago
JSON representation
Repository metadata
Real-time power system simulator including powerflow, (dynamic) phasors and EMT
- Host: GitHub
- URL: https://github.com/sogno-platform/dpsim
- Owner: sogno-platform
- License: mpl-2.0
- Created: 2020-01-29T08:49:59.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2026-08-07T23:44:47.000Z (6 days ago)
- Last Synced: 2026-08-08T05:18:18.799Z (6 days ago)
- Topics: dynamic-phasors, electromagnetic-transient, emt, power-systems, powerflow, quasi-stationary, real-time, simulation
- Language: C++
- Homepage: https://sogno.energy/dpsim/
- Size: 129 MB
- Stars: 134
- Watchers: 11
- Forks: 85
- Open Issues: 114
- Releases: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Citation: CITATION.cff
- Codeowners: CODEOWNERS
README.md
DPsim
DPsim is a solver library for dynamic power system simulation.
- It supports both the electromagnetic transient (EMT) and dynamic phasor (DP) domain for dynamic simulation.
- A powerflow solver is included for standalone usage or initialization of dynamic simulations.
- It provides a Python module which can be embedded in any Python 3 application / scripts.
- The simulation core is implemented in highly-efficient C++ code.
- It supports real-time execution with time-steps down to 50 uS.
- It can load models in the IEC61970 CIM / CGMES XML format.
- It can be interfaced to a variety of protocols and interfaces via VILLASnode.
Getting started
Using Binder
Click the badge below to explore the interactive Jupyter notebooks in your browser:
Using Python on Linux
Install DPsim on Linux using the command
pip install dpsim
Documentation
The documentation has build / installation instructions, links to examples and explains the concepts implemented in DPsim as well as its architecture.
License
The project is released under the terms of the MPL 2.0.
For email inquiries regarding other licensing options, please contact the Institute for Automation of Complex Power Systems (ACS), which coordinates DPsim development: post_acs@eonerc.rwth-aachen.de.
Contact
GitHub Discussions - Ask questions, share ideas, and get community support.
Contribute
If you want to get more involved with DPsim, we welcome contributions of all kinds, including code, documentation, examples, models, bug reports, feature requests, and reviews.
Please open a Pull Request or issue on GitHub, or start a discussion there to propose ideas and get feedback from the community.
Have you developed something new and want to contribute it? Check the documentation for details on the preferred way to organize your code contributions.
Contributors
See CONTRIBUTORS.md for a list of contributors.
Citation (CITATION.cff)
# SPDX-FileCopyrightText: 2026 Institute for Automation of Complex Power Systems, EONERC, RWTH Aachen University
# SPDX-License-Identifier: MPL-2.0
cff-version: 1.2.0
title: DPsim
message: If you use this software, please cite both the software itself and the software paper.
type: software
authors:
- name: The DPsim Authors
repository-code: https://github.com/sogno-platform/dpsim
url: https://sogno.energy/dpsim/
abstract: >-
DPsim is a solver library for dynamic power system simulation. It supports the
electromagnetic transient and dynamic phasor domains as well as continuous
power flow, and is capable of real-time execution.
license: MPL-2.0
version: 1.2.1
preferred-citation:
type: article
title: "DPsim: A dynamic phasor real-time simulator for power systems"
authors:
- given-names: Markus
family-names: Mirz
- given-names: Steffen
family-names: Vogel
- given-names: Georg
family-names: Reinke
- given-names: Antonello
family-names: Monti
journal: SoftwareX
volume: 10
start: 100253
year: 2019
issn: 2352-7110
doi: 10.1016/j.softx.2019.100253
Owner metadata
- Name: SOGNO
- Login: sogno-platform
- Email:
- Kind: organization
- Description:
- Website: https://sogno.energy/
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/73550268?v=4
- Repositories: 24
- Last ynced at: 2023-03-04T23:54:16.072Z
- Profile URL: https://github.com/sogno-platform
GitHub Events
Total
- Delete event: 48
- Pull request event: 142
- Fork event: 14
- Discussion event: 2
- Issues event: 44
- Watch event: 30
- Issue comment event: 250
- Push event: 310
- Pull request review event: 162
- Pull request review comment event: 76
- Create event: 20
- Commit comment event: 2
Last Year
- Delete event: 3
- Pull request event: 28
- Fork event: 3
- Discussion event: 2
- Issues event: 15
- Watch event: 10
- Issue comment event: 39
- Push event: 88
- Pull request review event: 36
- Pull request review comment event: 23
- Create event: 8
- Commit comment event: 2
Committers metadata
Last synced: 1 day ago
Total Commits: 4,799
Total Committers: 40
Avg Commits per committer: 119.975
Development Distribution Score (DDS): 0.746
Commits in past year: 495
Committers in past year: 14
Avg Commits per committer in past year: 35.357
Development Distribution Score (DDS) in past year: 0.358
| Name | Commits | |
|---|---|---|
| Markus Mirz | m****z@e****e | 1220 |
| Steffen Vogel | p****t@s****e | 885 |
| Jonas Schroeder | j****1@r****e | 610 |
| Jan Dinkelbach | j****h@e****e | 395 |
| Leonardo Carreras | l****s@e****e | 358 |
| Georg Reinke | g****e@r****e | 304 |
| Viviane Sapucaia | v****a@e****e | 168 |
| Niklas Eiling | n****g@e****e | 133 |
| pipeacosta | p****a@g****m | 98 |
| Lennart Schumacher | l****r@r****e | 88 |
| Georgii Tishenin | g****n@e****e | 78 |
| Martin Moraga | m****a@e****e | 71 |
| Junjie Zhang | j****g@e****e | 66 |
| Ghassen Nakti | g****i@e****e | 62 |
| Daniel_Doehring | d****g@r****e | 36 |
| henri.lubjuhn | h****n@r****e | 31 |
| Philipp Fensch | p****h@r****e | 30 |
| Ruben Sander | r****r@r****e | 30 |
| matthiasmees | m****s@r****e | 21 |
| Markus Mirz | m****z@r****e | 19 |
| Marvin Tollnitsch | m****h@r****e | 14 |
| Ruben Sander | r****r@r****e | 14 |
| Felix Wege | f****e@e****e | 12 |
| Baris Mutlu | y****u@g****m | 9 |
| cwirtz | c****z@f****e | 8 |
| Markus Mirz | m****z@e****e | 8 |
| dependabot[bot] | 4****] | 7 |
| Petra Raussi | p****i@e****e | 5 |
| Anas Bahr | a****r@r****e | 3 |
| Philipp Jungkamp | p****p@r****e | 3 |
| and 10 more... | ||
Committer domains:
- rwth-aachen.de: 14
- eonerc.rwth-aachen.de: 13
- proton.me: 1
- eoenrc.rwth-aachen.de: 1
- fgh-ma.de: 1
- reserver1.acs-lab.eonerc.rwth-aachen.de: 1
- rwth.aachen.de: 1
- steffenvogel.de: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 190
Total pull requests: 528
Average time to close issues: 6 months
Average time to close pull requests: 3 months
Total issue authors: 30
Total pull request authors: 31
Average comments per issue: 1.38
Average comments per pull request: 1.78
Merged pull request: 341
Bot issues: 0
Bot pull requests: 10
Past year issues: 47
Past year pull requests: 189
Past year average time to close issues: about 2 months
Past year average time to close pull requests: 10 days
Past year issue authors: 11
Past year pull request authors: 15
Past year average comments per issue: 0.98
Past year average comments per pull request: 1.73
Past year merged pull request: 114
Past year bot issues: 0
Past year bot pull requests: 4
Top Issue Authors
- leonardocarreras (41)
- dinkelbachjan (33)
- stv0g (27)
- m-mirz (21)
- georgii-tishenin (9)
- JTS22 (8)
- martinmoraga (7)
- LennartSchu (5)
- FGH-wirtz (5)
- SystemsPurge (4)
- AnasBahr (3)
- pipeacosta (3)
- n-eiling (3)
- gnakti (2)
- MarvinTollnitschRWTH (2)
Top Pull Request Authors
- leonardocarreras (176)
- stv0g (89)
- m-mirz (35)
- JTS22 (35)
- dinkelbachjan (30)
- georgii-tishenin (30)
- pipeacosta (19)
- martinmoraga (18)
- n-eiling (17)
- gnakti (12)
- matthiasmees (11)
- dependabot[bot] (10)
- MarvinTollnitschRWTH (7)
- FGH-wirtz (5)
- LennartSchu (5)
Top Issue Labels
- enhancement (57)
- bug (30)
- ci (23)
- documentation (21)
- software-team (18)
- python (6)
- question (5)
- dependencies (5)
- refactor (5)
- help wanted (5)
- packaging (3)
- github_actions (2)
- opalrtlinux (2)
- good first issue (1)
- performance (1)
Top Pull Request Labels
- enhancement (94)
- ci (34)
- bug (24)
- refactor (21)
- dependencies (14)
- packaging (14)
- documentation (12)
- python (7)
- javascript (3)
- github_actions (1)
Package metadata
- Total packages: 1
-
Total downloads:
- pypi: 435 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 6
- Total maintainers: 4
pypi.org: dpsim
dynamic real-time power system simulator
- Homepage: https://github.com/sogno-platform/dpsim
- Documentation: https://dpsim.readthedocs.io/
- Licenses: Mozilla Public License 2.0 (MPL 2.0)
- Latest release: 2.0.1 (published almost 4 years ago)
- Last Synced: 2026-08-12T18:35:30.786Z (1 day ago)
- Versions: 6
- Dependent Packages: 0
- Dependent Repositories: 1
- Downloads: 435 Last month
-
Rankings:
- Forks count: 6.144%
- Dependent packages count: 7.31%
- Stargazers count: 9.272%
- Average: 12.578%
- Downloads: 18.077%
- Dependent repos count: 22.088%
- Maintainers (4)
Dependencies
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/checkout v6 composite
- actions/setup-python v6 composite
- pre-commit/action v3.0.1 composite
- actions/checkout v6 composite
- actions/download-artifact v8 composite
- actions/setup-python v6 composite
- actions/upload-artifact v7 composite
- pypa/cibuildwheel v3.4.1 composite
- pypa/gh-action-pypi-publish v1.14.0 composite
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/cache v5 composite
- actions/upload-artifact v7 composite
- actions/checkout v6 composite
- actions/download-artifact v8 composite
- fedora 34 build
- SonarSource/sonarqube-scan-action/install-build-wrapper v8.1.0 composite
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/upload-artifact v4 composite
- eclipse-mosquitto latest
- eclipse-mosquitto latest
- sogno/dpsim dev
- github.com/google/docsy v0.6.0
- github.com/FortAwesome/Font-Awesome v0.0.0-20220831210243-d3a7818c253f
- github.com/google/docsy v0.6.0
- github.com/google/docsy/dependencies v0.6.0
- github.com/twbs/bootstrap v4.6.2+incompatible
- flake-utils 11707dc
- nixpkgs 1750f3c
- villas-node 5606793
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/download-artifact v8 composite
- actions/upload-artifact v7 composite
- astral-sh/setup-uv v9.0.0 composite
- codecov/codecov-action v6 composite
- actions/checkout v6 composite
- docker/build-push-action v7 composite
- docker/login-action v4 composite
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/checkout v6 composite
- actions/checkout v6 composite
- cachix/cachix-action v17 composite
- cachix/install-nix-action v31 composite
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/cache v5 composite
- actions/checkout v6 composite
- actions/download-artifact v8 composite
- actions/setup-node v6 composite
- actions/upload-artifact v7 composite
- peaceiris/actions-gh-pages v4.1.0 composite
- peaceiris/actions-hugo v3.2.1 composite
- ${BASE_IMAGE} latest build
- actions/upload-artifact v4 composite
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- SonarSource/sonarqube-scan-action v8.1.0 composite
- actions/cache v5 composite
- actions/download-artifact v4 composite
- actions/github-script v7 composite
- actions/setup-node v6 composite
- ${BASE_IMAGE} latest build
- flake-utils *
- nixpkgs nixpkgs-unstable
- villas-node *
- autoprefixer ^10.4.13 development
- postcss ^8.5.23 development
- postcss-cli ^10.1.0 development
- @nodelib/fs.scandir 2.1.5 development
- @nodelib/fs.stat 2.0.5 development
- @nodelib/fs.walk 1.2.8 development
- ansi-regex 5.0.1 development
- ansi-styles 4.3.0 development
- anymatch 3.1.3 development
- autoprefixer 10.4.13 development
- binary-extensions 2.2.0 development
- braces 3.0.3 development
- browserslist 4.21.4 development
- caniuse-lite 1.0.30001439 development
- chokidar 3.5.3 development
- cliui 8.0.1 development
- color-convert 2.0.1 development
- color-name 1.1.4 development
- dependency-graph 0.11.0 development
- dir-glob 3.0.1 development
- electron-to-chromium 1.4.284 development
- emoji-regex 8.0.0 development
- escalade 3.1.1 development
- fast-glob 3.2.12 development
- fastq 1.14.0 development
- fill-range 7.1.1 development
- fraction.js 4.2.0 development
- fs-extra 11.1.0 development
- fsevents 2.3.2 development
- get-caller-file 2.0.5 development
- get-stdin 9.0.0 development
- glob-parent 5.1.2 development
- globby 13.1.2 development
- graceful-fs 4.2.10 development
- ignore 5.2.1 development
- is-binary-path 2.1.0 development
- is-extglob 2.1.1 development
- is-fullwidth-code-point 3.0.0 development
- is-glob 4.0.3 development
- is-number 7.0.0 development
- jsonfile 6.1.0 development
- lilconfig 2.0.6 development
- merge2 1.4.1 development
- micromatch 4.0.5 development
- nanoid 3.3.16 development
- node-releases 2.0.6 development
- normalize-path 3.0.0 development
- normalize-range 0.1.2 development
- path-type 4.0.0 development
- picocolors 1.1.1 development
- picomatch 2.3.2 development
- pify 2.3.0 development
- postcss 8.5.23 development
- postcss-cli 10.1.0 development
- postcss-load-config 4.0.1 development
- postcss-reporter 7.0.5 development
- postcss-value-parser 4.2.0 development
- pretty-hrtime 1.0.3 development
- queue-microtask 1.2.3 development
- read-cache 1.0.0 development
- readdirp 3.6.0 development
- require-directory 2.1.1 development
- reusify 1.0.4 development
- run-parallel 1.2.0 development
- slash 4.0.0 development
- slash 5.0.0 development
- source-map-js 1.2.1 development
- string-width 4.2.3 development
- strip-ansi 6.0.1 development
- thenby 1.3.4 development
- to-regex-range 5.0.1 development
- universalify 2.0.0 development
- update-browserslist-db 1.0.10 development
- wrap-ansi 7.0.0 development
- y18n 5.0.8 development
- yaml 2.2.2 development
- yargs 17.6.2 development
- yargs-parser 21.1.1 development
- numpy >=2.0.0
- pandas >=2.0.0
- scipy >=1.10.0
Score: 15.289082927191226