.. module:: ml4ps
.. module:: ml4ps.backend.interface
.. module:: ml4ps.backend.pandapower
.. module:: ml4ps.backend.pypowsybl
The power system backend is an essential part of this library. It allows to rely on power system packages (such as pandapower and pypowsybl) for the loading of power grid files, the updating of power grid features, the power flow simulations, and the extraction of power grid features.
We have defined a common backend interface through the abstract base class :class:`ml4ps.backend.interface.AbstractBackend`.
.. autoclass:: ml4ps.backend.interface.AbstractBackend :members:
Every power grid backend has its own naming conventions and electro-technical models. To give a concrete example, transformers are not modelled identically in pandapower and pypowsybl. As a consequence, they are not defined by the same features from one package to the other. Moreover, certain advanced features are only available in certain power grid packages.
For now, only pandapower and pypowsybl have compatible backend implementations in ml4ps. They can be accessed as follows :
import ml4ps as mp
pandapowerbackend = mp.PandaPowerBackend()
pypowsyblbackend = mp.PyPowSyblBackend()