Open ecwood opened 2 years ago
H.R.5179 - NET Zero Act of 2021 - Raises 45Q tax credit to $180 per m ton for permanent storage and $130 for EOR/other carbon utilizations
S.986 - Carbon Capture, Utilization, and Storage Tax Credit Amendments Act of 2021 - Raises 45Q tax credit to $120 per m ton for permanent storage and $130 for EOR/other carbon utilizations
S.2118 - Clean Energy for America Act - Raises 45Q tax credit to $175 per m ton for permanent storage and $150 for EOR/other carbon utilizations
I made these calculations of the values from those bills:
Bill | S. 2118 | S. 986 | H.R. 5179 |
---|---|---|---|
Original Text 45Q Value ($/tCO2) | 175 | 120 | 180 |
$/tC Subsidy | 641.2101407 | 439.6869536 | 659.5304304 |
1990$/tC Subsidy in 2020 | 282.4714276 | 193.6946932 | 290.5420398 |
2025 Subsidy (1990$/tC) | 340.3778513 | 233.4019552 | 350.1029328 |
2030 Subsidy (1990$/tC) | 410.1550471 | 281.2491751 | 421.8737627 |
2035 Subsidy (1990$/tC) | 494.2365138 | 338.905038 | 508.357557 |
2040 Subsidy (1990$/tC) | 595.554616 | 408.3803081 | 612.5704622 |
2045 Subsidy (1990$/tC) | 717.6428507 | 492.0979548 | 738.1469322 |
2050 Subsidy (1990$/tC) | 864.7590789 | 592.9776541 | 889.4664811 |
2055 Subsidy (1990$/tC) | 1042.03402 | 714.5376136 | 1071.80642 |
2060 Subsidy (1990$/tC) | 1255.650186 | 861.0172705 | 1291.525906 |
2065 Subsidy (1990$/tC) | 1513.057501 | 1037.525144 | 1556.287715 |
2070 Subsidy (1990$/tC) | 1823.233116 | 1250.216994 | 1875.325491 |
2075 Subsidy (1990$/tC) | 2196.994492 | 1506.510509 | 2259.765763 |
2080 Subsidy (1990$/tC) | 2647.37666 | 1815.343995 | 2723.015993 |
2085 Subsidy (1990$/tC) | 3190.086823 | 2187.488107 | 3281.232161 |
2090 Subsidy (1990$/tC) | 3844.052149 | 2635.921474 | 3953.882211 |
2095 Subsidy (1990$/tC) | 4632.07986 | 3176.283333 | 4764.424999 |
2100 Subsidy (1990$/tC) | 5581.652641 | 3827.418954 | 5741.128431 |
using these assumptions
Average US Inflation (%) | Average US Five Year Inflation (Multiplier) | Molar Mass of CO2 (g/mol) | Molar Mass of C (g/mol) | Mass Ratio of C to CO2 | Inflation (1975->today) | Inflation (1990->today) |
---|---|---|---|---|---|---|
3.8 | 1.204999225 | 44.009 | 12.011 | 0.2729214479 | 5.51 | 2.27 |
Using the policy from 6697edd (and the configuration file from commit 6975385 and the forcing file from commit 2469cab), the scenario generated a bunch of these errors:
Period 14: 2065
ERROR:Model did not solve period 14 within set iteration 5568
ERROR:Currently Unsolved Markets:
ERROR:Unsolved Part 1: Solvable Markets
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:776652 , 776652 , 776652 , 77.5173 , 77.5173 , 77.5173 , 0.487575 , 0 , 81.468 , 158.985 , Normal , Southwest gridonshore carbon-storage,
ERROR:149569 , 149569 , 149569 , 262.246 , 262.246 , 262.246 , 0.487564 , 0 , 275.624 , 537.87 , Normal , Central East gridonshore carbon-storage,
ERROR:1.05576e+06, 1.05576e+06, 1.05576e+06, 108.779 , 108.779 , 108.779 , 0.487573 , 0 , 114.324 , 223.104 , Normal , Central Northeast gridonshore carbon-storage,
ERROR:1.00451e+06, 1.00451e+06, 1.00451e+06, 46.1723 , 46.1723 , 46.1723 , 0.487571 , 0 , 48.5262 , 94.6985 , Normal , Central Southwest gridonshore carbon-storage,
ERROR:2.6428e+06, 2.6428e+06, 2.6428e+06, 27.9432 , 27.9432 , 27.9432 , 0.218347 , 0 , 100.033 , 127.976 , Normal , Mid-Atlantic gridonshore carbon-storage,
ERROR:4.15659e+07, 4.15659e+07, 4.15659e+07, 17.7888 , 17.7888 , 17.7888 , 0.258396 , 0 , 51.0542 , 68.8429 , Normal , Northwest gridonshore carbon-storage,
ERROR:245.164 , 243.999 , 243.999 , -137.726 , -134.651 , -134.651 , 0.642992 , 0 , 351.922 , 214.196 , Normal , Southeast gridonshore carbon-storage,
ERROR:424561 , 424561 , 424561 , 73.7857 , 73.7857 , 73.7857 , 0.487571 , 0 , 77.5477 , 151.333 , Normal , Central Northwest gridonshore carbon-storage,
ERROR:Unsolved Part 2: Unsolvable Markets Not Cleared
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:
Period 15: 2070
ERROR:Model did not solve period 15 within set iteration 5243
ERROR:Currently Unsolved Markets:
ERROR:Unsolved Part 1: Solvable Markets
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:1.11267e+10, 1.11267e+10, 1.11267e+10, 158.662 , 158.662 , 158.662 , 1 , 0 , 0 , 158.662 , Normal , Southwest gridonshore carbon-storage,
ERROR:2.14862e+09, 2.14862e+09, 2.14862e+09, 536.777 , 536.777 , 536.777 , 1 , 0 , 0 , 536.777 , Normal , Central East gridonshore carbon-storage,
ERROR:1.51398e+10, 1.51398e+10, 1.51398e+10, 222.65 , 222.65 , 222.65 , 1 , 0 , 0 , 222.65 , Normal , Central Northeast gridonshore carbon-storage,
ERROR:1.43893e+10, 1.43893e+10, 1.43893e+10, 94.5061 , 94.5061 , 94.5061 , 1 , 0 , 0 , 94.5061 , Normal , Central Southwest gridonshore carbon-storage,
ERROR:3.79293e+10, 3.79293e+10, 3.79293e+10, 127.716 , 127.716 , 127.716 , 1 , 0 , 0 , 127.716 , Normal , Mid-Atlantic gridonshore carbon-storage,
ERROR:5.95395e+11, 5.95395e+11, 5.95395e+11, 68.7031 , 68.7031 , 68.7031 , 1 , 0 , 0 , 68.7031 , Normal , Northwest gridonshore carbon-storage,
ERROR:4.2357e+12, 4.2357e+12, 4.2357e+12, 85.131 , 85.131 , 85.131 , 1 , 0 , 0 , 85.131 , Normal , Southeast gridonshore carbon-storage,
ERROR:6.08447e+09, 6.08447e+09, 6.08447e+09, 151.026 , 151.026 , 151.026 , 1 , 0 , 0 , 151.026 , Normal , Central Northwest gridonshore carbon-storage,
ERROR:1.44589e+10, 1.44589e+10, 1.44589e+10, 0.349301 , 0.349301 , 0.349301 , 1 , 0 , 0 , 0.349301 , Normal , New England gridonshore carbon-storage,
ERROR:Unsolved Part 2: Unsolvable Markets Not Cleared
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:
Period 16: 2075
ERROR:Model did not solve period 16 within set iteration 5609
ERROR:Currently Unsolved Markets:
ERROR:Unsolved Part 1: Solvable Markets
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:1.51948e+14, 1.51948e+14, 1.51948e+14, 158.22 , 158.22 , 158.22 , 1 , 0 , 0 , 158.22 , Normal , Southwest gridonshore carbon-storage,
ERROR:2.9342e+13, 2.9342e+13, 2.9342e+13, 535.28 , 535.28 , 535.28 , 1 , 0 , 0 , 535.28 , Normal , Central East gridonshore carbon-storage,
ERROR:2.06752e+14, 2.06752e+14, 2.06752e+14, 222.029 , 222.029 , 222.029 , 1 , 0 , 0 , 222.029 , Normal , Central Northeast gridonshore carbon-storage,
ERROR:1.96503e+14, 1.96503e+14, 1.96503e+14, 94.2424 , 94.2424 , 94.2424 , 1 , 0 , 0 , 94.2424 , Normal , Central Southwest gridonshore carbon-storage,
ERROR:5.17971e+14, 5.17971e+14, 5.17971e+14, 127.36 , 127.36 , 127.36 , 1 , 0 , 0 , 127.36 , Normal , Mid-Atlantic gridonshore carbon-storage,
ERROR:8.13085e+15, 8.13085e+15, 8.13085e+15, 68.5114 , 68.5114 , 68.5114 , 1 , 0 , 0 , 68.5114 , Normal , Northwest gridonshore carbon-storage,
ERROR:672717 , 615.004 , 615.004 , 84.8936 , 84.8986 , 84.8986 , 1 , 0 , 0 , 84.8936 , Normal , Southeast gridonshore carbon-storage,
ERROR:8.30908e+13, 8.30908e+13, 8.30908e+13, 150.605 , 150.605 , 150.605 , 1 , 0 , 0 , 150.605 , Normal , Central Northwest gridonshore carbon-storage,
ERROR:1.97462e+14, 1.97462e+14, 1.97462e+14, 0.348327 , 0.348327 , 0.348327 , 1 , 0 , 0 , 0.348327 , Normal , New England gridonshore carbon-storage,
ERROR:Unsolved Part 2: Unsolvable Markets Not Cleared
ERROR:X, XL, XR, ED, EDL, EDR, RED, brk, Supply, Demand, Mrk Type, Market,
ERROR:
I am changing the units to 1975$/kg
(of CO2 or C, I'm guessing C but I don't totally know) to see if that fixes this issue. I am wondering if the model did not understand my unit input and instead treated it like the units of price within the DAC subsector technologies.
To use the script from 209d047 to generate (a more complete version of) s2118.xml
, I used this python call:
python3 generate_45Q_policy.py --initialValue 175 --interestRate 0.038 --startingYear 2020 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy s2118_auto.xml
The run that used cb4f568 (which provided the value below) was actually not accurate, because the subsidy only applied to hightemp DAC NG
:
https://github.com/ecwood/GCAM-CDR-modeling/blob/cb4f568cd76800d202dcb5cf5f196a6ce0c33054/s2118.xml#L3350-L3403
Year | 2 Degree Base Scenario | S. 2118 |
---|---|---|
2025 | 0.002744326369 | 0.281145622 |
2030 | 0.02537442997 | 6.745538622 |
2035 | 0.1737664393 | 125.6218701 |
2040 | 0.9318608219 | 873.2135681 |
2045 | 3.198201738 | 930.0757499 |
2050 | 11.99963649 | 219.1788911 |
2055 | 14.59170868 | 100.9086487 |
2060 | 19.19194518 | 107.9596263 |
2065 | 23.79433204 | 73.13085232 |
2070 | 28.72434922 | 108.0634946 |
2075 | 33.1420436 | 123.0264558 |
2080 | 37.86237672 | 142.3735952 |
2085 | 44.29984859 | 155.280542 |
2090 | 52.7065215 | 159.293884 |
2095 | 53.40823473 | 155.722367 |
2100 | 57.12493976 | 148.409211 |
Tagging @celinasb for documentation purposes.
Here are the commands I used to generate these files: For S2118, S986, HR5179: 74c439a For BAU: e131033, af6369d, dbc1c7c
For S2118, I started the python script at 2025, since that's when the inflation started, and copied the 2025 value down to 2020.
s2118_ng.xml
:
python3 generate_45Q_policy.py --initialValue 175 --interestRate 0.02041176471 --startingYear 2025 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy s2118_ng.xml
s2118_nng.xml
:
python3 generate_45Q_policy.py --initialValue 175 --interestRate 0.02041176471 --startingYear 2025 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy s2118_nng.xml
s986_ng.xml
:
python3 generate_45Q_policy.py --initialValue 120 --interestRate 0.02041176471 --startingYear 2020 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy s986_ng.xml
s986_nng.xml
:
python3 generate_45Q_policy.py --initialValue 120 --interestRate 0.02041176471 --startingYear 2020 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy s986_nng.xml
hr5179_ng.xml
:
python3 generate_45Q_policy.py --initialValue 180 --interestRate 0.02041176471 --startingYear 2020 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy hr5179_ng.xml
hr5179_nng.xml
:
python3 generate_45Q_policy.py --initialValue 180 --interestRate 0.02041176471 --startingYear 2020 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName S.2118 --subsidyName DAC-subsidy hr5179_nng.xml
bau_ng.xml
:
python3 generate_45Q_policy.py --initialValue 50 --interestRate 0.02041176471 --startingYear 2025 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName BAU --subsidyName DAC-subsidy bau_ng.xml
bau_nng.xml
:
python3 generate_45Q_policy.py --initialValue 50 --interestRate 0.02041176471 --startingYear 2025 --outputPriceYear 1975 --outputPriceSizeUnit kg --scenarioName BAU --subsidyName DAC-subsidy bau_nng.xml
Spun off of #23