|
8 | 8 | from typing import TYPE_CHECKING, Any |
9 | 9 |
|
10 | 10 | import genno |
| 11 | +import genno.operator |
11 | 12 | import pandas as pd |
12 | 13 | from genno import Key, quote |
13 | 14 |
|
@@ -584,9 +585,16 @@ def method_BC_common( |
584 | 585 | # Select only total transport consumption of lightoil from K.fe_in |
585 | 586 | indexers = {"t": "Transportation (w/ bunkers)"} |
586 | 587 | c.add(k.fe[0], "select", K.fe_in, indexers=indexers, drop=True) |
| 588 | + # Exclude data for n=World; totals to be recomputed later |
| 589 | + c.add(k.fe[1], "select", k.fe[0], indexers={"n": ["World"]}, inverse=True) |
587 | 590 |
|
588 | 591 | # Product of aviation share and FE of total transport → FE of aviation |
589 | | - c.add(k.fe, "mul", k.fe[0], k_fe_share) |
| 592 | + c.add(k.fe[2], "mul", k.fe[1], k_fe_share) |
| 593 | + |
| 594 | + # Add global sum |
| 595 | + c.add(k.fe[3], "sum", k.fe[2], dimensions="n") |
| 596 | + c.add(k.fe[4], "expand_dims", k.fe[3], dim={"n": ["World"]}) |
| 597 | + c.add(k.fe, "concat", k.fe[2], k.fe[4]) |
590 | 598 |
|
591 | 599 | # Convert exogenous emission intensity data to Mt / EJ |
592 | 600 | c.add(k.ei["units"], "convert_units", k.ei, units="Mt / EJ") |
|
0 commit comments