pypsa-eur
pypsa-eur copied to clipboard
Decoupling Waste Sector from Biomass and Industry Config
Closes https://github.com/PyPSA/pypsa-eur/issues/1638
Changes proposed in this Pull Request
This PR decouples the waste streams from the biomass and industry config.
So far, non-sequestered HVC was only accounted for if the industry sector was enabled since it was added with the production of naphtha for industry.
Municipal solid waste was added in the function add_biomass.
This PR treats waste as any other sector, collects the data needed (from biomass potentials and the industry demand) and adds buses for non-sequestered HVC and municipal solid waste for each bus region or Europe.
In case there is no technology activated to use the waste msw is not added since the incineration is carbon neutral as of European law.
In case any of config["waste"]["waste_to_energy"] or config["waste"]["waste_to_energy_cc"] is activated, the msw is added to the non-sequestered HVC potential with negative emissions since those are emitted later with the CHPs.
Checklist
- [x] I tested my contribution locally and it works as intended.
- [x] Code and workflow changes are sufficiently documented.
- [ ] Changed dependencies are added to
envs/environment.yaml. not applicable - [x] Changes in configuration options are added in
config/config.default.yaml. - [x] Changes in configuration options are documented in
doc/configtables/*.csv. - [ ] Sources of newly added data are documented in
doc/data_sources.rst. not applicable - [x] A release note
doc/release_notes.rstis added.
Tests I ran to make sure the code works as intended:
- Waste volume supplied by the generators adds up to the potential from the .csv files in all cases (also with waste transport enabled)
- Code runs with all combinations of the newly introduced config settings
- Exception that
waste_spatial=Falseand[waste][transport]is caught by not allowing transport in that case - Config settings of
waste=Falseandindustry=Trueleads to co2 emissions in thenaphtha for industrylink - Emitted co2 stays constant
Transport of msw and non-sequestered HVC is not modeled. However, when config["waste"]["enable"] == True the European potential can be used in each bus region where the model sees fit. I'm wondering if I should just allow the options False and True the latter being the regional implementation.
Great to see you are getting started on this! Here are a few more thoughts:
-
While we are at it we could clarify the naming a bit. Most importantly, i'd suggest to simply have a
solid wastebus. At the moment there would be two potential supply streams for this bus:municipal solid wasteandHVC waste(which is now callednon-sequestered HVC), and three withdrawal stream:waste_to_energy,waste_to_energy_ccandwaste_to_air(now calledHVC to air). -
This would also allow to unify the transport. By activating a new config
solid_waste_transportall content of the solid waste bus could be transported. For starters, I think we can simply take over the way it is done for biomass/msw in the current master. -
instead of the option
waste:enable:regional/true, we should have two keys:sector:waste:true/falseandwaste:regional:true/false, to mimick the way it is done for e.g. industry
Let's discuss the details on Monday :)
xref https://github.com/PyPSA/pypsa-eur/pull/1625#issuecomment-2835470144
I'm not sure if the transport of waste is really necessary - but the option is there.
I also feel a bit unsure about whether it's really necessary to add a whole new config[waste] or if it is better to keep it all in config[sector]
If you have any ideas of how I can visualize the test I did - please let me know.