@@ -215,6 +215,8 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"):
215215 var [cap_string + "Electricity|Biomass" ] = \
216216 var [cap_string + "Electricity|Biomass|Solids" ]
217217
218+ var [cap_string + "Electricity|Non-Renewable Waste" ] = \
219+ capacities_electricity .filter (like = "waste CHP" ).sum ()
218220
219221 var [cap_string + "Electricity|Coal|Hard Coal" ] = \
220222 capacities_electricity .filter (like = "coal" ).sum ()
@@ -289,9 +291,6 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"):
289291 var [cap_string + "Electricity|Hydrogen" ] = \
290292 var [cap_string + "Electricity|Hydrogen|FC" ]
291293
292- # var[cap_string + "Electricity|Non-Renewable Waste"] =
293- # ! Not implemented
294-
295294 var [cap_string + "Electricity|Nuclear" ] = \
296295 capacities_electricity .get ("nuclear" , 0 )
297296
@@ -409,6 +408,7 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"):
409408 cap_string + "Electricity|Hydro" ,
410409 cap_string + "Electricity|Hydrogen" ,
411410 cap_string + "Electricity|Nuclear" ,
411+ cap_string + "Electricity|Non-Renewable Waste" ,
412412 ]].sum ()
413413
414414 # Test if we forgot something
@@ -460,6 +460,9 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"):
460460 var [cap_string + "Heat|Biomass" ],
461461 capacities_central_heat .filter (like = "biomass" ).sum ()
462462 )
463+
464+ var [cap_string + "Heat|Non-Renewable Waste" ] = \
465+ capacities_central_heat .filter (like = "waste CHP" ).sum ()
463466
464467 var [cap_string + "Heat|Resistive heater" ] = \
465468 capacities_central_heat .filter (like = "resistive heater" ).sum ()
@@ -507,7 +510,8 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"):
507510 var [cap_string + "Heat|Gas" ] +
508511 var [cap_string + "Heat|Processes" ] +
509512 #var[cap_string + "Heat|Hydrogen"] +
510- var [cap_string + "Heat|Heat pump" ]
513+ var [cap_string + "Heat|Heat pump" ] +
514+ var [cap_string + "Heat|Non-Renewable Waste" ]
511515 )
512516
513517 # This check requires further changes to n.statistics
@@ -783,6 +787,20 @@ def get_primary_energy(n, region):
783787 # )
784788 # ! There are CC sub-categories that could be used
785789
790+
791+ waste_CHP_E_usage , waste_CHP_H_usage = get_CHP_E_and_H_usage (
792+ n , "non-sequestered HVC" , region )
793+
794+ var ["Primary Energy|Waste|Electricity" ] = \
795+ waste_CHP_E_usage
796+ var ["Primary Energy|Waste|Heat" ] = \
797+ waste_CHP_H_usage
798+ var ["Primary Energy|Waste" ] = (
799+ var ["Primary Energy|Waste|Electricity" ]
800+ + var ["Primary Energy|Waste|Heat" ]
801+ )
802+
803+
786804 coal_usage = n .statistics .withdrawal (
787805 bus_carrier = ["lignite" , "coal" ],
788806 ** kwargs ,
@@ -1013,6 +1031,9 @@ def get_secondary_energy(n, region):
10131031 electricity_supply .get ("H2 Fuel Cell" , 0 )
10141032 # ! Add H2 Turbines if they get implemented
10151033
1034+ var ["Secondary Energy|Electricity|Waste" ] = \
1035+ electricity_supply .filter (like = "waste CHP" ).sum ()
1036+
10161037 var ["Secondary Energy|Electricity|Curtailment" ] = \
10171038 n .statistics .curtailment (
10181039 bus_carrier = ["AC" , "low voltage" ], ** kwargs
@@ -1065,6 +1086,7 @@ def get_secondary_energy(n, region):
10651086 #+ var["Secondary Energy|Electricity|Transmission Losses"]
10661087 #+ var["Secondary Energy|Electricity|Storage Losses"]
10671088 + var ["Secondary Energy|Electricity|Hydrogen" ]
1089+ + var ["Secondary Energy|Electricity|Waste" ]
10681090 )
10691091
10701092 assert isclose (
@@ -1116,6 +1138,8 @@ def get_secondary_energy(n, region):
11161138 var ["Secondary Energy|Heat|Electricity|Heat Pumps" ]
11171139 + var ["Secondary Energy|Heat|Electricity|Resistive" ]
11181140 )
1141+ var ["Secondary Energy|Heat|Waste" ] = \
1142+ heat_supply .filter (like = "waste CHP" ).sum ()
11191143 var ["Secondary Energy|Heat|Other" ] = \
11201144 heat_supply .reindex (
11211145 [
@@ -1127,6 +1151,7 @@ def get_secondary_energy(n, region):
11271151 ]
11281152 ).sum ()
11291153 # TODO remember to specify in comments
1154+
11301155 var ["Secondary Energy|Heat" ] = (
11311156 var ["Secondary Energy|Heat|Gas" ]
11321157 + var ["Secondary Energy|Heat|Biomass" ]
@@ -1135,6 +1160,7 @@ def get_secondary_energy(n, region):
11351160 + var ["Secondary Energy|Heat|Electricity" ]
11361161 + var ["Secondary Energy|Heat|Other" ]
11371162 + var ["Secondary Energy|Heat|Coal" ]
1163+ + var ["Secondary Energy|Heat|Waste" ]
11381164 )
11391165 assert isclose (
11401166 var ["Secondary Energy|Heat" ],
@@ -1563,6 +1589,16 @@ def get_final_energy(n, region, _industry_demand, _energy_totals):
15631589 # var["Final Energy|Geothermal"] = \
15641590 # ! Not implemented
15651591
1592+ waste_withdrawal = n .statistics .withdrawal (
1593+ bus_carrier = ["non-sequestered HVC" ],
1594+ ** kwargs ,
1595+ ).filter (
1596+ like = region ,
1597+ ).groupby ("carrier" ).sum ().multiply (MWh2PJ )
1598+
1599+ var ["Final Energy|Waste" ] = \
1600+ waste_withdrawal .filter (like = "waste CHP" ).sum ()
1601+
15661602 var ["Final Energy incl Non-Energy Use incl Bunkers" ] = (
15671603 var ["Final Energy|Industry" ]
15681604 + var ["Final Energy|Residential and Commercial" ]
@@ -1600,6 +1636,11 @@ def get_emissions(n, region, _energy_totals):
16001636 bus_carrier = "co2" ,** kwargs
16011637 ).filter (like = region ).filter (like = "CHP" ).multiply (t2Mt )
16021638
1639+ # exclude waste CHPs because they are accounted separately
1640+ CHP_emissions = CHP_emissions [
1641+ ~ CHP_emissions .index .get_level_values (
1642+ "carrier" ).str .contains ("waste" )]
1643+
16031644 CHP_E_to_H = (
16041645 n .links .loc [CHP_emissions .index .get_level_values ("name" )].efficiency
16051646 / n .links .loc [CHP_emissions .index .get_level_values ("name" )].efficiency2
@@ -1794,7 +1835,11 @@ def get_emissions(n, region, _energy_totals):
17941835 ).sum ()
17951836
17961837 var ["Emissions|CO2|Supply|Non-Renewable Waste" ] = \
1797- co2_emissions .get ("naphtha for industry" )
1838+ co2_emissions .reindex ([
1839+ "HVC to air" ,
1840+ "waste CHP" ,
1841+ "waste CHP CC" ,
1842+ ]).sum ()
17981843
17991844 # var["Emissions|CO2|Energy|Supply|Liquids"] = \
18001845 # Our only Liquid production is Fischer-Tropsch
0 commit comments