add H2 liquefaction cost to H2 shipping demand (#145)
* add H2 liquefaction cost to H2 shipping demand * rename bus to 'H2 liquid' * add release note * make consideration of liquefaction costs for shipping optional * update release notes
This commit is contained in:
parent
96afff0487
commit
87596dd015
@ -175,6 +175,7 @@ sector:
|
||||
transport_fuel_cell_efficiency: 0.5
|
||||
transport_internal_combustion_efficiency: 0.3
|
||||
shipping_average_efficiency: 0.4 #For conversion of fuel oil to propulsion in 2011
|
||||
shipping_hydrogen_liquefaction: true # whether to consider liquefaction costs for shipping H2 demands
|
||||
shipping_hydrogen_share: # 1 means all hydrogen FC
|
||||
2020: 0
|
||||
2025: 0
|
||||
|
@ -60,6 +60,9 @@ Future release
|
||||
These are included in the environment specifications of PyPSA-Eur.
|
||||
* Consistent use of ``__main__`` block and further unspecific code cleaning.
|
||||
* Distinguish costs for home battery storage and inverter from utility-scale battery costs.
|
||||
* Added option for hydrogen liquefaction costs for hydrogen demand in shipping.
|
||||
This introduces a new ``H2 liquid`` bus at each location.
|
||||
It is activated via ``sector: shipping_hydrogen_liquefaction: true``.
|
||||
* The share of shipping transformed into hydrogen fuel cell can be now defined for different years in the ``config.yaml`` file. The carbon emission from the remaining share is treated as a negative load on the atmospheric carbon dioxide bus, just like aviation and land transport emissions.
|
||||
* The transformation of the Steel and Aluminium production can be now defined for different years in the ``config.yaml`` file.
|
||||
* Include the option to alter the maximum energy capacity of a store via the ``carrier+factor`` in the ``{sector_opts}`` wildcard. This can be useful for sensitivity analyses. Example: ``co2 stored+e2`` multiplies the ``e_nom_max`` by factor 2. In this example, ``e_nom_max`` represents the CO2 sequestration potential in Europe.
|
||||
|
@ -1714,6 +1714,30 @@ def add_industry(n, costs):
|
||||
p_set=industrial_demand.loc[nodes, "hydrogen"] / 8760
|
||||
)
|
||||
|
||||
if options["shipping_hydrogen_liquefaction"]:
|
||||
|
||||
n.madd("Bus",
|
||||
nodes,
|
||||
suffix=" H2 liquid",
|
||||
carrier="H2 liquid",
|
||||
location=nodes
|
||||
)
|
||||
|
||||
n.madd("Link",
|
||||
nodes + " H2 liquefaction",
|
||||
bus0=nodes + " H2",
|
||||
bus1=nodes + " H2 liquid",
|
||||
carrier="H2 liquefaction",
|
||||
efficiency=costs.at["H2 liquefaction", 'efficiency'],
|
||||
capital_cost=costs.at["H2 liquefaction", 'fixed'],
|
||||
p_nom_extendable=True,
|
||||
lifetime=costs.at['H2 liquefaction', 'lifetime']
|
||||
)
|
||||
|
||||
shipping_bus = nodes + " H2 liquid"
|
||||
else:
|
||||
shipping_bus = nodes + " H2"
|
||||
|
||||
all_navigation = ["total international navigation", "total domestic navigation"]
|
||||
efficiency = options['shipping_average_efficiency'] / costs.at["fuel cell", "efficiency"]
|
||||
shipping_hydrogen_share = get(options['shipping_hydrogen_share'], investment_year)
|
||||
@ -1722,7 +1746,7 @@ def add_industry(n, costs):
|
||||
n.madd("Load",
|
||||
nodes,
|
||||
suffix=" H2 for shipping",
|
||||
bus=nodes + " H2",
|
||||
bus=shipping_bus,
|
||||
carrier="H2 for shipping",
|
||||
p_set=p_set
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user