Dynaωo is an hybrid C++/Modelica open source time domain simulation tool for power systems. It aims at providing power system stakeholders with a transparent, flexible, interoperable and robust simulation tool that could ease collaboration and cooperation in the power system community.
To achieve this goal, Dynaωo is based on two mains principles: the use of a high-level modelling language Modelica and a strict separation between the modelling and the solving parts.
It is an ongoing project based on previous works conducted particularly in two R&D European projects: Pegase and iTesla. These projects have contributed to the choices that are the basis upon which Dynaωo is built: they proved the usability of the Modelica language for power system simulations and contributed to the development of numerical resolution strategies that are integrated into Dynaωo.
Dynaωo’s primary focus has been on RMS simulations and most of the tests done until now have been for long-term and short-term stability studies. However, the simulation tool structure offers great flexibility and makes it also possible to run other types of power system simulations, as long as the user provides the necessary models and solvers. Different initiatives are under discussion or submission to test the possibility to use Dynaωo for EMT simulations or multi-system simulations.
Only validated models are included into the library that is still under construction. We plan to release a new set of models in the near future, with for example HVDC, wind and solar power plants models or more different standard regulation models, etc.
Dynaωo is using some external libraries to run simulations:
- OpenModelica, a Modelica environment developed and maintained by the Open Source Modelica Consortium distributed under a GPL V3.0 or OSMC Public License V1.2. The current version used is V1.13.2.
- SUNDIALS, a suite of solvers developed and maintained by the Lawrence Livermore National Lab and distributed under a BSD-3-Clause license. The 4.1.0 version is currently used.
- SuiteSparse, and in particular KLU, a LU decomposition library that is part of the suite sparse project, developed and maintained by T. A. Davis et al. at the University of Florida distributed under a LGPL-2.1+. The version 4.5.4 of suite sparse is the one used by Dynaωo.
- Adept, an automatic differentiation library that has been developed and maintained at the University of Reading by R.J. Hogan distributed under Apache-2.0. It is the version 2.0.5 that is integrated into Dynaωo.
- Xerces-C++ a validating XML parser written in a portable subset of C++ and distributed under the Apache Software License, Version 2.0. The current version used is 3.2.2.
- NICSLU which is another LU decomposition library. It is developed and maintained by Tsinghua University and is optional at the moment into Dynaωo. It is distributed under a GNU LGPL license.
- jQuery that is distributed into Dynaωo to display results into a minimalistic GUI after the simulation. The current version used is the 1.3.4 distributed under both a MIT and a GPL license.
- cpplint, a tool used during Dynaωo compilation process to ensure that the C++ files follow the Google’s C++ style. It is distributed under a CC-By 3.0 License.