From 2403650be29b60b9a902f7327f23b92697ddc723 Mon Sep 17 00:00:00 2001 From: Fabian Neumann Date: Fri, 8 Apr 2022 10:27:55 +0200 Subject: [PATCH] prepare: allow varying emission prices in opts wc: e.g. Ep80.5 --- scripts/prepare_network.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/scripts/prepare_network.py b/scripts/prepare_network.py index 2b4e6113..178c6bb3 100755 --- a/scripts/prepare_network.py +++ b/scripts/prepare_network.py @@ -278,8 +278,16 @@ if __name__ == "__main__": sel = c.df.carrier.str.contains(carrier) c.df.loc[sel,attr] *= factor - if 'Ep' in opts: - add_emission_prices(n, snakemake.config['costs']['emission_prices']) + for o in opts: + if 'Ep' in o: + m = re.findall("[0-9]*\.?[0-9]+$", o) + if len(m) > 0: + logger.info("Setting emission prices according to wildcard value.") + add_emission_prices(n, dict(co2=float(m[0]))) + else: + logger.info("Setting emission prices according to config value.") + add_emission_prices(n, snakemake.config['costs']['emission_prices']) + break ll_type, factor = snakemake.wildcards.ll[0], snakemake.wildcards.ll[1:] set_transmission_limit(n, ll_type, factor, costs, Nyears)