Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
4d8728a
Process-based chemicals: first code skeleton with two dummy processes…
JakobBD Jul 23, 2024
c7d9989
Fix bugs on first chemicals version with dummy processes
JakobBD Aug 19, 2024
d27fbcd
Chemicals processes develpment with Ammonia CCS
JakobBD Sep 2, 2024
6891129
add methanol tech
JakobBD Sep 6, 2024
1130df5
chCnge the name for ChemOld and ChemNew
JakobBD Sep 12, 2024
4995134
addTTry adding two layers of technology
JakobBD Sep 15, 2024
5d526cb
First version of the structure of the Chemical Processes module
JakobBD Sep 21, 2024
ebd3ea8
Change tech-econ data for chemicals processes
JakobBD Sep 25, 2024
cc221a9
industry ccu first empty implementation
JakobBD Sep 25, 2024
3491436
Set up CCU tech in Chemicals processes
JakobBD Sep 25, 2024
780c4d1
fix domain errors
JakobBD Sep 25, 2024
0c7ccae
Distinguishing between technical routes for the synthesis of ammonia …
JakobBD Jan 6, 2025
98ba52a
input data test
JakobBD Jan 22, 2025
3b42656
read chemicals inputdata - first draft
JakobBD Jan 24, 2025
9670ac3
bugfixes from gamscompile
JakobBD Jan 27, 2025
b339a8c
new chemical TE data
JakobBD Feb 4, 2025
1ece72e
bugfix in chemicals datainput
JakobBD Feb 4, 2025
cf4c4a2
Change OtherChem's structures
JakobBD Feb 4, 2025
6d2bcab
bugfix
JakobBD Feb 4, 2025
f41b725
bugfix in chemicals data input
JakobBD Feb 5, 2025
0eb1566
bugifx in ccu module
JakobBD Feb 6, 2025
c619b6a
bugfix
JakobBD Feb 6, 2025
1b46bd0
change the datainput to 2005-2020
JakobBD Feb 6, 2025
68d6e24
Fix bug on ue_share calculation
Feb 7, 2025
e78403e
Fix bug on chemical_inputdata
Feb 13, 2025
20b552f
Merge remote-tracking branch 'upstream/develop' into chemical_merge
Feb 13, 2025
05be97a
Merge remote-tracking branch 'upstream/develop' into chemical_merge
Feb 13, 2025
aecef6c
Fix Tech-Econ data for Chemical Process
Feb 16, 2025
f4121fa
Revert "Fix Tech-Econ data for Chemical Process"
Feb 16, 2025
7231ede
fix ChemELec to ChemElec
Feb 16, 2025
dd12afa
fix bug on Feedstock and Otherchem energy demand and Tech econ data
Feb 18, 2025
908a673
Fix bug on Otherchem Energy Instensity and add cost_adj on All chemic…
Feb 19, 2025
55c11db
Adjust cost for All ChemTech and Regional subsidies for Naphata
Feb 22, 2025
18c1ace
Fix Chemical Feedstock Routes
Feb 24, 2025
73ed8dd
Setting upper and lower bounds on the percentage change for fossil fu…
Feb 27, 2025
e6d716c
Attempts to add growth rate constraints to fossil energy-based chemic…
Feb 28, 2025
1012eed
new constrain test on outflowPrc
Mar 5, 2025
a734c25
implement restricted share changes
JakobBD Mar 6, 2025
bf8f8dc
fix bugs
JakobBD Mar 7, 2025
243698f
Merge branch 'chemicals_restrict_shares' into chemicals_rebase
JakobBD Mar 7, 2025
42d428b
fix bug for the merge
Mar 8, 2025
63a4dee
fix merge conflict
Mar 8, 2025
24b0716
fix merge bug
JakobBD Mar 10, 2025
1567235
lower bounds to avoid zero Jacobians; not tested yet
JakobBD Mar 10, 2025
84adbbd
Merge remote-tracking branch 'jakob/chemicals_fixSumShares' into chem…
Mar 10, 2025
7f47d1d
Still have error, saved for fix
Mar 11, 2025
a2727d4
delete time and region depended mat2ue
Mar 12, 2025
2b7a44e
Merge remote-tracking branch 'upstream/develop' into chemical_merge_test
Mar 12, 2025
a2e9433
fix bug on co2f input and implement p37_mat2ue(t,regi,mat,in)
Mar 15, 2025
3de9332
The constraints of share change
Mar 15, 2025
ac6bf20
fix or small change of Chemcials Process Historical Share
Mar 17, 2025
969ba95
add new scenario in config file
Mar 18, 2025
775f906
fix tech-echo data on CCS tech
Mar 21, 2025
c97ebaa
add early retire constrain
Mar 22, 2025
6ccf02f
Manual merge with routeReport branch
Apr 1, 2025
a8d6982
Switch to camelCase and add Recycling tech
Apr 14, 2025
7114fce
first couple with MFA
May 7, 2025
1625a2a
fix merge conflicts
May 7, 2025
580144b
add co2 dummy for quick fix
May 21, 2025
0a80983
fix bug for merging
May 21, 2025
c242899
update documentation from joint sessions (Jakob,Leonie,Qianzhi)
leonieschweiger Jul 4, 2025
2a50d6d
Merge pull request #1 from whitenightZhang/Fixshare_earlyreti
leonieschweiger Jul 4, 2025
d941dbf
fix merge conflicts
Jul 5, 2025
5504a43
Merge pull request #2 from whitenightZhang/merge_develop
leonieschweiger Jul 7, 2025
ecbdebb
fix merge conflict and get new source for meSySo
Jul 13, 2025
e121e77
add documentation, fix numbers in datainput for specFeDemTarget
leonieschweiger Jul 14, 2025
3677ca4
Merge remote-tracking branch 'origin/chemicals' into update_documenta…
leonieschweiger Jul 14, 2025
f63277d
fix bug in switch, update specFeDemand values and documentation
leonieschweiger Jul 17, 2025
d6ce373
modified hardcoded chemicals datainput to at least 2 significant digits
leonieschweiger Jul 18, 2025
f702e4b
Merge remote-tracking branch 'upstream/develop' into chemicals
leonieschweiger Jul 18, 2025
3f59ddf
Merge remote-tracking branch 'upstream/develop' into update_documenta…
leonieschweiger Jul 18, 2025
63108b7
Merge branch 'chemicals' of github.com:leonieschweiger/remind into up…
leonieschweiger Jul 18, 2025
54c112f
add documentation (units) to declarations.gms; fix bug in postsolve t…
leonieschweiger Jul 28, 2025
bb7d0a5
add vscode to .gitignore
leonieschweiger Jul 31, 2025
a3a767a
Merge branch 'develop' into chemicals, solve conflict in getReportDat…
leonieschweiger Aug 1, 2025
5bee8ed
Merge branch 'chemicals' into update_documentation2
leonieschweiger Aug 1, 2025
64baeb1
add documentation for chemical process
Aug 2, 2025
f71af9c
fix bug in postsolve.gms o37_shIndFE
leonieschweiger Aug 4, 2025
df5b147
Merge pull request #5 from whitenightZhang/merge_develop
leonieschweiger Aug 4, 2025
0ea642a
Merge remote-tracking branch 'upstream/develop' into chemicals
leonieschweiger Aug 4, 2025
b9382ce
Merge branch 'chemicals' into update_documentation2
leonieschweiger Aug 4, 2025
2987e3c
make chemicals ces version work: add switches etc.
leonieschweiger Aug 4, 2025
3d090c9
fix bug on calibration
Aug 4, 2025
dbb0037
Merge branch 'chemicals' into merge_develop
leonieschweiger Aug 4, 2025
c61ede6
Merge pull request #6 from whitenightZhang/merge_develop
leonieschweiger Aug 4, 2025
4ebb326
fix bug in making ces switch work
leonieschweiger Aug 5, 2025
b31005b
Merge branch 'chemicals' into update_documentation2
leonieschweiger Aug 5, 2025
011c315
undo Qianzhi change ces parameter and gdx revision hash
leonieschweiger Aug 5, 2025
2f77a52
fix discrepancies between docu and input data in generisdata_tech
leonieschweiger Aug 5, 2025
fe30b3a
polish generisdata_tech chemicals documentation
leonieschweiger Aug 5, 2025
3044699
add steam input to meSyH2 feh2s demand
leonieschweiger Aug 7, 2025
8feccef
Merge pull request #3 from leonieschweiger/update_documentation2
leonieschweiger Aug 7, 2025
a6b70d3
Merge branch 'chemicals' into ces_switch
leonieschweiger Aug 7, 2025
0067a8e
fix bug in feedstock demand balance
leonieschweiger Aug 12, 2025
03dacbb
Merge pull request #7 from leonieschweiger/ces_switch
leonieschweiger Aug 18, 2025
0734982
Merge remote-tracking branch 'upstream/develop' into chemicals
leonieschweiger Aug 21, 2025
a98995d
Merge branch 'chemicals' of github.com:leonieschweiger/remind into ch…
leonieschweiger Aug 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,9 @@ runtime.rds
# ignore RStudio project files
/*.Rproj

# ignore VS Code workspace files
/.vscode/

# Main Python virtual environment
.venv/

Expand Down
114 changes: 109 additions & 5 deletions core/datainput.gms
Original file line number Diff line number Diff line change
Expand Up @@ -770,12 +770,50 @@ pm_cf(ttot,regi,"tdsynhos") = 0.6;
pm_cf(ttot,regi,"tdsynpet") = 0.7;
pm_cf(ttot,regi,"tdsyndie") = 0.7;
*** eternal short-term fix for process-based industry
$ifthen.cm_subsec_model_chemicals "%cm_subsec_model_chemicals%" == "processes"
pm_cf(ttot,regi,"chemOld") = 0.8;
pm_cf(ttot,regi,"chemElec") = 0.8;
pm_cf(ttot,regi,"chemH2") = 0.8;

pm_cf(ttot,regi,"stCrNg") = 0.8;
pm_cf(ttot,regi,"stCrLiq") = 0.8;
pm_cf(ttot,regi,"stCrChemRe") = 0.8;

pm_cf(ttot,regi,"mechRe") = 0.8;

pm_cf(ttot,regi,"meSySol") = 0.8;
pm_cf(ttot,regi,"meSyNg") = 0.8;
pm_cf(ttot,regi,"meSyLiq") = 0.8;
pm_cf(ttot,regi,"meSySol_cc") = 0.8;
pm_cf(ttot,regi,"meSyNg_cc") = 0.8;
pm_cf(ttot,regi,"meSyLiq_cc") = 0.8;
pm_cf(ttot,regi,"meSyH2") = 0.8;
pm_cf(ttot,regi,"meSyChemRe") = 0.8;

pm_cf(ttot,regi,"amSyCoal") = 0.8;
pm_cf(ttot,regi,"amSyNG") = 0.8;
pm_cf(ttot,regi,"amSyLiq") = 0.8;
pm_cf(ttot,regi,"amSyCoal_cc") = 0.8;
pm_cf(ttot,regi,"amSyNG_cc") = 0.8;
pm_cf(ttot,regi,"amSyLiq_cc") = 0.8;
pm_cf(ttot,regi,"amSyH2") = 0.8;

pm_cf(ttot,regi,"mtoMta") = 0.8;
pm_cf(ttot,regi,"mtoMtaH2") = 0.8;
pm_cf(ttot,regi,"fertProd") = 0.8;
pm_cf(ttot,regi,"fertProdH2") = 0.8;
pm_cf(ttot,regi,"meToFinal") = 0.8;
pm_cf(ttot,regi,"amToFinal") = 0.8;

$endif.cm_subsec_model_chemicals
$ifthen.cm_subsec_model_steel "%cm_subsec_model_steel%" == "processes"
pm_cf(ttot,regi,"bf") = 0.8;
pm_cf(ttot,regi,"eaf") = 0.8;
pm_cf(ttot,regi,"bof") = 0.8;
pm_cf(ttot,regi,"idr") = 0.8;
pm_cf(ttot,regi,"idrcc") = 1.0; !! capex is derived from numbers per ton of CO2, where cf = 1 is assumed in conversion
pm_cf(ttot,regi,"bfcc") = 1.0; !! capex is derived from numbers per ton of CO2, where cf = 1 is assumed in conversion
$endif.cm_subsec_model_steel

*RP* phasing down the ngt cf to "peak load" cf of 5%
pm_cf(ttot,regi,"ngt")$(ttot.val eq 2025) = 0.9 * pm_cf(ttot,regi,"ngt");
Expand Down Expand Up @@ -848,7 +886,7 @@ pm_omeg(regi,opTimeYr,te) = max(0, 1 - ((opTimeYr.val - 0.5) / p_lifetime_max(re

*** Map each technology with its possible age
opTimeYr2te(te,opTimeYr) $ sum(regi $ (pm_omeg(regi,opTimeYr,te) > 0), 1) = yes;
*** Map each model timestep with the possible age of technologies
*** Map each model timestep with the possible age of technologies
tsu2opTimeYr(ttot,"1") = yes;
loop((ttot,ttot2) $ (ord(ttot2) le ord(ttot)),
loop(opTimeYr $ (opTimeYr.val = pm_ttot_val(ttot) - pm_ttot_val(ttot2) + 1),
Expand Down Expand Up @@ -999,9 +1037,9 @@ $offdelim
p_abatparam_CH4(tall,all_regi,all_enty,steps)$(ord(steps) gt 201) = p_abatparam_CH4(tall,all_regi,all_enty,"201");
p_abatparam_N2O(tall,all_regi,all_enty,steps)$(ord(steps) gt 201) = p_abatparam_N2O(tall,all_regi,all_enty,"201");

*** Read methane emissions from fossil fuel extraction for calculating emission factors.
*** Read methane emissions from fossil fuel extraction for calculating emission factors.
*** The base year determines whether the data comes from CEDS or EDGAR
$ifthen %cm_emifacs_baseyear% == "2005"
$ifthen %cm_emifacs_baseyear% == "2005"
parameter p_emiFossilFuelExtr(all_regi,all_enty) "methane emissions in 2005 [Mt CH4], needed for the calculation of p_efFossilFuelExtr"
/
$ondelim
Expand Down Expand Up @@ -1250,6 +1288,33 @@ loop(ttot$(ttot.val ge 2005),
p_adj_seed_te(ttot,regi,'dac') = 0.25;
p_adj_seed_te(ttot,regi,'oae_ng') = 0.25;
p_adj_seed_te(ttot,regi,'oae_el') = 0.25;
$ifthen.cm_subsec_model_chemicals "%cm_subsec_model_chemicals%" == "processes"
!! not all existing tech are used in all regions
!! Low seeds for these prevent switching between exisitng tech
!! High seeds for new tech like H2 makes ist easy to switch to that.
!! Seeds have little/no effect on tech with large exisitng cap in a region
!!p_adj_seed_te(ttot,regi,"chemElec") = 0.50;
!!p_adj_seed_te(ttot,regi,"chemH2") = 0.50;
p_adj_seed_te(ttot,regi,"meSySol") = 0.0001;
p_adj_seed_te(ttot,regi,"meSyNg") = 0.0001;
p_adj_seed_te(ttot,regi,"meSyLiq") = 0.0001;
p_adj_seed_te(ttot,regi,"meSySol_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"meSyNg_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"meSyLiq_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"meSyH2") = 0.25;
p_adj_seed_te(ttot,regi,"amSyCoal") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyNG") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyLiq") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyCoal_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyNG_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyLiq_cc") = 0.0001;
p_adj_seed_te(ttot,regi,"amSyH2") = 2.0;
p_adj_seed_te(ttot,regi,"stCrLiq") = 0.0001;
p_adj_seed_te(ttot,regi,"stCrNg") = 0.0001;
p_adj_seed_te(ttot,regi,"mtoMta") = 0.0001;
p_adj_seed_te(ttot,regi,"mtoMtaH2") = 0.25;
p_adj_seed_te(ttot,regi,"fertProdH2") = 2.0;
$endif.cm_subsec_model_chemicals
$ifthen.cm_subsec_model_steel "%cm_subsec_model_steel%" == "processes"
*** steel technologies
p_adj_seed_te(ttot,regi,"bfcc") = 0.05;
Expand Down Expand Up @@ -1304,6 +1369,32 @@ $endif.cm_subsec_model_steel
p_adj_coeff(ttot,regi,"dac") = 0.8;
p_adj_coeff(ttot,regi,'oae_ng') = 0.8;
p_adj_coeff(ttot,regi,'oae_el') = 0.8;
$ifthen.cm_subsec_model_chemicals "%cm_subsec_model_chemicals%" == "processes"
!! scaling factor for adjustment costs
!! old technologies have high costs, new technologies have low costs
!! default = 0.25
!!p_adj_coeff(ttot,regi,"chemElec") = 0.25;
!!p_adj_coeff(ttot,regi,"chemH2") = 1.0;
p_adj_coeff(ttot,regi,"meSySol") = 3.0;
p_adj_coeff(ttot,regi,"meSyNg") = 3.0;
p_adj_coeff(ttot,regi,"meSyLiq") = 3.0;
p_adj_coeff(ttot,regi,"meSySol_cc") = 3.0;
p_adj_coeff(ttot,regi,"meSyNg_cc") = 3.0;
p_adj_coeff(ttot,regi,"meSyLiq_cc") = 3.0;
p_adj_coeff(ttot,regi,"meSyH2") = 0.8;
p_adj_coeff(ttot,regi,"amSyCoal") = 3.0;
p_adj_coeff(ttot,regi,"amSyNG") = 3.0;
p_adj_coeff(ttot,regi,"amSyLiq") = 3.0;
p_adj_coeff(ttot,regi,"amSyCoal_cc") = 3.0;
p_adj_coeff(ttot,regi,"amSyNG_cc") = 3.0;
p_adj_coeff(ttot,regi,"amSyLiq_cc") = 3.0;
p_adj_coeff(ttot,regi,"amSyH2") = 0.1;
p_adj_coeff(ttot,regi,"stCrLiq") = 3.0;
p_adj_coeff(ttot,regi,"stCrNg") = 3.0;
p_adj_coeff(ttot,regi,"mtoMta") = 1.0;
p_adj_coeff(ttot,regi,"mtoMtaH2") = 0.8;
p_adj_coeff(ttot,regi,"fertProdH2") = 0.1;
$endif.cm_subsec_model_chemicals
$ifthen.cm_subsec_model_steel "%cm_subsec_model_steel%" == "processes"
*** steel technologies
p_adj_coeff(ttot,regi,"bfcc") = 1.0;
Expand Down Expand Up @@ -1488,7 +1579,7 @@ $offdelim
parameter p_macBaseIMAGE(tall,all_regi,all_enty) "baseline emissions of N2O from transport, adipic acid production, and nitric acid production based on data from van Vuuren"
/
$ondelim
$ifthen %cm_emifacs_baseyear% == "2005"
$ifthen %cm_emifacs_baseyear% == "2005"
$include "./core/input/p_macBaseVanv.cs4r"
$else
$include "./core/input/p_macBaseHarmsen2022.cs4r"
Expand Down Expand Up @@ -1587,12 +1678,25 @@ pm_emifacNonEnergy(ttot,regi,"segafos", "fegas","indst","co2") = f_nechem_emissi

***------ Read in projections for incineration rates of plastic waste---
*** "incineration rates [fraction]"

parameter f_incinerationShares(ttot,all_regi) "incineration rate of plastic waste"

$ifthen.PlasticMFA "%cm_PlasticMFA%" == "on"
/
$ondelim
$include "./core/input/f_incinerationSharesMFA.cs4r"
$offdelim
/;
$endif.PlasticMFA

$ifthen.PlasticMFA "%cm_PlasticMFA%" == "off"
/
$ondelim
$include "./core/input/f_incinerationShares.cs4r"
$offdelim
/;
$endif.PlasticMFA

pm_incinerationRate(ttot,all_regi)=f_incinerationShares(ttot,all_regi);

*** some balances are not matching by small amounts;
Expand Down Expand Up @@ -1669,7 +1773,7 @@ execute_load "input_ref.gdx", p_prodSeReference = vm_prodSe.l;
execute_load "input_ref.gdx", pm_prodFEReference = vm_prodFe.l;
execute_load "input_ref.gdx", p_prodUeReference = v_prodUe.l;
execute_load "input_ref.gdx", p_co2CCSReference = vm_co2CCS.l;
*' load MAC costs from reference gdx. Values for t (i.e. after cm_start_year) will be overwritten in core/presolve.gms
*' load MAC costs from reference gdx. Values for t (i.e. after cm_start_year) will be overwritten in core/presolve.gms
execute_load "input_ref.gdx" pm_macCost;
);

Expand Down
180 changes: 180 additions & 0 deletions core/input/generisdata_tech.prn
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,36 @@ ccap0 0.0008
learn 0.15


$ifthen.cm_subsec_model_chemicals "%cm_subsec_model_chemicals%" == "processes"
+ chemOld chemElec chemH2 stCrNg stCrLiq amSyCoal amSyNG amSyLiq amSyH2 meSySol meSyNG meSyLiq meSyH2
!! documentation & sources: see below
inco0 500 500 500 1080 1040 2100 875 1190 1250 520 300 290 1050
omf 0.06 0.06 0.06 0.025 0.025 0.05 0.025 0.025 0.04 0.05 0.025 0.025 0.015
constrTme 3 3 3 3 3 3 3 3 3 3 3 3 3
lifetime 30 30 30 30 30 30 30 30 30 30 30 30 30

+ amSyCoal_cc amSyNg_cc amSyLiq_cc meSySol_cc meSyNg_cc meSyLiq_cc
!! documentation & sources: see below
inco0 610 650 610 855 1003 855
omf 0.05 0.05 0.05 0.05 0.025 0.05
constrTme 1 1 1 1 1 1
lifetime 25 25 25 25 25 25

+ mtoMta mtoMtaH2 fertProd fertProdH2 amToFinal meToFinal
!! documentation & sources: see below
inco0 533 533 3280 3280 500 500
omf 0.025 0.025 0.03 0.03 0.06 0.06
constrTme 3 3 3 3 3 3
lifetime 30 30 30 30 30 30

+ mechRe stCrChemRe meSyChemRe
!! documentation & sources: see below
inco0 318 2146 49
omf 0.03 0.03 0.055
constrTme 3 3 3
lifetime 30 30 30

$endif.cm_subsec_model_chemicals
$ifthen.cm_subsec_model_steel "%cm_subsec_model_steel%" == "processes"
*** industry processes
+ bf bof idr eaf
Expand Down Expand Up @@ -345,6 +375,156 @@ bfcc:
idrcc:
make slightly cheaper than bfcc as there is only one point source

chemOld chemElec and chemH2:
arbitrary value, as long as it's the same between all three.
500 is commonly used in other tech
Saving later for Heat Gerneration Split


stCrNg and stCrLiq:

Note: Steam crackers create a range of different products.
As a general principle, all carbon-containing products are included in the calculation as a reference for specific CAPEX etc, and produced hydrogen is used directly as an energy input.

for Naphtha Steam Cracking
CAPEX ~ 2057 $/t Ethylene
(Sources: IEA, The Future of Petrochemicals: Towards more sustainable plastics and fertilisers, Paris, 2018. Table A3)

Output ratio: 97.2 Naphtha → 31.86 Ethylene + 13.01 Propylene + 17.48 BTX + 3.78 Others
(Sources: Spallina17 Table 5.)

inco0 ~ 2057 $/t * (31.86/(31.86+13.01+17.48)) /USD_2017 * USD_2015 ~ 1040 $/t
omf ~ 0.025

for NG Steam Cracking
CAPEX ~ 369.4(gas processing) + 912.6(co-Cracking) = 1282 Million $
(Sources: Minbo Yang 2017. Table 2+3)

Output ratio: 197.3 Ethane-propane → 125.0 Ethylene + 28.4 Propylene + 1.6 BTX + 10.8 Others [t/h]
(Sources: Minbo Yang 2017. Table 1)

inco0 ~ 1282 Million $ * (1/(125.0+28.4+1.6)) /8760/0.8*1000*1000 /USD_2017 * USD_2015 ~ 1080 $/t
omf ~ 0.025



amSyCoal amSyNG amSyLiq and amSyH2:

amSyCoal:
inco0 ~ 2175 /USD_2017 * USD_2015 ~ 2100 $/t
omf ~ 0.05
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

amSyNG:
inco0 ~ 905 /USD_2017 * USD_2015 ~ 875 $/t
omf ~ 0.025
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 4)

amSyLiq:
inco0 ~ 1203 /USD_2016 * USD_2015 ~ 1190 $/t
omf ~ 0.025
(Sources: IEA, The Future of Petrochemicals: Towards more sustainable plastics and fertilisers, Paris, 2018. Table A3)

amSyH2:
inco0 ~ 1.69 MEUR_2020/MW:LHV *1000 / 3.6 MJ/MWh * 18.9 MJ/kg * 1.08 USD/EUR = 9564 kgNH3/h
9412 kgNH3/h / (8760 / 0.8 * 1000) /USD_2020 * USD_2015 ~ 1250 $/t
(Sources: Technology Data for Renewable Fuels by Danish Energy Agency. 103 Hydrogen to Ammonia)
omf ~ 0.04
(Fasihi, M., Breyer, C., 2024. Global production potential of green methanol based on variable renewable electricity. Energy Environ. Sci. 17, 3503–3522. Table S10)

amSyCoal_cc amSyNG_cc amSyLiq_cc:

amSyCoal_cc:
Captured carbon ~ (3.9 kgCO2/kg - 0.2 kgCO2/kg) / 44 * 12 = 1.009
inco0 ~ (2810 $/t - 2175 $/t) / 1.009 kgC/kg /USD_2017 * USD_2015 ~ 610 $/t
omf ~ 0.05
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

amSyNG_cc:
Captured carbon ~ (2.35 kgCO2/kg - 0.12 kgCO2/kg) / 44 * 12 = 0.608
inco0 ~ (1315 $/t - 905 $/t) / 0.608 kgC/kg /USD_2017 * USD_2015 ~ 650 $/t
omf ~ 0.05
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

amSyLiq_cc:
nodata, just Assume same as asSyCoal_cc

meSySol meSyNG meSyLiq and meSyH2:
meSySol:
inco0 ~ 26.7 BRMB_2024 / 6 Mt/a /USD_2024 * USD_2015 ~ 520$/t
(Sources: Real Chinese Project https://www.cgmia.org.cn/Web/News/Detail/21080)
omf ~ 0.05
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

meSyNG:
inco0 ~ 310 /USD_2017 * USD_2015 ~ 300 $/t
omf ~ 0.025
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

meSyLiq:
inco0 ~ 295 /USD_2016 * USD_2015 ~ 290 $/t
omf ~ 0.025
(Sources: IEA, The Future of Petrochemicals: Towards more sustainable plastics and fertilisers, Paris, 2018. Table A3)

meSyH2:
inco0 ~ 1.35 MEUR_2020/MW:LHV *1000 / 3.6 MJ/MWh * 19.9 MJ/kg * 1.08 USD/EUR = 8035 kgMeOH/h
8035 kgNH3/h / (8760 / 0.8 * 1000) /USD_2020 * USD_2015 ~ 1050 $/t
(Sources: Technology Data for Renewable Fuels by Danish Energy Agency. 98 Methanol from hydrogen)
omf ~ 0.015
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

meSySol_cc meSyNg_cc meSyLiq_cc:

meSySol_cc:
Captured carbon ~ (3.3 kgCO2/kg - 0.17 kgCO2/kg) / 44 * 12 = 0.854
inco0 ~ (1505 $/t - 750 $/t) / 0.854 kgC/kg /USD_2017 * USD_2015 ~ 855 $/t
omf ~ 0.05
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

meSyNg_cc:
Captured carbon ~ (0.8 kgCO2/kg - 0.04 kgCO2/kg) / 44 * 12 = 0.207
inco0 ~ (525 $/t - 310 $/t) / 0.207 kgC/kg /USD_2017 * USD_2015 ~ 1003 $/t
omf ~ 0.025
(Sources: IEA, The Future of Hydrogen. Seizing today’s opportunities, Assumptions Annex, Paris, 2019. PAGE | 5)

meSyLiq_cc:
nodata, just Assume same as meSySol_cc

mtoMta mtoMtaH2:

inco0 ~ 320MM$ per (386 Propylene + 214 Ethylene) kt/a /600 * 1000 ~ 533 $/t
(Sources: S. Jasper and M. M. El-Halwagi, Processes, 2015, 3, 684–698. Table 2)
omf ~ 0.025
(Sources: IEA, The Future of Petrochemicals: Towards more sustainable plastics and fertilisers, Paris, 2018. Table A3)

fertProd fertProdH2:

inco0 ~ 4.03MM$ per 1000t/a * 1000 /USD_2022 * USD_2015 ~ 3280 $/t
(Sources: Palys23 Section 2.3, Page 6)
omf ~ 0.03
(Sources: Palys23 Section 2.3, Page 6)

amToFinal meToFinal:

dummy tech, zero cost

mechRe meSyChemRe and stCrChemRe:

for Mechanical Recycling
inco0 ~ 17.18MM$ per 150t/d /150 / (8760 * 0.8) /USD_2022 * USD_2015 ~ 318 $/t
omf = 0.03 (dummy number)
(Sources: Taylor Uekert 2023 Table S28.)

for Chemical Recycling: Pyrolysis
inco0 ~ 107MM$ per 49.24kt/year /49.24 * 1000 /USD_2016 * USD_2015 ~ 2146 $/t
omf = 0.03 (dummy number)
(Sources: Geetanjali Yadav 2023 Table1, Table S9.)

for Chemical Recycling: Gasification
inco0 ~ 148MM$ per 353.8 t/d /353.8 / (8760 * 0.8) USD_2022 * USD_2015 ~ 49 $/t
omf ~ 8.18 MUSD_2022/year /148.8 MUSD_2022 = 0.055
(Sources: Afzal, Shaik, et al., Green Chemistry 25.13 (2023): 5068-5085. Table S3 and S4.)

$offtext

*** EOF ./core/input/generisdata_tech.prn
Loading
Loading