Merge branch 'fix-marginal-costs' of https://github.com/pz-max/pypsa-eur into pz-max-fix-marginal-costs

This commit is contained in:
Fabian Neumann 2021-04-27 14:32:49 +02:00
commit e3863084cd
2 changed files with 16 additions and 7 deletions

View File

@ -179,13 +179,16 @@ costs:
year: 2030
discountrate: 0.07 # From a Lion Hirth paper, also reflects average of Noothout et al 2016
USD2013_to_EUR2013: 0.7532 # [EUR/USD] ECB: https://www.ecb.europa.eu/stats/exchange/eurofxref/html/eurofxref-graph-usd.en.html
marginal_cost:
marginal_cost: # EUR/MWh
solar: 0.01
onwind: 0.015
offwind: 0.015
hydro: 0.
H2: 0.
electrolysis: 0.
fuel cell: 0.
battery: 0.
battery inverter: 0.
emission_prices: # in currency per tonne emission, only used with the option Ep
co2: 0.

View File

@ -106,7 +106,8 @@ def attach_stores(n, costs):
carrier='H2',
e_nom_extendable=True,
e_cyclic=True,
capital_cost=costs.at["hydrogen storage", "capital_cost"])
capital_cost=costs.at["hydrogen storage", "capital_cost"],
marginal_cost=costs.at["H2", "marginal_cost"])
n.madd("Link", h2_buses_i + " Electrolysis",
bus0=buses_i,
@ -114,7 +115,8 @@ def attach_stores(n, costs):
carrier='H2 electrolysis',
p_nom_extendable=True,
efficiency=costs.at["electrolysis", "efficiency"],
capital_cost=costs.at["electrolysis", "capital_cost"])
capital_cost=costs.at["electrolysis", "capital_cost"],
marginal_cost=costs.at["electrolysis", "marginal_cost"])
n.madd("Link", h2_buses_i + " Fuel Cell",
bus0=h2_buses_i,
@ -123,7 +125,8 @@ def attach_stores(n, costs):
p_nom_extendable=True,
efficiency=costs.at["fuel cell", "efficiency"],
#NB: fixed cost is per MWel
capital_cost=costs.at["fuel cell", "capital_cost"] * costs.at["fuel cell", "efficiency"])
capital_cost=costs.at["fuel cell", "capital_cost"] * costs.at["fuel cell", "efficiency"],
marginal_cost=costs.at["fuel cell", "marginal_cost"])
if 'battery' in carriers:
b_buses_i = n.madd("Bus", buses_i + " battery", carrier="battery", **bus_sub_dict)
@ -133,7 +136,8 @@ def attach_stores(n, costs):
carrier='battery',
e_cyclic=True,
e_nom_extendable=True,
capital_cost=costs.at['battery storage', 'capital_cost'])
capital_cost=costs.at['battery storage', 'capital_cost'],
marginal_cost=costs.at["battery", "marginal_cost"])
n.madd("Link", b_buses_i + " charger",
bus0=buses_i,
@ -141,7 +145,8 @@ def attach_stores(n, costs):
carrier='battery charger',
efficiency=costs.at['battery inverter', 'efficiency'],
capital_cost=costs.at['battery inverter', 'capital_cost'],
p_nom_extendable=True)
p_nom_extendable=True,
marginal_cost=costs.at["battery inverter", "marginal_cost"])
n.madd("Link", b_buses_i + " discharger",
bus0=b_buses_i,
@ -149,7 +154,8 @@ def attach_stores(n, costs):
carrier='battery discharger',
efficiency=costs.at['battery inverter','efficiency'],
capital_cost=costs.at['battery inverter', 'capital_cost'],
p_nom_extendable=True)
p_nom_extendable=True,
marginal_cost=costs.at["battery inverter", "marginal_cost"])
def attach_hydrogen_pipelines(n, costs):