From cf43e23a8ee5042a7ff5e909237f36aa8c58bccb Mon Sep 17 00:00:00 2001 From: cpschau Date: Thu, 22 Aug 2024 11:31:04 +0200 Subject: [PATCH 1/9] subnodes without heat pumps --- scripts/add_existing_baseyear.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/scripts/add_existing_baseyear.py b/scripts/add_existing_baseyear.py index 9747efd621..901aeea7d2 100644 --- a/scripts/add_existing_baseyear.py +++ b/scripts/add_existing_baseyear.py @@ -489,6 +489,10 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): # assign clustered bus chp["bus"] = chp["bus"].astype(int) chp["cluster_bus"] = chp.bus.map(clustermaps) + if snakemake.params.add_district_heating_subnodes: + chp.loc[chp.subnode.notna(), "cluster_bus"] = chp.loc[ + chp.subnode.notna(), "subnode" + ] chp["grouping_year"] = np.take( grouping_years, np.digitize(chp.DateIn, grouping_years, right=True) @@ -589,7 +593,7 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): p_nom.index, suffix=f" urban central {generator} CHP-{grouping_year}", bus0=bus0, - bus1=p_nom.index, + bus1=p_nom.index.str.split().str[:2].str.join(" "), bus2=p_nom.index + " urban central heat", bus3="co2 atmosphere", carrier=f"urban central {generator} CHP", @@ -609,8 +613,10 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): "Link", p_nom.index, suffix=f" urban {key}-{grouping_year}", - bus0=spatial.biomass.df.loc[p_nom.index]["nodes"], - bus1=p_nom.index, + bus0=spatial.biomass.df.loc[ + p_nom.index.str.split().str[:2].str.join(" ") + ]["nodes"].values, + bus1=p_nom.index.str.split().str[:2].str.join(" "), bus2=p_nom.index + " urban central heat", carrier=generator, p_nom=p_nom, @@ -647,7 +653,7 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): p_nom.index, suffix=f" urban central {generator} CHP-{grouping_year}", bus0=bus0, - bus1=p_nom.index, + bus1=p_nom.index.str.split().str[:2].str.join(" "), bus2=p_nom.index + " urban central heat", bus3="co2 atmosphere", carrier=f"urban central {generator} CHP", @@ -667,8 +673,10 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): "Link", p_nom.index, suffix=f" urban {key}-{grouping_year}", - bus0=spatial.biomass.df.loc[p_nom.index]["nodes"], - bus1=p_nom.index, + bus0=spatial.biomass.df.loc[ + p_nom.index.str.split().str[:2].str.join(" ") + ]["nodes"].values, + bus1=p_nom.index.str.split().str[:2].str.join(" "), bus2=p_nom.index + " urban central heat", carrier=generator, p_nom=p_nom / costs.at[key, "efficiency"], @@ -727,7 +735,7 @@ def add_heating_capacities_installed_before_baseyear( cop = {"air": ashp_cop, "ground": gshp_cop} if time_dep_hp_cop: - efficiency = cop[heat_pump_type][nodes] + efficiency = cop[heat_pump_type][nodes].T.drop_duplicates().T else: efficiency = costs.at[costs_name, "efficiency"] From ec22d687a91f71d3417d20dcdb34cc74d37dd05d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 09:37:28 +0000 Subject: [PATCH 2/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- doc/configtables/industry.csv | 2 +- scripts/prepare_sector_network.py | 22 ++++++++++++++++++---- scripts/simplify_network.py | 8 ++++++-- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/doc/configtables/industry.csv b/doc/configtables/industry.csv index 1cb806ea15..254016d37e 100644 --- a/doc/configtables/industry.csv +++ b/doc/configtables/industry.csv @@ -38,4 +38,4 @@ reference_year,year,YYYY,The year used as the baseline for industrial energy dem steam_biomass_fraction,--,float,The fraction of steam produced from biomass. The sum of all steam fractions should be 1. steam_hydrogen_fraction,--,float,The fraction of steam produced from hydrogen. The sum of all steam fractions should be 1. steam_electricity_fraction,--,float,The fraction of steam produced from electricity. The sum of all steam fractions should be 1. -fuel_refining carrier emissions,tCO2/MWh,float,"The emissions from fuel processing (e.g. oil in petrochemical refinieries). The default value of 0.013 tCO2/MWh is based on DE statistics for 2019. The EU value is very similar. This is also used for energy losses to be consistent with CO2 loss." \ No newline at end of file +fuel_refining carrier emissions,tCO2/MWh,float,"The emissions from fuel processing (e.g. oil in petrochemical refinieries). The default value of 0.013 tCO2/MWh is based on DE statistics for 2019. The EU value is very similar. This is also used for energy losses to be consistent with CO2 loss." diff --git a/scripts/prepare_sector_network.py b/scripts/prepare_sector_network.py index b04bba79ea..4c755afb5b 100644 --- a/scripts/prepare_sector_network.py +++ b/scripts/prepare_sector_network.py @@ -91,7 +91,11 @@ def define_spatial(nodes, options): spatial.gas = SimpleNamespace() # check if biogas potential should be spatially resolved - if options["gas_network"] or options.get("co2_spatial", options["co2network"]) or options.get("biomass_spatial", options["biomass_transport"]): + if ( + options["gas_network"] + or options.get("co2_spatial", options["co2network"]) + or options.get("biomass_spatial", options["biomass_transport"]) + ): spatial.gas.biogas = nodes + " biogas" spatial.gas.biogas_locations = nodes spatial.gas.biogas_to_gas = nodes + " biogas to gas" @@ -102,7 +106,9 @@ def define_spatial(nodes, options): spatial.gas.biogas_to_gas = ["EU biogas to gas"] spatial.gas.biogas_to_gas_cc = ["EU biogas to gas CC"] - if options.get("regional_gas_demand", options["gas_network"]) or options.get("co2_spatial", options["co2network"]): + if options.get("regional_gas_demand", options["gas_network"]) or options.get( + "co2_spatial", options["co2network"] + ): spatial.gas.industry = nodes + " gas for industry" spatial.gas.industry_cc = nodes + " gas for industry CC" else: @@ -612,7 +618,11 @@ def add_carrier_buses(n, carrier, nodes=None): location=location, carrier=carrier + " refining", p_nom=1e6, - efficiency=1 - (cf_industry["fuel_refining"][carrier]["emissions"] / costs.at[carrier, "CO2 intensity"]), + efficiency=1 + - ( + cf_industry["fuel_refining"][carrier]["emissions"] + / costs.at[carrier, "CO2 intensity"] + ), efficiency2=cf_industry["fuel_refining"][carrier]["emissions"], ) @@ -2412,7 +2422,11 @@ def add_biomass(n, costs): biomass_potentials = pd.read_csv(snakemake.input.biomass_potentials, index_col=0) # need to aggregate potentials if gas not nodally resolved - if options["gas_network"] or options.get("co2_spatial", options["co2network"]) or options.get("biomass_spatial", options["biomass_transport"]): + if ( + options["gas_network"] + or options.get("co2_spatial", options["co2network"]) + or options.get("biomass_spatial", options["biomass_transport"]) + ): biogas_potentials_spatial = biomass_potentials["biogas"].rename( index=lambda x: x + " biogas" ) diff --git a/scripts/simplify_network.py b/scripts/simplify_network.py index 864e52bdc7..3dbc235fcd 100644 --- a/scripts/simplify_network.py +++ b/scripts/simplify_network.py @@ -234,8 +234,12 @@ def _adjust_costs_using_connection_costs( .loc[lambda s: s > 0] ) if not connection_capital_cost.empty: - n.generators.loc[connection_capital_cost.index, "capital_cost"] += connection_capital_cost - n.generators.loc[connection_overnight_cost.index, "connection_overnight_cost"] += connection_overnight_cost + n.generators.loc[ + connection_capital_cost.index, "capital_cost" + ] += connection_capital_cost + n.generators.loc[ + connection_overnight_cost.index, "connection_overnight_cost" + ] += connection_overnight_cost logger.info( "Displacing {} generator(s) and adding connection costs to capital_costs: {} ".format( From 994d3090437e58bdebc62e70490950751a71eccb Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 09:41:18 +0000 Subject: [PATCH 3/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- config/config.default.yaml | 2 +- scripts/solve_network.py | 12 +++--------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/config/config.default.yaml b/config/config.default.yaml index ce6ebb6f0e..7315dedeaf 100644 --- a/config/config.default.yaml +++ b/config/config.default.yaml @@ -591,7 +591,7 @@ sector: resistive_heaters: true oil_boilers: false biomass_boiler: true - overdimension_heat_generators: + overdimension_heat_generators: decentral: 1.1 #to cover demand peaks bigger than data central: 1.0 chp: true diff --git a/scripts/solve_network.py b/scripts/solve_network.py index 32bc52e197..eee4743a62 100644 --- a/scripts/solve_network.py +++ b/scripts/solve_network.py @@ -331,9 +331,7 @@ def add_carbon_constraint(n, snapshots): # stores bus_carrier = n.stores.bus.map(n.buses.carrier) - stores = n.stores[ - bus_carrier.isin(emissions.index) & - ~n.stores.e_cyclic] + stores = n.stores[bus_carrier.isin(emissions.index) & ~n.stores.e_cyclic] if not stores.empty: last = n.snapshot_weightings.reset_index().groupby("period").last() last_i = last.set_index([last.index, last.timestep]).index @@ -359,9 +357,7 @@ def add_carbon_budget_constraint(n, snapshots): # stores bus_carrier = n.stores.bus.map(n.buses.carrier) - stores = n.stores[ - bus_carrier.isin(emissions.index) & - ~n.stores.e_cyclic] + stores = n.stores[bus_carrier.isin(emissions.index) & ~n.stores.e_cyclic] if not stores.empty: last = n.snapshot_weightings.reset_index().groupby("period").last() last_i = last.set_index([last.index, last.timestep]).index @@ -1005,9 +1001,7 @@ def add_co2_atmosphere_constraint(n, snapshots): # stores bus_carrier = n.stores.bus.map(n.buses.carrier) - stores = n.stores[ - bus_carrier.isin(emissions.index) & - ~n.stores.e_cyclic] + stores = n.stores[bus_carrier.isin(emissions.index) & ~n.stores.e_cyclic] if not stores.empty: last_i = snapshots[-1] lhs = n.model["Store-e"].loc[last_i, stores.index] From f6a5079d072b30d35230aa3bf676dbfa356feb44 Mon Sep 17 00:00:00 2001 From: cpschau Date: Tue, 10 Sep 2024 14:22:04 +0200 Subject: [PATCH 4/9] increase nuts3 shape resolution --- rules/build_electricity.smk | 2 +- rules/retrieve.smk | 28 +++++++++++++++++++++++++++- scripts/build_shapes.py | 1 - 3 files changed, 28 insertions(+), 3 deletions(-) mode change 100644 => 100755 rules/build_electricity.smk mode change 100644 => 100755 rules/retrieve.smk mode change 100644 => 100755 scripts/build_shapes.py diff --git a/rules/build_electricity.smk b/rules/build_electricity.smk old mode 100644 new mode 100755 index e23c7c5596..86b1cc6711 --- a/rules/build_electricity.smk +++ b/rules/build_electricity.smk @@ -98,7 +98,7 @@ rule build_shapes: input: naturalearth=ancient("data/naturalearth/ne_10m_admin_0_countries_deu.shp"), eez=ancient("data/eez/World_EEZ_v12_20231025_LR/eez_v12_lowres.gpkg"), - nuts3=ancient("data/bundle/NUTS_2013_60M_SH/data/NUTS_RG_60M_2013.shp"), + nuts3=ancient("data/nuts3/NUTS_RG_03M_2013_3035_LEVL_3.geojson"), nuts3pop=ancient("data/bundle/nama_10r_3popgdp.tsv.gz"), nuts3gdp=ancient("data/bundle/nama_10r_3gdp.tsv.gz"), ch_cantons=ancient("data/ch_cantons.csv"), diff --git a/rules/retrieve.smk b/rules/retrieve.smk old mode 100644 new mode 100755 index 67b91b9980..09e0a19e7f --- a/rules/retrieve.smk +++ b/rules/retrieve.smk @@ -5,6 +5,7 @@ import requests from datetime import datetime, timedelta from shutil import move, unpack_archive +from zipfile import ZipFile if config["enable"].get("retrieve", "auto") == "auto": config["enable"]["retrieve"] = has_internet_access() @@ -16,7 +17,6 @@ if config["enable"]["retrieve"] is False: if config["enable"]["retrieve"] and config["enable"].get("retrieve_databundle", True): datafiles = [ "je-e-21.03.02.xls", - "NUTS_2013_60M_SH/data/NUTS_RG_60M_2013.shp", "nama_10r_3popgdp.tsv.gz", "nama_10r_3gdp.tsv.gz", "corine/g250_clc06_V18_5.tif", @@ -77,6 +77,32 @@ if config["enable"]["retrieve"] and config["enable"].get("retrieve_databundle", "../scripts/retrieve_eurostat_household_data.py" +if config["enable"]["retrieve"]: + + rule retrieve_shapes_data: + input: + shapes=storage( + "https://gisco-services.ec.europa.eu/distribution/v2/nuts/download/ref-nuts-2013-03m.geojson.zip" + ), + output: + shapes="data/nuts3/NUTS_RG_03M_2013_3035_LEVL_3.geojson", + params: + zip_file="data/nuts3/ref-nuts-2013-03m.geojson.zip", + run: + move(input.shapes, params.zip_file) + with ZipFile(params.zip_file, "r") as zip_ref: + zip_ref.extract( + "NUTS_RG_03M_2013_3035_LEVL_3.geojson", + Path(output.shapes).parent, + ) + extracted_file = ( + Path(output.shapes).parent / "NUTS_RG_03M_2013_3035_LEVL_3.geojson" + ) + extracted_file.rename(output.shapes) + os.remove(params.zip_file) + + + if config["enable"]["retrieve"] and config["enable"].get("retrieve_cutout", True): rule retrieve_cutout: diff --git a/scripts/build_shapes.py b/scripts/build_shapes.py old mode 100644 new mode 100755 index 2370f2aef8..29eb91478e --- a/scripts/build_shapes.py +++ b/scripts/build_shapes.py @@ -150,7 +150,6 @@ def country_cover(country_shapes, eez_shapes=None): def nuts3(country_shapes, nuts3, nuts3pop, nuts3gdp, ch_cantons, ch_popgdp): df = gpd.read_file(nuts3) - df = df.loc[df["STAT_LEVL_"] == 3] df["geometry"] = df["geometry"].map(_simplify_polys) df = df.rename(columns={"NUTS_ID": "id"})[["id", "geometry"]].set_index("id") From 7265e93422f3a3411594fde3eb8ac1d409d87e81 Mon Sep 17 00:00:00 2001 From: cpschau Date: Thu, 12 Sep 2024 14:49:55 +0200 Subject: [PATCH 5/9] retrieve and use shapes with EPSG:4326 --- rules/build_electricity.smk | 2 +- rules/retrieve.smk | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rules/build_electricity.smk b/rules/build_electricity.smk index 86b1cc6711..1311dd804f 100755 --- a/rules/build_electricity.smk +++ b/rules/build_electricity.smk @@ -98,7 +98,7 @@ rule build_shapes: input: naturalearth=ancient("data/naturalearth/ne_10m_admin_0_countries_deu.shp"), eez=ancient("data/eez/World_EEZ_v12_20231025_LR/eez_v12_lowres.gpkg"), - nuts3=ancient("data/nuts3/NUTS_RG_03M_2013_3035_LEVL_3.geojson"), + nuts3=ancient("data/nuts3/NUTS_RG_03M_2013_4326_LEVL_3.geojson"), nuts3pop=ancient("data/bundle/nama_10r_3popgdp.tsv.gz"), nuts3gdp=ancient("data/bundle/nama_10r_3gdp.tsv.gz"), ch_cantons=ancient("data/ch_cantons.csv"), diff --git a/rules/retrieve.smk b/rules/retrieve.smk index 09e0a19e7f..12e2dfc762 100755 --- a/rules/retrieve.smk +++ b/rules/retrieve.smk @@ -85,18 +85,18 @@ if config["enable"]["retrieve"]: "https://gisco-services.ec.europa.eu/distribution/v2/nuts/download/ref-nuts-2013-03m.geojson.zip" ), output: - shapes="data/nuts3/NUTS_RG_03M_2013_3035_LEVL_3.geojson", + shapes="data/nuts3/NUTS_RG_03M_2013_4326_LEVL_3.geojson", params: zip_file="data/nuts3/ref-nuts-2013-03m.geojson.zip", run: move(input.shapes, params.zip_file) with ZipFile(params.zip_file, "r") as zip_ref: zip_ref.extract( - "NUTS_RG_03M_2013_3035_LEVL_3.geojson", + "NUTS_RG_03M_2013_4326_LEVL_3.geojson", Path(output.shapes).parent, ) extracted_file = ( - Path(output.shapes).parent / "NUTS_RG_03M_2013_3035_LEVL_3.geojson" + Path(output.shapes).parent / "NUTS_RG_03M_2013_4326_LEVL_3.geojson" ) extracted_file.rename(output.shapes) os.remove(params.zip_file) From 52b77f373e7234e03340f395e194a75a190957ae Mon Sep 17 00:00:00 2001 From: cpschau Date: Thu, 12 Sep 2024 17:13:03 +0200 Subject: [PATCH 6/9] co-retrieve nuts2 shapes; add retries --- rules/build_electricity.smk | 2 +- rules/build_sector.smk | 2 +- rules/retrieve.smk | 25 ++++++++++++------------- scripts/build_biomass_potentials.py | 4 ++-- 4 files changed, 16 insertions(+), 17 deletions(-) diff --git a/rules/build_electricity.smk b/rules/build_electricity.smk index 1311dd804f..f9041fb641 100755 --- a/rules/build_electricity.smk +++ b/rules/build_electricity.smk @@ -98,7 +98,7 @@ rule build_shapes: input: naturalearth=ancient("data/naturalearth/ne_10m_admin_0_countries_deu.shp"), eez=ancient("data/eez/World_EEZ_v12_20231025_LR/eez_v12_lowres.gpkg"), - nuts3=ancient("data/nuts3/NUTS_RG_03M_2013_4326_LEVL_3.geojson"), + nuts3=ancient("data/nuts/NUTS_RG_03M_2013_4326_LEVL_3.geojson"), nuts3pop=ancient("data/bundle/nama_10r_3popgdp.tsv.gz"), nuts3gdp=ancient("data/bundle/nama_10r_3gdp.tsv.gz"), ch_cantons=ancient("data/ch_cantons.csv"), diff --git a/rules/build_sector.smk b/rules/build_sector.smk index 9f94dbbd66..a170ac4fd1 100755 --- a/rules/build_sector.smk +++ b/rules/build_sector.smk @@ -407,7 +407,7 @@ rule build_biomass_potentials: keep_local=True, ), eurostat="data/eurostat/Balances-April2023", - nuts2="data/bundle/nuts/NUTS_RG_10M_2013_4326_LEVL_2.geojson", + nuts2="data/nuts/NUTS_RG_03M_2013_4326_LEVL_2.geojson", regions_onshore=resources("regions_onshore_elec_s{simpl}_{clusters}.geojson"), nuts3_population=ancient("data/bundle/nama_10r_3popgdp.tsv.gz"), swiss_cantons=ancient("data/ch_cantons.csv"), diff --git a/rules/retrieve.smk b/rules/retrieve.smk index 12e2dfc762..b60d40addd 100755 --- a/rules/retrieve.smk +++ b/rules/retrieve.smk @@ -21,7 +21,6 @@ if config["enable"]["retrieve"] and config["enable"].get("retrieve_databundle", "nama_10r_3gdp.tsv.gz", "corine/g250_clc06_V18_5.tif", "eea/UNFCCC_v23.csv", - "nuts/NUTS_RG_10M_2013_4326_LEVL_2.geojson", "emobility/KFZ__count", "emobility/Pkw__count", "h2_salt_caverns_GWh_per_sqkm.geojson", @@ -79,26 +78,26 @@ if config["enable"]["retrieve"] and config["enable"].get("retrieve_databundle", if config["enable"]["retrieve"]: - rule retrieve_shapes_data: + rule retrieve_nuts_shapes: input: shapes=storage( "https://gisco-services.ec.europa.eu/distribution/v2/nuts/download/ref-nuts-2013-03m.geojson.zip" ), output: - shapes="data/nuts3/NUTS_RG_03M_2013_4326_LEVL_3.geojson", + shapes_level_3="data/nuts/NUTS_RG_03M_2013_4326_LEVL_3.geojson", + shapes_level_2="data/nuts/NUTS_RG_03M_2013_4326_LEVL_2.geojson", params: - zip_file="data/nuts3/ref-nuts-2013-03m.geojson.zip", + zip_file="data/nuts/ref-nuts-2013-03m.geojson.zip", run: - move(input.shapes, params.zip_file) + os.rename(input.shapes, params.zip_file) with ZipFile(params.zip_file, "r") as zip_ref: - zip_ref.extract( - "NUTS_RG_03M_2013_4326_LEVL_3.geojson", - Path(output.shapes).parent, - ) - extracted_file = ( - Path(output.shapes).parent / "NUTS_RG_03M_2013_4326_LEVL_3.geojson" - ) - extracted_file.rename(output.shapes) + for level in ["LEVL_3", "LEVL_2"]: + filename = f"NUTS_RG_03M_2013_4326_{level}.geojson" + zip_ref.extract(filename, Path(output.shapes_level_3).parent) + extracted_file = Path(output.shapes_level_3).parent / filename + extracted_file.rename( + getattr(output, f"shapes_level_{level[-1]}") + ) os.remove(params.zip_file) diff --git a/scripts/build_biomass_potentials.py b/scripts/build_biomass_potentials.py index a3c51292ca..bb56ebedff 100755 --- a/scripts/build_biomass_potentials.py +++ b/scripts/build_biomass_potentials.py @@ -193,7 +193,7 @@ def build_nuts2_shapes(): - consistently name ME, MK """ nuts2 = gpd.GeoDataFrame( - gpd.read_file(snakemake.input.nuts2).set_index("id").geometry + gpd.read_file(snakemake.input.nuts2).set_index("NUTS_ID").geometry ) countries = gpd.read_file(snakemake.input.country_shapes).set_index("name") @@ -345,7 +345,7 @@ def add_unsustainable_potentials(df): snakemake = mock_snakemake( "build_biomass_potentials", simpl="", - clusters="38", + clusters="39", planning_horizons=2050, ) From 0f7b8e871cc8e0e716a14e7869c15db152308084 Mon Sep 17 00:00:00 2001 From: cpschau Date: Tue, 24 Sep 2024 14:36:24 +0200 Subject: [PATCH 7/9] abolish wildcards --- scripts/add_existing_baseyear.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/scripts/add_existing_baseyear.py b/scripts/add_existing_baseyear.py index 164811f59e..8109e44c3a 100644 --- a/scripts/add_existing_baseyear.py +++ b/scripts/add_existing_baseyear.py @@ -161,12 +161,9 @@ def add_power_capacities_installed_before_baseyear(n, grouping_years, costs, bas # If heat is considered, add CHPs in the add_heating_capacities function. # Assume that all oil power plants are not CHPs. - if "H" in snakemake.wildcards.sector_opts.split("-"): + if options["heating"]: df_agg = df_agg.query("Set != 'CHP'") - elif ( - "I" not in snakemake.wildcards.sector_opts.split("-") - and "Industry" in df_agg.columns - ): + elif not options["industry"] and "Industry" in df_agg.columns: df_agg["Industry"].fillna(False, inplace=True) df_agg.query("not Industry", inplace=True) @@ -521,7 +518,7 @@ def add_chp_plants(n, grouping_years, costs, baseyear, clustermaps): # check if the CHPs were read in from MaStR for Germany if "Capacity_thermal" in chp.columns: - if "I" not in snakemake.wildcards.sector_opts.split("-"): + if not options["industry"]: chp.query("Industry == False", inplace=True) thermal_capacity_b = ~chp.Capacity_thermal.isna() @@ -951,7 +948,6 @@ def add_heating_capacities_installed_before_baseyear( snakemake = mock_snakemake( "add_existing_baseyear", - configfiles="config/config.yaml", simpl="", clusters="20", ll="v1.5", From 67b0d34c3b35c7d49c53ac752bd2b17988115578 Mon Sep 17 00:00:00 2001 From: cpschau Date: Thu, 17 Oct 2024 10:30:22 +0200 Subject: [PATCH 8/9] merge ariadne2 into account_for_subnodes --- .git-blame-ignore-revs | 0 .gitattributes | 0 .github/ISSUE_TEMPLATE/bug_report.md | 0 .github/ISSUE_TEMPLATE/config.yml | 0 .github/ISSUE_TEMPLATE/feature_request.md | 0 .github/dependabot.yml | 0 .github/pull_request_template.md | 0 .github/workflows/codeql.yml | 0 .github/workflows/update-fixed-env.yaml | 0 .gitignore | 0 .pre-commit-config.yaml | 0 .readthedocs.yml | 0 .reuse/dep5 | 0 .sync-send | 0 CITATION.cff | 0 LICENSES/CC-BY-4.0.txt | 0 LICENSES/CC0-1.0.txt | 0 LICENSES/MIT.txt | 0 README.md | 0 Snakefile | 0 borg-it | 0 config/config.default.yaml | 0 config/create_scenarios.py | 0 config/examples/config.entsoe-all.yaml | 0 config/examples/config.perfect.yaml | 0 config/examples/config.validation.yaml | 0 config/scenarios.template.yaml | 0 config/test/config.electricity.yaml | 0 config/test/config.myopic.yaml | 0 config/test/config.overnight.yaml | 0 config/test/config.perfect.yaml | 0 config/test/config.scenarios.yaml | 0 config/test/config.validator.yaml | 0 config/test/scenarios.yaml | 0 data/agg_p_nom_minmax.csv | 0 data/ammonia_plants.csv | 0 data/attributed_ports.json | 0 data/biomass_transport_costs_supplychain1.csv | 0 data/biomass_transport_costs_supplychain2.csv | 0 data/cement-plants-noneu.csv | 0 data/ch_cantons.csv | 0 data/ch_industrial_production_per_subsector.csv | 0 data/custom_extra_functionality.py | 0 data/custom_powerplants.csv | 0 data/district_heat_share.csv | 0 data/egs_costs.json | 0 data/eia_hydro_annual_capacity.csv | 0 data/eia_hydro_annual_generation.csv | 0 data/entsoegridkit/README.md | 0 data/entsoegridkit/buses.csv | 0 data/entsoegridkit/converters.csv | 0 data/entsoegridkit/generators.csv | 0 data/entsoegridkit/lines.csv | 0 data/entsoegridkit/links.csv | 0 data/entsoegridkit/transformers.csv | 0 data/era5-annual-HDD-per-country.csv | 0 data/era5-annual-runoff-per-country.csv | 0 .../existing_heating_raw.csv | 0 data/gr-e-11.03.02.01.01-cc.csv | 0 data/heat_load_profile_BDEW.csv | 0 data/hydro_capacities.csv | 0 data/links_p_nom.csv | 0 data/nuclear_p_max_pu.csv | 0 data/parameter_corrections.yaml | 0 data/refineries-noneu.csv | 0 data/retro/comparative_level_investment.csv | 0 data/retro/data_building_stock.csv | 0 data/retro/electricity_taxes_eu.csv | 0 data/retro/floor_area_missing.csv | 0 data/retro/retro_cost_germany.csv | 0 data/retro/u_values_poland.csv | 0 data/retro/window_assumptions.csv | 0 data/switzerland-new_format-all_years.csv | 0 data/transmission_projects/nep/new_lines.csv | 0 data/transmission_projects/nep/new_links.csv | 0 data/transmission_projects/template/new_lines.csv | 0 data/transmission_projects/template/new_links.csv | 0 .../template/upgraded_lines.csv | 0 .../template/upgraded_links.csv | 0 data/transmission_projects/tyndp2020/new_lines.csv | 0 data/transmission_projects/tyndp2020/new_links.csv | 0 .../tyndp2020/upgraded_lines.csv | 0 .../tyndp2020/upgraded_links.csv | 0 data/unit_commitment.csv | 0 doc/Makefile | 0 doc/conf.py | 0 doc/configtables/adjustments.csv | 0 doc/configtables/atlite.csv | 0 doc/configtables/biomass.csv | 0 doc/configtables/clustering.csv | 0 doc/configtables/co2_budget.csv | 0 doc/configtables/conventional.csv | 0 doc/configtables/costs.csv | 0 doc/configtables/countries.csv | 0 doc/configtables/electricity.csv | 0 doc/configtables/enable.csv | 0 doc/configtables/energy.csv | 0 doc/configtables/existing_capacities.csv | 0 doc/configtables/foresight.csv | 0 doc/configtables/hydro.csv | 0 doc/configtables/industry.csv | 0 doc/configtables/lines.csv | 0 doc/configtables/links.csv | 0 doc/configtables/load.csv | 0 doc/configtables/offwind-ac.csv | 0 doc/configtables/offwind-dc.csv | 0 doc/configtables/onwind.csv | 0 doc/configtables/opts.csv | 0 doc/configtables/plotting.csv | 0 doc/configtables/run.csv | 0 doc/configtables/scenario.csv | 0 doc/configtables/sector-opts.csv | 0 doc/configtables/sector.csv | 0 doc/configtables/snapshots.csv | 0 doc/configtables/solar-thermal.csv | 0 doc/configtables/solar.csv | 0 doc/configtables/solving.csv | 0 doc/configtables/toplevel.csv | 0 doc/configtables/transformers.csv | 0 doc/configtables/transmission_projects.csv | 0 doc/configuration.rst | 0 doc/contributing.rst | 0 doc/costs.rst | 0 doc/data_sources.rst | 0 doc/foresight.rst | 0 doc/img/Heat_and_el_demand_timeseries.png | Bin doc/img/base.png | Bin doc/img/corine.png | Bin doc/img/countries.png | Bin doc/img/country_shapes.png | Bin doc/img/demand-map-heat.png | Bin doc/img/distance_hist.png | Bin doc/img/eez.png | Bin doc/img/elec.png | Bin doc/img/elec_s.png | Bin doc/img/elec_s_128.png | Bin doc/img/elec_s_256.png | Bin doc/img/elec_s_37.png | Bin doc/img/elec_s_512.png | Bin doc/img/elec_s_X.png | Bin doc/img/eligibility.png | Bin doc/img/era5.png | Bin doc/img/europe_shape.png | Bin doc/img/fec_industry_today_tomorrow.png | Bin doc/img/gas_pipeline_figure.png | Bin doc/img/gebco_2019_grid_image.jpg | Bin doc/img/hotmaps.png | Bin doc/img/hydrocapacities.png | Bin doc/img/hydrogeneration.png | Bin doc/img/inflow-box.png | Bin doc/img/inflow-ts.png | Bin doc/img/intro-workflow.png | Bin doc/img/load-box.png | Bin doc/img/load-ts.png | Bin doc/img/multisector_figure.pdf | Bin doc/img/multisector_figure.png | Bin doc/img/multisector_figure.svg | 0 doc/img/natura.png | Bin doc/img/nuts3.png | Bin doc/img/nuts3_shapes.png | Bin doc/img/offshore_shapes.png | Bin doc/img/offwindac-gridcell.png | Bin doc/img/offwinddc-gridcell.png | Bin doc/img/onwind-gridcell.png | Bin doc/img/p_nom_max_hist.png | Bin doc/img/potential_heatmap.png | Bin doc/img/powerplantmatching.png | Bin doc/img/process-emissions.png | Bin doc/img/profile_ts.png | Bin doc/img/pypsa-eur-grid.png | Bin doc/img/regions_offshore.png | Bin doc/img/regions_offshore_elec_s.png | Bin doc/img/regions_offshore_elec_s_X.png | Bin doc/img/regions_onshore.png | Bin doc/img/regions_onshore_elec_s.png | Bin doc/img/regions_onshore_elec_s_X.png | Bin doc/img/results.png | Bin doc/img/sarah.png | Bin doc/img/scenarios.png | Bin doc/img/solar-gridcell.png | Bin doc/img/synchronisation.png | Bin doc/img/tech-colors.png | Bin doc/img/underwater_hist.png | Bin ...dation_production_bar_elec_s_37_ec_lv1.0_Ept.png | Bin ...asonal_operation_area_elec_s_37_ec_lv1.0_Ept.png | Bin doc/img/workflow.png | Bin doc/index.rst | 0 doc/installation.rst | 0 doc/introduction.rst | 0 doc/licenses.rst | 0 doc/limitations.rst | 0 doc/make.bat | 0 doc/plotting.rst | 0 doc/preparation.rst | 0 doc/publications.bib | 0 doc/publications.rst | 0 doc/release_notes.rst | 0 doc/requirements.txt | 0 doc/retrieve.rst | 0 doc/sector.rst | 0 doc/simplification.rst | 0 doc/solving.rst | 0 doc/spatial_resolution.rst | 0 doc/supply_demand.rst | 0 doc/support.rst | 0 doc/tutorial.rst | 0 doc/tutorial_sector.rst | 0 doc/validation.rst | 0 doc/wildcards.rst | 0 envs/environment.fixed.yaml | 0 envs/environment.yaml | 0 envs/retrieve.yaml | 0 matplotlibrc | 0 rules/collect.smk | 0 rules/common.smk | 0 rules/development.smk | 0 rules/postprocess.smk | 0 rules/solve_electricity.smk | 0 rules/solve_myopic.smk | 0 rules/solve_overnight.smk | 0 rules/solve_perfect.smk | 0 rules/validate.smk | 0 scripts/__init__.py | 0 scripts/_benchmark.py | 0 scripts/_helpers.py | 0 scripts/add_brownfield.py | 0 scripts/add_existing_baseyear.py | 0 scripts/base_network.py | 0 scripts/build_ammonia_production.py | 0 scripts/build_biomass_transport_costs.py | 0 .../central_heating_temperature_approximator.py | 0 .../run.py | 0 scripts/build_clustered_population_layouts.py | 0 scripts/build_cop_profiles/BaseCopApproximator.py | 0 .../CentralHeatingCopApproximator.py | 0 .../DecentralHeatingCopApproximator.py | 0 scripts/build_cop_profiles/run.py | 0 scripts/build_cross_border_flows.py | 0 scripts/build_cutout.py | 0 scripts/build_daily_heat_demand.py | 0 scripts/build_district_heat_share.py | 0 scripts/build_egs_potentials.py | 0 scripts/build_electricity_prices.py | 0 scripts/build_electricity_production.py | 0 scripts/build_energy_totals.py | 0 scripts/build_existing_heating_distribution.py | 0 scripts/build_gas_input_locations.py | 0 scripts/build_gas_network.py | 0 scripts/build_gdp_pop_non_nuts3.py | 0 scripts/build_heat_totals.py | 0 scripts/build_hourly_heat_demand.py | 0 scripts/build_hydro_profile.py | 0 scripts/build_industrial_distribution_key.py | 0 ...ld_industrial_energy_demand_per_country_today.py | 0 scripts/build_industrial_energy_demand_per_node.py | 0 ...build_industrial_energy_demand_per_node_today.py | 0 scripts/build_industrial_production_per_country.py | 0 ...ld_industrial_production_per_country_tomorrow.py | 0 scripts/build_industrial_production_per_node.py | 0 scripts/build_industry_sector_ratios.py | 0 .../build_industry_sector_ratios_intermediate.py | 0 scripts/build_monthly_prices.py | 0 scripts/build_osm_network.py | 0 scripts/build_population_layouts.py | 0 scripts/build_population_weighted_energy_totals.py | 0 scripts/build_renewable_profiles.py | 0 scripts/build_salt_cavern_potentials.py | 0 scripts/build_sequestration_potentials.py | 0 scripts/build_ship_raster.py | 0 scripts/build_shipping_demand.py | 0 scripts/build_solar_thermal_profiles.py | 0 scripts/build_temperature_profiles.py | 0 scripts/build_transmission_projects.py | 0 scripts/build_transport_demand.py | 0 scripts/clean_osm_data.py | 0 scripts/cluster_network.py | 0 scripts/definitions/heat_sector.py | 0 scripts/definitions/heat_system.py | 0 scripts/definitions/heat_system_type.py | 0 scripts/determine_availability_matrix_MD_UA.py | 0 scripts/make_summary.py | 0 scripts/make_summary_perfect.py | 0 scripts/plot_gas_network.py | 0 scripts/plot_hydrogen_network.py | 0 scripts/plot_power_network.py | 0 scripts/plot_power_network_clustered.py | 0 scripts/plot_power_network_perfect.py | 0 scripts/plot_statistics.py | 0 scripts/plot_statistics_comparison.py | 0 scripts/plot_statistics_single.py | 0 scripts/plot_summary.py | 0 scripts/plot_validation_cross_border_flows.py | 0 scripts/plot_validation_electricity_prices.py | 0 scripts/plot_validation_electricity_production.py | 0 scripts/prepare_osm_network_release.py | 0 scripts/prepare_perfect_foresight.py | 0 scripts/retrieve_cost_data.py | 0 scripts/retrieve_databundle.py | 0 scripts/retrieve_electricity_demand.py | 0 scripts/retrieve_eurostat_data.py | 0 scripts/retrieve_eurostat_household_data.py | 0 scripts/retrieve_gas_infrastructure_data.py | 0 scripts/retrieve_jrc_idees.py | 0 scripts/retrieve_monthly_fuel_prices.py | 0 scripts/retrieve_osm_data.py | 0 scripts/simplify_network.py | 0 scripts/solve_network.py | 0 scripts/solve_operations_network.py | 0 scripts/time_aggregation.py | 0 scripts/write_statistics.py | 0 310 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 .git-blame-ignore-revs mode change 100644 => 100755 .gitattributes mode change 100644 => 100755 .github/ISSUE_TEMPLATE/bug_report.md mode change 100644 => 100755 .github/ISSUE_TEMPLATE/config.yml mode change 100644 => 100755 .github/ISSUE_TEMPLATE/feature_request.md mode change 100644 => 100755 .github/dependabot.yml mode change 100644 => 100755 .github/pull_request_template.md mode change 100644 => 100755 .github/workflows/codeql.yml mode change 100644 => 100755 .github/workflows/update-fixed-env.yaml mode change 100644 => 100755 .gitignore mode change 100644 => 100755 .pre-commit-config.yaml mode change 100644 => 100755 .readthedocs.yml mode change 100644 => 100755 .reuse/dep5 mode change 100644 => 100755 .sync-send mode change 100644 => 100755 CITATION.cff mode change 100644 => 100755 LICENSES/CC-BY-4.0.txt mode change 100644 => 100755 LICENSES/CC0-1.0.txt mode change 100644 => 100755 LICENSES/MIT.txt mode change 100644 => 100755 README.md mode change 100644 => 100755 Snakefile mode change 100644 => 100755 borg-it mode change 100644 => 100755 config/config.default.yaml mode change 100644 => 100755 config/create_scenarios.py mode change 100644 => 100755 config/examples/config.entsoe-all.yaml mode change 100644 => 100755 config/examples/config.perfect.yaml mode change 100644 => 100755 config/examples/config.validation.yaml mode change 100644 => 100755 config/scenarios.template.yaml mode change 100644 => 100755 config/test/config.electricity.yaml mode change 100644 => 100755 config/test/config.myopic.yaml mode change 100644 => 100755 config/test/config.overnight.yaml mode change 100644 => 100755 config/test/config.perfect.yaml mode change 100644 => 100755 config/test/config.scenarios.yaml mode change 100644 => 100755 config/test/config.validator.yaml mode change 100644 => 100755 config/test/scenarios.yaml mode change 100644 => 100755 data/agg_p_nom_minmax.csv mode change 100644 => 100755 data/ammonia_plants.csv mode change 100644 => 100755 data/attributed_ports.json mode change 100644 => 100755 data/biomass_transport_costs_supplychain1.csv mode change 100644 => 100755 data/biomass_transport_costs_supplychain2.csv mode change 100644 => 100755 data/cement-plants-noneu.csv mode change 100644 => 100755 data/ch_cantons.csv mode change 100644 => 100755 data/ch_industrial_production_per_subsector.csv mode change 100644 => 100755 data/custom_extra_functionality.py mode change 100644 => 100755 data/custom_powerplants.csv mode change 100644 => 100755 data/district_heat_share.csv mode change 100644 => 100755 data/egs_costs.json mode change 100644 => 100755 data/eia_hydro_annual_capacity.csv mode change 100644 => 100755 data/eia_hydro_annual_generation.csv mode change 100644 => 100755 data/entsoegridkit/README.md mode change 100644 => 100755 data/entsoegridkit/buses.csv mode change 100644 => 100755 data/entsoegridkit/converters.csv mode change 100644 => 100755 data/entsoegridkit/generators.csv mode change 100644 => 100755 data/entsoegridkit/lines.csv mode change 100644 => 100755 data/entsoegridkit/links.csv mode change 100644 => 100755 data/entsoegridkit/transformers.csv mode change 100644 => 100755 data/era5-annual-HDD-per-country.csv mode change 100644 => 100755 data/era5-annual-runoff-per-country.csv mode change 100644 => 100755 data/existing_infrastructure/existing_heating_raw.csv mode change 100644 => 100755 data/gr-e-11.03.02.01.01-cc.csv mode change 100644 => 100755 data/heat_load_profile_BDEW.csv mode change 100644 => 100755 data/hydro_capacities.csv mode change 100644 => 100755 data/links_p_nom.csv mode change 100644 => 100755 data/nuclear_p_max_pu.csv mode change 100644 => 100755 data/parameter_corrections.yaml mode change 100644 => 100755 data/refineries-noneu.csv mode change 100644 => 100755 data/retro/comparative_level_investment.csv mode change 100644 => 100755 data/retro/data_building_stock.csv mode change 100644 => 100755 data/retro/electricity_taxes_eu.csv mode change 100644 => 100755 data/retro/floor_area_missing.csv mode change 100644 => 100755 data/retro/retro_cost_germany.csv mode change 100644 => 100755 data/retro/u_values_poland.csv mode change 100644 => 100755 data/retro/window_assumptions.csv mode change 100644 => 100755 data/switzerland-new_format-all_years.csv mode change 100644 => 100755 data/transmission_projects/nep/new_lines.csv mode change 100644 => 100755 data/transmission_projects/nep/new_links.csv mode change 100644 => 100755 data/transmission_projects/template/new_lines.csv mode change 100644 => 100755 data/transmission_projects/template/new_links.csv mode change 100644 => 100755 data/transmission_projects/template/upgraded_lines.csv mode change 100644 => 100755 data/transmission_projects/template/upgraded_links.csv mode change 100644 => 100755 data/transmission_projects/tyndp2020/new_lines.csv mode change 100644 => 100755 data/transmission_projects/tyndp2020/new_links.csv mode change 100644 => 100755 data/transmission_projects/tyndp2020/upgraded_lines.csv mode change 100644 => 100755 data/transmission_projects/tyndp2020/upgraded_links.csv mode change 100644 => 100755 data/unit_commitment.csv mode change 100644 => 100755 doc/Makefile mode change 100644 => 100755 doc/conf.py mode change 100644 => 100755 doc/configtables/adjustments.csv mode change 100644 => 100755 doc/configtables/atlite.csv mode change 100644 => 100755 doc/configtables/biomass.csv mode change 100644 => 100755 doc/configtables/clustering.csv mode change 100644 => 100755 doc/configtables/co2_budget.csv mode change 100644 => 100755 doc/configtables/conventional.csv mode change 100644 => 100755 doc/configtables/costs.csv mode change 100644 => 100755 doc/configtables/countries.csv mode change 100644 => 100755 doc/configtables/electricity.csv mode change 100644 => 100755 doc/configtables/enable.csv mode change 100644 => 100755 doc/configtables/energy.csv mode change 100644 => 100755 doc/configtables/existing_capacities.csv mode change 100644 => 100755 doc/configtables/foresight.csv mode change 100644 => 100755 doc/configtables/hydro.csv mode change 100644 => 100755 doc/configtables/industry.csv mode change 100644 => 100755 doc/configtables/lines.csv mode change 100644 => 100755 doc/configtables/links.csv mode change 100644 => 100755 doc/configtables/load.csv mode change 100644 => 100755 doc/configtables/offwind-ac.csv mode change 100644 => 100755 doc/configtables/offwind-dc.csv mode change 100644 => 100755 doc/configtables/onwind.csv mode change 100644 => 100755 doc/configtables/opts.csv mode change 100644 => 100755 doc/configtables/plotting.csv mode change 100644 => 100755 doc/configtables/run.csv mode change 100644 => 100755 doc/configtables/scenario.csv mode change 100644 => 100755 doc/configtables/sector-opts.csv mode change 100644 => 100755 doc/configtables/sector.csv mode change 100644 => 100755 doc/configtables/snapshots.csv mode change 100644 => 100755 doc/configtables/solar-thermal.csv mode change 100644 => 100755 doc/configtables/solar.csv mode change 100644 => 100755 doc/configtables/solving.csv mode change 100644 => 100755 doc/configtables/toplevel.csv mode change 100644 => 100755 doc/configtables/transformers.csv mode change 100644 => 100755 doc/configtables/transmission_projects.csv mode change 100644 => 100755 doc/configuration.rst mode change 100644 => 100755 doc/contributing.rst mode change 100644 => 100755 doc/costs.rst mode change 100644 => 100755 doc/data_sources.rst mode change 100644 => 100755 doc/foresight.rst mode change 100644 => 100755 doc/img/Heat_and_el_demand_timeseries.png mode change 100644 => 100755 doc/img/base.png mode change 100644 => 100755 doc/img/corine.png mode change 100644 => 100755 doc/img/countries.png mode change 100644 => 100755 doc/img/country_shapes.png mode change 100644 => 100755 doc/img/demand-map-heat.png mode change 100644 => 100755 doc/img/distance_hist.png mode change 100644 => 100755 doc/img/eez.png mode change 100644 => 100755 doc/img/elec.png mode change 100644 => 100755 doc/img/elec_s.png mode change 100644 => 100755 doc/img/elec_s_128.png mode change 100644 => 100755 doc/img/elec_s_256.png mode change 100644 => 100755 doc/img/elec_s_37.png mode change 100644 => 100755 doc/img/elec_s_512.png mode change 100644 => 100755 doc/img/elec_s_X.png mode change 100644 => 100755 doc/img/eligibility.png mode change 100644 => 100755 doc/img/era5.png mode change 100644 => 100755 doc/img/europe_shape.png mode change 100644 => 100755 doc/img/fec_industry_today_tomorrow.png mode change 100644 => 100755 doc/img/gas_pipeline_figure.png mode change 100644 => 100755 doc/img/gebco_2019_grid_image.jpg mode change 100644 => 100755 doc/img/hotmaps.png mode change 100644 => 100755 doc/img/hydrocapacities.png mode change 100644 => 100755 doc/img/hydrogeneration.png mode change 100644 => 100755 doc/img/inflow-box.png mode change 100644 => 100755 doc/img/inflow-ts.png mode change 100644 => 100755 doc/img/intro-workflow.png mode change 100644 => 100755 doc/img/load-box.png mode change 100644 => 100755 doc/img/load-ts.png mode change 100644 => 100755 doc/img/multisector_figure.pdf mode change 100644 => 100755 doc/img/multisector_figure.png mode change 100644 => 100755 doc/img/multisector_figure.svg mode change 100644 => 100755 doc/img/natura.png mode change 100644 => 100755 doc/img/nuts3.png mode change 100644 => 100755 doc/img/nuts3_shapes.png mode change 100644 => 100755 doc/img/offshore_shapes.png mode change 100644 => 100755 doc/img/offwindac-gridcell.png mode change 100644 => 100755 doc/img/offwinddc-gridcell.png mode change 100644 => 100755 doc/img/onwind-gridcell.png mode change 100644 => 100755 doc/img/p_nom_max_hist.png mode change 100644 => 100755 doc/img/potential_heatmap.png mode change 100644 => 100755 doc/img/powerplantmatching.png mode change 100644 => 100755 doc/img/process-emissions.png mode change 100644 => 100755 doc/img/profile_ts.png mode change 100644 => 100755 doc/img/pypsa-eur-grid.png mode change 100644 => 100755 doc/img/regions_offshore.png mode change 100644 => 100755 doc/img/regions_offshore_elec_s.png mode change 100644 => 100755 doc/img/regions_offshore_elec_s_X.png mode change 100644 => 100755 doc/img/regions_onshore.png mode change 100644 => 100755 doc/img/regions_onshore_elec_s.png mode change 100644 => 100755 doc/img/regions_onshore_elec_s_X.png mode change 100644 => 100755 doc/img/results.png mode change 100644 => 100755 doc/img/sarah.png mode change 100644 => 100755 doc/img/scenarios.png mode change 100644 => 100755 doc/img/solar-gridcell.png mode change 100644 => 100755 doc/img/synchronisation.png mode change 100644 => 100755 doc/img/tech-colors.png mode change 100644 => 100755 doc/img/underwater_hist.png mode change 100644 => 100755 doc/img/validation_production_bar_elec_s_37_ec_lv1.0_Ept.png mode change 100644 => 100755 doc/img/validation_seasonal_operation_area_elec_s_37_ec_lv1.0_Ept.png mode change 100644 => 100755 doc/img/workflow.png mode change 100644 => 100755 doc/index.rst mode change 100644 => 100755 doc/installation.rst mode change 100644 => 100755 doc/introduction.rst mode change 100644 => 100755 doc/licenses.rst mode change 100644 => 100755 doc/limitations.rst mode change 100644 => 100755 doc/make.bat mode change 100644 => 100755 doc/plotting.rst mode change 100644 => 100755 doc/preparation.rst mode change 100644 => 100755 doc/publications.bib mode change 100644 => 100755 doc/publications.rst mode change 100644 => 100755 doc/release_notes.rst mode change 100644 => 100755 doc/requirements.txt mode change 100644 => 100755 doc/retrieve.rst mode change 100644 => 100755 doc/sector.rst mode change 100644 => 100755 doc/simplification.rst mode change 100644 => 100755 doc/solving.rst mode change 100644 => 100755 doc/spatial_resolution.rst mode change 100644 => 100755 doc/supply_demand.rst mode change 100644 => 100755 doc/support.rst mode change 100644 => 100755 doc/tutorial.rst mode change 100644 => 100755 doc/tutorial_sector.rst mode change 100644 => 100755 doc/validation.rst mode change 100644 => 100755 doc/wildcards.rst mode change 100644 => 100755 envs/environment.fixed.yaml mode change 100644 => 100755 envs/environment.yaml mode change 100644 => 100755 envs/retrieve.yaml mode change 100644 => 100755 matplotlibrc mode change 100644 => 100755 rules/collect.smk mode change 100644 => 100755 rules/common.smk mode change 100644 => 100755 rules/development.smk mode change 100644 => 100755 rules/postprocess.smk mode change 100644 => 100755 rules/solve_electricity.smk mode change 100644 => 100755 rules/solve_myopic.smk mode change 100644 => 100755 rules/solve_overnight.smk mode change 100644 => 100755 rules/solve_perfect.smk mode change 100644 => 100755 rules/validate.smk mode change 100644 => 100755 scripts/__init__.py mode change 100644 => 100755 scripts/_benchmark.py mode change 100644 => 100755 scripts/_helpers.py mode change 100644 => 100755 scripts/add_brownfield.py mode change 100644 => 100755 scripts/add_existing_baseyear.py mode change 100644 => 100755 scripts/base_network.py mode change 100644 => 100755 scripts/build_ammonia_production.py mode change 100644 => 100755 scripts/build_biomass_transport_costs.py mode change 100644 => 100755 scripts/build_central_heating_temperature_profiles/central_heating_temperature_approximator.py mode change 100644 => 100755 scripts/build_central_heating_temperature_profiles/run.py mode change 100644 => 100755 scripts/build_clustered_population_layouts.py mode change 100644 => 100755 scripts/build_cop_profiles/BaseCopApproximator.py mode change 100644 => 100755 scripts/build_cop_profiles/CentralHeatingCopApproximator.py mode change 100644 => 100755 scripts/build_cop_profiles/DecentralHeatingCopApproximator.py mode change 100644 => 100755 scripts/build_cop_profiles/run.py mode change 100644 => 100755 scripts/build_cross_border_flows.py mode change 100644 => 100755 scripts/build_cutout.py mode change 100644 => 100755 scripts/build_daily_heat_demand.py mode change 100644 => 100755 scripts/build_district_heat_share.py mode change 100644 => 100755 scripts/build_egs_potentials.py mode change 100644 => 100755 scripts/build_electricity_prices.py mode change 100644 => 100755 scripts/build_electricity_production.py mode change 100644 => 100755 scripts/build_energy_totals.py mode change 100644 => 100755 scripts/build_existing_heating_distribution.py mode change 100644 => 100755 scripts/build_gas_input_locations.py mode change 100644 => 100755 scripts/build_gas_network.py mode change 100644 => 100755 scripts/build_gdp_pop_non_nuts3.py mode change 100644 => 100755 scripts/build_heat_totals.py mode change 100644 => 100755 scripts/build_hourly_heat_demand.py mode change 100644 => 100755 scripts/build_hydro_profile.py mode change 100644 => 100755 scripts/build_industrial_distribution_key.py mode change 100644 => 100755 scripts/build_industrial_energy_demand_per_country_today.py mode change 100644 => 100755 scripts/build_industrial_energy_demand_per_node.py mode change 100644 => 100755 scripts/build_industrial_energy_demand_per_node_today.py mode change 100644 => 100755 scripts/build_industrial_production_per_country.py mode change 100644 => 100755 scripts/build_industrial_production_per_country_tomorrow.py mode change 100644 => 100755 scripts/build_industrial_production_per_node.py mode change 100644 => 100755 scripts/build_industry_sector_ratios.py mode change 100644 => 100755 scripts/build_industry_sector_ratios_intermediate.py mode change 100644 => 100755 scripts/build_monthly_prices.py mode change 100644 => 100755 scripts/build_osm_network.py mode change 100644 => 100755 scripts/build_population_layouts.py mode change 100644 => 100755 scripts/build_population_weighted_energy_totals.py mode change 100644 => 100755 scripts/build_renewable_profiles.py mode change 100644 => 100755 scripts/build_salt_cavern_potentials.py mode change 100644 => 100755 scripts/build_sequestration_potentials.py mode change 100644 => 100755 scripts/build_ship_raster.py mode change 100644 => 100755 scripts/build_shipping_demand.py mode change 100644 => 100755 scripts/build_solar_thermal_profiles.py mode change 100644 => 100755 scripts/build_temperature_profiles.py mode change 100644 => 100755 scripts/build_transmission_projects.py mode change 100644 => 100755 scripts/build_transport_demand.py mode change 100644 => 100755 scripts/clean_osm_data.py mode change 100644 => 100755 scripts/cluster_network.py mode change 100644 => 100755 scripts/definitions/heat_sector.py mode change 100644 => 100755 scripts/definitions/heat_system.py mode change 100644 => 100755 scripts/definitions/heat_system_type.py mode change 100644 => 100755 scripts/determine_availability_matrix_MD_UA.py mode change 100644 => 100755 scripts/make_summary.py mode change 100644 => 100755 scripts/make_summary_perfect.py mode change 100644 => 100755 scripts/plot_gas_network.py mode change 100644 => 100755 scripts/plot_hydrogen_network.py mode change 100644 => 100755 scripts/plot_power_network.py mode change 100644 => 100755 scripts/plot_power_network_clustered.py mode change 100644 => 100755 scripts/plot_power_network_perfect.py mode change 100644 => 100755 scripts/plot_statistics.py mode change 100644 => 100755 scripts/plot_statistics_comparison.py mode change 100644 => 100755 scripts/plot_statistics_single.py mode change 100644 => 100755 scripts/plot_summary.py mode change 100644 => 100755 scripts/plot_validation_cross_border_flows.py mode change 100644 => 100755 scripts/plot_validation_electricity_prices.py mode change 100644 => 100755 scripts/plot_validation_electricity_production.py mode change 100644 => 100755 scripts/prepare_osm_network_release.py mode change 100644 => 100755 scripts/prepare_perfect_foresight.py mode change 100644 => 100755 scripts/retrieve_cost_data.py mode change 100644 => 100755 scripts/retrieve_databundle.py mode change 100644 => 100755 scripts/retrieve_electricity_demand.py mode change 100644 => 100755 scripts/retrieve_eurostat_data.py mode change 100644 => 100755 scripts/retrieve_eurostat_household_data.py mode change 100644 => 100755 scripts/retrieve_gas_infrastructure_data.py mode change 100644 => 100755 scripts/retrieve_jrc_idees.py mode change 100644 => 100755 scripts/retrieve_monthly_fuel_prices.py mode change 100644 => 100755 scripts/retrieve_osm_data.py mode change 100644 => 100755 scripts/simplify_network.py mode change 100644 => 100755 scripts/solve_network.py mode change 100644 => 100755 scripts/solve_operations_network.py mode change 100644 => 100755 scripts/time_aggregation.py mode change 100644 => 100755 scripts/write_statistics.py diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs old mode 100644 new mode 100755 diff --git a/.gitattributes b/.gitattributes old mode 100644 new mode 100755 diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md old mode 100644 new mode 100755 diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml old mode 100644 new mode 100755 diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md old mode 100644 new mode 100755 diff --git a/.github/dependabot.yml b/.github/dependabot.yml old mode 100644 new mode 100755 diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md old mode 100644 new mode 100755 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml old mode 100644 new mode 100755 diff --git a/.github/workflows/update-fixed-env.yaml b/.github/workflows/update-fixed-env.yaml old mode 100644 new mode 100755 diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml old mode 100644 new mode 100755 diff --git a/.readthedocs.yml b/.readthedocs.yml old mode 100644 new mode 100755 diff --git a/.reuse/dep5 b/.reuse/dep5 old mode 100644 new mode 100755 diff --git a/.sync-send b/.sync-send old mode 100644 new mode 100755 diff --git a/CITATION.cff b/CITATION.cff old mode 100644 new mode 100755 diff --git a/LICENSES/CC-BY-4.0.txt b/LICENSES/CC-BY-4.0.txt old mode 100644 new mode 100755 diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt old mode 100644 new mode 100755 diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/Snakefile b/Snakefile old mode 100644 new mode 100755 diff --git a/borg-it b/borg-it old mode 100644 new mode 100755 diff --git a/config/config.default.yaml b/config/config.default.yaml old mode 100644 new mode 100755 diff --git a/config/create_scenarios.py b/config/create_scenarios.py old mode 100644 new mode 100755 diff --git a/config/examples/config.entsoe-all.yaml b/config/examples/config.entsoe-all.yaml old mode 100644 new mode 100755 diff --git a/config/examples/config.perfect.yaml b/config/examples/config.perfect.yaml old mode 100644 new mode 100755 diff --git a/config/examples/config.validation.yaml b/config/examples/config.validation.yaml old mode 100644 new mode 100755 diff --git a/config/scenarios.template.yaml b/config/scenarios.template.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.electricity.yaml b/config/test/config.electricity.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.myopic.yaml b/config/test/config.myopic.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.overnight.yaml b/config/test/config.overnight.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.perfect.yaml b/config/test/config.perfect.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.scenarios.yaml b/config/test/config.scenarios.yaml old mode 100644 new mode 100755 diff --git a/config/test/config.validator.yaml b/config/test/config.validator.yaml old mode 100644 new mode 100755 diff --git a/config/test/scenarios.yaml b/config/test/scenarios.yaml old mode 100644 new mode 100755 diff --git a/data/agg_p_nom_minmax.csv b/data/agg_p_nom_minmax.csv old mode 100644 new mode 100755 diff --git a/data/ammonia_plants.csv b/data/ammonia_plants.csv old mode 100644 new mode 100755 diff --git a/data/attributed_ports.json b/data/attributed_ports.json old mode 100644 new mode 100755 diff --git a/data/biomass_transport_costs_supplychain1.csv b/data/biomass_transport_costs_supplychain1.csv old mode 100644 new mode 100755 diff --git a/data/biomass_transport_costs_supplychain2.csv b/data/biomass_transport_costs_supplychain2.csv old mode 100644 new mode 100755 diff --git a/data/cement-plants-noneu.csv b/data/cement-plants-noneu.csv old mode 100644 new mode 100755 diff --git a/data/ch_cantons.csv b/data/ch_cantons.csv old mode 100644 new mode 100755 diff --git a/data/ch_industrial_production_per_subsector.csv b/data/ch_industrial_production_per_subsector.csv old mode 100644 new mode 100755 diff --git a/data/custom_extra_functionality.py b/data/custom_extra_functionality.py old mode 100644 new mode 100755 diff --git a/data/custom_powerplants.csv b/data/custom_powerplants.csv old mode 100644 new mode 100755 diff --git a/data/district_heat_share.csv b/data/district_heat_share.csv old mode 100644 new mode 100755 diff --git a/data/egs_costs.json b/data/egs_costs.json old mode 100644 new mode 100755 diff --git a/data/eia_hydro_annual_capacity.csv b/data/eia_hydro_annual_capacity.csv old mode 100644 new mode 100755 diff --git a/data/eia_hydro_annual_generation.csv b/data/eia_hydro_annual_generation.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/README.md b/data/entsoegridkit/README.md old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/buses.csv b/data/entsoegridkit/buses.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/converters.csv b/data/entsoegridkit/converters.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/generators.csv b/data/entsoegridkit/generators.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/lines.csv b/data/entsoegridkit/lines.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/links.csv b/data/entsoegridkit/links.csv old mode 100644 new mode 100755 diff --git a/data/entsoegridkit/transformers.csv b/data/entsoegridkit/transformers.csv old mode 100644 new mode 100755 diff --git a/data/era5-annual-HDD-per-country.csv b/data/era5-annual-HDD-per-country.csv old mode 100644 new mode 100755 diff --git a/data/era5-annual-runoff-per-country.csv b/data/era5-annual-runoff-per-country.csv old mode 100644 new mode 100755 diff --git a/data/existing_infrastructure/existing_heating_raw.csv b/data/existing_infrastructure/existing_heating_raw.csv old mode 100644 new mode 100755 diff --git a/data/gr-e-11.03.02.01.01-cc.csv b/data/gr-e-11.03.02.01.01-cc.csv old mode 100644 new mode 100755 diff --git a/data/heat_load_profile_BDEW.csv b/data/heat_load_profile_BDEW.csv old mode 100644 new mode 100755 diff --git a/data/hydro_capacities.csv b/data/hydro_capacities.csv old mode 100644 new mode 100755 diff --git a/data/links_p_nom.csv b/data/links_p_nom.csv old mode 100644 new mode 100755 diff --git a/data/nuclear_p_max_pu.csv b/data/nuclear_p_max_pu.csv old mode 100644 new mode 100755 diff --git a/data/parameter_corrections.yaml b/data/parameter_corrections.yaml old mode 100644 new mode 100755 diff --git a/data/refineries-noneu.csv b/data/refineries-noneu.csv old mode 100644 new mode 100755 diff --git a/data/retro/comparative_level_investment.csv b/data/retro/comparative_level_investment.csv old mode 100644 new mode 100755 diff --git a/data/retro/data_building_stock.csv b/data/retro/data_building_stock.csv old mode 100644 new mode 100755 diff --git a/data/retro/electricity_taxes_eu.csv b/data/retro/electricity_taxes_eu.csv old mode 100644 new mode 100755 diff --git a/data/retro/floor_area_missing.csv b/data/retro/floor_area_missing.csv old mode 100644 new mode 100755 diff --git a/data/retro/retro_cost_germany.csv b/data/retro/retro_cost_germany.csv old mode 100644 new mode 100755 diff --git a/data/retro/u_values_poland.csv b/data/retro/u_values_poland.csv old mode 100644 new mode 100755 diff --git a/data/retro/window_assumptions.csv b/data/retro/window_assumptions.csv old mode 100644 new mode 100755 diff --git a/data/switzerland-new_format-all_years.csv b/data/switzerland-new_format-all_years.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/nep/new_lines.csv b/data/transmission_projects/nep/new_lines.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/nep/new_links.csv b/data/transmission_projects/nep/new_links.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/template/new_lines.csv b/data/transmission_projects/template/new_lines.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/template/new_links.csv b/data/transmission_projects/template/new_links.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/template/upgraded_lines.csv b/data/transmission_projects/template/upgraded_lines.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/template/upgraded_links.csv b/data/transmission_projects/template/upgraded_links.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/tyndp2020/new_lines.csv b/data/transmission_projects/tyndp2020/new_lines.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/tyndp2020/new_links.csv b/data/transmission_projects/tyndp2020/new_links.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/tyndp2020/upgraded_lines.csv b/data/transmission_projects/tyndp2020/upgraded_lines.csv old mode 100644 new mode 100755 diff --git a/data/transmission_projects/tyndp2020/upgraded_links.csv b/data/transmission_projects/tyndp2020/upgraded_links.csv old mode 100644 new mode 100755 diff --git a/data/unit_commitment.csv b/data/unit_commitment.csv old mode 100644 new mode 100755 diff --git a/doc/Makefile b/doc/Makefile old mode 100644 new mode 100755 diff --git a/doc/conf.py b/doc/conf.py old mode 100644 new mode 100755 diff --git a/doc/configtables/adjustments.csv b/doc/configtables/adjustments.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/atlite.csv b/doc/configtables/atlite.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/biomass.csv b/doc/configtables/biomass.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/clustering.csv b/doc/configtables/clustering.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/co2_budget.csv b/doc/configtables/co2_budget.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/conventional.csv b/doc/configtables/conventional.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/costs.csv b/doc/configtables/costs.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/countries.csv b/doc/configtables/countries.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/electricity.csv b/doc/configtables/electricity.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/enable.csv b/doc/configtables/enable.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/energy.csv b/doc/configtables/energy.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/existing_capacities.csv b/doc/configtables/existing_capacities.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/foresight.csv b/doc/configtables/foresight.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/hydro.csv b/doc/configtables/hydro.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/industry.csv b/doc/configtables/industry.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/lines.csv b/doc/configtables/lines.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/links.csv b/doc/configtables/links.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/load.csv b/doc/configtables/load.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/offwind-ac.csv b/doc/configtables/offwind-ac.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/offwind-dc.csv b/doc/configtables/offwind-dc.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/onwind.csv b/doc/configtables/onwind.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/opts.csv b/doc/configtables/opts.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/plotting.csv b/doc/configtables/plotting.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/run.csv b/doc/configtables/run.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/scenario.csv b/doc/configtables/scenario.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/sector-opts.csv b/doc/configtables/sector-opts.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/sector.csv b/doc/configtables/sector.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/snapshots.csv b/doc/configtables/snapshots.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/solar-thermal.csv b/doc/configtables/solar-thermal.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/solar.csv b/doc/configtables/solar.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/solving.csv b/doc/configtables/solving.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/toplevel.csv b/doc/configtables/toplevel.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/transformers.csv b/doc/configtables/transformers.csv old mode 100644 new mode 100755 diff --git a/doc/configtables/transmission_projects.csv b/doc/configtables/transmission_projects.csv old mode 100644 new mode 100755 diff --git a/doc/configuration.rst b/doc/configuration.rst old mode 100644 new mode 100755 diff --git a/doc/contributing.rst b/doc/contributing.rst old mode 100644 new mode 100755 diff --git a/doc/costs.rst b/doc/costs.rst old mode 100644 new mode 100755 diff --git a/doc/data_sources.rst b/doc/data_sources.rst old mode 100644 new mode 100755 diff --git a/doc/foresight.rst b/doc/foresight.rst old mode 100644 new mode 100755 diff --git a/doc/img/Heat_and_el_demand_timeseries.png b/doc/img/Heat_and_el_demand_timeseries.png old mode 100644 new mode 100755 diff --git a/doc/img/base.png b/doc/img/base.png old mode 100644 new mode 100755 diff --git a/doc/img/corine.png b/doc/img/corine.png old mode 100644 new mode 100755 diff --git a/doc/img/countries.png b/doc/img/countries.png old mode 100644 new mode 100755 diff --git a/doc/img/country_shapes.png b/doc/img/country_shapes.png old mode 100644 new mode 100755 diff --git a/doc/img/demand-map-heat.png b/doc/img/demand-map-heat.png old mode 100644 new mode 100755 diff --git a/doc/img/distance_hist.png b/doc/img/distance_hist.png old mode 100644 new mode 100755 diff --git a/doc/img/eez.png b/doc/img/eez.png old mode 100644 new mode 100755 diff --git a/doc/img/elec.png b/doc/img/elec.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s.png b/doc/img/elec_s.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s_128.png b/doc/img/elec_s_128.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s_256.png b/doc/img/elec_s_256.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s_37.png b/doc/img/elec_s_37.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s_512.png b/doc/img/elec_s_512.png old mode 100644 new mode 100755 diff --git a/doc/img/elec_s_X.png b/doc/img/elec_s_X.png old mode 100644 new mode 100755 diff --git a/doc/img/eligibility.png b/doc/img/eligibility.png old mode 100644 new mode 100755 diff --git a/doc/img/era5.png b/doc/img/era5.png old mode 100644 new mode 100755 diff --git a/doc/img/europe_shape.png b/doc/img/europe_shape.png old mode 100644 new mode 100755 diff --git a/doc/img/fec_industry_today_tomorrow.png b/doc/img/fec_industry_today_tomorrow.png old mode 100644 new mode 100755 diff --git a/doc/img/gas_pipeline_figure.png b/doc/img/gas_pipeline_figure.png old mode 100644 new mode 100755 diff --git a/doc/img/gebco_2019_grid_image.jpg b/doc/img/gebco_2019_grid_image.jpg old mode 100644 new mode 100755 diff --git a/doc/img/hotmaps.png b/doc/img/hotmaps.png old mode 100644 new mode 100755 diff --git a/doc/img/hydrocapacities.png b/doc/img/hydrocapacities.png old mode 100644 new mode 100755 diff --git a/doc/img/hydrogeneration.png b/doc/img/hydrogeneration.png old mode 100644 new mode 100755 diff --git a/doc/img/inflow-box.png b/doc/img/inflow-box.png old mode 100644 new mode 100755 diff --git a/doc/img/inflow-ts.png b/doc/img/inflow-ts.png old mode 100644 new mode 100755 diff --git a/doc/img/intro-workflow.png b/doc/img/intro-workflow.png old mode 100644 new mode 100755 diff --git a/doc/img/load-box.png b/doc/img/load-box.png old mode 100644 new mode 100755 diff --git a/doc/img/load-ts.png b/doc/img/load-ts.png old mode 100644 new mode 100755 diff --git a/doc/img/multisector_figure.pdf b/doc/img/multisector_figure.pdf old mode 100644 new mode 100755 diff --git a/doc/img/multisector_figure.png b/doc/img/multisector_figure.png old mode 100644 new mode 100755 diff --git a/doc/img/multisector_figure.svg b/doc/img/multisector_figure.svg old mode 100644 new mode 100755 diff --git a/doc/img/natura.png b/doc/img/natura.png old mode 100644 new mode 100755 diff --git a/doc/img/nuts3.png b/doc/img/nuts3.png old mode 100644 new mode 100755 diff --git a/doc/img/nuts3_shapes.png b/doc/img/nuts3_shapes.png old mode 100644 new mode 100755 diff --git a/doc/img/offshore_shapes.png b/doc/img/offshore_shapes.png old mode 100644 new mode 100755 diff --git a/doc/img/offwindac-gridcell.png b/doc/img/offwindac-gridcell.png old mode 100644 new mode 100755 diff --git a/doc/img/offwinddc-gridcell.png b/doc/img/offwinddc-gridcell.png old mode 100644 new mode 100755 diff --git a/doc/img/onwind-gridcell.png b/doc/img/onwind-gridcell.png old mode 100644 new mode 100755 diff --git a/doc/img/p_nom_max_hist.png b/doc/img/p_nom_max_hist.png old mode 100644 new mode 100755 diff --git a/doc/img/potential_heatmap.png b/doc/img/potential_heatmap.png old mode 100644 new mode 100755 diff --git a/doc/img/powerplantmatching.png b/doc/img/powerplantmatching.png old mode 100644 new mode 100755 diff --git a/doc/img/process-emissions.png b/doc/img/process-emissions.png old mode 100644 new mode 100755 diff --git a/doc/img/profile_ts.png b/doc/img/profile_ts.png old mode 100644 new mode 100755 diff --git a/doc/img/pypsa-eur-grid.png b/doc/img/pypsa-eur-grid.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_offshore.png b/doc/img/regions_offshore.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_offshore_elec_s.png b/doc/img/regions_offshore_elec_s.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_offshore_elec_s_X.png b/doc/img/regions_offshore_elec_s_X.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_onshore.png b/doc/img/regions_onshore.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_onshore_elec_s.png b/doc/img/regions_onshore_elec_s.png old mode 100644 new mode 100755 diff --git a/doc/img/regions_onshore_elec_s_X.png b/doc/img/regions_onshore_elec_s_X.png old mode 100644 new mode 100755 diff --git a/doc/img/results.png b/doc/img/results.png old mode 100644 new mode 100755 diff --git a/doc/img/sarah.png b/doc/img/sarah.png old mode 100644 new mode 100755 diff --git a/doc/img/scenarios.png b/doc/img/scenarios.png old mode 100644 new mode 100755 diff --git a/doc/img/solar-gridcell.png b/doc/img/solar-gridcell.png old mode 100644 new mode 100755 diff --git a/doc/img/synchronisation.png b/doc/img/synchronisation.png old mode 100644 new mode 100755 diff --git a/doc/img/tech-colors.png b/doc/img/tech-colors.png old mode 100644 new mode 100755 diff --git a/doc/img/underwater_hist.png b/doc/img/underwater_hist.png old mode 100644 new mode 100755 diff --git a/doc/img/validation_production_bar_elec_s_37_ec_lv1.0_Ept.png b/doc/img/validation_production_bar_elec_s_37_ec_lv1.0_Ept.png old mode 100644 new mode 100755 diff --git a/doc/img/validation_seasonal_operation_area_elec_s_37_ec_lv1.0_Ept.png b/doc/img/validation_seasonal_operation_area_elec_s_37_ec_lv1.0_Ept.png old mode 100644 new mode 100755 diff --git a/doc/img/workflow.png b/doc/img/workflow.png old mode 100644 new mode 100755 diff --git a/doc/index.rst b/doc/index.rst old mode 100644 new mode 100755 diff --git a/doc/installation.rst b/doc/installation.rst old mode 100644 new mode 100755 diff --git a/doc/introduction.rst b/doc/introduction.rst old mode 100644 new mode 100755 diff --git a/doc/licenses.rst b/doc/licenses.rst old mode 100644 new mode 100755 diff --git a/doc/limitations.rst b/doc/limitations.rst old mode 100644 new mode 100755 diff --git a/doc/make.bat b/doc/make.bat old mode 100644 new mode 100755 diff --git a/doc/plotting.rst b/doc/plotting.rst old mode 100644 new mode 100755 diff --git a/doc/preparation.rst b/doc/preparation.rst old mode 100644 new mode 100755 diff --git a/doc/publications.bib b/doc/publications.bib old mode 100644 new mode 100755 diff --git a/doc/publications.rst b/doc/publications.rst old mode 100644 new mode 100755 diff --git a/doc/release_notes.rst b/doc/release_notes.rst old mode 100644 new mode 100755 diff --git a/doc/requirements.txt b/doc/requirements.txt old mode 100644 new mode 100755 diff --git a/doc/retrieve.rst b/doc/retrieve.rst old mode 100644 new mode 100755 diff --git a/doc/sector.rst b/doc/sector.rst old mode 100644 new mode 100755 diff --git a/doc/simplification.rst b/doc/simplification.rst old mode 100644 new mode 100755 diff --git a/doc/solving.rst b/doc/solving.rst old mode 100644 new mode 100755 diff --git a/doc/spatial_resolution.rst b/doc/spatial_resolution.rst old mode 100644 new mode 100755 diff --git a/doc/supply_demand.rst b/doc/supply_demand.rst old mode 100644 new mode 100755 diff --git a/doc/support.rst b/doc/support.rst old mode 100644 new mode 100755 diff --git a/doc/tutorial.rst b/doc/tutorial.rst old mode 100644 new mode 100755 diff --git a/doc/tutorial_sector.rst b/doc/tutorial_sector.rst old mode 100644 new mode 100755 diff --git a/doc/validation.rst b/doc/validation.rst old mode 100644 new mode 100755 diff --git a/doc/wildcards.rst b/doc/wildcards.rst old mode 100644 new mode 100755 diff --git a/envs/environment.fixed.yaml b/envs/environment.fixed.yaml old mode 100644 new mode 100755 diff --git a/envs/environment.yaml b/envs/environment.yaml old mode 100644 new mode 100755 diff --git a/envs/retrieve.yaml b/envs/retrieve.yaml old mode 100644 new mode 100755 diff --git a/matplotlibrc b/matplotlibrc old mode 100644 new mode 100755 diff --git a/rules/collect.smk b/rules/collect.smk old mode 100644 new mode 100755 diff --git a/rules/common.smk b/rules/common.smk old mode 100644 new mode 100755 diff --git a/rules/development.smk b/rules/development.smk old mode 100644 new mode 100755 diff --git a/rules/postprocess.smk b/rules/postprocess.smk old mode 100644 new mode 100755 diff --git a/rules/solve_electricity.smk b/rules/solve_electricity.smk old mode 100644 new mode 100755 diff --git a/rules/solve_myopic.smk b/rules/solve_myopic.smk old mode 100644 new mode 100755 diff --git a/rules/solve_overnight.smk b/rules/solve_overnight.smk old mode 100644 new mode 100755 diff --git a/rules/solve_perfect.smk b/rules/solve_perfect.smk old mode 100644 new mode 100755 diff --git a/rules/validate.smk b/rules/validate.smk old mode 100644 new mode 100755 diff --git a/scripts/__init__.py b/scripts/__init__.py old mode 100644 new mode 100755 diff --git a/scripts/_benchmark.py b/scripts/_benchmark.py old mode 100644 new mode 100755 diff --git a/scripts/_helpers.py b/scripts/_helpers.py old mode 100644 new mode 100755 diff --git a/scripts/add_brownfield.py b/scripts/add_brownfield.py old mode 100644 new mode 100755 diff --git a/scripts/add_existing_baseyear.py b/scripts/add_existing_baseyear.py old mode 100644 new mode 100755 diff --git a/scripts/base_network.py b/scripts/base_network.py old mode 100644 new mode 100755 diff --git a/scripts/build_ammonia_production.py b/scripts/build_ammonia_production.py old mode 100644 new mode 100755 diff --git a/scripts/build_biomass_transport_costs.py b/scripts/build_biomass_transport_costs.py old mode 100644 new mode 100755 diff --git a/scripts/build_central_heating_temperature_profiles/central_heating_temperature_approximator.py b/scripts/build_central_heating_temperature_profiles/central_heating_temperature_approximator.py old mode 100644 new mode 100755 diff --git a/scripts/build_central_heating_temperature_profiles/run.py b/scripts/build_central_heating_temperature_profiles/run.py old mode 100644 new mode 100755 diff --git a/scripts/build_clustered_population_layouts.py b/scripts/build_clustered_population_layouts.py old mode 100644 new mode 100755 diff --git a/scripts/build_cop_profiles/BaseCopApproximator.py b/scripts/build_cop_profiles/BaseCopApproximator.py old mode 100644 new mode 100755 diff --git a/scripts/build_cop_profiles/CentralHeatingCopApproximator.py b/scripts/build_cop_profiles/CentralHeatingCopApproximator.py old mode 100644 new mode 100755 diff --git a/scripts/build_cop_profiles/DecentralHeatingCopApproximator.py b/scripts/build_cop_profiles/DecentralHeatingCopApproximator.py old mode 100644 new mode 100755 diff --git a/scripts/build_cop_profiles/run.py b/scripts/build_cop_profiles/run.py old mode 100644 new mode 100755 diff --git a/scripts/build_cross_border_flows.py b/scripts/build_cross_border_flows.py old mode 100644 new mode 100755 diff --git a/scripts/build_cutout.py b/scripts/build_cutout.py old mode 100644 new mode 100755 diff --git a/scripts/build_daily_heat_demand.py b/scripts/build_daily_heat_demand.py old mode 100644 new mode 100755 diff --git a/scripts/build_district_heat_share.py b/scripts/build_district_heat_share.py old mode 100644 new mode 100755 diff --git a/scripts/build_egs_potentials.py b/scripts/build_egs_potentials.py old mode 100644 new mode 100755 diff --git a/scripts/build_electricity_prices.py b/scripts/build_electricity_prices.py old mode 100644 new mode 100755 diff --git a/scripts/build_electricity_production.py b/scripts/build_electricity_production.py old mode 100644 new mode 100755 diff --git a/scripts/build_energy_totals.py b/scripts/build_energy_totals.py old mode 100644 new mode 100755 diff --git a/scripts/build_existing_heating_distribution.py b/scripts/build_existing_heating_distribution.py old mode 100644 new mode 100755 diff --git a/scripts/build_gas_input_locations.py b/scripts/build_gas_input_locations.py old mode 100644 new mode 100755 diff --git a/scripts/build_gas_network.py b/scripts/build_gas_network.py old mode 100644 new mode 100755 diff --git a/scripts/build_gdp_pop_non_nuts3.py b/scripts/build_gdp_pop_non_nuts3.py old mode 100644 new mode 100755 diff --git a/scripts/build_heat_totals.py b/scripts/build_heat_totals.py old mode 100644 new mode 100755 diff --git a/scripts/build_hourly_heat_demand.py b/scripts/build_hourly_heat_demand.py old mode 100644 new mode 100755 diff --git a/scripts/build_hydro_profile.py b/scripts/build_hydro_profile.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_distribution_key.py b/scripts/build_industrial_distribution_key.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_energy_demand_per_country_today.py b/scripts/build_industrial_energy_demand_per_country_today.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_energy_demand_per_node.py b/scripts/build_industrial_energy_demand_per_node.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_energy_demand_per_node_today.py b/scripts/build_industrial_energy_demand_per_node_today.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_production_per_country.py b/scripts/build_industrial_production_per_country.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_production_per_country_tomorrow.py b/scripts/build_industrial_production_per_country_tomorrow.py old mode 100644 new mode 100755 diff --git a/scripts/build_industrial_production_per_node.py b/scripts/build_industrial_production_per_node.py old mode 100644 new mode 100755 diff --git a/scripts/build_industry_sector_ratios.py b/scripts/build_industry_sector_ratios.py old mode 100644 new mode 100755 diff --git a/scripts/build_industry_sector_ratios_intermediate.py b/scripts/build_industry_sector_ratios_intermediate.py old mode 100644 new mode 100755 diff --git a/scripts/build_monthly_prices.py b/scripts/build_monthly_prices.py old mode 100644 new mode 100755 diff --git a/scripts/build_osm_network.py b/scripts/build_osm_network.py old mode 100644 new mode 100755 diff --git a/scripts/build_population_layouts.py b/scripts/build_population_layouts.py old mode 100644 new mode 100755 diff --git a/scripts/build_population_weighted_energy_totals.py b/scripts/build_population_weighted_energy_totals.py old mode 100644 new mode 100755 diff --git a/scripts/build_renewable_profiles.py b/scripts/build_renewable_profiles.py old mode 100644 new mode 100755 diff --git a/scripts/build_salt_cavern_potentials.py b/scripts/build_salt_cavern_potentials.py old mode 100644 new mode 100755 diff --git a/scripts/build_sequestration_potentials.py b/scripts/build_sequestration_potentials.py old mode 100644 new mode 100755 diff --git a/scripts/build_ship_raster.py b/scripts/build_ship_raster.py old mode 100644 new mode 100755 diff --git a/scripts/build_shipping_demand.py b/scripts/build_shipping_demand.py old mode 100644 new mode 100755 diff --git a/scripts/build_solar_thermal_profiles.py b/scripts/build_solar_thermal_profiles.py old mode 100644 new mode 100755 diff --git a/scripts/build_temperature_profiles.py b/scripts/build_temperature_profiles.py old mode 100644 new mode 100755 diff --git a/scripts/build_transmission_projects.py b/scripts/build_transmission_projects.py old mode 100644 new mode 100755 diff --git a/scripts/build_transport_demand.py b/scripts/build_transport_demand.py old mode 100644 new mode 100755 diff --git a/scripts/clean_osm_data.py b/scripts/clean_osm_data.py old mode 100644 new mode 100755 diff --git a/scripts/cluster_network.py b/scripts/cluster_network.py old mode 100644 new mode 100755 diff --git a/scripts/definitions/heat_sector.py b/scripts/definitions/heat_sector.py old mode 100644 new mode 100755 diff --git a/scripts/definitions/heat_system.py b/scripts/definitions/heat_system.py old mode 100644 new mode 100755 diff --git a/scripts/definitions/heat_system_type.py b/scripts/definitions/heat_system_type.py old mode 100644 new mode 100755 diff --git a/scripts/determine_availability_matrix_MD_UA.py b/scripts/determine_availability_matrix_MD_UA.py old mode 100644 new mode 100755 diff --git a/scripts/make_summary.py b/scripts/make_summary.py old mode 100644 new mode 100755 diff --git a/scripts/make_summary_perfect.py b/scripts/make_summary_perfect.py old mode 100644 new mode 100755 diff --git a/scripts/plot_gas_network.py b/scripts/plot_gas_network.py old mode 100644 new mode 100755 diff --git a/scripts/plot_hydrogen_network.py b/scripts/plot_hydrogen_network.py old mode 100644 new mode 100755 diff --git a/scripts/plot_power_network.py b/scripts/plot_power_network.py old mode 100644 new mode 100755 diff --git a/scripts/plot_power_network_clustered.py b/scripts/plot_power_network_clustered.py old mode 100644 new mode 100755 diff --git a/scripts/plot_power_network_perfect.py b/scripts/plot_power_network_perfect.py old mode 100644 new mode 100755 diff --git a/scripts/plot_statistics.py b/scripts/plot_statistics.py old mode 100644 new mode 100755 diff --git a/scripts/plot_statistics_comparison.py b/scripts/plot_statistics_comparison.py old mode 100644 new mode 100755 diff --git a/scripts/plot_statistics_single.py b/scripts/plot_statistics_single.py old mode 100644 new mode 100755 diff --git a/scripts/plot_summary.py b/scripts/plot_summary.py old mode 100644 new mode 100755 diff --git a/scripts/plot_validation_cross_border_flows.py b/scripts/plot_validation_cross_border_flows.py old mode 100644 new mode 100755 diff --git a/scripts/plot_validation_electricity_prices.py b/scripts/plot_validation_electricity_prices.py old mode 100644 new mode 100755 diff --git a/scripts/plot_validation_electricity_production.py b/scripts/plot_validation_electricity_production.py old mode 100644 new mode 100755 diff --git a/scripts/prepare_osm_network_release.py b/scripts/prepare_osm_network_release.py old mode 100644 new mode 100755 diff --git a/scripts/prepare_perfect_foresight.py b/scripts/prepare_perfect_foresight.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_cost_data.py b/scripts/retrieve_cost_data.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_databundle.py b/scripts/retrieve_databundle.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_electricity_demand.py b/scripts/retrieve_electricity_demand.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_eurostat_data.py b/scripts/retrieve_eurostat_data.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_eurostat_household_data.py b/scripts/retrieve_eurostat_household_data.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_gas_infrastructure_data.py b/scripts/retrieve_gas_infrastructure_data.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_jrc_idees.py b/scripts/retrieve_jrc_idees.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_monthly_fuel_prices.py b/scripts/retrieve_monthly_fuel_prices.py old mode 100644 new mode 100755 diff --git a/scripts/retrieve_osm_data.py b/scripts/retrieve_osm_data.py old mode 100644 new mode 100755 diff --git a/scripts/simplify_network.py b/scripts/simplify_network.py old mode 100644 new mode 100755 diff --git a/scripts/solve_network.py b/scripts/solve_network.py old mode 100644 new mode 100755 diff --git a/scripts/solve_operations_network.py b/scripts/solve_operations_network.py old mode 100644 new mode 100755 diff --git a/scripts/time_aggregation.py b/scripts/time_aggregation.py old mode 100644 new mode 100755 diff --git a/scripts/write_statistics.py b/scripts/write_statistics.py old mode 100644 new mode 100755 From 56eb054f587349871cb890f2d96baa6781f66510 Mon Sep 17 00:00:00 2001 From: cpschau Date: Tue, 22 Oct 2024 17:50:36 +0200 Subject: [PATCH 9/9] make workflow run after merge --- scripts/add_existing_baseyear.py | 41 +++++++++++++++++++------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/scripts/add_existing_baseyear.py b/scripts/add_existing_baseyear.py index 765987893c..8f25ceb85a 100755 --- a/scripts/add_existing_baseyear.py +++ b/scripts/add_existing_baseyear.py @@ -445,7 +445,9 @@ def add_chp_plants(n, grouping_years, costs, baseyear): ppl = pd.read_csv(snakemake.input.powerplants, index_col=0) if snakemake.input.get("custom_powerplants"): - if snakemake.input.custom_powerplants.endswith("german_chp_{clusters}.csv"): + if snakemake.input.custom_powerplants.endswith( + f"german_chp_base_s_{snakemake.wildcards.clusters}_l{snakemake.wildcards.ll}_{snakemake.wildcards.opts}_{snakemake.wildcards.sector_opts}_{snakemake.wildcards.planning_horizons}.csv" + ): logger.info("Supersedeing default German CHPs with custom_powerplants.") ppl = ppl.query("~(Set == 'CHP' and Country == 'DE')") ppl = add_custom_powerplants(ppl, snakemake.input.custom_powerplants, True) @@ -463,12 +465,12 @@ def add_chp_plants(n, grouping_years, costs, baseyear): chp.Fueltype = chp.Fueltype.map(rename_fuel) # assign clustered bus - chp["bus"] = chp["bus"].astype(int) - chp["cluster_bus"] = chp.bus.map(clustermaps) - if snakemake.params.add_district_heating_subnodes: - chp.loc[chp.subnode.notna(), "cluster_bus"] = chp.loc[ - chp.subnode.notna(), "subnode" - ] + # chp["bus"] = chp["bus"].astype(int) + # chp["cluster_bus"] = chp.bus.map(clustermaps) + # if snakemake.params.add_district_heating_subnodes: + # chp.loc[chp.subnode.notna(), "cluster_bus"] = chp.loc[ + # chp.subnode.notna(), "subnode" + # ] chp["grouping_year"] = np.take( grouping_years, np.digitize(chp.DateIn, grouping_years, right=True) @@ -578,8 +580,8 @@ def add_chp_plants(n, grouping_years, costs, baseyear): overnight_cost=costs.at[key, "investment"] * costs.at[key, "efficiency"], marginal_cost=costs.at[key, "VOM"], - efficiency=efficiency_power.dropna(), - efficiency2=efficiency_heat.dropna(), + efficiency=efficiency_power[p_nom.index], + efficiency2=efficiency_heat[p_nom.index], efficiency3=costs.at[generator, "CO2 intensity"], build_year=grouping_year, lifetime=costs.at[key, "lifetime"], @@ -601,8 +603,8 @@ def add_chp_plants(n, grouping_years, costs, baseyear): overnight_cost=costs.at[key, "investment"] * costs.at[key, "efficiency"], marginal_cost=costs.at[key, "VOM"], - efficiency=efficiency_power, - efficiency2=efficiency_heat, + efficiency=efficiency_power[p_nom.index], + efficiency2=efficiency_heat[p_nom.index], build_year=grouping_year, lifetime=costs.at[key, "lifetime"], ) @@ -796,8 +798,10 @@ def add_heating_capacities_installed_before_baseyear( "electricity_distribution_grid" ]: nodes_elec = nodes + " low voltage" + nodes_biomass = nodes else: - nodes_elec = nodes + nodes_elec = nodes.str.split().str[:2].str.join(" ") + nodes_biomass = nodes_elec too_large_grouping_years = [ gy for gy in grouping_years if gy >= int(baseyear) @@ -838,7 +842,9 @@ def add_heating_capacities_installed_before_baseyear( name=nodes, ) .to_pandas() - .T.drop_duplicates() + .T.reset_index() + .drop_duplicates() + .set_index("name") .T.reindex(index=n.snapshots) if time_dep_hp_cop else costs.at[costs_name, "efficiency"] @@ -957,7 +963,7 @@ def add_heating_capacities_installed_before_baseyear( "Link", nodes, suffix=f" {heat_system} biomass boiler-{grouping_year}", - bus0=spatial.biomass.df.loc[nodes, "nodes"].values, + bus0=spatial.biomass.df.loc[nodes_biomass, "nodes"].values, bus1=nodes + " " + heat_system.value + " heat", carrier=heat_system.value + " biomass boiler", efficiency=costs.at["biomass boiler", "efficiency"], @@ -1019,9 +1025,10 @@ def set_defaults(n): snakemake = mock_snakemake( "add_existing_baseyear", - configfiles="config/test/config.myopic.yaml", - clusters="5", - ll="v1.5", + # configfiles="config/test/config.myopic.yaml", + # clusters="5", + clusters="27", + ll="vopt", opts="", sector_opts="none", planning_horizons="2020",