add missing handling of weather_year wildcard
This commit is contained in:
parent
8055e45b68
commit
9f9e65afb1
28
Snakefile
28
Snakefile
@ -440,8 +440,8 @@ else:
|
|||||||
rule build_population_weighted_energy_totals:
|
rule build_population_weighted_energy_totals:
|
||||||
input:
|
input:
|
||||||
energy_totals='resources/energy_totals.csv',
|
energy_totals='resources/energy_totals.csv',
|
||||||
clustered_pop_layout="resources/pop_layout_elec_s{simpl}_{clusters}.csv"
|
clustered_pop_layout="resources/pop_layout_elec{weather_year}_s{simpl}_{clusters}.csv"
|
||||||
output: "resources/pop_weighted_energy_totals_s{simpl}_{clusters}.csv"
|
output: "resources/pop_weighted_energy_totals{weather_year}_s{simpl}_{clusters}.csv"
|
||||||
threads: 1
|
threads: 1
|
||||||
resources: mem_mb=2000
|
resources: mem_mb=2000
|
||||||
script: "scripts/build_population_weighted_energy_totals.py"
|
script: "scripts/build_population_weighted_energy_totals.py"
|
||||||
@ -449,17 +449,17 @@ rule build_population_weighted_energy_totals:
|
|||||||
|
|
||||||
rule build_transport_demand:
|
rule build_transport_demand:
|
||||||
input:
|
input:
|
||||||
clustered_pop_layout="resources/pop_layout_elec_s{simpl}_{clusters}.csv",
|
clustered_pop_layout="resources/pop_layout_elec{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
pop_weighted_energy_totals="resources/pop_weighted_energy_totals_s{simpl}_{clusters}.csv",
|
pop_weighted_energy_totals="resources/pop_weighted_energy_totals{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
transport_data='resources/transport_data.csv',
|
transport_data='resources/transport_data.csv',
|
||||||
traffic_data_KFZ="data/emobility/KFZ__count",
|
traffic_data_KFZ="data/emobility/KFZ__count",
|
||||||
traffic_data_Pkw="data/emobility/Pkw__count",
|
traffic_data_Pkw="data/emobility/Pkw__count",
|
||||||
temp_air_total="resources/temp_air_total_elec_s{simpl}_{clusters}.nc",
|
temp_air_total="resources/temp_air_total_elec{weather_year}_s{simpl}_{clusters}.nc",
|
||||||
output:
|
output:
|
||||||
transport_demand="resources/transport_demand_s{simpl}_{clusters}.csv",
|
transport_demand="resources/transport_demand{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
transport_data="resources/transport_data_s{simpl}_{clusters}.csv",
|
transport_data="resources/transport_data{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
avail_profile="resources/avail_profile_s{simpl}_{clusters}.csv",
|
avail_profile="resources/avail_profile{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
dsm_profile="resources/dsm_profile_s{simpl}_{clusters}.csv"
|
dsm_profile="resources/dsm_profile{weather_year}_s{simpl}_{clusters}.csv"
|
||||||
threads: 1
|
threads: 1
|
||||||
resources: mem_mb=2000
|
resources: mem_mb=2000
|
||||||
script: "scripts/build_transport_demand.py"
|
script: "scripts/build_transport_demand.py"
|
||||||
@ -470,11 +470,11 @@ rule prepare_sector_network:
|
|||||||
overrides="data/override_component_attrs",
|
overrides="data/override_component_attrs",
|
||||||
network=pypsaeur('networks/elec{weather_year}_s{simpl}_{clusters}_ec_lv{lv}_{opts}.nc'),
|
network=pypsaeur('networks/elec{weather_year}_s{simpl}_{clusters}_ec_lv{lv}_{opts}.nc'),
|
||||||
energy_totals_name='resources/energy_totals.csv',
|
energy_totals_name='resources/energy_totals.csv',
|
||||||
pop_weighted_energy_totals="resources/pop_weighted_energy_totals_s{simpl}_{clusters}.csv",
|
pop_weighted_energy_totals="resources/pop_weighted_energy_totals{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
transport_demand="resources/transport_demand_s{simpl}_{clusters}.csv",
|
transport_demand="resources/transport_demand{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
transport_data="resources/transport_data_s{simpl}_{clusters}.csv",
|
transport_data="resources/transport_data{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
avail_profile="resources/avail_profile_s{simpl}_{clusters}.csv",
|
avail_profile="resources/avail_profile{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
dsm_profile="resources/dsm_profile_s{simpl}_{clusters}.csv",
|
dsm_profile="resources/dsm_profile{weather_year}_s{simpl}_{clusters}.csv",
|
||||||
co2_totals_name='resources/co2_totals.csv',
|
co2_totals_name='resources/co2_totals.csv',
|
||||||
biomass_potentials='resources/biomass_potentials_s{simpl}_{clusters}.csv',
|
biomass_potentials='resources/biomass_potentials_s{simpl}_{clusters}.csv',
|
||||||
heat_profile="data/heat_load_profile_BDEW.csv",
|
heat_profile="data/heat_load_profile_BDEW.csv",
|
||||||
|
@ -18,7 +18,6 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
cutout_name = snakemake.input.cutout
|
cutout_name = snakemake.input.cutout
|
||||||
year = snakemake.wildcards.weather_year
|
year = snakemake.wildcards.weather_year
|
||||||
drop_leap_day = snakemake.config["atlite"].get("drop_leap_day", False)
|
|
||||||
|
|
||||||
if year:
|
if year:
|
||||||
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
||||||
@ -27,7 +26,7 @@ if __name__ == '__main__':
|
|||||||
snapshots = snakemake.config['snapshots']
|
snapshots = snakemake.config['snapshots']
|
||||||
|
|
||||||
time = pd.date_range(freq='m', **snapshots)
|
time = pd.date_range(freq='m', **snapshots)
|
||||||
if drop_leap_day:
|
if snakemake.config["atlite"].get("drop_leap_day", False):
|
||||||
time = time[~((time.month == 2) & (time.day == 29))]
|
time = time[~((time.month == 2) & (time.day == 29))]
|
||||||
|
|
||||||
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
||||||
|
@ -20,7 +20,6 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
cutout_name = snakemake.input.cutout
|
cutout_name = snakemake.input.cutout
|
||||||
year = snakemake.wildcards.weather_year
|
year = snakemake.wildcards.weather_year
|
||||||
drop_leap_day = snakemake.config["atlite"].get("drop_leap_day", False)
|
|
||||||
|
|
||||||
if year:
|
if year:
|
||||||
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
||||||
@ -29,7 +28,7 @@ if __name__ == '__main__':
|
|||||||
snapshots = snakemake.config['snapshots']
|
snapshots = snakemake.config['snapshots']
|
||||||
|
|
||||||
time = pd.date_range(freq='m', **snapshots)
|
time = pd.date_range(freq='m', **snapshots)
|
||||||
if drop_leap_day:
|
if snakemake.config["atlite"].get("drop_leap_day", False):
|
||||||
time = time[~((time.month == 2) & (time.day == 29))]
|
time = time[~((time.month == 2) & (time.day == 29))]
|
||||||
|
|
||||||
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
||||||
|
@ -18,7 +18,6 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
cutout_name = snakemake.input.cutout
|
cutout_name = snakemake.input.cutout
|
||||||
year = snakemake.wildcards.weather_year
|
year = snakemake.wildcards.weather_year
|
||||||
drop_leap_day = snakemake.config["atlite"].get("drop_leap_day", False)
|
|
||||||
|
|
||||||
if year:
|
if year:
|
||||||
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
snapshots = dict(start=year, end=str(int(year)+1), closed="left")
|
||||||
@ -27,7 +26,7 @@ if __name__ == '__main__':
|
|||||||
snapshots = snakemake.config['snapshots']
|
snapshots = snakemake.config['snapshots']
|
||||||
|
|
||||||
time = pd.date_range(freq='m', **snapshots)
|
time = pd.date_range(freq='m', **snapshots)
|
||||||
if drop_leap_day:
|
if snakemake.config["atlite"].get("drop_leap_day", False):
|
||||||
time = time[~((time.month == 2) & (time.day == 29))]
|
time = time[~((time.month == 2) & (time.day == 29))]
|
||||||
|
|
||||||
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
cutout = atlite.Cutout(cutout_name).sel(time=time)
|
||||||
|
@ -159,6 +159,7 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
snakemake = mock_snakemake(
|
snakemake = mock_snakemake(
|
||||||
"build_transport_demand",
|
"build_transport_demand",
|
||||||
|
weather_year='',
|
||||||
simpl="",
|
simpl="",
|
||||||
clusters=48,
|
clusters=48,
|
||||||
)
|
)
|
||||||
@ -173,7 +174,12 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
options = snakemake.config["sector"]
|
options = snakemake.config["sector"]
|
||||||
|
|
||||||
snapshots = pd.date_range(freq='h', **snakemake.config["snapshots"], tz="UTC")
|
year = snakemake.wildcards.weather_year
|
||||||
|
snapshots = dict(start=year, end=str(int(year)+1), closed="left") if year else snakemake.config['snapshots']
|
||||||
|
snapshots = pd.date_range(freq='h', **snapshots, tz="UTC")
|
||||||
|
if snakemake.config["atlite"].get("drop_leap_day", False):
|
||||||
|
leap_day = (snapshots.month == 2) & (snapshots.day == 29)
|
||||||
|
snapshots = snapshots[~leap_day]
|
||||||
|
|
||||||
Nyears = 1
|
Nyears = 1
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user