move up methanol for industry, to before shipping

This commit is contained in:
Fabian Neumann 2024-05-20 22:06:31 +02:00
parent 0ad3489d3a
commit 00efffcc13

View File

@ -2679,73 +2679,7 @@ def add_industry(n, costs):
p_set=industrial_demand.loc[nodes, "hydrogen"] / nhours,
)
shipping_hydrogen_share = get(options["shipping_hydrogen_share"], investment_year)
shipping_methanol_share = get(options["shipping_methanol_share"], investment_year)
shipping_oil_share = get(options["shipping_oil_share"], investment_year)
total_share = shipping_hydrogen_share + shipping_methanol_share + shipping_oil_share
if total_share != 1:
logger.warning(
f"Total shipping shares sum up to {total_share:.2%}, corresponding to increased or decreased demand assumptions."
)
domestic_navigation = pop_weighted_energy_totals.loc[
nodes, "total domestic navigation"
].squeeze()
international_navigation = (
pd.read_csv(snakemake.input.shipping_demand, index_col=0).squeeze() * nyears
)
all_navigation = domestic_navigation + international_navigation
p_set = all_navigation * 1e6 / nhours
if shipping_hydrogen_share:
oil_efficiency = options.get(
"shipping_oil_efficiency", options.get("shipping_average_efficiency", 0.4)
)
efficiency = oil_efficiency / costs.at["fuel cell", "efficiency"]
shipping_hydrogen_share = get(
options["shipping_hydrogen_share"], investment_year
)
if options["shipping_hydrogen_liquefaction"]:
n.madd(
"Bus",
nodes,
suffix=" H2 liquid",
carrier="H2 liquid",
location=nodes,
unit="MWh_LHV",
)
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"
efficiency = (
options["shipping_oil_efficiency"] / costs.at["fuel cell", "efficiency"]
)
p_set_hydrogen = shipping_hydrogen_share * p_set * efficiency
n.madd(
"Load",
nodes,
suffix=" H2 for shipping",
bus=shipping_bus,
carrier="H2 for shipping",
p_set=p_set_hydrogen,
)
# methanol for industry
n.madd(
"Bus",
@ -2825,6 +2759,74 @@ def add_industry(n, costs):
efficiency3=-options["MWh_MeOH_per_MWh_H2"] / options["MWh_MeOH_per_tCO2"],
)
shipping_hydrogen_share = get(options["shipping_hydrogen_share"], investment_year)
shipping_methanol_share = get(options["shipping_methanol_share"], investment_year)
shipping_oil_share = get(options["shipping_oil_share"], investment_year)
total_share = shipping_hydrogen_share + shipping_methanol_share + shipping_oil_share
if total_share != 1:
logger.warning(
f"Total shipping shares sum up to {total_share:.2%}, corresponding to increased or decreased demand assumptions."
)
domestic_navigation = pop_weighted_energy_totals.loc[
nodes, "total domestic navigation"
].squeeze()
international_navigation = (
pd.read_csv(snakemake.input.shipping_demand, index_col=0).squeeze() * nyears
)
all_navigation = domestic_navigation + international_navigation
p_set = all_navigation * 1e6 / nhours
if shipping_hydrogen_share:
oil_efficiency = options.get(
"shipping_oil_efficiency", options.get("shipping_average_efficiency", 0.4)
)
efficiency = oil_efficiency / costs.at["fuel cell", "efficiency"]
shipping_hydrogen_share = get(
options["shipping_hydrogen_share"], investment_year
)
if options["shipping_hydrogen_liquefaction"]:
n.madd(
"Bus",
nodes,
suffix=" H2 liquid",
carrier="H2 liquid",
location=nodes,
unit="MWh_LHV",
)
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"
efficiency = (
options["shipping_oil_efficiency"] / costs.at["fuel cell", "efficiency"]
)
p_set_hydrogen = shipping_hydrogen_share * p_set * efficiency
n.madd(
"Load",
nodes,
suffix=" H2 for shipping",
bus=shipping_bus,
carrier="H2 for shipping",
p_set=p_set_hydrogen,
)
if shipping_methanol_share:
efficiency = (
options["shipping_oil_efficiency"] / options["shipping_methanol_efficiency"]