diff --git a/doc/data.csv b/doc/data.csv index 8e316281..75bdc10e 100644 --- a/doc/data.csv +++ b/doc/data.csv @@ -1,26 +1,28 @@ -description,file/folder,licence,source -JRC IDEES database,jrc-idees-2015/,CC BY 4.0,https://ec.europa.eu/jrc/en/potencia/jrc-idees -urban/rural fraction,urban_percent.csv,unknown,unknown -JRC biomass potentials,biomass/,unknown,https://doi.org/10.2790/39014 -EEA emission statistics,eea/UNFCCC_v23.csv,EEA standard re-use policy,https://www.eea.europa.eu/data-and-maps/data/national-emissions-reported-to-the-unfccc-and-to-the-eu-greenhouse-gas-monitoring-mechanism-16 -Eurostat Energy Balances,eurostat-energy_balances-*/,Eurostat,https://ec.europa.eu/eurostat/web/energy/data/energy-balances -Swiss energy statistics from Swiss Federal Office of Energy,switzerland-sfoe/,unknown,http://www.bfe.admin.ch/themen/00526/00541/00542/02167/index.html?dossier_id=02169 -BASt emobility statistics,emobility/,unknown,http://www.bast.de/DE/Verkehrstechnik/Fachthemen/v2-verkehrszaehlung/Stundenwerte.html?nn=626916 -timezone mappings,timezone_mappings.csv,CC BY 4.0,Tom Brown -BDEW heating profile,heat_load_profile_BDEW.csv,unknown,https://github.com/oemof/demandlib -heating profiles for Aarhus,heat_load_profile_DK_AdamJensen.csv,unknown,Adam Jensen MA thesis at Aarhus University -George Lavidas wind/wave costs,WindWaveWEC_GLTB.xlsx,unknown,George Lavidas -country codes,Country_codes.csv,CC BY 4.0,Marta Victoria -co2 budgets,co2_budget.csv,CC BY 4.0,https://arxiv.org/abs/2004.11009 -existing heating potentials,existing_infrastructure/existing_heating_raw.csv,unknown,https://ec.europa.eu/energy/studies/mapping-and-analyses-current-and-future-2020-2030-heatingcooling-fuel-deployment_en?redir=1 -IRENA existing VRE capacities,existing_infrastructure/{solar|onwind|offwind}_capcity_IRENA.csv,unknown,https://www.irena.org/Statistics/Download-Data -USGS ammonia production,myb1-2017-nitro.xls,unknown,https://www.usgs.gov/centers/nmic/nitrogen-statistics-and-information -hydrogen salt cavern potentials,hydrogen_salt_cavern_potentials.csv,CC BY 4.0,https://doi.org/10.1016/j.ijhydene.2019.12.161 -hotmaps industrial site database,Industrial_Database.csv,CC BY 4.0,https://gitlab.com/hotmaps/industrial_sites/industrial_sites_Industrial_Database -Hotmaps building stock data,data_building_stock.csv,CC BY 4.0,https://gitlab.com/hotmaps/building-stock -U-values Poland,u_values_poland.csv,unknown,https://data.europa.eu/euodp/de/data/dataset/building-stock-observatory -Floor area missing in hotmaps building stock data,floor_area_missing.csv,unknown,https://data.europa.eu/euodp/de/data/dataset/building-stock-observatory -Comparative level investment,comparative_level_investment.csv,Eurostat,https://ec.europa.eu/eurostat/statistics-explained/index.php?title=Comparative_price_levels_for_investment -Electricity taxes,electricity_taxes_eu.csv,Eurostat,https://appsso.eurostat.ec.europa.eu/nui/show.do?dataset=nrg_pc_204&lang=en -Building topologies and corresponding standard values,tabula-calculator-calcsetbuilding.csv,unknown,https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx -Retrofitting thermal envelope costs for Germany,retro_cost_germany.csv,unkown,https://www.iwu.de/forschung/handlungslogiken/kosten-energierelevanter-bau-und-anlagenteile-bei-modernisierung/ +description,file/folder,licence,source,, +JRC IDEES database,jrc-idees-2015/,CC BY 4.0,https://ec.europa.eu/jrc/en/potencia/jrc-idees,, +urban/rural fraction,urban_percent.csv,unknown,unknown,, +JRC biomass potentials,biomass/,unknown,https://doi.org/10.2790/39014,, +EEA emission statistics,eea/UNFCCC_v23.csv,EEA standard re-use policy,https://www.eea.europa.eu/data-and-maps/data/national-emissions-reported-to-the-unfccc-and-to-the-eu-greenhouse-gas-monitoring-mechanism-16,, +Eurostat Energy Balances,eurostat-energy_balances-*/,Eurostat,https://ec.europa.eu/eurostat/web/energy/data/energy-balances,, +Swiss energy statistics from Swiss Federal Office of Energy,switzerland-sfoe/,unknown,http://www.bfe.admin.ch/themen/00526/00541/00542/02167/index.html?dossier_id=02169,, +BASt emobility statistics,emobility/,unknown,http://www.bast.de/DE/Verkehrstechnik/Fachthemen/v2-verkehrszaehlung/Stundenwerte.html?nn=626916,, +timezone mappings,timezone_mappings.csv,CC BY 4.0,Tom Brown,, +BDEW heating profile,heat_load_profile_BDEW.csv,unknown,https://github.com/oemof/demandlib,, +heating profiles for Aarhus,heat_load_profile_DK_AdamJensen.csv,unknown,Adam Jensen MA thesis at Aarhus University,, +George Lavidas wind/wave costs,WindWaveWEC_GLTB.xlsx,unknown,George Lavidas,, +country codes,Country_codes.csv,CC BY 4.0,Marta Victoria,, +co2 budgets,co2_budget.csv,CC BY 4.0,https://arxiv.org/abs/2004.11009,, +existing heating potentials,existing_infrastructure/existing_heating_raw.csv,unknown,https://ec.europa.eu/energy/studies/mapping-and-analyses-current-and-future-2020-2030-heatingcooling-fuel-deployment_en?redir=1,, +IRENA existing VRE capacities,existing_infrastructure/{solar,onwind,offwind}_capcity_IRENA.csv,unknown,https://www.irena.org/Statistics/Download-Data +USGS ammonia production,myb1-2017-nitro.xls,unknown,https://www.usgs.gov/centers/nmic/nitrogen-statistics-and-information,, +hydrogen salt cavern potentials,hydrogen_salt_cavern_potentials.csv,CC BY 4.0,https://doi.org/10.1016/j.ijhydene.2019.12.161,, +hotmaps industrial site database,Industrial_Database.csv,CC BY 4.0,https://gitlab.com/hotmaps/industrial_sites/industrial_sites_Industrial_Database,, +Hotmaps building stock data,data_building_stock.csv,CC BY 4.0,https://gitlab.com/hotmaps/building-stock,, +U-values Poland,u_values_poland.csv,unknown,https://data.europa.eu/euodp/de/data/dataset/building-stock-observatory,, +Floor area missing in hotmaps building stock data,floor_area_missing.csv,unknown,https://data.europa.eu/euodp/de/data/dataset/building-stock-observatory,, +Comparative level investment,comparative_level_investment.csv,Eurostat,https://ec.europa.eu/eurostat/statistics-explained/index.php?title=Comparative_price_levels_for_investment,, +Electricity taxes,electricity_taxes_eu.csv,Eurostat,https://appsso.eurostat.ec.europa.eu/nui/show.do?dataset=nrg_pc_204&lang=en,, +Building topologies and corresponding standard values,tabula-calculator-calcsetbuilding.csv,unknown,https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx,, +Retrofitting thermal envelope costs for Germany,retro_cost_germany.csv,unkown,https://www.iwu.de/forschung/handlungslogiken/kosten-energierelevanter-bau-und-anlagenteile-bei-modernisierung/,, +District heating most countries,jrc-idees-2015/,CC BY 4.0,https://ec.europa.eu/jrc/en/potencia/jrc-idees,, +District heating missing countries,district_heat_share.csv,unkown,https://www.euroheat.org/knowledge-hub/country-profiles,, diff --git a/scripts/prepare_sector_network.py b/scripts/prepare_sector_network.py index fea03d69..89ccbebb 100644 --- a/scripts/prepare_sector_network.py +++ b/scripts/prepare_sector_network.py @@ -481,7 +481,7 @@ def add_co2_network(n, costs): def add_dac(n, costs): - heat_carriers = ["urban central heat"] + heat_carriers = ["urban central heat", "services urban decentral heat"] heat_buses = n.buses.index[n.buses.carrier.isin(heat_carriers)] locations = n.buses.location[heat_buses] @@ -489,8 +489,7 @@ def add_dac(n, costs): efficiency3 = -(costs.at['direct air capture', 'heat-input'] - costs.at['direct air capture', 'compression-heat-output']) n.madd("Link", - locations, - suffix=" DAC", + heat_buses.str.replace(" heat", " DAC"), bus0="co2 atmosphere", bus1=spatial.co2.df.loc[locations, "nodes"].values, bus2=locations.values, @@ -1383,7 +1382,7 @@ def add_heat(n, costs): factor = urban_fraction[nodes[name]] - \ dist_fraction[nodes[name]] else: - factor = None + raise NotImplementedError(f" {name} not in " f"heat systems: {heat_systems}") if sector in name: heat_load = heat_demand[[sector + " water",sector + " space"]].groupby(level=1,axis=1).sum()[nodes[name]].multiply(factor) @@ -1670,16 +1669,14 @@ def create_nodes_for_heat_sector(): # urban are areas with high heating density # urban can be split into district heating (central) and individual heating (decentral) - ct_urban = pop_layout.urban.groupby(pop_layout["ct"]).sum() + ct_urban = pop_layout.urban.groupby(pop_layout.ct).sum() # distribution of urban population within a country - pop_layout["urban_ct_fraction"] = pop_layout["urban"] / \ - pop_layout["ct"].map(ct_urban.get) + pop_layout["urban_ct_fraction"] = pop_layout.urban / pop_layout.ct.map(ct_urban.get) sectors = ["residential", "services"] nodes = {} - urban_fraction = pop_layout["urban"] / \ - (pop_layout[["urban", "rural"]].sum(axis=1)) + urban_fraction = pop_layout.urban / pop_layout[["rural", "urban"]].sum(axis=1) for sector in sectors: nodes[sector + " rural"] = pop_layout.index @@ -2239,7 +2236,7 @@ if __name__ == "__main__": clusters="37", lv=1.0, sector_opts='Co2L0-168H-T-H-B-I-solar3-dist1', - planning_horizons="2030", + planning_horizons="2020", ) logging.basicConfig(level=snakemake.config['logging_level']) @@ -2254,7 +2251,7 @@ if __name__ == "__main__": n = pypsa.Network(snakemake.input.network, override_component_attrs=overrides) pop_layout = pd.read_csv(snakemake.input.clustered_pop_layout, index_col=0) - Nyears = n.snapshot_weightings.sum() / 8760 + Nyears = n.snapshot_weightings.generators.sum() / 8760 costs = prepare_costs(snakemake.input.costs, snakemake.config['costs']['USD2013_to_EUR2013'],