Skip to content

🏆 A weekly updated ranked list of popular open-source libraries and tools for Power System Analysis.

License

Notifications You must be signed in to change notification settings

jinningwang/best-of-ps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Popular Open Source Libraries for Power System Analysis

🏆  A ranked list of popular projects for Power System Analysis. Updated weekly.

This curated list contains 130 open-source projects with a total of 66K stars grouped into 15 categories. All projects are ranked by a project-popular score, which is calculated based on various metrics automatically collected from GitHub and different package managers. If you like to add or update projects, feel free to open an issue, submit a pull request, or directly edit the projects.yaml. Contributions are very welcome!

Contents

Explanation

  • 🥇🥈🥉  Combined project-quality score
  • ⭐️  Star count from GitHub
  • 🐣  New project (less than 6 months old)
  • 💤  Inactive project (12 months no activity)
  • 💀  Dead project (1200 months no activity)
  • 📈📉  Project is trending up or down
  • ➕  Project was recently added
  • ❗️  Warning (e.g. missing/risky license)
  • 👨‍💻  Contributors count from GitHub
  • 🔀  Fork count from GitHub
  • 📋  Issue count from GitHub
  • ⏱️  Last update timestamp on package manager
  • 📥  Download count from package manager
  • 📦  Number of dependent projects
  •   Support Python
  •   Support Julia
  •   Support Octave
  •   Support Java
  •   Support C
  •   Support Modelica
  •   Support Rust
  •   Support R
  •   Shipped with Jupyter Notebook examples
  •   CI via GitHub Actions
  •   CI via Azure Pipelines
  •   Available on PyPI
  •   Available on Conda

Phasor Simulation

Back to top

LTB ANDES (🥇22 · ⭐ 240) - Transient Stability Simulator; CURENT LTB. ❗️GPL-3.0
  • GitHub (👨‍💻 23 · 🔀 110 · 📦 22 · 📋 68 - 13% open · ⏱️ 25.03.2024):

     git clone https://github.com/CURENT/andes
    
  • PyPi (📥 4.6K / month · 📦 4 · ⏱️ 25.03.2024):

     pip install andes
    
  • Conda (📥 550K · ⏱️ 25.03.2024):

     conda install -c conda-forge andes
    
  • Docker Hub:

     docker pull CURENT/andes
    
Dynaωo (🥇22 · ⭐ 77) - C++/Modelica simulation tools for power systems. MPL-2.0
  • GitHub (👨‍💻 55 · 🔀 23 · 📥 17K · 📋 1.5K - 7% open · ⏱️ 11.12.2024):

     git clone https://github.com/dynawo/dynawo
    
OpenIPSL (🥈19 · ⭐ 83) - A library of power system component models written in the.. BSD-3
  • GitHub (👨‍💻 33 · 🔀 53 · 📥 500 · 📋 120 - 13% open · ⏱️ 28.11.2024):

     git clone https://github.com/OpenIPSL/OpenIPSL
    
GridLAB-D (🥈18 · ⭐ 160) - Distribution power system simulator. ❗️Custom
  • GitHub (👨‍💻 75 · 🔀 100 · 📥 5.2K · 📋 1.3K - 24% open · ⏱️ 22.02.2024):

     git clone https://github.com/gridlab-d/gridlab-d
    
PowerSimulationsDynamics.jl (🥈16 · ⭐ 180) - Dynamic Power System simulations; NREL Sienna. BSD-3
  • GitHub (👨‍💻 15 · 🔀 39 · 📋 130 - 32% open · ⏱️ 21.10.2024):

     git clone https://github.com/NREL-Sienna/PowerSimulationsDynamics.jl
    
OpenDER (🥉14 · ⭐ 55) - Inverter-based DER simulation. BSD-3
  • GitHub (👨‍💻 2 · 🔀 21 · 📦 3 · ⏱️ 12.06.2024):

     git clone https://github.com/epri-dev/OpenDER
    
  • PyPi (📥 1.2K / month · ⏱️ 12.06.2024):

     pip install opender
    
PowerSystems (🥉13 · ⭐ 67) - Modelica 3rd party library for electrical power systems. ❗️Custom
  • GitHub (👨‍💻 10 · 🔀 35 · 📋 41 - 34% open · ⏱️ 07.05.2024):

     git clone https://github.com/modelica-3rdparty/PowerSystems
    
GridPACK (🥉12 · ⭐ 47 · 📉) - High-Performance Electric Grid Simulation. ❗️Custom
  • GitHub (👨‍💻 50 · 🔀 20 · 📥 620 · 📋 130 - 25% open · ⏱️ 11.12.2024):

     git clone https://github.com/GridOPTICS/GridPACK
    
STEPS (🥉10 · ⭐ 47) - Balanced large-scale AC-DC hybrid power system analysis. MIT
  • GitHub (👨‍💻 4 · 🔀 19 · 📥 42 · 📦 7 · 📋 3 - 33% open · ⏱️ 24.03.2024):

     git clone https://github.com/changgang/steps
    
PowerSAS.m (🥉7 · ⭐ 16) - Power grid analysis framework based on semi-analytical solutions. BSD-3
  • GitHub (👨‍💻 4 · 🔀 5 · ⏱️ 05.01.2024):

     git clone https://github.com/ANL-CEEESA/powersas.m
    
OpenHybridSim (🥉6 · ⭐ 7 · 💤) - EMT-TS hybrid simulation. BSD-3
  • GitHub (🔀 4 · ⏱️ 05.05.2020):

     git clone https://github.com/OpenHybridSim/OpenHybridSim-code
    
OpenDSS (🥉2) - Distribution system simulator. ❗️BSD
  • No project information available.
PSAT (🥉2) - A Matlab toolbox for electric power system analysis and simulation. ❗️GPL
  • No project information available.

EMT Simulation

Back to top

DPsim (🥇22 · ⭐ 72) - Simulation for both EMT and phasor. MPL-2.0
  • GitHub (👨‍💻 34 · 🔀 51 · 📦 10 · 📋 150 - 56% open · ⏱️ 11.12.2024):

     git clone https://github.com/sogno-platform/dpsim
    
  • PyPi (📥 350 / month · ⏱️ 10.12.2022):

     pip install dpsim
    
ParaEMT (🥉10 · ⭐ 57) - Parallel EMT simulation. BSD-3
  • GitHub (👨‍💻 4 · 🔀 19 · ⏱️ 29.10.2024):

     git clone https://github.com/NREL/ParaEMT_public
    

Steady State Simulation

Back to top

PyPSA (🥇33 · ⭐ 1.3K) - Python for Power System Analysis. MIT
  • GitHub (👨‍💻 90 · 🔀 460 · 📦 230 · 📋 400 - 27% open · ⏱️ 12.12.2024):

     git clone https://github.com/PyPSA/PyPSA
    
  • PyPi (📥 120K / month · 📦 27 · ⏱️ 05.12.2024):

     pip install pypsa
    
  • Conda (📥 100K · ⏱️ 06.12.2024):

     conda install -c conda-forge pypsa
    
pandapower (🥇32 · ⭐ 890) - Convenient Power System Modelling and Analysis. BSD-3
  • GitHub (👨‍💻 140 · 🔀 470 · 📦 400 · 📋 1K - 22% open · ⏱️ 11.12.2024):

     git clone https://github.com/e2nIEE/pandapower
    
  • PyPi (📥 35K / month · 📦 48 · ⏱️ 07.08.2024):

     pip install pandapower
    
  • Conda (📥 21K · ⏱️ 19.06.2024):

     conda install -c conda-forge pandapower
    
  • Docker Hub (📥 94 · ⏱️ 09.02.2021):

     docker pull pauldepraz/pandapowerapi
    
Power Grid Model (🥇28 · ⭐ 150) - Steady-state distribution power system analysis. MPL-2.0
  • GitHub (👨‍💻 23 · 🔀 31 · 📥 260 · 📦 20 · 📋 200 - 32% open · ⏱️ 09.12.2024):

     git clone https://github.com/PowerGridModel/power-grid-model
    
  • PyPi (📥 65K / month · 📦 4 · ⏱️ 09.12.2024):

     pip install power-grid-model
    
  • Conda (📥 1.7M · ⏱️ 05.12.2024):

     conda install -c conda-forge power-grid-model
    
GridCal (🥇27 · ⭐ 430 · 📈) - Cross-platform power systems software. ❗️LGPL-3.0
  • GitHub (👨‍💻 50 · 🔀 95 · 📥 48 · 📦 9 · 📋 190 - 6% open · ⏱️ 10.12.2024):

     git clone https://github.com/SanPen/GridCal
    
  • PyPi (📥 8.2K / month · ⏱️ 12.12.2024):

     pip install GridCal
    
PowSyBl Core (🥈24 · ⭐ 130) - Framework to build power system software. MPL-2.0
  • GitHub (👨‍💻 110 · 🔀 43 · 📦 86 · 📋 600 - 42% open · ⏱️ 12.12.2024):

     git clone https://github.com/powsybl/powsybl-core
    
PyPowSyBl (🥈23 · ⭐ 59 · 📈) - A PowSyBl and Python integration. MPL-2.0
  • GitHub (👨‍💻 30 · 🔀 12 · 📥 180 · 📋 220 - 30% open · ⏱️ 11.12.2024):

     git clone https://github.com/powsybl/pypowsybl
    
  • PyPi (📥 8.9K / month · 📦 7 · ⏱️ 07.11.2024):

     pip install pypowsybl
    
PyPSA-Eur (🥈22 · ⭐ 380) - Sector-Coupled Optimisation Model of the European Energy.. MIT
  • GitHub (👨‍💻 79 · 🔀 240 · 📋 500 - 29% open · ⏱️ 12.12.2024):

     git clone https://github.com/PyPSA/pypsa-eur
    
  • Docker Hub:

     docker pull nimfetrisa/pypsa-eur
    
PowerSimulations.jl (🥈22 · ⭐ 280) - Power Systems optimization simulation and modeling;.. BSD-3
  • GitHub (👨‍💻 37 · 🔀 56 · 📋 340 - 11% open · ⏱️ 11.12.2024):

     git clone https://github.com/NREL-Sienna/PowerSimulations.jl
    
MATPOWER (🥈21 · ⭐ 430) - Steady state power flow simulation. BSD-3
  • GitHub (👨‍💻 18 · 🔀 150 · 📥 500K · 📋 210 - 9% open · ⏱️ 09.10.2024):

     git clone https://github.com/MATPOWER/matpower
    
  • Docker Hub (📥 1.9K · ⏱️ 09.10.2024):

     docker pull matpower/matpower
    
PYPOWER (🥈21 · ⭐ 340) - Port of MATPOWER to Python. ❗️BSD
  • GitHub (👨‍💻 20 · 🔀 110 · 📦 120 · 📋 45 - 73% open · ⏱️ 02.09.2024):

     git clone https://github.com/rwl/PYPOWER
    
  • PyPi (📥 14K / month · 📦 14 · ⏱️ 02.09.2024):

     pip install PYPOWER
    
  • Conda (📥 3.2K · ⏱️ 16.06.2023):

     conda install -c invenia pypower
    
  • Docker Hub (📥 20 · ⏱️ 19.05.2019):

     docker pull hwanghust/pypower
    
GridPath (🥈21 · ⭐ 97) - Power system planning and operations. Apache-2
  • GitHub (👨‍💻 11 · 🔀 35 · 📥 1.2K · 📦 4 · 📋 340 - 22% open · ⏱️ 12.12.2024):

     git clone https://github.com/blue-marble/gridpath
    
  • PyPi (📥 220 / month · ⏱️ 04.10.2024):

     pip install GridPath
    
LightSim2Grid (🥈21 · ⭐ 52 · 📈) - A fast backend for the Grid2Op. MPL-2.0
  • GitHub (👨‍💻 5 · 🔀 10 · 📥 240 · 📦 47 · 📋 52 - 34% open · ⏱️ 29.11.2024):

     git clone https://github.com/BDonnot/lightsim2grid
    
  • PyPi (📥 22K / month · 📦 20 · ⏱️ 29.11.2024):

     pip install LightSim2Grid
    
  • Docker Hub (📥 240 · ⏱️ 01.02.2022):

     docker pull bdonnot/lightsim2grid
    
REopt (🥈19 · ⭐ 91) - Renewable Energy Integration & Optimization. BSD-3
  • GitHub (👨‍💻 21 · 🔀 46 · 📥 570 · 📋 84 - 52% open · ⏱️ 15.11.2024):

     git clone https://github.com/NREL/REopt_API
    
PyPSA-USA (🥈19 · ⭐ 64) - Power System Model for the United States. MIT
  • GitHub (👨‍💻 11 · 🔀 25 · 📋 280 - 34% open · ⏱️ 09.12.2024):

     git clone https://github.com/PyPSA/pypsa-usa
    
PowerModels.jl (🥉18 · ⭐ 400) - Power Network Optimization. ❗️BSD
  • GitHub (👨‍💻 30 · 🔀 150 · 📋 490 - 18% open · ⏱️ 03.11.2024):

     git clone https://github.com/lanl-ansi/PowerModels.jl
    
PowerGenome (🥉18 · ⭐ 200) - Create inputs for power systems models. MIT
  • GitHub (👨‍💻 17 · 🔀 65 · 📋 150 - 47% open · ⏱️ 17.10.2024):

     git clone https://github.com/PowerGenome/PowerGenome
    
  • PyPi (📥 110 / month · ⏱️ 14.05.2024):

     pip install PowerGenome
    
  • Conda (📥 640 · ⏱️ 02.01.2024):

     conda install -c conda-forge powergenome
    
LTB AMS (🥉17 · ⭐ 8) - Scheduling Modeling and Simulation; CURENT LTB. ❗️GPL-3.0
  • GitHub (👨‍💻 4 · 🔀 6 · 📦 3 · 📋 3 - 33% open · ⏱️ 05.12.2024):

     git clone https://github.com/CURENT/ams
    
  • PyPi (📥 490 / month · ⏱️ 05.12.2024):

     pip install ltbams
    
  • Conda (📥 6.7K · ⏱️ 06.12.2024):

     conda install -c conda-forge ltbams
    
GenX (🥉16 · ⭐ 280) - Configurable capacity expansion model. ❗️GPL-2.0
  • GitHub (👨‍💻 33 · 🔀 120 · 📋 280 - 16% open · ⏱️ 23.09.2024):

     git clone https://github.com/GenXProject/GenX
    
matpower-pip (🥉15 · ⭐ 21) - Easy Python Access to MATPOWER. MIT
  • GitHub (👨‍💻 1 · 📦 8 · 📋 16 - 12% open · ⏱️ 21.11.2024):

     git clone https://github.com/yasirroni/matpower-pip
    
  • PyPi (📥 790 / month · 📦 2 · ⏱️ 05.10.2024):

     pip install matpower
    
Open RAO (🥉15 · ⭐ 17) - Power systems coordinated capacity calculation and security.. MPL-2.0
  • GitHub (👨‍💻 35 · 🔀 7 · 📥 44 · 📋 120 - 35% open · ⏱️ 12.12.2024):

     git clone https://github.com/powsybl/powsybl-open-rao
    
EGRET (🥉14 · ⭐ 140 · 💤) - Tools for Power Systems Optimization Modeling. ❗️BSD
  • GitHub (👨‍💻 38 · 🔀 49 · 📦 8 · 📋 83 - 54% open · ⏱️ 14.11.2023):

     git clone https://github.com/grid-parity-exchange/Egret
    
ReEDS-2.0 (🥉14 · ⭐ 130) - Capacity planning and dispatch model. ❗️GPL-3.0
  • GitHub (👨‍💻 14 · 🔀 21 · 📋 21 - 28% open · ⏱️ 11.12.2024):

     git clone https://github.com/NREL/ReEDS-2.0
    
PowerNetworkMatrices.jl (🥉14 · ⭐ 21) - Power systems matrices; NREL Sienna. BSD-3
  • GitHub (👨‍💻 6 · 🔀 8 · 📋 45 - 46% open · ⏱️ 23.09.2024):

     git clone https://github.com/NREL-Sienna/PowerNetworkMatrices.jl
    
ExaGO (🥉13 · ⭐ 70) - Large-scale power grid optimization. BSD-3
  • GitHub (👨‍💻 28 · 🔀 9 · 📋 83 - 56% open · ⏱️ 18.09.2024):

     git clone https://github.com/pnnl/ExaGO
    
MOST (🥉11 · ⭐ 31 · 📉) - MATPOWER Optimal Scheduling Tool. BSD-3
  • GitHub (🔀 11 · 📋 40 - 20% open · ⏱️ 07.10.2024):

     git clone https://github.com/MATPOWER/most
    
PowerFlows.jl (🥉11 · ⭐ 18) - Collection of Power Flow solution; NREL Sienna. BSD-3
  • GitHub (👨‍💻 7 · 🔀 9 · 📋 27 - 55% open · ⏱️ 21.08.2024):

     git clone https://github.com/NREL-Sienna/PowerFlows.jl
    
EV-EcoSim (🥉9 · ⭐ 22) - A grid-aware co-simulation platform for the design and.. MIT
  • GitHub (🔀 3 · 📋 72 - 12% open · ⏱️ 19.04.2024):

     git clone https://github.com/ebalogun01/EV-EcoSim/
    
AMES - Version 5.0 (🥉7 · ⭐ 22 · 💤) - Wholesale Power Market Test Bed. ❗️Custom
  • GitHub (👨‍💻 3 · 🔀 5 · ⏱️ 08.06.2023):

     git clone https://github.com/ames-market/AMES-V5.0
    
DOPER (🥉7 · ⭐ 18) - Distributed Optimal and Predictive Energy Resources. BSD-3
  • GitHub (👨‍💻 3 · 🔀 11 · ⏱️ 10.09.2024):

     git clone https://github.com/LBNL-ETA/DOPER
    
PowerSystemsInvestmentsPortfolios.jl (🥉7 · ⭐ 10) - Data models for Power Systems investment models; NREL.. BSD-3
  • GitHub (👨‍💻 5 · 🔀 3 · ⏱️ 18.09.2024):

     git clone https://github.com/NREL-Sienna/PowerSystemsInvestmentsPortfolios.jl
    
PowerSystemsInvestments.jl (🥉6 · ⭐ 14) - Power Systems investment models; NREL Sienna. BSD-3
  • GitHub (👨‍💻 4 · 🔀 4 · 📋 2 - 50% open · ⏱️ 08.10.2024):

     git clone https://github.com/NREL-Sienna/PowerSystemsInvestments.jl
    
mypower (🥉6 · ⭐ 7 · 💤) - Supplementary function of MATPOWER in Python. MIT
  • GitHub (🔀 1 · ⏱️ 26.11.2022):

     git clone https://github.com/yasirroni/mypower
    
AMES (V4.0) (🥉3 · ⭐ 13 · 💤) - Agent based Modeling of Electricity Systems. ❗️GPL-2.0
  • GitHub (👨‍💻 2 · 🔀 7 · 📋 5 - 60% open · ⏱️ 28.08.2020):

     git clone https://github.com/ames-market/AMES-v4.0
    
Show 1 hidden projects...
  • DER-CAM (🥉1) - DER investment planning. ❗Unlicensed

Interface

Back to top

OpenDSSDirect.py (🥇19 · ⭐ 89) - A direct library interface to OpenDSS. MIT
  • GitHub (👨‍💻 3 · 🔀 22 · 📦 61 · 📋 100 - 14% open · ⏱️ 29.03.2024):

     git clone https://github.com/dss-extensions/OpenDSSDirect.py
    
  • PyPi (📥 4.7K / month · 📦 16 · ⏱️ 11.03.2021):

     pip install OpenDSSDirect.py
    
py-dss-interface (🥇18 · ⭐ 27) - A package for access to direct dll version of OpenDSS. MIT
  • GitHub (👨‍💻 6 · 🔀 9 · 📦 31 · 📋 55 - 61% open · ⏱️ 22.10.2024):

     git clone https://github.com/PauloRadatz/py_dss_interface
    
  • PyPi (📥 890 / month · 📦 4 · ⏱️ 21.03.2024):

     pip install py-dss-interface
    
Easy SimAuto (🥈16 · ⭐ 43 · 💤) - Python interface to PowerWorld. Apache-2
  • GitHub (👨‍💻 11 · 🔀 12 · 📦 6 · 📋 100 - 15% open · ⏱️ 05.06.2023):

     git clone https://github.com/mzy2240/ESA
    
  • PyPi (📥 1.8K / month · 📦 1 · ⏱️ 21.05.2022):

     pip install esa
    
CIMpy (🥈15 · ⭐ 54) - CIM files to the XML/RDF format. MPL-2.0
  • GitHub (👨‍💻 11 · 🔀 22 · 📦 8 · 📋 22 - 54% open · ⏱️ 30.10.2024):

     git clone https://github.com/sogno-platform/cimpy
    
  • PyPi (📥 390 / month · 📦 1 · ⏱️ 20.06.2024):

     pip install cimpy
    
PyDSS (🥈13 · ⭐ 33) - A Python wrapper for OpenDSS. BSD-3
  • GitHub (👨‍💻 27 · 🔀 19 · 📦 2 · 📋 33 - 51% open · ⏱️ 30.09.2024):

     git clone https://github.com/NREL/PyDSS
    
  • PyPi (📥 37 / month · ⏱️ 17.08.2011):

     pip install pydss
    
grg-pssedata (🥈13 · ⭐ 31 · 💤) - Python tools for working with PSSE v33 data files. BSD-3
  • GitHub (👨‍💻 3 · 🔀 11 · 📦 6 · 📋 13 - 23% open · ⏱️ 14.12.2020):

     git clone https://github.com/lanl-ansi/grg-pssedata
    
  • PyPi (📥 350 / month · 📦 1 · ⏱️ 15.12.2020):

     pip install grg-pssedata
    
DSSData (🥉12 · ⭐ 14 · 💤) - A micro-framework for simulation and data analysis of.. MIT
  • GitHub (👨‍💻 2 · 🔀 3 · 📥 51 · 📦 2 · 📋 36 - 13% open · ⏱️ 10.04.2023):

     git clone https://github.com/felipemarkson/dssdata
    
  • PyPi (📥 360 / month · ⏱️ 24.01.2023):

     pip install dssdata
    
cimpyorm (🥉11 · ⭐ 10 · 💤) - Python ORM middleware for IEC CIM and CGMES datasets. ❗️BSD-3.0
  • GitHub (👨‍💻 5 · 🔀 5 · 📦 4 · 📋 3 - 33% open · ⏱️ 19.10.2023):

     git clone https://github.com/RWTH-IAEW/cimpyorm
    
  • PyPi (📥 3.5K / month · ⏱️ 19.10.2023):

     pip install cimpyorm
    
PSSE RAW (🥉5 · ⭐ 35 · 💤) - PSSE RAW parser. MIT
  • GitHub (👨‍💻 2 · 🔀 15 · ⏱️ 07.01.2020):

     git clone https://github.com/anderson-optimization/em-psse
    
OpenDER interface (🥉5 · ⭐ 4) - Interface for OpenDER. BSD-3
  • GitHub (👨‍💻 2 · ⏱️ 24.06.2024):

     git clone https://github.com/epri-dev/OpenDER_interface
    
Andes.jl (🥉4 · ⭐ 8) - Julia interface for ANDES. MIT
  • GitHub (🔀 1 · ⏱️ 05.02.2024):

     git clone https://github.com/cuihantao/Andes.jl
    
EasySimauto.jl (🥉3 · ⭐ 5 · 💤) - Julia interface for EasySimAuto and PowerWorld. Apache-2
  • GitHub (👨‍💻 2 · ⏱️ 31.07.2023):

     git clone https://github.com/mzy2240/EasySimauto.jl
    

Gas Simulation

Back to top

pandapipes (🥇25 · ⭐ 150) - Pipeflow Calculation Tool. BSD-3
  • GitHub (👨‍💻 23 · 🔀 63 · 📦 26 · 📋 160 - 49% open · ⏱️ 04.12.2024):

     git clone https://github.com/e2nIEE/pandapipes
    
  • PyPi (📥 2.5K / month · 📦 8 · ⏱️ 04.12.2024):

     pip install pandapipes
    
GasModels.jl (🥉14 · ⭐ 66) - Gas Network Optimization. BSD-3
  • GitHub (👨‍💻 13 · 🔀 15 · 📋 150 - 32% open · ⏱️ 17.10.2024):

     git clone https://github.com/lanl-ansi/GasModels.jl
    
MPNG (🥉7 · ⭐ 11 · 💤) - Simulator for Optimal Power and Natural Gas Flow. BSD-3
  • GitHub (👨‍💻 3 · 🔀 4 · ⏱️ 13.09.2023):

     git clone https://github.com/MATPOWER/mpng
    

Co-Simulation Environment

Back to top

OpenModelica (🥇28 · ⭐ 870) - Modelica-based environment for modeling and simulation. ❗️Custom
  • GitHub (👨‍💻 190 · 🔀 300 · 📥 380 · 📋 8.1K - 25% open · ⏱️ 12.12.2024):

     git clone https://github.com/OpenModelica/OpenModelica
    
  • Docker Hub (📥 46K · ⭐ 6 · ⏱️ 15.11.2024):

     docker pull openmodelica/openmodelica
    
precice (🥉26 · ⭐ 760) - Precise Code Interaction Coupling Environment. ❗️LGPL-3.0
  • GitHub (👨‍💻 58 · 🔀 180 · 📥 31K · 📋 870 - 23% open · ⏱️ 05.12.2024):

     git clone https://github.com/precice/precice
    
  • PyPi (📥 980 / month · 📦 8 · ⏱️ 05.12.2024):

     pip install pyprecice
    
  • Conda (📥 68K · ⏱️ 28.08.2024):

     conda install -c conda-forge pyprecice
    
  • Docker Hub (📥 22K · ⏱️ 12.12.2024):

     docker pull precice/precice
    

Optimization Modeling Language

Back to top

Pyomo (🥇38 · ⭐ 2.1K) - Python-based Optimization Modeling Language. BSD-3
  • GitHub (👨‍💻 160 · 🔀 520 · 📥 3.5K · 📦 2.3K · 📋 1.4K - 21% open · ⏱️ 06.12.2024):

     git clone https://github.com/Pyomo/pyomo
    
  • PyPi (📥 660K / month · 📦 260 · ⏱️ 18.11.2024):

     pip install Pyomo
    
  • Conda (📥 1.1M · ⏱️ 19.11.2024):

     conda install -c conda-forge pyomo
    
CVXPY (🥈37 · ⭐ 5.5K) - Convex optimization modeling language. Apache-2
  • GitHub (👨‍💻 210 · 🔀 1.1K · 📥 540 · 📦 14K · 📋 1.5K - 15% open · ⏱️ 05.12.2024):

     git clone https://github.com/cvxpy/cvxpy
    
  • PyPi (📥 2.7M / month · 📦 580 · ⏱️ 14.11.2024):

     pip install cvxpy
    
  • Conda (📥 1.4M · ⏱️ 19.08.2024):

     conda install -c conda-forge cvxpy
    
CVXOPT (🥈27 · ⭐ 990) - Python Software for Convex Optimization. ❗️GPL-3.0
  • GitHub (👨‍💻 9 · 🔀 210 · 📦 12K · 📋 190 - 21% open · ⏱️ 23.10.2024):

     git clone https://github.com/cvxopt/cvxopt
    
  • PyPi (📥 730K / month · 📦 390 · ⏱️ 09.08.2023):

     pip install cvxopt
    
  • Conda (📥 1.2M · ⏱️ 04.09.2024):

     conda install -c conda-forge cvxopt
    
JuMP (🥉26 · ⭐ 2.3K) - Julia-based Optimization Modeling Language. MPL-2.0
  • GitHub (👨‍💻 160 · 🔀 400 · 📋 1.5K - 0% open · ⏱️ 10.12.2024):

     git clone https://github.com/jump-dev/JuMP.jl
    
PyOptInterface (🥉20 · ⭐ 220) - Efficient modeling interface for optimization in.. MPL-2.0
  • GitHub (👨‍💻 2 · 🔀 8 · 📦 9 · 📋 17 - 23% open · ⏱️ 12.12.2024):

     git clone https://github.com/metab0t/PyOptInterface
    
  • PyPi (📥 4.1K / month · 📦 2 · ⏱️ 29.11.2024):

     pip install pyoptinterface
    
RSOME (🥉18 · ⭐ 300) - Robust Stochastic Optimization Made Easy. ❗️GPL-3.0
  • GitHub (👨‍💻 3 · 🔀 55 · 📋 43 - 16% open · ⏱️ 15.11.2024):

     git clone https://github.com/XiongPengNUS/rsome
    
  • PyPi (📥 4.4K / month · 📦 4 · ⏱️ 29.10.2024):

     pip install rsome
    
ExaModels (🥉13 · ⭐ 56 · ➕) - An algebraic modeling and automatic differentiation tool.. MIT
  • GitHub (👨‍💻 6 · 🔀 5 · 📋 26 - 46% open · ⏱️ 05.12.2024):

     git clone https://github.com/exanauts/ExaModels.jl
    
KVXOPT (🥉13 · ⭐ 10) - CVXOPT with more wrappers suite-sparse. ❗️GPL-3.0
  • GitHub (👨‍💻 15 · 🔀 1 · 📦 28 · ⏱️ 08.05.2024):

     git clone https://github.com/sanurielf/kvxopt
    
  • PyPi (📥 9.1K / month · 📦 12 · ⏱️ 08.05.2024):

     pip install kvxopt
    
  • Conda (📥 210K · ⏱️ 07.09.2024):

     conda install -c conda-forge kvxopt
    

Optimizer

Back to top

OR-Tools (🥇37 · ⭐ 11K) - Google Optimization Tools. Apache-2
  • GitHub (👨‍💻 180 · 🔀 2.1K · 📥 840K · 📦 270 · 📋 3K - 2% open · ⏱️ 24.11.2024):

     git clone https://github.com/google/or-tools
    
  • PyPi (📥 2.6M / month · 📦 260 · ⏱️ 16.09.2024):

     pip install ortools
    
  • Conda (📥 84K · ⏱️ 16.06.2023):

     conda install -c conda-forge ortools-python
    
Xopt (🥇35 · ⭐ 11K · 📉) - Flexible high-level optimization in Python. MPL-2.0
  • GitHub (👨‍💻 180 · 🔀 2.1K · 📥 840K · 📦 270 · 📋 3K - 2% open · ⏱️ 24.11.2024):

     git clone https://github.com/google/or-tools
    
  • PyPi (📥 1K / month · 📦 2 · ⏱️ 06.11.2024):

     pip install xopt
    
  • Conda (📥 38K · ⏱️ 08.11.2024):

     conda install -c conda-forge xopt
    
HiGHS (🥈34 · ⭐ 1K · 📈) - Large-scale Sparse Linear Problem Optimizer. MIT
  • GitHub (👨‍💻 78 · 🔀 180 · 📦 210 · 📋 760 - 12% open · ⏱️ 13.11.2024):

     git clone https://github.com/ERGO-Code/HiGHS
    
  • PyPi (📥 260K / month · 📦 42 · ⏱️ 13.11.2024):

     pip install highspy
    
  • Conda (📥 13K · ⏱️ 01.12.2024):

     conda install -c conda-forge highs
    
Tulip (🥈33 · ⭐ 11K · 📉) - Interior-point solver in pure Julia. MPL-2.0
  • GitHub (👨‍💻 180 · 🔀 2.1K · 📥 840K · 📦 270 · 📋 3K - 2% open · ⏱️ 24.11.2024):

     git clone https://github.com/google/or-tools
    
PySCIPOpt (🥈32 · ⭐ 830) - Python interface for SCIP. MIT
  • GitHub (👨‍💻 75 · 🔀 250 · 📦 270 · 📋 540 - 5% open · ⏱️ 11.12.2024):

     git clone https://github.com/scipopt/PySCIPOpt
    
  • PyPi (📥 290K / month · 📦 35 · ⏱️ 31.10.2024):

     pip install PySCIPOpt
    
  • Conda (📥 380K · ⏱️ 14.11.2024):

     conda install -c conda-forge pyscipopt
    
OSQP (🥈31 · ⭐ 1.7K · 📈) - Operator Splitting QP Solver. Apache-2
  • GitHub (👨‍💻 34 · 🔀 360 · 📥 84K · 📋 360 - 27% open · ⏱️ 10.12.2024):

     git clone https://github.com/osqp/osqp
    
  • PyPi (📥 3.3M / month · 📦 85 · ⏱️ 11.10.2024):

     pip install osqp
    
  • Conda (📥 1M · ⏱️ 22.10.2024):

     conda install -c conda-forge osqp
    
SCS (🥈28 · ⭐ 560) - Splitting Conic Solver. MIT
  • GitHub (👨‍💻 28 · 🔀 130 · 📋 180 - 22% open · ⏱️ 10.12.2024):

     git clone https://github.com/cvxgrp/scs
    
  • PyPi (📥 2.8M / month · 📦 50 · ⏱️ 24.08.2024):

     pip install scs
    
  • Conda (📥 1.1M · ⏱️ 10.09.2024):

     conda install -c conda-forge scs
    
Ipopt (🥉27 · ⭐ 1.5K) - COIN-OR Interior Point Optimizer. EPL-2.0
  • GitHub (👨‍💻 35 · 🔀 280 · 📥 17K · 📋 600 - 2% open · ⏱️ 12.12.2024):

     git clone https://github.com/coin-or/Ipopt
    
  • PyPi (📥 1.4K / month · 📦 10 · ⏱️ 07.04.2021):

     pip install ipopt
    
  • Conda (📥 1.4M · ⏱️ 02.12.2024):

     conda install -c conda-forge ipopt
    
CBC (🥉24 · ⭐ 830) - COIN-OR Branch-and-Cut solver. EPL-2.0
  • GitHub (👨‍💻 34 · 🔀 120 · 📥 33K · 📋 490 - 27% open · ⏱️ 07.12.2024):

     git clone https://github.com/coin-or/Cbc
    
  • Conda (📥 1.2M · ⏱️ 03.09.2024):

     conda install -c conda-forge coincbc
    
Clp (🥉24 · ⭐ 830) - COIN-OR Linear Programming Solver. EPL-2.0
  • GitHub (👨‍💻 34 · 🔀 120 · 📥 33K · 📋 490 - 27% open · ⏱️ 07.12.2024):

     git clone https://github.com/coin-or/Cbc
    
  • Conda (📥 800K · ⏱️ 22.08.2024):

     conda install -c conda-forge coin-or-clp
    
ECOS (🥉24 · ⭐ 480 · 💤) - Conic solver for second-order cone programming. ❗️GPL-3.0
  • GitHub (👨‍💻 40 · 🔀 120 · 📋 160 - 40% open · ⏱️ 04.01.2022):

     git clone https://github.com/embotech/ecos
    
  • PyPi (📥 1.4M / month · 📦 49 · ⏱️ 18.06.2024):

     pip install ecos
    
  • Conda (📥 940K · ⏱️ 10.09.2024):

     conda install -c conda-forge ecos
    
Clarabel.rs (🥉24 · ⭐ 350) - Interior-point solver for convex conic optimisation.. Apache-2
  • GitHub (👨‍💻 8 · 🔀 29 · 📦 25 · 📋 46 - 39% open · ⏱️ 12.09.2024):

     git clone https://github.com/oxfordcontrol/Clarabel.rs
    
  • PyPi (📥 1.9M / month · 📦 24 · ⏱️ 01.06.2024):

     pip install clarabel
    
  • Conda (📥 130K · ⏱️ 02.03.2024):

     conda install -c conda-forge clarabel
    
AMPLPY (🥉23 · ⭐ 69) - Python API for AMPL. BSD-3
  • GitHub (👨‍💻 9 · 🔀 19 · 📦 95 · 📋 47 - 2% open · ⏱️ 03.12.2024):

     git clone https://github.com/ampl/amplpy
    
  • PyPi (📥 99K / month · 📦 4 · ⏱️ 26.11.2024):

     pip install amplpy
    
  • Conda (📥 330K · ⏱️ 30.05.2024):

     conda install -c conda-forge amplpy
    
PIQP (🥉19 · ⭐ 93) - Proximal Interior Point Quadratic Programming solver. BSD-2
  • GitHub (👨‍💻 3 · 🔀 13 · 📥 360 · 📦 29 · 📋 11 - 45% open · ⏱️ 15.10.2024):

     git clone https://github.com/PREDICT-EPFL/piqp
    
  • PyPi (📥 46K / month · 📦 8 · ⏱️ 02.08.2024):

     pip install piqp
    
  • Conda (📥 120K · ⏱️ 31.10.2024):

     conda install -c conda-forge piqp
    
MadNLP (🥉16 · ⭐ 170 · ➕) - A solver for nonlinear programming with GPU support. MIT
  • GitHub (👨‍💻 14 · 🔀 15 · 📋 85 - 47% open · ⏱️ 10.12.2024):

     git clone https://github.com/MadNLP/MadNLP.jl
    
Clarabel.jl (🥉14 · ⭐ 180) - Interior-point solver for convex conic optimisation in.. Apache-2
  • GitHub (👨‍💻 11 · 🔀 16 · 📋 52 - 9% open · ⏱️ 12.06.2024):

     git clone https://github.com/oxfordcontrol/Clarabel.jl
    
OptiVerse (🥉8 · ⭐ 12 · 🐣) - A library with innovative optimization solutions. MIT
  • GitHub (👨‍💻 5 · 🔀 12 · ⏱️ 05.10.2024):

     git clone https://github.com/feyntech-opt/OptiVerse
    

Machine/Reinforcement Learning for Power Grid

Back to top

Grid2Op (🥇25 · ⭐ 300) - Modeling sequential decision making in power systems. MPL-2.0
  • GitHub (👨‍💻 32 · 🔀 120 · 📋 360 - 14% open · ⏱️ 15.10.2024):

     git clone https://github.com/rte-france/Grid2Op
    
  • PyPi (📥 5K / month · 📦 20 · ⏱️ 03.12.2024):

     pip install Grid2Op
    
  • Docker Hub (📥 10K · ⭐ 1 · ⏱️ 05.07.2022):

     docker pull bdonnot/grid2op
    
RLGC (🥉9 · ⭐ 110 · 💤) - RL for Grid Control (RLGC). ❗️BSD
  • GitHub (👨‍💻 4 · 🔀 31 · 📋 15 - 33% open · ⏱️ 08.04.2022):

     git clone https://github.com/RLGC-Project/RLGC
    
andes_gym (🥉5 · ⭐ 9 · 💤) - ANDES RL Environment for OpenAI Gym. ❗️GPL-3.0
  • GitHub (👨‍💻 2 · 🔀 4 · ⏱️ 28.01.2022):

     git clone https://github.com/cuihantao/andes_gym
    

Visualization

Back to top

PowSyBl Diagram (🥇18 · ⭐ 76) - single-line substation diagrams and network graph.. MPL-2.0
  • GitHub (👨‍💻 27 · 🔀 13 · 📦 30 · 📋 160 - 36% open · ⏱️ 12.12.2024):

     git clone https://github.com/powsybl/powsybl-diagram
    
PowerGraphics.jl (🥉13 · ⭐ 30) - Visualization for PowerSimulations; NREL Sienna. BSD-3
  • GitHub (👨‍💻 9 · 🔀 11 · 📋 39 - 41% open · ⏱️ 11.07.2024):

     git clone https://github.com/NREL-Sienna/powergraphics.jl
    
LTB AGVis (🥉11 · ⭐ 7) - Geographical Visualization for Power Grid; CURENT LTB. ❗️GPL-3.0
  • GitHub (👨‍💻 9 · 🔀 5 · 📥 18 · 📦 2 · 📋 25 - 36% open · ⏱️ 07.06.2024):

     git clone https://github.com/CURENT/agvis
    
  • PyPi (📥 150 / month · ⏱️ 07.06.2024):

     pip install agvis
    

Messaging Environment

Back to top

HELICS (🥇25 · ⭐ 130) - Co-simulation framework. BSD-3
  • GitHub (👨‍💻 39 · 🔀 40 · 📥 25K · 📋 670 - 13% open · ⏱️ 10.12.2024):

     git clone https://github.com/GMLC-TDC/HELICS
    
  • PyPi (📥 23K / month · 📦 13 · ⏱️ 09.07.2024):

     pip install helics
    
  • Conda (📥 21K · ⏱️ 16.06.2023):

     conda install -c conda-forge helics
    
LTB DiME (🥉7 · ⭐ 3 · 💤) - Distributed Messaging Environment; CURENT LTB. ❗️GPL-3.0
  • GitHub (👨‍💻 4 · 🔀 2 · 📋 48 - 27% open · ⏱️ 31.07.2023):

     git clone https://github.com/CURENT/dime
    

Power System Data

Back to top

🔗 Australian MV-LV Networks ( ⭐ 26) - Large-scale three-phase Australian MV distribution networks..

🔗 Power Grid Lib - Optimal Power Flow ( ⭐ 310 · 💤) - Benchmarks for OPF.

🔗 Power Grid Lib - Unit Commitment ( ⭐ 89 · 💤) - Benchmarks for UC.

🔗 Power Grid Lib - Optimal Power Flow with HVDC Lines ( ⭐ 19 · 💤) - Benchmarks for OPF with HVDC.

🔗 WECC-and-NPCC-Electricity-Economic-Data ( ⭐ 6) - Economic data on WECC and NPCC.

🔗 OpenDataElia - Data by opendatasoft.

🔗 Data on Energy ( ⭐ 300) - Data on energy by Our World in Data.

🔗 COVID-EMDA ( ⭐ 59) - Cross-Domain Data Hub with Data in USA.

🔗 PV Rooftop Database ( ⭐ 57) - NREL PV Rooftop Database.

🔗 Grid Event Signature Library - An initiative spearheaded by ORNL and LLNL.

🔗 Electrical Signals Databases ( ⭐ 25) - Voltage and current samples from Digital Fault Recorder.

🔗 A new power system benchmark ( ⭐ 20) - A new type of power system calculation example by the China..

GridStatus (🥇24 · ⭐ 290) - Extract data from ISOs and other sources. BSD-3
  • GitHub (👨‍💻 29 · 🔀 55 · 📦 18 · 📋 110 - 43% open · ⏱️ 12.12.2024):

     git clone https://github.com/kmax12/gridstatus
    
  • PyPi (📥 4.9K / month · 📦 2 · ⏱️ 04.10.2024):

     pip install gridstatus
    
Atlite (🥇24 · ⭐ 280) - Calculating Renewable Power Potentials. BSD-2
  • GitHub (👨‍💻 38 · 🔀 97 · 📦 82 · 📋 130 - 28% open · ⏱️ 09.12.2024):

     git clone https://github.com/PyPSA/atlite
    
  • PyPi (📥 3.2K / month · ⏱️ 21.11.2024):

     pip install atlite
    
  • Conda (📥 61K · ⏱️ 21.11.2024):

     conda install -c conda-forge atlite
    
powerplantmatching (🥇24 · ⭐ 160) - Tools to combine multiple power plant databases. BSD-2
  • GitHub (👨‍💻 30 · 🔀 56 · 📥 84 · 📦 63 · 📋 87 - 19% open · ⏱️ 05.11.2024):

     git clone https://github.com/PyPSA/powerplantmatching
    
  • PyPi (📥 1.5K / month · ⏱️ 18.09.2024):

     pip install powerplantmatching
    
  • Conda (📥 51K · ⏱️ 18.09.2024):

     conda install -c conda-forge powerplantmatching
    
SimBench (🥉16 · ⭐ 110) - Benchmark dataset of German LV/MV/HV grids including.. ❗️odbl-1.0 juptyer
  • GitHub (👨‍💻 4 · 🔀 29 · 📦 38 · 📋 32 - 9% open · ⏱️ 23.10.2024):

     git clone https://github.com/e2nIEE/simbench
    
  • PyPi (📥 2.1K / month · 📦 7 · ⏱️ 23.04.2024):

     pip install simbench
    
DeepSolar (🥉9 · ⭐ 250 · 💤) - Houseshold-level solar panel identification with deep learning. MIT
  • GitHub (👨‍💻 2 · 🔀 68 · 📋 17 - 76% open · ⏱️ 26.03.2019):

     git clone https://github.com/wangzhecheng/DeepSolar
    

Power Electronics

Back to top

GSEIM (🥇6 · ⭐ 2 · 💤) - Simulation of electrical circuits. ❗️GPL-3.0
  • GitHub (👨‍💻 1):

     git clone https://github.com/gseim/gseim
    
  • PyPi (📥 21 / month · ⏱️ 16.07.2022):

     pip install GSEIM
    

Database Management

Back to top

dGen (🥇13 · ⭐ 60) - The Distributed Generation Market Demand (dGen) model. BSD-3
  • GitHub (👨‍💻 6 · 🔀 140 · 📋 34 - 50% open · ⏱️ 05.12.2024):

     git clone https://github.com/NREL/dgen
    
dsgrid (🥇13 · ⭐ 26) - Demand-side grid projects, datasets and queries. BSD-3
  • GitHub (👨‍💻 6 · 🔀 3 · 📋 120 - 45% open · ⏱️ 26.11.2024):

     git clone https://github.com/dsgrid/dsgrid
    

Textbook

Back to top

🔗 TextbookSimulations ( ⭐ 11 · 💤) - Examples and problems accompanying Daniel Kirschens..

🔗 UTK ECE 522 - Power System Analysis II ( ⭐ 4) - Hands-on Project for Power System Analysis II (UTK..

🔗 ELEC0447 Analysis of Electric Power and Energy Systems ( ⭐ 18) - Masters course of power systems analysis at ULige.

🔗 Tutorial on DER Hosting Capacity Part 0 ( ⭐ 5) - Using dss_python.

🔗 Tutorial on DER Hosting Capacity Part 1 ( ⭐ 1) - Advanced Tools for the Analysis of Three-Phase..

🔗 Tutorial on DER Hosting Capacity Part 2 ( ⭐ 2) - Time-Series Analysis and PV Hosting Capacity of LV..

🔗 Tutorial on DER Hosting Capacity Part 3 ( ⭐ 1) - Volt-Watt Control and PV Hosting Capacity of LV..

🔗 Tutorial on DER Hosting Capacity Part 4 ( ⭐ 2) - Monte Carlo Assessment of PV Hosting Capacity of an..


Project Popularity Score

  • Has homepage link & description: + 1
  • Has an existing GitHub repository: + 1
  • Has a license: + 1
  • Has a commonly used license (e.g. MIT): + 1
  • Has multiple releases: + 1
  • Has stable releases based on semantic version: + 1
  • Has a release that is less than 6 months old: + 1
  • Repo was update in the last 3 months: + 1
  • Is older than 6 months: + 1
  • Metrics from GitHub & package mangers:
    • Number of stars: + log(COUNT / 2)
    • Number of contributors: + log(COUNT / 2) - 1
    • Number of commits: + log(COUNT / 2) - 1
    • Number of forks: + log(COUNT / 2)
    • Number of monthly downloads: + log(COUNT / 2) - 1
    • Number of dependent projects: + log(COUNT / 1.5)
    • Number of watchers: + log(COUNT / 2) - 1
    • Number of closed issues: + log(COUNT / 2) - 1

NOTE: This calculation is just chosen by EXPERIENCE. There is NO scientific proof that this really reflects the QUALITY of a project.

Project Data Collection

The data collection can be deficient for the projects that are not majorly hosted in GitHub.

Related Resources

Contribution

Contributions are encouraged and always welcome! If you like to add or update projects, choose one of the following ways:

  • Open an issue by selecting one of the provided categories from the issue page and fill in the requested information.
  • Modify the projects.yaml with your additions or changes, and submit a pull request. This can also be done directly via the Github UI.

If you like to contribute to or share suggestions regarding the project metadata collection or markdown generation, please refer to the best-of-generator repository. If you like to create your own best-of list, we recommend to follow this guide.

For more information on how to add or update projects, please read the contribution guidelines. By participating in this project, you agree to abide by its Code of Conduct.

License

CC0