drop_leap_days already in renewable profiles

This commit is contained in:
Fabian Neumann 2024-03-14 14:30:50 +01:00
parent 5b1575cb50
commit f84707ba38
4 changed files with 18 additions and 6 deletions

View File

@ -267,6 +267,7 @@ def input_ua_md_availability_matrix(w):
rule build_renewable_profiles: rule build_renewable_profiles:
params: params:
snapshots=config_provider("snapshots"), snapshots=config_provider("snapshots"),
drop_leap_day=config_provider("enable", "drop_leap_day"),
renewable=config_provider("renewable"), renewable=config_provider("renewable"),
input: input:
unpack(input_ua_md_availability_matrix), unpack(input_ua_md_availability_matrix),
@ -345,6 +346,7 @@ rule build_hydro_profile:
hydro=config_provider("renewable", "hydro"), hydro=config_provider("renewable", "hydro"),
countries=config_provider("countries"), countries=config_provider("countries"),
snapshots=config_provider("snapshots"), snapshots=config_provider("snapshots"),
drop_leap_day=config_provider("enable", "drop_leap_day"),
input: input:
country_shapes=resources("country_shapes.geojson"), country_shapes=resources("country_shapes.geojson"),
eia_hydro_generation="data/eia_hydro_annual_generation.csv", eia_hydro_generation="data/eia_hydro_annual_generation.csv",
@ -370,6 +372,7 @@ rule build_hydro_profile:
rule build_line_rating: rule build_line_rating:
params: params:
snapshots=config_provider("snapshots"), snapshots=config_provider("snapshots"),
drop_leap_day=config_provider("enable", "drop_leap_day"),
input: input:
base_network=resources("networks/base.nc"), base_network=resources("networks/base.nc"),
cutout=lambda w: "cutouts/" cutout=lambda w: "cutouts/"
@ -413,6 +416,7 @@ rule add_electricity:
length_factor=config_provider("lines", "length_factor"), length_factor=config_provider("lines", "length_factor"),
scaling_factor=config_provider("load", "scaling_factor"), scaling_factor=config_provider("load", "scaling_factor"),
countries=config_provider("countries"), countries=config_provider("countries"),
snapshots=config_provider("snapshots"),
renewable=config_provider("renewable"), renewable=config_provider("renewable"),
electricity=config_provider("electricity"), electricity=config_provider("electricity"),
conventional=config_provider("conventional"), conventional=config_provider("conventional"),

View File

@ -174,7 +174,12 @@ if __name__ == "__main__":
set_scenario_config(snakemake) set_scenario_config(snakemake)
params_hydro = snakemake.params.hydro params_hydro = snakemake.params.hydro
cutout = atlite.Cutout(snakemake.input.cutout)
time = pd.date_range(freq="h", **snakemake.params.snapshots)
if snakemake.params.drop_leap_day:
time = time[~((time.month == 2) & (time.day == 29))]
cutout = atlite.Cutout(snakemake.input.cutout).sel(time=time)
countries = snakemake.params.countries countries = snakemake.params.countries
country_shapes = ( country_shapes = (

View File

@ -146,10 +146,11 @@ if __name__ == "__main__":
configure_logging(snakemake) configure_logging(snakemake)
set_scenario_config(snakemake) set_scenario_config(snakemake)
snapshots = snakemake.params.snapshots
n = pypsa.Network(snakemake.input.base_network) n = pypsa.Network(snakemake.input.base_network)
time = pd.date_range(freq="h", **snapshots) time = pd.date_range(freq="h", **snakemake.params.snapshots)
if snakemake.params.drop_leap_day:
time = time[~((time.month == 2) & (time.day == 29))]
cutout = atlite.Cutout(snakemake.input.cutout).sel(time=time) cutout = atlite.Cutout(snakemake.input.cutout).sel(time=time)
da = calculate_line_rating(n, cutout) da = calculate_line_rating(n, cutout)

View File

@ -227,9 +227,11 @@ if __name__ == "__main__":
else: else:
client = None client = None
sns = pd.date_range(freq="h", **snakemake.params.snapshots) time = pd.date_range(freq="h", **snakemake.params.snapshots)
if snakemake.params.drop_leap_day:
time = time[~((time.month == 2) & (time.day == 29))]
cutout = atlite.Cutout(snakemake.input.cutout).sel(time=sns) cutout = atlite.Cutout(snakemake.input.cutout).sel(time=time)
regions = gpd.read_file(snakemake.input.regions) regions = gpd.read_file(snakemake.input.regions)
assert not regions.empty, ( assert not regions.empty, (
f"List of regions in {snakemake.input.regions} is empty, please " f"List of regions in {snakemake.input.regions} is empty, please "