pypsa-meets-earth / pypsa-earth

PyPSA-Earth: A flexible Python-based open optimisation model to study energy system futures around the world.
https://pypsa-earth.readthedocs.io/en/latest/
207 stars 167 forks source link

Align network data structure with PyPSA>=0.25 #985

Closed ekatef closed 3 months ago

ekatef commented 4 months ago

It appears that PyPSA update create some conflicts with the current PyPSA-Earth network structure. In particular, it relates to behaivour of make_consense() function applied during bus aggregation.

Now buses attributes to match are defined as using a combination of aggregation strategies with the column names of in the buses dataframe. Since n.buses contains in our case columns like bus_id or tag_area, an assertion check that all such attributes are the same across all the clustered buses, it leads to an error.

It seems to be an explanation for AssertionError: In Bus cluster bus_id, the values of attribute bus_id do not agree like reported in #908 and #974.

Describe the feature you'd like to see

The most straightforward approach to use PyPSA>=0.25 seems to align the network structure at the clustering stage with the structure expected by PyPSA. It would be also great to document these expectations towards the structue of the network data.

ekatef commented 3 months ago

Closing in favour of #787