Skip to content

Commit

Permalink
Merge pull request #922 from PyPSA/bus-regions
Browse files Browse the repository at this point in the history
create a bus for every unique coordinate, not only substations
  • Loading branch information
fneum authored Feb 16, 2024
2 parents abc4538 + c22e47c commit dc14082
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 1 deletion.
5 changes: 5 additions & 0 deletions doc/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@ Release Notes
Upcoming Release
================

* Regions are assigned to all buses with unique coordinates in the network with
a preference given to substations. Previously, only substations had assigned
regions, but this could lead to issues when a high spatial resolution was
applied.

* The default configuration ``config/config.default.yaml`` is now automatically
used as a base configuration file and no longer copied to
``config/config.yaml`` on first use. The file ``config/config.yaml`` should be
Expand Down
1 change: 1 addition & 0 deletions scripts/base_network.py
Original file line number Diff line number Diff line change
Expand Up @@ -559,6 +559,7 @@ def prefer_voltage(x, which):
for b, df in product(("bus0", "bus1"), (n.lines, n.links)):
has_connections_b |= ~df.groupby(b).under_construction.min()

buses["onshore_bus"] = onshore_b
buses["substation_lv"] = (
lv_b & onshore_b & (~buses["under_construction"]) & has_connections_b
)
Expand Down
8 changes: 7 additions & 1 deletion scripts/build_bus_regions.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,13 @@ def voronoi_partition_pts(points, outline):
c_b = n.buses.country == country

onshore_shape = country_shapes[country]
onshore_locs = n.buses.loc[c_b & n.buses.substation_lv, ["x", "y"]]
onshore_locs = (
n.buses.loc[c_b & n.buses.onshore_bus]
.sort_values(
by="substation_lv", ascending=False
) # preference for substations
.drop_duplicates(subset=["x", "y"], keep="first")[["x", "y"]]
)
onshore_regions.append(
gpd.GeoDataFrame(
{
Expand Down
1 change: 1 addition & 0 deletions scripts/simplify_network.py
Original file line number Diff line number Diff line change
Expand Up @@ -611,6 +611,7 @@ def cluster(
"symbol",
"tags",
"under_construction",
"onshore_bus",
"substation_lv",
"substation_off",
"geometry",
Expand Down

0 comments on commit dc14082

Please sign in to comment.