Merge pull request #831 from PyPSA/haber-bosch-h2-input

haber-bosch: use DECHEMA source for hydrogen & electricity input
This commit is contained in:
Fabian Neumann 2024-01-02 19:32:05 +01:00 committed by GitHub
commit ce1740b3c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 11 deletions

View File

@ -548,8 +548,8 @@ industry:
MWh_NH3_per_tNH3: 5.166
MWh_CH4_per_tNH3_SMR: 10.8
MWh_elec_per_tNH3_SMR: 0.7
MWh_H2_per_tNH3_electrolysis: 6.5
MWh_elec_per_tNH3_electrolysis: 1.17
MWh_H2_per_tNH3_electrolysis: 5.93
MWh_elec_per_tNH3_electrolysis: 0.2473
MWh_NH3_per_MWh_H2_cracker: 1.46 # https://github.com/euronion/trace/blob/44a5ff8401762edbef80eff9cfe5a47c8d3c8be4/data/efficiencies.csv
NH3_process_emissions: 24.5
petrochemical_process_emissions: 25.5

View File

@ -48,6 +48,8 @@ Upcoming Release
* The ``mock_snakemake`` function can now be used with a Snakefile from a different directory using the new ``root_dir`` argument.
* Switch to using hydrogen and electricity inputs for Haber-Bosch from https://github.com/PyPSA/technology-data.
* Add option to capture CO2 contained in biogas when upgrading (``sector: biogas_to_gas_cc``).
* Merged option to extend geographical scope to Ukraine and Moldova. These

View File

@ -798,10 +798,6 @@ def add_ammonia(n, costs):
"Bus", spatial.ammonia.nodes, location=spatial.ammonia.locations, carrier="NH3"
)
MWh_elec_per_MWh_NH3 = (
cf_industry["MWh_elec_per_tNH3_electrolysis"] / cf_industry["MWh_NH3_per_tNH3"]
)
n.madd(
"Link",
nodes,
@ -811,11 +807,13 @@ def add_ammonia(n, costs):
bus2=nodes + " H2",
p_nom_extendable=True,
carrier="Haber-Bosch",
efficiency=1 / MWh_elec_per_MWh_NH3,
efficiency2=-cf_industry["MWh_H2_per_tNH3_electrolysis"]
/ cf_industry["MWh_elec_per_tNH3_electrolysis"], # input: MW_H2 per MW_elec
capital_cost=costs.at["Haber-Bosch", "fixed"] / MWh_elec_per_MWh_NH3,
marginal_cost=costs.at["Haber-Bosch", "VOM"] / MWh_elec_per_MWh_NH3,
efficiency=1 / costs.at["Haber-Bosch", "electricity-input"],
efficiency2=-costs.at["Haber-Bosch", "hydrogen-input"]
/ costs.at["Haber-Bosch", "electricity-input"],
capital_cost=costs.at["Haber-Bosch", "fixed"]
/ costs.at["Haber-Bosch", "electricity-input"],
marginal_cost=costs.at["Haber-Bosch", "VOM"]
/ costs.at["Haber-Bosch", "electricity-input"],
lifetime=costs.at["Haber-Bosch", "lifetime"],
)