From 1bf6ea15323986bedeb89ade712fb5d256d7ba37 Mon Sep 17 00:00:00 2001 From: Fabian Date: Wed, 2 Aug 2023 14:31:08 +0200 Subject: [PATCH] only copy active configuration to results folder use copy config for all solve rules remove copying of environment --- rules/postprocess.smk | 18 +----------------- rules/solve_electricity.smk | 1 + rules/solve_myopic.smk | 2 +- rules/solve_overnight.smk | 4 +--- scripts/copy_config.py | 14 +------------- 5 files changed, 5 insertions(+), 34 deletions(-) diff --git a/rules/postprocess.smk b/rules/postprocess.smk index 105318f3..46f9a935 100644 --- a/rules/postprocess.smk +++ b/rules/postprocess.smk @@ -39,7 +39,7 @@ rule copy_config: params: RDIR=RDIR, output: - RESULTS + "config/config.yaml", + RESULTS + "config.yaml", threads: 1 resources: mem_mb=1000, @@ -51,22 +51,6 @@ rule copy_config: "../scripts/copy_config.py" -rule copy_conda_env: - output: - RESULTS + "config/environment.yaml", - threads: 1 - resources: - mem_mb=500, - log: - LOGS + "copy_conda_env.log", - benchmark: - BENCHMARKS + "copy_conda_env" - conda: - "../envs/environment.yaml" - shell: - "conda env export -f {output} --no-builds" - - rule make_summary: params: foresight=config["foresight"], diff --git a/rules/solve_electricity.smk b/rules/solve_electricity.smk index f73a5b0c..6943cc55 100644 --- a/rules/solve_electricity.smk +++ b/rules/solve_electricity.smk @@ -13,6 +13,7 @@ rule solve_network: ), input: network=RESOURCES + "networks/elec_s{simpl}_{clusters}_ec_l{ll}_{opts}.nc", + config=RESULTS + "config.yaml", output: network=RESULTS + "networks/elec_s{simpl}_{clusters}_ec_l{ll}_{opts}.nc", log: diff --git a/rules/solve_myopic.smk b/rules/solve_myopic.smk index ba2787a1..6e84e5f4 100644 --- a/rules/solve_myopic.smk +++ b/rules/solve_myopic.smk @@ -92,7 +92,7 @@ rule solve_sector_network_myopic: network=RESULTS + "prenetworks-brownfield/elec_s{simpl}_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.nc", costs="data/costs_{planning_horizons}.csv", - config=RESULTS + "config/config.yaml", + config=RESULTS + "config.yaml", output: RESULTS + "postnetworks/elec_s{simpl}_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.nc", diff --git a/rules/solve_overnight.smk b/rules/solve_overnight.smk index d0313f30..a01c1195 100644 --- a/rules/solve_overnight.smk +++ b/rules/solve_overnight.smk @@ -14,9 +14,7 @@ rule solve_sector_network: input: network=RESULTS + "prenetworks/elec_s{simpl}_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.nc", - costs="data/costs_{}.csv".format(config["costs"]["year"]), - config=RESULTS + "config/config.yaml", - #env=RDIR + 'config/environment.yaml', + config=RESULTS + "config.yaml", output: RESULTS + "postnetworks/elec_s{simpl}_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.nc", diff --git a/scripts/copy_config.py b/scripts/copy_config.py index 79d2e32b..a549d893 100644 --- a/scripts/copy_config.py +++ b/scripts/copy_config.py @@ -11,25 +11,13 @@ from shutil import copy import yaml -files = { - "config/config.yaml": "config.yaml", - "Snakefile": "Snakefile", - "scripts/solve_network.py": "solve_network.py", - "scripts/prepare_sector_network.py": "prepare_sector_network.py", -} - if __name__ == "__main__": if "snakemake" not in globals(): from _helpers import mock_snakemake snakemake = mock_snakemake("copy_config") - basepath = Path(f"results/{snakemake.params.RDIR}config/") - - for f, name in files.items(): - copy(f, basepath / name) - - with open(basepath / "config.snakemake.yaml", "w") as yaml_file: + with open(snakemake.output[0], "w") as yaml_file: yaml.dump( snakemake.config, yaml_file,