|
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 |
|
@@ -582,9 +583,16 @@ def method_BC_common( |
582 | 583 | # Select only total transport consumption of lightoil from K.fe_in |
583 | 584 | indexers = {"t": "Transportation (w/ bunkers)"} |
584 | 585 | c.add(k.fe[0], "select", K.fe_in, indexers=indexers, drop=True) |
| 586 | + # Exclude data for n=World; totals to be recomputed later |
| 587 | + c.add(k.fe[1], "select", k.fe[0], indexers={"n": ["World"]}, inverse=True) |
585 | 588 |
|
586 | 589 | # Product of aviation share and FE of total transport → FE of aviation |
587 | | - c.add(k.fe, "mul", k.fe[0], k_fe_share) |
| 590 | + c.add(k.fe[2], "mul", k.fe[1], k_fe_share) |
| 591 | + |
| 592 | + # Add global sum |
| 593 | + c.add(k.fe[3], "sum", k.fe[2], dimensions="n") |
| 594 | + c.add(k.fe[4], "expand_dims", k.fe[3], dim={"n": ["World"]}) |
| 595 | + c.add(k.fe, "concat", k.fe[2], k.fe[4]) |
588 | 596 |
|
589 | 597 | # Convert exogenous emission intensity data to Mt / EJ |
590 | 598 | c.add(k.ei["units"], "convert_units", k.ei, units="Mt / EJ") |
|
0 commit comments