Skip to content

Commit f4c60d1

Browse files
committed
fix recycling of implicit tax from BECCS qtty target in regipol
1 parent 92b1e93 commit f4c60d1

File tree

4 files changed

+24
-17
lines changed

4 files changed

+24
-17
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
2424
- included CCS from plastic waste incineration in CCS mass flows so it is
2525
subject to injection constraints (but did not add CCS costs, see
2626
https://github.com/remindmodel/development_issues/issues/274
27+
- **regipol** fix recycling of implicit tax from BECCS qtty target
28+
[[#1745](https://github.com/remindmodel/remind/pull/1745)]
2729
- **scripts** fix tax convergence reporting in modelSummary
2830
[[#1728](https://github.com/remindmodel/remind/pull/1728)]
2931
- **scripts** cleanup non-existing realizations from settings_config.csv

modules/47_regipol/regiCarbonPrice/equations.gms

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,26 @@ q47_implicitQttyTargetTax(t,regi)$(t.val ge max(2010,cm_startyear))..
1717
vm_taxrevimplicitQttyTargetTax(t,regi)
1818
=e=
1919
sum((qttyTarget,qttyTargetGroup)$p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup),
20-
(
21-
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * sum(entyPe$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entyPe), sum(pe2se(entyPe,entySe,te), vm_demPe(t,regi,entyPe,entySe,te)))
22-
)$(sameas(qttyTarget,"PE"))
23-
+
24-
(
25-
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * sum(entySe$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entySe), sum(se2fe(entySe,entyFe,te), vm_demSe(t,regi,entySe,entyFe,te)))
26-
)$(sameas(qttyTarget,"SE"))
27-
+
28-
(
29-
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * sum(entySe$energyQttyTargetANDGroup2enty("FE",qttyTargetGroup,entySe), sum(se2fe(entySe,entyFe,te), sum((sector,emiMkt)$(entyFe2Sector(entyFe,sector) AND sector2emiMkt(sector,emiMkt)), vm_demFeSector(t,regi,entySe,entyFe,sector,emiMkt))))
30-
)$(sameas(qttyTarget,"FE") or sameas(qttyTarget,"FE_wo_b") or sameas(qttyTarget,"FE_wo_n_e") or sameas(qttyTarget,"FE_wo_b_wo_n_e"))
31-
+
32-
(
33-
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * sum(ccs2te(ccsCo2(enty),enty2,te), sum(teCCS2rlf(te,rlf),vm_co2CCS(t,regi,enty,enty2,te,rlf)))
34-
)$(sameas(qttyTarget,"CCS"))
20+
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * (
21+
( sum(entyPe$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entyPe), sum(pe2se(entyPe,entySe,te), vm_demPe.l(t,regi,entyPe,entySe,te)))
22+
)$(sameas(qttyTarget,"PE"))
23+
+
24+
( sum(entySe$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entySe), sum(se2fe(entySe,entyFe,te), vm_demSe.l(t,regi,entySe,entyFe,te)))
25+
)$(sameas(qttyTarget,"SE"))
26+
+
27+
( sum(entySe$energyQttyTargetANDGroup2enty("FE",qttyTargetGroup,entySe), sum(se2fe(entySe,entyFe,te), sum((sector,emiMkt)$(entyFe2Sector(entyFe,sector) AND sector2emiMkt(sector,emiMkt)), vm_demFeSector.l(t,regi,entySe,entyFe,sector,emiMkt))))
28+
)$(sameas(qttyTarget,"FE") or sameas(qttyTarget,"FE_wo_b") or sameas(qttyTarget,"FE_wo_n_e") or sameas(qttyTarget,"FE_wo_b_wo_n_e"))
29+
+
30+
( sum(ccs2te(ccsCO2(enty),enty2,te), sum(teCCS2rlf(te,rlf),vm_co2CCS.l(t,regi,enty,enty2,te,rlf)))
31+
)$(sameas(qttyTarget,"CCS") AND sameas(qttyTargetGroup,"all"))
32+
+
33+
(( !! Supply side BECCS
34+
sum(emiBECCS2te(enty,enty2,te,enty3),vm_emiTeDetail.l(t,regi,enty,enty2,te,enty3))
35+
!! Industry BECCS (using biofuels in Industry with CCS)
36+
+ sum((emiMkt,entySe,secInd37,entyFe)$entySeBio(entySe), pm_IndstCO2Captured(t,regi,entySe,entyFe,secInd37,emiMkt))
37+
) * pm_share_CCS_CCO2(t,regi) )$(sameas(qttyTarget,"CCS") AND sameas(qttyTargetGroup,"biomass"))
38+
)
39+
3540
)
3641
-
3742
p47_implicitQttyTargetTax0(t,regi)

modules/47_regipol/regiCarbonPrice/postsolve.gms

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -480,7 +480,7 @@ $ENDIF.emiMkt
480480
$ifthen.cm_implicitQttyTarget not "%cm_implicitQttyTarget%" == "off"
481481

482482
*** saving previous iteration value for implicit tax revenue recycling
483-
*** the same line exists in presolve.gms, don't forget to update there
483+
*** similar lines exists in equations.gms and presolve.gms, don't forget to update there
484484
p47_implicitQttyTargetTax_prevIter(t,regi,qttyTarget,qttyTargetGroup) = p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup);
485485
p47_implicitQttyTargetTax0(t,regi) =
486486
sum((qttyTarget,qttyTargetGroup)$p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup),

modules/47_regipol/regiCarbonPrice/presolve.gms

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ $ENDIF.emiMkt
3535
$ifthen.cm_implicitQttyTarget not "%cm_implicitQttyTarget%" == "off"
3636

3737
*** saving value for implicit tax revenue recycling
38-
*** the same line exists in postsolve.gms, don't forget to update there
38+
*** similar lines exists in equations.gms and postsolve.gms, don't forget to update there
3939
p47_implicitQttyTargetTax0(t,regi) =
4040
sum((qttyTarget,qttyTargetGroup)$p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup),
4141
p47_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) * (

0 commit comments

Comments
 (0)