From 8dafb7bc838e046d28da94583164c349851915ba Mon Sep 17 00:00:00 2001 From: Fabian Neumann Date: Sun, 27 Feb 2022 08:07:11 +0100 Subject: [PATCH 1/3] fix custom clustering by checking explicitly for series (#318) --- scripts/cluster_network.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/cluster_network.py b/scripts/cluster_network.py index 99d428d4..844d5b17 100644 --- a/scripts/cluster_network.py +++ b/scripts/cluster_network.py @@ -269,7 +269,7 @@ def clustering_for_n_clusters(n, n_clusters, custom_busmap=False, aggregate_carr else: raise AttributeError(f"potential_mode should be one of 'simple' or 'conservative' but is '{potential_mode}'") - if not custom_busmap: + if not isinstance(custom_busmap, pd.Series): busmap = busmap_for_n_clusters(n, n_clusters, solver_name, focus_weights, algorithm) else: busmap = custom_busmap From 49ec143b0aa10b5cdea6d6e0d79aaf8b63f47bfe Mon Sep 17 00:00:00 2001 From: Fabian Date: Wed, 2 Mar 2022 14:22:16 +0100 Subject: [PATCH 2/3] Snakefile: fix memory function for clusters == 'all' --- Snakefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Snakefile b/Snakefile index 086b048c..4b8fa0b3 100644 --- a/Snakefile +++ b/Snakefile @@ -313,6 +313,8 @@ def memory(w): break if w.clusters.endswith('m'): return int(factor * (18000 + 180 * int(w.clusters[:-1]))) + elif w.clusters == "all": + return int(factor * (18000 + 180 * 4000)) else: return int(factor * (10000 + 195 * int(w.clusters))) From 752ff285386a59296d975d76cbfb2f9a0de103e9 Mon Sep 17 00:00:00 2001 From: Fabian Date: Wed, 2 Mar 2022 14:43:04 +0100 Subject: [PATCH 3/3] cluster_network.py: allow cluster wildcard to be 'all' --- scripts/cluster_network.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/cluster_network.py b/scripts/cluster_network.py index 844d5b17..2c457bef 100644 --- a/scripts/cluster_network.py +++ b/scripts/cluster_network.py @@ -343,6 +343,9 @@ if __name__ == "__main__": if snakemake.wildcards.clusters.endswith('m'): n_clusters = int(snakemake.wildcards.clusters[:-1]) aggregate_carriers = pd.Index(n.generators.carrier.unique()).difference(renewable_carriers) + elif snakemake.wildcards.clusters == 'all': + n_clusters = len(n.buses) + aggregate_carriers = None # All else: n_clusters = int(snakemake.wildcards.clusters) aggregate_carriers = None # All