From fd9e93b4b0ec77014df206fb32bf303ede579fc2 Mon Sep 17 00:00:00 2001 From: Fabian Neumann Date: Sat, 25 May 2024 17:16:47 +0200 Subject: [PATCH] transport demand: clarify units in code comments --- scripts/build_energy_totals.py | 9 ++++----- scripts/build_transport_demand.py | 7 ++++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/build_energy_totals.py b/scripts/build_energy_totals.py index 60be44a5..38137973 100644 --- a/scripts/build_energy_totals.py +++ b/scripts/build_energy_totals.py @@ -394,8 +394,8 @@ def build_idees(countries): names=["country", "year"], ) - # efficiency kgoe/100km -> ktoe/100km - totals.loc[:, "passenger car efficiency"] *= 1e3 + # efficiency kgoe/100km -> ktoe/100km so that after conversion TWh/100km + totals.loc[:, "passenger car efficiency"] /= 1e6 # convert ktoe to TWh exclude = totals.columns.str.fullmatch("passenger cars") totals.loc[:, ~exclude] *= 11.63 / 1e3 @@ -766,9 +766,8 @@ def build_transport_data(countries, population, idees): transport_data = transport_data.combine_first(fill_values) - # collect average fuel efficiency in kWh/km - - transport_data["average fuel efficiency"] = idees["passenger car efficiency"] + # collect average fuel efficiency in MWh/100km, taking passengar car efficiency in TWh/100km + transport_data["average fuel efficiency"] = idees["passenger car efficiency"] * 1e6 missing = transport_data.index[transport_data["average fuel efficiency"].isna()] if not missing.empty: diff --git a/scripts/build_transport_demand.py b/scripts/build_transport_demand.py index a052581b..4a29667a 100644 --- a/scripts/build_transport_demand.py +++ b/scripts/build_transport_demand.py @@ -73,14 +73,15 @@ def build_transport_demand(traffic_fn, airtemp_fn, nodes, nodal_transport_data): # divide out the heating/cooling demand from ICE totals ice_correction = (transport_shape * (1 + dd_ICE)).sum() / transport_shape.sum() + # unit TWh energy_totals_transport = ( pop_weighted_energy_totals["total road"] + pop_weighted_energy_totals["total rail"] - pop_weighted_energy_totals["electricity rail"] ) - # convert average fuel efficiency from kW/100 km -> MW/100km - eff = nodal_transport_data["average fuel efficiency"] / 1e3 + # average fuel efficiency in MWh/100 km + eff = nodal_transport_data["average fuel efficiency"] return (transport_shape.multiply(energy_totals_transport) * 1e6 * nyears).divide( eff * ice_correction @@ -169,7 +170,7 @@ if __name__ == "__main__": snakemake = mock_snakemake( "build_transport_demand", simpl="", - clusters=37, + clusters=128, ) configure_logging(snakemake) set_scenario_config(snakemake)