avoid duplicate existing RES capacities (closes #1016)

This commit is contained in:
Fabian Neumann 2024-05-24 09:47:23 +02:00
parent a0e968e573
commit 5397f3fe85
4 changed files with 24 additions and 9 deletions

View File

@ -29,7 +29,7 @@ conventional_carriers,--,"Any subset of {nuclear, oil, OCGT, CCGT, coal, lignite
,,, ,,,
renewable_carriers,--,"Any subset of {solar, onwind, offwind-ac, offwind-dc, offwind-float, hydro}",List of renewable generators to include in the model. renewable_carriers,--,"Any subset of {solar, onwind, offwind-ac, offwind-dc, offwind-float, hydro}",List of renewable generators to include in the model.
estimate_renewable_capacities,,, estimate_renewable_capacities,,,
-- enable,,bool,Activate routine to estimate renewable capacities -- enable,,bool,Activate routine to estimate renewable capacities in rule :mod:`add_electricity`. This option should not be used in combination with pathway planning ``foresight: myopic`` or ``foresight: perfect`` as renewable capacities are added differently in :mod:`add_existing_baseyear`.
-- from_opsd,--,bool,Add renewable capacities from `OPSD database <https://data.open-power-system-data.org/renewable_power_plants/2020-08-25>`_. The value is depreciated but still can be used. -- from_opsd,--,bool,Add renewable capacities from `OPSD database <https://data.open-power-system-data.org/renewable_power_plants/2020-08-25>`_. The value is depreciated but still can be used.
-- year,--,bool,Renewable capacities are based on existing capacities reported by IRENA (IRENASTAT) for the specified year -- year,--,bool,Renewable capacities are based on existing capacities reported by IRENA (IRENASTAT) for the specified year
-- expansion_limit,--,float or false,"Artificially limit maximum IRENA capacities to a factor. For example, an ``expansion_limit: 1.1`` means 110% of capacities . If false are chosen, the estimated renewable potentials determine by the workflow are used." -- expansion_limit,--,float or false,"Artificially limit maximum IRENA capacities to a factor. For example, an ``expansion_limit: 1.1`` means 110% of capacities . If false are chosen, the estimated renewable potentials determine by the workflow are used."

Can't render this file because it has a wrong number of fields in line 5.

View File

@ -10,6 +10,13 @@ Release Notes
Upcoming Release Upcoming Release
================ ================
* Bugfix: The configuration setting ``electricity:
estimate_renewable_capacities: enable:`` for rule :mod:`add_electricity` is
not compatible with ``foresight: myopic``, as the former adds existing
renewable capacities in a different way in :mod:`add_existing_baseyear`.
The logic was changed so that adding existing renewable capacities is now
skipped in :mod:`add_electricity` if the foresight mode is ``myopic``.
* Bugfix: Make sure that gas-fired power plants are correctly added as OCGT or * Bugfix: Make sure that gas-fired power plants are correctly added as OCGT or
CCGT in :mod:`add_electricity`. Previously they were always added as OCGT. CCGT in :mod:`add_electricity`. Previously they were always added as OCGT.

View File

@ -385,6 +385,7 @@ rule add_electricity:
electricity=config_provider("electricity"), electricity=config_provider("electricity"),
conventional=config_provider("conventional"), conventional=config_provider("conventional"),
costs=config_provider("costs"), costs=config_provider("costs"),
foresight=config_provider("foresight"),
drop_leap_day=config_provider("enable", "drop_leap_day"), drop_leap_day=config_provider("enable", "drop_leap_day"),
input: input:
unpack(input_profile_tech), unpack(input_profile_tech),

View File

@ -881,15 +881,22 @@ if __name__ == "__main__":
estimate_renewable_caps = params.electricity["estimate_renewable_capacities"] estimate_renewable_caps = params.electricity["estimate_renewable_capacities"]
if estimate_renewable_caps["enable"]: if estimate_renewable_caps["enable"]:
tech_map = estimate_renewable_caps["technology_mapping"] if params.foresight != "overnight":
expansion_limit = estimate_renewable_caps["expansion_limit"] logger.info(
year = estimate_renewable_caps["year"] "Skipping renewable capacity estimation because they are added later "
"in rule `add_existing_baseyear` with foresight mode 'myopic'."
)
else:
tech_map = estimate_renewable_caps["technology_mapping"]
expansion_limit = estimate_renewable_caps["expansion_limit"]
year = estimate_renewable_caps["year"]
if estimate_renewable_caps["from_opsd"]: if estimate_renewable_caps["from_opsd"]:
attach_OPSD_renewables(n, tech_map) attach_OPSD_renewables(n, tech_map)
estimate_renewable_capacities(
n, year, tech_map, expansion_limit, params.countries estimate_renewable_capacities(
) n, year, tech_map, expansion_limit, params.countries
)
update_p_nom_max(n) update_p_nom_max(n)