Open rwl opened 3 years ago
Thanks for the suggestion.
Back in 2016, I met with GridDyn's author and talked using FMI to link with the OpenIPSL library. It is a non-trivial task especially when the tool is developed in C++ (like GridDyn or Dynawo). At that point, the GridDyn's FMI interface was still a work in progress. I hope it has gotten more mature.
In 2017, I thought of developing a lightweight Python-based tool to use OpenIPSL models based on FMPy. I had an undergrad student helper but didn't manage to get anywhere close. As of now, integrating with FMI for Andes would look like repeating what Dynawo has been doing.
I thought of building a dynawo-alike tool in Julia. The justification is that Julia is very efficient to call external C library. However, the JuliaFMI library is not mature.
Anyway, FMI is great standard for model exchange and co-sim. I plan to explore FMI for Andes on the holidays.
FMPy: https://github.com/CATIA-Systems/FMPy JuliaFMI: https://github.com/fmi-tools/JuliaFMI
Power companies often have custom dynamic models that they are accustomed to using in their simulations. The symbolic modeling features of Andes make it convenient to add new models, but users may wish to reuse existing models and would not be comfortable re-implementing them.
I noticed that GridDyn has support for the Functional Mock-up Interface (FMI) standard. The FMI library is implemented in C and there is a Python interface available:
https://pypi.org/project/PyFMI/
Perhaps it could be used with Andes to allow the integration of models written with other tools. There are some existing libraries that could be used for experimentation:
https://github.com/OpenIPSL/OpenIPSL https://github.com/dynawo/dynawo/tree/master/dynawo/sources/Models/Modelica/Dynawo