From f923da989d93770fc5780f12037db378bdbbd5c3 Mon Sep 17 00:00:00 2001 From: marc-vdm Date: Mon, 13 Oct 2025 11:44:15 +0200 Subject: [PATCH] explicitly add each exchange, even with same key --- activity_browser/layouts/tabs/LCA_results_tabs.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/activity_browser/layouts/tabs/LCA_results_tabs.py b/activity_browser/layouts/tabs/LCA_results_tabs.py index 94371797b..57c76be7c 100644 --- a/activity_browser/layouts/tabs/LCA_results_tabs.py +++ b/activity_browser/layouts/tabs/LCA_results_tabs.py @@ -1430,7 +1430,9 @@ def get_default_demands() -> dict: amounts = [exch.amount * scale for exch in technosphere if exch.input.key != exch.output.key] - demands = {keys[i]: amounts[i] for i, _ in enumerate(keys)} + demands = {} + for key, amount in zip(keys, amounts): + demands[key] = demands.get(key, 0) + amount return demands def get_scenario_demands() -> dict: @@ -1452,7 +1454,10 @@ def get_scenario_demands() -> dict: amounts.append(_lca.technosphere_matrix[exch_idx, demand_idx] * scale) # write al non-zero exchanges to demand dict - demands = {keys[i]: amounts[i] for i, _ in enumerate(keys) if amounts[i] != 0} + demands = {} + for key, amount in zip(keys, amounts): + if amount != 0: + demands[key] = demands.get(key, 0) + amount return demands # reuse LCA object from original calculation to skip 1 LCA