Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ebiofuels #1193

Merged
merged 9 commits into from
Aug 2, 2024
2 changes: 2 additions & 0 deletions config/config.default.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -597,6 +597,7 @@ sector:
conventional_generation:
OCGT: gas
biomass_to_liquid: false
electrobiofuels: false
biosng: false
limit_max_growth:
enable: false
Expand Down Expand Up @@ -1029,6 +1030,7 @@ plotting:
services rural biomass boiler: '#c6cf98'
services urban decentral biomass boiler: '#dde5b5'
biomass to liquid: '#32CD32'
electrobiofuels: 'red'
BioSNG: '#123456'
# power transmission
lines: '#6c9459'
Expand Down
1 change: 1 addition & 0 deletions doc/configtables/sector.csv
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ biomass_transport,--,"{true, false}",Add option for transporting solid biomass b
biogas_upgrading_cc,--,"{true, false}",Add option to capture CO2 from biomass upgrading
conventional_generation,,,Add a more detailed description of conventional carriers. Any power generation requires the consumption of fuel from nodes representing that fuel.
biomass_to_liquid,--,"{true, false}",Add option for transforming solid biomass into liquid fuel with the same properties as oil
electrobiofuels,--,"{true, false}","Add option for transforming solid biomass and hydrogen into liquid fuel to make more use of biogenic carbon, as a combination of BtL and Fischer-Tropsch"
biosng,--,"{true, false}",Add option for transforming solid biomass into synthesis gas with the same properties as natural gas
limit_max_growth,,,
-- enable,--,"{true, false}",Add option to limit the maximum growth of a carrier
Expand Down
2 changes: 2 additions & 0 deletions doc/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ Release Notes
Upcoming Release
================

* Add option to produce electrobiofuels from solid biomass and hydrogen, as a combination of BtL and Fischer-Tropsch to make more use of the biogenic carbon

* Add flag ``sector: fossil_fuels`` in config to remove the option of importing fossil fuels

* Renamed the carrier of batteries in BEVs from `battery storage` to `EV battery` and the corresponding bus carrier from `Li ion` to `EV battery`. This is to avoid confusion with stationary battery storage.
Expand Down
37 changes: 37 additions & 0 deletions scripts/prepare_sector_network.py
Original file line number Diff line number Diff line change
Expand Up @@ -2511,6 +2511,43 @@ def add_biomass(n, costs):
marginal_cost=costs.at["BtL", "efficiency"] * costs.at["BtL", "VOM"],
)

# Electrobiofuels (BtL with hydrogen addition to make more use of biogenic carbon).
# Combination of efuels and biomass to liquid, both based on Fischer-Tropsch.
# Experimental version - use with caution
if options["electrobiofuels"]:

efuel_scale_factor = costs.at["BtL", "C stored"]
name = (
pd.Index(spatial.biomass.nodes)
+ " "
+ pd.Index(spatial.h2.nodes.str.replace(" H2", ""))
)
n.madd(
"Link",
name,
suffix=" electrobiofuels",
bus0=spatial.biomass.nodes,
bus1=spatial.oil.nodes,
bus2=spatial.h2.nodes,
bus3="co2 atmosphere",
carrier="electrobiofuels",
lifetime=costs.at["electrobiofuels", "lifetime"],
efficiency=costs.at["electrobiofuels", "efficiency-biomass"],
efficiency2=-costs.at["electrobiofuels", "efficiency-hydrogen"],
efficiency3=-costs.at["solid biomass", "CO2 intensity"]
+ costs.at["BtL", "CO2 stored"]
* (1 - costs.at["Fischer-Tropsch", "capture rate"]),
p_nom_extendable=True,
capital_cost=costs.at["BtL", "fixed"] * costs.at["BtL", "efficiency"]
+ efuel_scale_factor
* costs.at["Fischer-Tropsch", "fixed"]
* costs.at["Fischer-Tropsch", "efficiency"],
marginal_cost=costs.at["BtL", "VOM"] * costs.at["BtL", "efficiency"]
+ efuel_scale_factor
* costs.at["Fischer-Tropsch", "VOM"]
* costs.at["Fischer-Tropsch", "efficiency"],
)

# BioSNG from solid biomass
if options["biosng"]:
n.madd(
Expand Down
Loading