From 5bfc7a49a6cf4ed9937d37405d4d168e80ee2a77 Mon Sep 17 00:00:00 2001 From: lisazeyen Date: Mon, 10 May 2021 16:55:19 +0200 Subject: [PATCH] adjust battery efficiency. The efficiency in the technology data is given as round trip efficiency --- scripts/add_extra_components.py | 37 ++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/scripts/add_extra_components.py b/scripts/add_extra_components.py index 74c0713a..1fb76d78 100644 --- a/scripts/add_extra_components.py +++ b/scripts/add_extra_components.py @@ -77,16 +77,28 @@ def attach_storageunits(n, costs): lookup_dispatch = {"H2": "fuel cell", "battery": "battery inverter"} for carrier in carriers: - n.madd("StorageUnit", buses_i, ' ' + carrier, - bus=buses_i, - carrier=carrier, - p_nom_extendable=True, - capital_cost=costs.at[carrier, 'capital_cost'], - marginal_cost=costs.at[carrier, 'marginal_cost'], - efficiency_store=costs.at[lookup_store[carrier], 'efficiency'], - efficiency_dispatch=costs.at[lookup_dispatch[carrier], 'efficiency'], - max_hours=max_hours[carrier], - cyclic_state_of_charge=True) + if carrier=="battery": + n.madd("StorageUnit", buses_i, ' ' + carrier, + bus=buses_i, + carrier=carrier, + p_nom_extendable=True, + capital_cost=costs.at[carrier, 'capital_cost'], + marginal_cost=costs.at[carrier, 'marginal_cost'], + efficiency_store=costs.at[lookup_store[carrier], 'efficiency']**0.5, + efficiency_dispatch=costs.at[lookup_dispatch[carrier], 'efficiency']**0.5, + max_hours=max_hours[carrier], + cyclic_state_of_charge=True) + else: + n.madd("StorageUnit", buses_i, ' ' + carrier, + bus=buses_i, + carrier=carrier, + p_nom_extendable=True, + capital_cost=costs.at[carrier, 'capital_cost'], + marginal_cost=costs.at[carrier, 'marginal_cost'], + efficiency_store=costs.at[lookup_store[carrier], 'efficiency'], + efficiency_dispatch=costs.at[lookup_dispatch[carrier], 'efficiency'], + max_hours=max_hours[carrier], + cyclic_state_of_charge=True) def attach_stores(n, costs): @@ -142,7 +154,8 @@ def attach_stores(n, costs): bus0=buses_i, bus1=b_buses_i, carrier='battery charger', - efficiency=costs.at['battery inverter', 'efficiency'], + # the efficiencies are "round trip efficiencies" + efficiency=costs.at['battery inverter', 'efficiency']**0.5, capital_cost=costs.at['battery inverter', 'capital_cost'], p_nom_extendable=True, marginal_cost=costs.at["battery inverter", "marginal_cost"]) @@ -151,7 +164,7 @@ def attach_stores(n, costs): bus0=b_buses_i, bus1=buses_i, carrier='battery discharger', - efficiency=costs.at['battery inverter','efficiency'], + efficiency=costs.at['battery inverter','efficiency']**0.5, p_nom_extendable=True, marginal_cost=costs.at["battery inverter", "marginal_cost"])