From 91ca07d72f66b2796ef948928883db269505119d Mon Sep 17 00:00:00 2001 From: Fabian Neumann Date: Wed, 15 Jun 2022 14:00:47 +0200 Subject: [PATCH] add option to specify deviating norm year for hydro --- config.default.yaml | 1 + scripts/build_hydro_profile.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/config.default.yaml b/config.default.yaml index 9e7841e8..010631e4 100755 --- a/config.default.yaml +++ b/config.default.yaml @@ -169,6 +169,7 @@ renewable: PHS_max_hours: 6 hydro_max_hours: "energy_capacity_totals_by_country" # one of energy_capacity_totals_by_country, estimate_by_large_installations or a float clip_min_inflow: 1.0 + norm_year: 2013 lines: types: diff --git a/scripts/build_hydro_profile.py b/scripts/build_hydro_profile.py index 70c8380e..fdd028e9 100644 --- a/scripts/build_hydro_profile.py +++ b/scripts/build_hydro_profile.py @@ -84,8 +84,12 @@ if __name__ == "__main__": eia_stats = vhydro.get_eia_annual_hydro_generation(snakemake.input.eia_hydro_generation).reindex(columns=countries) - if len(year) > 0 and year not in eia_stats.index: - eia_stats.loc[year] = eia_stats.mean() + weather_year = snakemake.wildcards.weather_year + norm_year = snakemake.config['renewable']['hydro'].get('norm_year') + if norm_year: + eia_stats.loc[weather_year] = eia_stats.loc[norm_year] + elif weather_year and weather_year not in eia_stats.index: + eia_stats.loc[weather_year] = eia_stats.median() inflow = cutout.runoff(shapes=country_shapes, smooth=True,