Make overdimensioning factor for heating systems specific to central/decentral heating (#1259)

* chore: make overdim_factor heat-system-specific

* doc: update configtables

* doc: update release notes

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: read overdimensioning factor for industrial oil boilers from options

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: Amos Schledorn <a.schledorn@tu-berlin.de>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
This commit is contained in:
Amos Schledorn 2024-09-08 11:50:25 +02:00 committed by GitHub
parent d02984c5a9
commit 4a3e7924d2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 17 additions and 6 deletions

View File

@ -590,7 +590,9 @@ sector:
resistive_heaters: true
oil_boilers: false
biomass_boiler: true
overdimension_individual_heating: 1.1 #to cover demand peaks bigger than data
overdimension_heat_generators:
decentral: 1.1 #to cover demand peaks bigger than data
central: 1.0
chp: true
micro_chp: false
solar_thermal: true

View File

@ -89,7 +89,9 @@ boilers,--,"{true, false}",Add option for transforming gas into heat using gas b
resistive_heaters,--,"{true, false}",Add option for transforming electricity into heat using resistive heaters (independently from gas boilers)
oil_boilers,--,"{true, false}",Add option for transforming oil into heat using boilers
biomass_boiler,--,"{true, false}",Add option for transforming biomass into heat using boilers
overdimension_individual_heating,--,float,Add option for overdimensioning individual heating systems by a certain factor. This allows them to cover heat demand peaks e.g. 10% higher than those in the data with a setting of 1.1.
overdimension_heat_generators,,,Add option for overdimensioning heating systems by a certain factor. This allows them to cover heat demand peaks e.g. 10% higher than those in the data with a setting of 1.1.
-- decentral,--,float,The factor for overdimensioning (increasing CAPEX) decentral heating systems
-- central,--,float,The factor for overdimensioning (increasing CAPEX) central heating systems
chp,--,"{true, false}",Add option for using Combined Heat and Power (CHP)
micro_chp,--,"{true, false}",Add option for using Combined Heat and Power (CHP) for decentral areas.
solar_thermal,--,"{true, false}",Add option for using solar thermal to generate heat.

1 Unit Values Description
89 resistive_heaters -- {true, false} Add option for transforming electricity into heat using resistive heaters (independently from gas boilers)
90 oil_boilers -- {true, false} Add option for transforming oil into heat using boilers
91 biomass_boiler -- {true, false} Add option for transforming biomass into heat using boilers
92 overdimension_individual_heating overdimension_heat_generators -- float Add option for overdimensioning individual heating systems by a certain factor. This allows them to cover heat demand peaks e.g. 10% higher than those in the data with a setting of 1.1. Add option for overdimensioning heating systems by a certain factor. This allows them to cover heat demand peaks e.g. 10% higher than those in the data with a setting of 1.1.
93 -- decentral -- float The factor for overdimensioning (increasing CAPEX) decentral heating systems
94 -- central -- float The factor for overdimensioning (increasing CAPEX) central heating systems
95 chp -- {true, false} Add option for using Combined Heat and Power (CHP)
96 micro_chp -- {true, false} Add option for using Combined Heat and Power (CHP) for decentral areas.
97 solar_thermal -- {true, false} Add option for using solar thermal to generate heat.

View File

@ -11,6 +11,8 @@ Release Notes
.. Upcoming Release
.. ================
* Made the overdimensioning factor for heating systems specific for central/decentral heating, defaults to no overdimensionining for central heating and no changes to decentral heating compared to previous version.
* bugfix: The carrier of stores was silently overwritten by their bus_carrier as a side effect when building the co2 constraints
* bugfix: The oil generator was incorrectly dropped when the config `oil_refining_emissions` was greater than zero. This was the default behaviour in 0.12.0.

View File

@ -1875,8 +1875,6 @@ def add_heat(n: pypsa.Network, costs: pd.DataFrame, cop: xr.DataArray):
heat_demand = build_heat_demand(n)
overdim_factor = options["overdimension_individual_heating"]
district_heat_info = pd.read_csv(snakemake.input.district_heat_share, index_col=0)
dist_fraction = district_heat_info["district fraction of node"]
urban_fraction = district_heat_info["urban fraction"]
@ -1905,6 +1903,9 @@ def add_heat(n: pypsa.Network, costs: pd.DataFrame, cop: xr.DataArray):
HeatSystem
): # this loops through all heat systems defined in _entities.HeatSystem
overdim_factor = options["overdimension_heat_generators"][
heat_system.central_or_decentral
]
if heat_system == HeatSystem.URBAN_CENTRAL:
nodes = dist_fraction.index[dist_fraction > 0]
else:
@ -2753,7 +2754,9 @@ def add_biomass(n, costs):
efficiency=costs.at["biomass boiler", "efficiency"],
capital_cost=costs.at["biomass boiler", "efficiency"]
* costs.at["biomass boiler", "fixed"]
* options["overdimension_individual_heating"],
* options["overdimension_heat_generators"][
HeatSystem(name).central_or_decentral
],
marginal_cost=costs.at["biomass boiler", "pelletizing cost"],
lifetime=costs.at["biomass boiler", "lifetime"],
)
@ -3275,7 +3278,9 @@ def add_industry(n, costs):
efficiency2=costs.at["oil", "CO2 intensity"],
capital_cost=costs.at["decentral oil boiler", "efficiency"]
* costs.at["decentral oil boiler", "fixed"]
* options["overdimension_individual_heating"],
* options["overdimension_heat_generators"][
heat_system.central_or_decentral
],
lifetime=costs.at["decentral oil boiler", "lifetime"],
)