From 059c08a2ae562e0a742613ca933fd41a9829e2b5 Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Tue, 2 Jun 2026 17:20:15 +0200 Subject: [PATCH 01/11] Direct emissions documentation --- docs/main/direct-emissions.md | 53 ++++++++++++++++++ sidebars.js | 1 + src/css/custom.css | 8 +-- .../img/docs/direct_emissions_co2_flows.png | Bin 0 -> 55019 bytes 4 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 docs/main/direct-emissions.md create mode 100644 static/img/docs/direct_emissions_co2_flows.png diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md new file mode 100644 index 00000000..a902a1da --- /dev/null +++ b/docs/main/direct-emissions.md @@ -0,0 +1,53 @@ +--- +title: Direct emissions +--- + +The direct emissions method determines the greenhouse gas emissions of a scenario based on direct emissions. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). The results of the direct emissions method are currently only accessible via [user output](#method-implementation). This page explains the method principles and how it is implemented. + +## Principles +The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. Direct emissions are determined following IPCC guidelines (with an exception explained below). The main principles of the method are: + +* Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. Go to [this page](co2-main-principles#emission-categories) for more information dynamically and statically modelled emissions. +* The dynamically calculated CO2 emissions for a technology are determined based on the difference between incoming CO2 via input carriers and CO2 utilisation, and outgoing CO2 via output carriers and CO2 capture. The incoming and outgoing CO2 via input and output carriers is fixed CO2 that is determined based on the emission factor of the carrier. See the diagram and calculation example below. +* CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). + +![](/img/docs/direct_emissions_co2_flows.png) +***Figure**. Ingoing and outgoing CO2 flows of a technology.* + +:::info Calculation example +The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of `0.0945 kg CO2/MJ` for coal, the resulting CO2 emissions at the power plant are `100 MJ * 0.0945 kg CO2/MJ = 9.45 kg CO2`, which are allocated to the energy sector. +::: + + +## Deviation from IPCC guidelines +Due to the modelling structure of the ETM, the allocation of captured and used CO2 emissions in the ETM deviates from the IPCC guidelines. + +The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the using sector where the CO2 is emitted. + +From [IPCC, 2019 refinement](https://www.energy.gov/sites/default/files/2021-12/UN%20IPCC,%202019%20Refinement.pdf): + +> *Where CO2 emissions are captured from industrial processes or large combustion sources, captured emissions should be allocated to the sector generating the CO2 unless it can be shown that the CO2 is stored in properly monitored geological storage sites [...]* + +This means that according to IPCC guidelines, the released CO2 emissions from combustion of the synthetic fuel should be allocated to the sector where the CO2 was originally captured. See the calculation example below for the differences in allocation. + +:::info Calculation example +A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `80 kg CO2` is captured and `20 kg CO2` is emitted. This is used for synthetic kerosene production, which is later combusted in an aircraft leading to `80 kg` of emitted CO2. + +**Allocation ETM**: the energy sector emits `20 kg CO2`, the transport sector emits `80 kg CO2`. +**Allocation IPCC**: the energy sector emits `100 kg CO2`, the transport sector emits `0 kg CO2`. +::: + +The detailed [data export](#method-implementation) will contain the results of emitted, captured and utilised CO2 per technology. With this data, users can do a reallocation of emissions between sectors if desired. + +## Method implementation +Currently, the direct emissions method is implemented as an additional method alongside the default primary emissions method. The results of the direct emissions method can be viewed via a detailed [data export](https://energytransitionmodel.com/scenario/data/data_export/yearly-direct-greenhouse-gas-emissions). This data export provides a complete overview of all emissions in a scenario for the start year and future year. All technologies where emissions can occur are included and categorised by ETM sector and subsector. In addition, other greenhouse gas emissions that are not dynamically calculated are also included. + +The following emission results, expressed in kg CO2-eq, are included in the data export: +* **CO2 production**: gross produced CO2, before CO2 capture. +* **CO2 capture**: amount of captured CO2 emissions. +* **Other GHG emissions**: total non-CO2 emissions. +* **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`. + +:::warning Phased implementation of direct emissions method +Note that the direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission resutls, but will be expanded gradually. Similarly, the data export will at first only be avialable for national datasets, but will eventually become available for regional datasets as well. +::: diff --git a/sidebars.js b/sidebars.js index 09e976b8..439259ad 100644 --- a/sidebars.js +++ b/sidebars.js @@ -79,6 +79,7 @@ module.exports = { "main/co2-negative-emissions", "main/co2-overview-per-sector", "main/emissions-footprint", + "main/direct-emissions" ], }, { diff --git a/src/css/custom.css b/src/css/custom.css index e329d47f..790f2eb7 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -521,8 +521,7 @@ article p code { /* Add "New" tag to some sidebar items. */ /* Commented out for now as there are no recent updates to highlight. */ -/* .menu a[href="/main/liquid-fuels"]:after, -.menu a[href="/main/releases"]:after { +.menu a[href="/main/direct-emissions"]:after { -webkit-font-smoothing: initial; border-radius: 4px; border: 1px solid #bac0d4; @@ -537,11 +536,10 @@ article p code { text-transform: uppercase; } -.menu a.menu__link--active[href="/main/liquid-fuels"]:after, -.menu a.menu__link--active[href="/main/releases"]:after { +.menu a.menu__link--active[href="/main/direct-emissions"]:after { color: #e8eeff; border-color: #e8eeff; -} */ +} /* Add "Updated" tag to some sidebar items. */ /* Commented out for now as there are no recent updates to highlight. */ diff --git a/static/img/docs/direct_emissions_co2_flows.png b/static/img/docs/direct_emissions_co2_flows.png new file mode 100644 index 0000000000000000000000000000000000000000..aea201ae98c15f9f659eb86fa7dc3b4b90dd698d GIT binary patch literal 55019 zcmeEubyU<{_wO*$EvSfuqlEMbN~eN!hlGSkJv7n{BLXT)cZ+m~(j};*fP{2PNH<8| zGtB7oyzlS6_pWuey%kz%zV!|`|Q2Xj?do5m&%G#MEKY6ArJ_WjI@L*1cJ>6 zfnfCGVuMctn{JRoAcV^1;^N9O;^Hu6ds|a;D-#Gr`el?Rj+R>6mE=dNH!yJ}#AJUe zkcN_p$>Os6?%aGKD-C^4W^`Y<M-l_WjF{x%;89*y>LZ-uM&*D@X9yDORhdB%MYn&QIR$le&9w+<7tol}T~vh0pfp z96nuValvPLTlSZm9kiNrlNku!XnY~u-s3ZqtR%}5KUNHg<_FPc$$js~e4heH&7|$==mM->aeewIOBE~nUN^BjC{T-J z#v)9J$)bhwDK;*A;>nCO2iIePyq+c7$TJ5D%}nMUb=vC$*Ao z-wfP{I?n&4tWj9p0zFMVyL}~JlYW|>aQVe-1YLm9#aB>2^^zaPVe~f?KmTy=J@(Za z&>B;WrxG>}!FgdX9$8EIX>;pY<#Y+wf!)*Goy{la-j22HO0_o=u3stG!V!hsgiv5Y zuP8Uh6Px;4!EDyee=`Uq}{9#A&+6QL9PFA|ojzjTv%-?le%!Qw!^MfUZ{5$yxGs z(}vsBtrCQsucj%rcMRp8kaC7zl_g{xnZd4vuf36K%oEM$;G^274*n4&JdO9(ZzI$$ zsYj+#SWlOpYHp6c2XEIea4X`}$=i-KdociKN<^84<%j$jgm0?Qj+S^0$IRJ}&85}W z%Ihc8~^_7QEs?!hQ^N~mmy`0Ub>vp3Njzd%Lb=Y_{ z_5#(_5CS`#iN@=gh})!CGxxY+vFo~@E$d>NBHSKxGGS*tzN|&U()h6Wg1VpA6zng^ z*C~2F0*+@LQv#J2G?ge^G2A~=^@PB1@!sAbl(^1$kL{wzCoDs{dTCNJ#HX8W($~UY zN|R!7k!U}QylEMVZ!DOLvs_y6@D5g zMt7BL1y3K7){yH)#O)wuc_zA*o79Ynh;>zpX`(P`W3qymv>STzjHcuZWHIEtIv=->aqUFsoSLa1Kr$JtAz&vhj@=+Xx}A+{y6@dh+a9-&MMm*HsPj za&qEw+;Tr>zZ|%d6O~7!ELgNBwpv$RUY#VMDXgLQw*J0X#UbAA=u(mS-T2F2Q=;#8 zWEG?i^eBE?>zgpYeV3Zs_1gV6{@0?e?OxNotKZA)C?^mo@gaM#fp!Lm%3|fv1iWtKJi1^`>prUmaE^YQ+MSP(ycRS(%Jj-`_XRUvR9AUBF^H%&!X?PJq>2QR6~@X zu6A+_J+b?eYL?%nwO;b9gu#d;_+)^T`~98Q+=-Tz&Bb4fyIY5tK1o}=|MoLdC4{qY zXp(Q#HEHwd4;%7;mqjm!jFV)7+8m-ef|}b+qRJG@+!crv#1$@Qjw*~Q9DU9IO4j+R zb1z~1PF8%`*E^kqaTW3VIvrLkrzmYaDDpTn)=OsYO^CC)u!walZ>vn{xmpRB#C zy`4``U|Fy}(qnaOWjdlhtXsw~QflpB#XG8BF1|XpQo6#j$}#+IZ*A|%(bqkiAGkk+ zT4cUxys24CU2A;GWS8yaI@Rj<+K$cM%FdI2;)!SbuYn)kZ_ZX`=OdTj_bmpOl{>^b zggHcPr*JrPKx1TMEXn^Oe|C#4v4?LuDz7fD)hTG1oi|{VzQT4~XI!Mpqq1Xcd8|g5 zO{iCh$8F4bx%l01$MAwMUNS~9fpCKGq(_yT6T5co&U7s# z<9>pQL*<~Oe((Lrp0PYz!%4t0!yd%m52*C-B;vm)i%UeJN8=u0_KAGM!nMwj)^NL7 zF)%N%#b5Ke=%Dh{aeSvy>?0y>;A15kVCG zx$O;edgP}_J!UVpXPNmay-`ciI*IN^xx4+tYH;~GvC)F7Lym`zr#s^2&)=uN7dF3s zpmNOOZ6E;mQgbizWgUXK-q@iiBzF$-l(3Xgy5q_9-B_q&r%g9uIB70MBYJ>t{uS$| zqEhj)3e$$KFWZNc?t~^p)`*5A#zebFq_MY!B_eS86xR z!GAM_#kO-0L3P68|7M2jvmbQwS^G1WGBPuo_yX=nTs79gr^A9Gv7*(2euA#{#fJAD7Bw5Cj;{Lt}@l)_iqW?@##Z#oaG_b2-6V)n7t zEb|?*N9$9n8g?LjseBv9E$^?}QWJ^}xxetrUc1$i!b4+9&5vw*M$r;K`;w`>Rj)=Q;{ez-yorA?zj%AjS zVnqs`sKcq%#<1D~--1rpQKD`Al+$!;_eu&CN3}t|t%IfDanL9{aCCfh8SbWQQM=++ zm1FdzWs}ugQ&FF&)_w2V`pDs;AT>Pb^e%!=Ou#dmO2~zU;9@dSxxc4uw;aw{W_DM)!GUl!maK;6?dlT>f+#-;l09Q3kYZpO z$%rcx5FBH6xV^F^@ga<%yz+YtG<(dlp{WLaT>V@C$G5W!Gkb7$4GBV(|nvuPU ziH*ZwwvN8VtRmn8JUeM^2MFW}1M-C-qe{O4<{vay*K*WSkQXqrwdOE1wtZs4;c9J% zoChN0DgfSEn>ZT6T&=Ba90Xj2Z=OFP0Nx`%hTnvpKjLU9d{aw7876LPZvx}txXp3< zrU*U^1{1P3HWg5nkVFp$e+l3G%hAzJ01kI?ap7>e!(nT02Iu7G=ZD|sf^%`PgD2P> z+-w{TUD<6M=ungVo=3vO!N}g+&e7b~28Nv1@QJOHqwvj}$c6s=L(ysCYX0|1HV)`* zfepfu-@rLJZo~h~4TcIKKNV0mcQvunmN2&lJOgWp+~wgDI)DDZeDn8;{}`$D_ef4| zey)EG{l{1TK2*cO#9rLi8m#Fk^0&Ouga7#@dY}*-x%Gdr0>$U^PXVJv@P*)igeHOy zU1<~ta-=qwP*MlKftH>BTLM3szzg{syv)`f3y{@AAYu?1iF@j<7%SsAW0yXk{Msym zrK*31;^M!$d4&}7?iDc%EDVq4Y^EncWGeZ;$X_z0mcXK8Zr&%1{>$nm)=S*964pH? zrYpseo4C?tD?atx-SW=+d+pm};|>)bDPDDUqbn<&9>l|=>t8#ull3nVKyhKdkpJ+5 zlnz0JYxgPp0~5=Ccmg@}Dh8C=lay2pf`R!z{{eG`V)8v1G`@88KRp44;@WLc{^uzm zh#@@EsTX6{fL5f}gSO1==Bl>Y^pq%V>n7{No_ zlvtAgia@0I3M)i4EZ-1KZU+@RfTYh{j&>b zo2$%#SR1dw>2+ED{&l5ebE8V^zVmOhfr!Ng22Vy@MIL4FW|&|fU#Yy4j7uZ0d|^bO zYKr_Akxn3;+KeqySiO{+t{HQ917*s^nt(Z_&%c*Lj56C9mtd(XvR-R%&JDfTDHKy^ zi`sBicpCRm*7G~` zw5rtpWPkj$MzJVZi&xlR3iZWB;AhCby;g^!CYiyXy*5;gL3l*aJrn(E3~lsNd!Rg1 zVU`>BPrr6^Tfgm)_5R}lF^ENeizf78Dhq<>*)?-YegtZVY*@KuE3lr69gLYhs1cv^ z0nIB3q4+2ds_cr;g;MoC@=KMRUTwRGqQU-BE5p!@ZtU@Dr*~3P{5&v|`zTu9B555d zRwqC`w}ij*^P9MgFWvb4$8<@AEhu8M2{G`Tjju(&nxKx_LXGn)$s7_x+u{4TREcKoJXmUJC2Fe^@!S)OWCLGk)3}mf5)Rz%&$hZkB z9-v5KgvLQ>wx~HB<~w8ipFg>Yo_-7{)2D*ZOmNgdtV^L&0faJ_Km2nsTnRksQ1N8e zS*8A_Vht4*YVq?aAqY<_T)SD;)?GBm)M0(0>h_BI62*U_4vmYg{Rw_BDGhp=pmR<` zpjANiTOYiE_CBopQqL#S*w$nkx{m>xUk=2uMwjnC3%K ziU%l_tiF-+^Fvr8c9txfdCD-oQ1Msv+xF7Mepu(s2R~Y+fG9=Wbx{nCKFxo}K#1q~q+`;5HLJ3t=j8zN&J#&*qUWVU&f9bODfW(t~>m z1GT%W1i(|^sI<{e1jG74oons`uJo|H^t|ojsR}0N*2tpo+ zgKN=_7(El7gaV7A9i1eRvE)nh1|;0 z=t-^pQW|waA<%yz=_60TXK0dfKWW2q16i7Fzf?V77DP$s^F<&XYE668 z;ZOYuRjK3sHDloDZ1a0oZdjwT2Dfh~J8ENKHH=`)yEiq?gXe4^MD`SR9WTqegV-As zf2B*s`js{An02Xh-NN~kSirzeeo><~Pb!YsC?=Axr)-u?Z~d)g8op-9`4aS~kUTXF z7z}mCZ8bOKRuO#oJsxzy1(I>76~s~npeo`T--6x=grg6=7#A2oU#6FH8M!U7XIQaX zLLcAA4WNYqd*G{2%}h^?4)_sg_@q-)@6eX*HD;Q-?d=lR*VjVRep|aJte>A%Ot?7E z%dR#ybUV${tZ&Bw$cV@D4uP&k$j1U~DsBc~UWJoE(FrYgV(qeR~ zSZJwbM?>oPazB50fZ91d(tXS%#NwYXP5%H!Jr#NqMkmFX;og4%tp=p6Ok(ih*FuRB z=k_%9CXzeGWoqW<jI6-j{}v32oEB9%hQovI71q%VQcSV{(R?wm7q1v6Gx=pT7gDlT+d zpSssW-2LhAb0lU07@OVcob~;DbDU(j`xBvQcZ4+l$=iEaO`^w-V{@Nvg;S!|Eg^$7 zUd)?MD?T3;#Y9SMce~1!!5csOd}W}%S{MO2rDXYN`Trw3YuAMxvpxVOY~t}H67=R@ zv5?Yc%GyY-e@_dK;72WC!Ybzb&MG0`8Oq?Ms#op@#BN|EE1|6vu6ngtB?V5iy2jzH zXNM^6P8&2s>ZD396F6c<^7M57dJzxHx>VR<*5D#v$h)iN%5aGxY_$ z)j|pPh1jnSK@d++p#FsU`l?PF=7J+|tX=o>40IW5>;y+U(}n*+#H8Y8wS|4Rab3hg*m z!5R#63-c%{(vb#oBH+#+R^e{cep)~W5bamM^uw!4tLM|VtHX|iB)&v)^aZ4$ISo@* zMQns7%Yy>c{1ke|{z@RgYqu5xP*WOHJbt#hBAJdh0{;XXQcIC?a6VG=IA;+Tu zwjqiUuzQ?>^$10VdKyx#telq4ou~31bQ*&5Lng*6LPZR@IGBeC0iGaBb&x~--40By z6eTzI161JK2vn^2&ryINb^ryvqjuORS<3?WLj|uuo(3g{e}g(wF`*fRcKHSk`qrgw zj1O{ltDTnBS4Tbsh4aRtgc3>*gd$_1uyjs;=v4#}&k#(RqI(;9wDKod!)4M?!w5F% zh|XbF%gi?K%gn(dxDqRx_pm^f{ZYC4>S%?F4>A8NsYa209Sir@-VC{c*|vy*oy9(d zdIAa#^>7zIY$ElbE9{-Zhx_YAiUN!2EDLo{KI3!SP6+L;R!p+E)vpYdyt5d2Zywbi z6Zy%u{vh+3u={(R8s~!QpJ_q;_i$*`c{ErTN~4I#u#kM|1;L{9g=Rw(%Ve3sX^%V{ z`|U?(=#@Jc7~LpEJb&3abqnujb6b8lHW_wbE*JoTz`(FsN)q?#(m>uov0-z6-Ts87 zezjRms`ts^5{b_*zv{!Kyn!!Nwuzhv3n@N@9Fd; zc>kJS`Y@<3$86smK&0{G%NvD|AOoKh?z!WskA4GsF5?+IV|LAv4)#;aMGX%xU=u3a zHk>%OyR~_Auve(t`z*Fy)OX)q%AocBWyr9Y7Jab2z)HEclUG##N?KB^OgC^^rI<1lFki{ zib?MpIaaC|UHg~U1f8v>VppVl?z<~W!wG8c+D?q^T;e~NjTo3uu(cscfVF&jNj~sv z^G6h+iAjvt-mp~NPOls@#-+Ax-wVXbT%A#RBOffy)-)?@^me~VUB`m*a3x0XSPVII z3tMk}DxCD%*WJUc{qQoGXoV7;gXk!XBy0{~Gc!Tw?k{u}k(a@DbXMLZA=G znZ7tg5Xw0<6Y*AZtpmCO99q}Zwr+jbJ_X*K?QYS@wfNo3n!0ZbtLCqju{Udt z14Uc{8bz2MHgWw{qTMsMZ}3|jbvvrurk$~3*U)Idiy&YYD&Jq4J9iD)Oo%6*Dn(3U zEWh)m%XG>=7cxmik9*{=*#st!SXYeqvli8cb3zPDuDecQaNA9Z)#P#1|9aAA*+}cU zUbioA`*PCz=qvSz*Z#P|M1pmBoI<$s$;tj?f<6ORZ4_IAO?A%UOc1=&?&03eIKCsG z{=79@B+`|dFBN!=TS=Yv$6XS}!QjCi?2-j76yr#50cCk=!QOsu`;|GN{-CW~TfPqzY{G@xNr0E)PeS51GX1MPm9REs(KmezwWs z&Z4ZYNm%OZbiFG3j5xcK$+OdnxY2ay)e(z9Js0lnm#w-?r*pf52AW{sDRE4?0c+v> z-1G%QtrF`hL1)Qap9Y_{&`?CldmYThSZvLR!^gK6pib9(b41=aRxei{1 zCJ{&NW^(Pf#3N-69_DMkjpwn>Eg!WJbm~`;imTG&QnzxBO z8NqhronBVvaa}IeyEcNnD-+t zoO&#YJuto|Z2Kz9U_R@sL3@TDG?^Ip^3I`dJ0owuc!Jx^wY|;tWwF34zeizn5q_s0 zFYAb}xQ$wsDU1m1KHp7V6TTE@P_G{rXOE0nveU#)&$cu-1L#qh5CpLTJ%uxue*N1k zld>zfE-;Q0+}KFl|Mepzq~4r6c*®5DPI$&kQcu0}^+LwS+C`OX+MN5~T9(;ZUH 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 literal 0 HcmV?d00001 From a8d94e6ccc8ada629fba046a358d568546b2255f Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Tue, 2 Jun 2026 17:30:39 +0200 Subject: [PATCH 02/11] Minor corrections --- docs/main/direct-emissions.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index a902a1da..8928e9a3 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -12,7 +12,7 @@ The direct emissions method determines the emissions in a scenario based on wher * CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). ![](/img/docs/direct_emissions_co2_flows.png) -***Figure**. Ingoing and outgoing CO2 flows of a technology.* +***Figure**. Incoming and outgoing CO2 flows of a technology.* :::info Calculation example The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of `0.0945 kg CO2/MJ` for coal, the resulting CO2 emissions at the power plant are `100 MJ * 0.0945 kg CO2/MJ = 9.45 kg CO2`, which are allocated to the energy sector. @@ -49,5 +49,7 @@ The following emission results, expressed in kg CO2-eq, are included in the data * **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`. :::warning Phased implementation of direct emissions method -Note that the direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission resutls, but will be expanded gradually. Similarly, the data export will at first only be avialable for national datasets, but will eventually become available for regional datasets as well. +Note that the direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission result columns, but will be expanded gradually (for example with CO2 utilisation and biogenic CO2 emissions). + +Similarly, the complete data export will at first only be available for national datasets. For regional (Dutch) datasets, only the dynamically calculated emissions will be available at first, but eventually the complete data export will become available for these datasets as well. ::: From dc7f43cf32bf9a55a1e0e186c500685aac6e2f2b Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Wed, 3 Jun 2026 09:33:30 +0200 Subject: [PATCH 03/11] Add beta release info --- docs/main/co2-main-principles.md | 4 ++++ docs/main/direct-emissions.md | 21 +++++++++++++-------- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/docs/main/co2-main-principles.md b/docs/main/co2-main-principles.md index fefc739c..e1c5de1e 100644 --- a/docs/main/co2-main-principles.md +++ b/docs/main/co2-main-principles.md @@ -4,6 +4,10 @@ title: Main principles In the ETM the total greenhouse gas emissions for both the present and future are calculated for scenarios. This page contains extra information on the modelling principles behind carbon emissions in the ETM. +:::warning Direct emissions method beta release +This page gives information about the default emissions method of the ETM, based on primary demand. A new emissions method based on **direct emissions** is currently in beta release. Read more about this direct emisisons method [here](direct-emissions). +::: + ## Emission categories The ETM makes a distinction between four 'types' of greenhouse gas emissions: 1. **Energetic CO2 emissions**. These emissions are calculated by the ETM based on the energy use in your scenario. In other words, they are the result of the choices made in the [Demand](https://energytransitionmodel.com/scenario/demand/households/population-and-housing-stock) and [Supply](https://energytransitionmodel.com/scenario/supply/electricity/coal-plants) sections of the model. diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 8928e9a3..16d38722 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -2,12 +2,16 @@ title: Direct emissions --- -The direct emissions method determines the greenhouse gas emissions of a scenario based on direct emissions. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). The results of the direct emissions method are currently only accessible via [user output](#method-implementation). This page explains the method principles and how it is implemented. +The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. + +:::warning Beta release +The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Read more about the phased implementation [here](#beta-release-phased-implementation). +::: ## Principles The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. Direct emissions are determined following IPCC guidelines (with an exception explained below). The main principles of the method are: -* Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. Go to [this page](co2-main-principles#emission-categories) for more information dynamically and statically modelled emissions. +* Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. For more information on on dynamically and statically modelled emissions, go to [this page](co2-main-principles#emission-categories). * The dynamically calculated CO2 emissions for a technology are determined based on the difference between incoming CO2 via input carriers and CO2 utilisation, and outgoing CO2 via output carriers and CO2 capture. The incoming and outgoing CO2 via input and output carriers is fixed CO2 that is determined based on the emission factor of the carrier. See the diagram and calculation example below. * CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). @@ -22,7 +26,7 @@ The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of ## Deviation from IPCC guidelines Due to the modelling structure of the ETM, the allocation of captured and used CO2 emissions in the ETM deviates from the IPCC guidelines. -The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the using sector where the CO2 is emitted. +The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the use sector where the CO2 is emitted. From [IPCC, 2019 refinement](https://www.energy.gov/sites/default/files/2021-12/UN%20IPCC,%202019%20Refinement.pdf): @@ -31,7 +35,7 @@ From [IPCC, 2019 refinement](https://www.energy.gov/sites/default/files/2021-12/ This means that according to IPCC guidelines, the released CO2 emissions from combustion of the synthetic fuel should be allocated to the sector where the CO2 was originally captured. See the calculation example below for the differences in allocation. :::info Calculation example -A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `80 kg CO2` is captured and `20 kg CO2` is emitted. This is used for synthetic kerosene production, which is later combusted in an aircraft leading to `80 kg` of emitted CO2. +A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `80 kg CO2` is captured and `20 kg CO2` is emitted. The captured CO2 is used for synthetic kerosene production, which is later combusted in an aircraft, leading to `80 kg` of emitted CO2. **Allocation ETM**: the energy sector emits `20 kg CO2`, the transport sector emits `80 kg CO2`. **Allocation IPCC**: the energy sector emits `100 kg CO2`, the transport sector emits `0 kg CO2`. @@ -48,8 +52,9 @@ The following emission results, expressed in kg CO2-eq, are included in the data * **Other GHG emissions**: total non-CO2 emissions. * **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`. -:::warning Phased implementation of direct emissions method -Note that the direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission result columns, but will be expanded gradually (for example with CO2 utilisation and biogenic CO2 emissions). +### Beta release: phased implementation +The direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission result columns specified above, but will be expanded gradually (for example with CO2 utilisation and biogenic CO2 emissions). -Similarly, the complete data export will at first only be available for national datasets. For regional (Dutch) datasets, only the dynamically calculated emissions will be available at first, but eventually the complete data export will become available for these datasets as well. -::: +Similarly, the complete data export will first only be available for national datasets. For regional (Dutch) datasets, only the dynamically calculated emissions will be available at first. Eventually, the complete data export will become available for these datasets as well. + +Finally, in the near future the role of the direct emissions method vs. the primary emissions method will be reviewed and further improved. This will entail, among others, that the direct emissions method could be set as the default emissions method for model calculations and that users should be able to switch between the direct and primary emissions method as default for their scenario. From ace2a4c847380a5b5eb0a50401ed978aabb8d9e8 Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Tue, 9 Jun 2026 17:05:55 +0200 Subject: [PATCH 04/11] Update emissions docs --- docs/main/direct-emissions.md | 15 +++++---------- src/css/custom.css | 28 ++++++++++++++++++++++++---- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 16d38722..0bcf8a51 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -5,7 +5,9 @@ title: Direct emissions The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. :::warning Beta release -The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Read more about the phased implementation [here](#beta-release-phased-implementation). +The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Complete user output will first be available for national datasets and will later become availbale for regional (Dutch) datasets. Read more about how the method is currently implemented [here](#method-implementation). + +In the near future, the role of the direct emissions method vs. the primary emissions method will be reviewed and further improved. ::: ## Principles @@ -47,14 +49,7 @@ The detailed [data export](#method-implementation) will contain the results of e Currently, the direct emissions method is implemented as an additional method alongside the default primary emissions method. The results of the direct emissions method can be viewed via a detailed [data export](https://energytransitionmodel.com/scenario/data/data_export/yearly-direct-greenhouse-gas-emissions). This data export provides a complete overview of all emissions in a scenario for the start year and future year. All technologies where emissions can occur are included and categorised by ETM sector and subsector. In addition, other greenhouse gas emissions that are not dynamically calculated are also included. The following emission results, expressed in kg CO2-eq, are included in the data export: -* **CO2 production**: gross produced CO2, before CO2 capture. -* **CO2 capture**: amount of captured CO2 emissions. +* **CO2 production**: gross produced fossil CO2, before CO2 capture. +* **CO2 capture**: amount of captured fossil and biogenic CO2 emissions. * **Other GHG emissions**: total non-CO2 emissions. * **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`. - -### Beta release: phased implementation -The direct emissions method and related user output will be implemented in the ETM in phases. This means that, among others, the data export will initially contain only the essential emission result columns specified above, but will be expanded gradually (for example with CO2 utilisation and biogenic CO2 emissions). - -Similarly, the complete data export will first only be available for national datasets. For regional (Dutch) datasets, only the dynamically calculated emissions will be available at first. Eventually, the complete data export will become available for these datasets as well. - -Finally, in the near future the role of the direct emissions method vs. the primary emissions method will be reviewed and further improved. This will entail, among others, that the direct emissions method could be set as the default emissions method for model calculations and that users should be able to switch between the direct and primary emissions method as default for their scenario. diff --git a/src/css/custom.css b/src/css/custom.css index 790f2eb7..b5964db9 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -520,7 +520,7 @@ article p code { /* Add "New" tag to some sidebar items. */ /* Commented out for now as there are no recent updates to highlight. */ - +/* .menu a[href="/main/direct-emissions"]:after { -webkit-font-smoothing: initial; border-radius: 4px; @@ -539,7 +539,7 @@ article p code { .menu a.menu__link--active[href="/main/direct-emissions"]:after { color: #e8eeff; border-color: #e8eeff; -} +} */ /* Add "Updated" tag to some sidebar items. */ /* Commented out for now as there are no recent updates to highlight. */ @@ -566,8 +566,7 @@ article p code { border-color: #e8eeff; } */ -/* Add "to be retired" tag to sidebar item. */ - +/* Add "outdated" tag to sidebar item. */ .menu a[href="/main/scenario-tools/introduction"]:after, .menu a[href="/main/factsheet"]:after { -webkit-font-smoothing: initial; @@ -590,6 +589,27 @@ article p code { border-color: #e8eeff; } +/* Add "beta" tag to sidebar item. */ +.menu a[href="/main/direct-emissions"]:after { + -webkit-font-smoothing: initial; + border-radius: 4px; + border: 1px solid #bac0d4; + content: "beta"; + color: #a0a6bb; + font-size: 11px; + font-weight: 400; + height: 1rem; + line-height: 1rem; + margin: 0 0 0 auto; + padding: 0 0.25rem; + text-transform: uppercase; +} + +.menu a.menu__link--active[href="/main/direct-emissions"]:after { + color: #e8eeff; + border-color: #e8eeff; +} + /* Images with an border, useful for small screenshots. */ .bordered-image { From e54544719bd87b34a4c5c0a6b4174aa0a510965b Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Wed, 10 Jun 2026 09:57:52 +0200 Subject: [PATCH 05/11] Fixes to emissions docs --- docs/main/co2-negative-emissions.md | 10 +- docs/main/co2-overview-per-sector.html | 1144 ------------------------ 2 files changed, 4 insertions(+), 1150 deletions(-) delete mode 100644 docs/main/co2-overview-per-sector.html diff --git a/docs/main/co2-negative-emissions.md b/docs/main/co2-negative-emissions.md index 54a6308f..52b087cc 100644 --- a/docs/main/co2-negative-emissions.md +++ b/docs/main/co2-negative-emissions.md @@ -10,11 +10,9 @@ The ETM supports so-called 'negative' emissions. Negative emissions arise when m * Direct use of biomass in industry, for both feedstock and combustion * Biomass-fired power plants -2. By using Direct Air Capture +2. By using Direct Air Capture (DAC) -You can make assumptions about this in the Emissions > ['CCUS'](https://pro.energytransitionmodel.com/scenario/emissions/ccus/capture-of-co2) - -Below, both routes are explained in more detail. +You can make assumptions about this in the [CCUS](https://energytransitionmodel.com/scenario/emissions/ccus/capture-of-co2) section of the model. Below, both routes are explained in more detail. ## Negative emissions from biomass Using biomass to extract bioenergy, for example for the production of electricity and hydrogen, and subsequently capturing and storing the CO2 emissions released in this process may result in a net decrease in atmospheric CO2 levels. This is typically referred to as BECCS: bio-energy with carbon capture and storage. @@ -26,9 +24,9 @@ The [IPCC](https://doi.org/10.1111%2Fgcbb.12514) estimates the global potential ## Negative emissions from Direct Air Capture Direct Air Capture (DAC) is a process of capturing CO2 directly from the ambient air using electricity. If the electricity used is renewable, storing the captured CO2 can lead to a net decrease in atmospheric CO2 levels. The captured CO2 can also be used for the production of carbon neutral fuels. -Direct Air Capture is a promising technology to bring down global CO2 levels in the atmosphere. However, it is also an energy intensive process. Since CO2 in the ambient air is 'available' everywhere in the world, DAC capacity is likely to be installed in areas that will have very low (renewable) power costs. +DAC is a promising technology to bring down global CO2 levels in the atmosphere. However, it is also an energy intensive process. Since CO2 in the ambient air is 'available' everywhere in the world, DAC capacity is likely to be installed in areas that will have very low (renewable) power costs. ## Bookkeeping Negative emissions are incorporated in the CO2 calculation in the following way: * Negative emissions arising from the production of electricity or hydrogen are incorporated in the [emission factor](co2-emission-factors.md) of these carriers. Since the ETM allocates CO2 to the sectors in which energy is _used_, this means that all sectors using electricity or hydrogen 'benefit' from these negative emissions. Using more electricity or hydrogen may result in lower or even net negative sector emissions. -* CO2 captured by Direct Air Capture is deducted from the Energy sector. +* CO2 captured by DAC is deducted from the Energy sector. diff --git a/docs/main/co2-overview-per-sector.html b/docs/main/co2-overview-per-sector.html deleted file mode 100644 index e3e7b76d..00000000 --- a/docs/main/co2-overview-per-sector.html +++ /dev/null @@ -1,1144 +0,0 @@ -Overview of emissions per sector chart

This article explains the following chart: -

-

:::info Scope of CO2 emissions chart -This chart does not include other greenhouse gas emissions apart from CO2. It also only covers -:::

-

In the ETM emissions from different sectors are taken into account to calculate the total emissions in your scenario. Every sector has a different scope when it comes to which emissions are taken into account and which are not. This page explains how this scope is defined in the ETM per sector which you can use to gain a better understanding of the total emissions displayed on the dashboard.

-

Emissions per sectorî…—

-

The following is included per category:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CategoryScope
1990 emissionsIncludes all energetic CO2 emissions and fertilizer feedstock emissions. Other greenhouse gases and non-energetic CO2 are excluded. 1990 emissions of international transport can be included optionally and are displayed as a separate series. See 1990 emissions
Net CO2 emissionsShows the total net CO2 emissions. If a scenario contains negative emissions, the red line can be lower than the highest bar as the line shows the sum of both positive and negative emission sectors.
HouseholdsIncludes all energetic CO2 related to final energy demand in the households sector. Emissions associated with the production of electricity, hydrogen and district heating are assigned to this sector based on how much of each carrier is used. For electricity, local production of solar PV is incorporated in the emission factor of electricity. Biomass emissions are excluded by default.
BuildingsSee households.
National transportSee households. Does not include international transport.
International transportIncludes all energetic CO2 related to final energy demand in the international transportation sector. By default, this energy demand (and hence the emissions) are considered out of scope. This assumption can be changed in the model.
AgricultureSee households.
OtherIncludes all energetic CO2 related to final energy demand in the other demand sector.
IndustryIncludes all energetic CO2 related to final energy demand in the industry sector, including emissions related to the production of electricity, hydrogen and steam. Feedstock emissions are excluded. Captured emissions (using carbon capture technologies) in the industry sector are subtracted.
EnergyEmissions related to the production of power, hydrogen, heat and steam are not included here, as these are assigned to the sectors in which these carriers are used. This category does include emissions related to:
  • own energy use of the power sector
  • unused heat for heat networks
  • coal gas consumption of cokes ovens
  • the production of synthetic kerosene and methanol
  • energy use of Direct Air Capture. The CO2 captured from the ambient air is subtracted from this category
  • energy use of CO2 storage
Non-energetic emissionsIncludes emissions related to:
  • feedstock use in the fertilizer industry
  • (the production of) non-energetic final demand of hydrogen and ammonia
Delayed emissionsIncludes emissions related to:
\ No newline at end of file From ba8e272498f8c0413a7213df827e7582646d9f50 Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Wed, 10 Jun 2026 09:59:29 +0200 Subject: [PATCH 06/11] Minor changes to emissions docs --- docs/main/co2-main-principles.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/main/co2-main-principles.md b/docs/main/co2-main-principles.md index e1c5de1e..76ce7ea8 100644 --- a/docs/main/co2-main-principles.md +++ b/docs/main/co2-main-principles.md @@ -4,8 +4,8 @@ title: Main principles In the ETM the total greenhouse gas emissions for both the present and future are calculated for scenarios. This page contains extra information on the modelling principles behind carbon emissions in the ETM. -:::warning Direct emissions method beta release -This page gives information about the default emissions method of the ETM, based on primary demand. A new emissions method based on **direct emissions** is currently in beta release. Read more about this direct emisisons method [here](direct-emissions). +:::warning Beta release: direct emissions +The documentation pages give information about the default emissions method of the ETM, based on primary energy demand. A new emissions method based on **direct energy demand** is currently in beta release. Read more about this direct emisisons method [here](direct-emissions). ::: ## Emission categories @@ -48,8 +48,8 @@ One exception to the primary emission method is for final demand of non-biogenic If additional feedstock is required in the production process for these liquid fuels, the related CO2 emissions are accounted for using the primary emissions method and allocated to the energy sector. :::info Calculation example -The transport sector has a final diesel demand of `100 [MJ]`. Diesel is produced via pyrolysis and pyrolysis-oil fractionation, which proportionally requires `50 [PJ]` of hydrogen for diesel production. This hydrogen is in turn produced via SMR, requiring `60 [PJ]` of natural gas. -The direct CO2 emissions for diesel demand are allocated to the transport sector and equal `100 [MJ] * emission factor of diesel [kgCO2/MJ]`. The primary CO2 emissions associated with hydrogen consumption in the production process are allocated to the energy sector and equal `60 [PJ] * emission factor of natural gas [kgCO2/MJ]`. +The transport sector has a final diesel demand of `100 [MJ]`. Diesel is produced via pyrolysis and pyrolysis-oil fractionation, which proportionally requires `50 [PJ]` of hydrogen for diesel production. This hydrogen is in turn produced via SMR, requiring `60 [PJ]` of natural gas. +The direct CO2 emissions for diesel demand are allocated to the transport sector and equal `100 [MJ] * emission factor of diesel [kgCO2/MJ]`. The primary CO2 emissions associated with hydrogen consumption in the production process are allocated to the energy sector and equal `60 [PJ] * emission factor of natural gas [kgCO2/MJ]`. ::: The emission factors for liquid fuels are region-specific and can be consulted in the [Dataset Manager](https://data.energytransitionmodel.com/). The liquid fuels for which direct emissions are calculated as an exception are the following: From 332cdd1cac95714f0d4b267e3ddc90d0898e1080 Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Wed, 10 Jun 2026 16:12:39 +0200 Subject: [PATCH 07/11] Add for contributors page direct emissions --- docs/contrib/direct-emissions-method.md | 147 ++++++++++++++++++ docs/main/direct-emissions.md | 4 +- sidebars.js | 3 +- .../direct_emissions_co2_flows_letters.png | Bin 0 -> 60026 bytes 4 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 docs/contrib/direct-emissions-method.md create mode 100644 static/img/docs/direct_emissions_co2_flows_letters.png diff --git a/docs/contrib/direct-emissions-method.md b/docs/contrib/direct-emissions-method.md new file mode 100644 index 00000000..a31baf97 --- /dev/null +++ b/docs/contrib/direct-emissions-method.md @@ -0,0 +1,147 @@ +--- +title: Direct emissions method +--- + +The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. Go to [direct emissions](../main/direct-emissions.md) for more information about the general principles of this method. The current page gives the technical background of how the direct emissions method works. + +## Technical principles +The direct emissions method distinguishes methods for determining CO2 flows for **energy nodes**, as well as methods to determine reporting greenhouse gas emissions (CO2, other GHG and total GHG) calculated for both **energy nodes** and **molecule nodes**. These different methods are further explained below. + +Note that all of the direct emissions methods are only calculated for energy and molecule nodes that have the `emissions` group specified. All emissions are calculated in `kg CO2eq`. + +## CO2 flow methods +The ingoing and outgoing CO2 flows depicted in the diagram below are calculated for **energy nodes**. The method calculates these flows for both fossil and biogenic CO2. These flows are the building blocks for calculating the reporting greenhouse gas emissions. The following subsections explain how each of the flows, indicated with letters A-E, are calculated. The method keys for querying the respective CO2 flow on nodes are provided as well. + +![](/img/docs/direct_emissions_co2_flows_letters.png) +***Figure**. Incoming and outgoing CO2 flows of a technology.* + +### CO2 content input carriers (A) +This flow represents ingoing CO2 embedded in input carriers. The flow is calculated for each ingoing edge, multiplying the demand of that edge with the carrier's emission factor. + +``` +A = Σ( input_edge.demand × carrier.co2_per_mj ) +``` +Method keys: +`direct_co2_input_content_carriers_fossil` +`direct_co2_input_content_carriers_biogenic` + + +### CO2 utilisation (B) +This flow represents used CO2 on the node, for example for production of synthetic transport fuels. The required CO2 is determined based on the useful output of a node multiplied with `co2_utilisation_per_mj`. Note that this is the only flow that is not calculated for biogenic CO2 as the ETM only has processes where non-biogenic carriers are produced from CO2 utilisation. + +``` +B = Σ( edge.output ) × node.co2_utilisation_per_mj +``` +Method key: +`direct_co2_input_utilisation_fossil` + +### CO2 content output carriers (C) +This flow represents outgoing CO2 embedded in output carriers. The flow is calculated for each outgoing edge, multiplying the energy flow with the carrier's emission factor. + +``` +C = Σ( output_edge.demand × carrier.co2_per_mj ) +``` +Method key: +`direct_co2_output_content_carriers_fossil` +`direct_co2_output_content_carriers_biogenic` + +### CO2 capture (D) +This flow represents the amount of captured CO2 on the node. The flow is determined based on the gross produced CO2 and the `ccs_capture_rate` specified for that node. The gross produced CO2 is the difference between ingoing CO2 (embedded in input carriers `A` and CO2 utilisation `B`) and outgoing CO2 embedded in output carriers `C`. + +``` +co2_production = A + B - C +D = co2_production * ccs_capture_rate +``` +Method keys: +`direct_co2_output_production_capture_fossil` +`direct_co2_output_production_capture_biogenic` + +### CO2 emissions (E) +This flow represents the actual emitted CO2 and is the difference between the ingoing and outgoing CO2 flows described above. + +``` +E = (A + B) - (C + D) +``` +Method keys: +`direct_co2_output_production_emissions_fossil` +`direct_co2_output_production_emissions_biogenic` + +## Reporting emission methods +The reporting greenhouse gas emission methods represent the relevant emissions that are typically reported by countries. These methods are used in the various user output for the direct emissions method (for example the data export). Note that these methods are queryable on both *energy nodes* and *molecule nodes*, but have a different implementation for these node types, which is further explained below. + +Four reporting emission methods are distinguished (inlcuding method key for querying the method): +* CO2 production - `direct_reporting_emissions_co2_production` +* CO2 capture - `direct_reporting_emissions_co2_capture` +* Other GHG emissions - `direct_reporting_emissions_other_ghg_emissions` +* Total GHG emissions - `direct_reporting_emissions_total_ghg_emissions` + +### CO2 production +This represents the gross produced fossil CO2, before potential CO2 capture. + +#### Energy node implementation +It is determined from ingoing fossil CO2 (A + B) minus outgoing fossil CO2 embedded in output carriers (C). See the equation including the reporting method key below. + +``` +direct_reporting_emissions_co2_production = + direct_co2_input_content_carriers_fossil + + direct_co2_input_utilisation_fossil - + direct_co2_output_content_carriers_fossil +``` +#### Molecule node implementation +There are molecule nodes that represent statically modelled CO2 emissions in the ETM by reading these CO2 flows from the dataset-specific `emissions.csv`. The method determines CO2 production based on the flow going through such nodes that have input of `co2`. + +### CO2 capture +This represents the capture of both **fossil** and **biogenic** CO2. + +#### Energy node implementation +Summing fossil and biogenic captured CO2: + +``` +direct_reporting_emissions_co2_capture = + direct_co2_output_production_capture_fossil + + direct_co2_output_production_capture_biogenic +``` + +#### Molecule node implementation +It takes the CO2 demand of molecule nodes with group `ccus_captured`. Effectively, this means captured CO2 in industry (which is not modelled on the energy nodes), direct air capture and LULUCF CO2 removal are included. + +### Other GHG emissions +This flow represents other GHG emissions (for example CH4 and N2O), expressed in kg CO2-eq. It only has an implementation for molecule nodes as other GHG emissions are not dynamically calculated (note: it is queryable on energy nodes but always gives back zero). The method determines other GHG emissions based on the molecule nodes that have input of `other_ghg`, which is only the case for molecule nodes that read static emissions data from the `emissions.csv` file. + +### Total GHG emissions +This flow represents the total reporting GHG emissions. It is composed of the total gross CO2 production minus captured CO2 (which gives actual CO2 emitted) plus other GHG emissions. The implementation is the same for both energy and molecule nodes. + +``` +direct_reporting_emissions_total_ghg_emissions = + direct_reporting_emissions_co2_production - + direct_reporting_emissions_co2_capture + + direct_reporting_emissions_other_ghg_emissions +``` + +## Complete list of method keys +Below is the complete list of the method keys already provided in the text above. + +*CO2 flow methods - fossil*: +``` +direct_co2_input_content_carriers_fossil +direct_co2_input_utilisation_fossil +direct_co2_output_content_carriers_fossil +direct_co2_output_production_capture_fossil +direct_co2_output_production_emissions_fossil +``` + +*CO2 flow methods - biogenic*: +``` +direct_co2_input_content_carriers_biogenic +direct_co2_output_content_carriers_biogenic +direct_co2_output_production_capture_biogenic +direct_co2_output_production_emissions_biogenic +``` + +*Reporting emission methods*: +``` +direct_reporting_emissions_co2_production +direct_reporting_emissions_co2_capture +direct_reporting_emissions_other_ghg_emissions +direct_reporting_emissions_total_ghg_emissions +``` diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 0bcf8a51..27a45f38 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -2,7 +2,7 @@ title: Direct emissions --- -The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. +The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. Go to [this page](../contrib/direct-emissions-method.md) for more details on the technical implementation of the method. :::warning Beta release The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Complete user output will first be available for national datasets and will later become availbale for regional (Dutch) datasets. Read more about how the method is currently implemented [here](#method-implementation). @@ -53,3 +53,5 @@ The following emission results, expressed in kg CO2-eq, are included in the data * **CO2 capture**: amount of captured fossil and biogenic CO2 emissions. * **Other GHG emissions**: total non-CO2 emissions. * **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`. + +Go to [this page](../contrib/direct-emissions-method.md) for more technical details on how these emissions are calculated in the model. diff --git a/sidebars.js b/sidebars.js index 439259ad..0edb6b9a 100644 --- a/sidebars.js +++ b/sidebars.js @@ -177,7 +177,8 @@ module.exports = { "contrib/molecules", "contrib/waste-outputs", "contrib/gql", - "contrib/recursive-methods" + "contrib/recursive-methods", + "contrib/direct-emissions-method" ], }, { diff --git a/static/img/docs/direct_emissions_co2_flows_letters.png b/static/img/docs/direct_emissions_co2_flows_letters.png new file mode 100644 index 0000000000000000000000000000000000000000..51e892df765c3610c089433491ef9a7a03a515f8 GIT binary patch literal 60026 zcmeGEWmuKn)&>mIf=H`Kqoky?G)Ol}Bi%?hiw-431f{z}kr3%dP^7!NySv}HSa|RK zJm0sU_via(a~vzKbcO{92^QK931=+Dhl|e z-=;Jf4(^`3xrm6Ol!yqqqP>lYxur22oMdp6+8uSJ)`!WjUp+=b6%~?Rk;DFkDied&<6d_PlpY zjn=Q7M?*zlO;x%%R z<)koiovffz0BL#yLLjp&mSWgU<6St zaDUeq;r#MWVnF+)-K?-E(?5O&0UIvMt$~IuAB}?{I3g#nyi~P< z=+s6i;JtgiAE6J?e72nnbQ0am+?iE>o9-i|vhiGlGB`|Sw<4K+T2TCu!J4Ksl(4wv zQmnF3dg|WXbBOT9&JW~MTl=pEySV0F%86|XHLM9_gjsucrtkcO$47#DsMrvXY2sr^ zzO`bt_Ri&NGI_%t)^Ie@2K^ucuP1gz5(tIgQ?V~FKcW7SNZu#gc;Jih$D8mM9rrG3 zP8E;OhctmKX-wC9cBH6?l{-2txs(LE7GjBOz`1~XD(c6}{@;?!Os=UCTU2?Sh zWEmL~A&ftOMcAfrHhkKcpPEg-73MDDl>33r4sph(y20*w1vByJgW`$D^-&u7p?z1c zk#uX*9`nA(L(ck;cJk6vT=0v2&MZ%QddK1L>C4l2fzLKulHDu2mAb~dsN+Sw(IYM+ z@Eh#T#JnM;268^{NPfkCcit$%4eO|o@Mp7jEr}KOwomO^;oe{Dq+@&P^3`F@?ksn$ z9lx_n&FjMiK_54(or$VI2%_3OoDdqE=N}EZdAY0MQ?&w-8{nzjQw7mYwc!~kH zoq>pmDCj-=A`D?CgZF}p`0VFs(QIEjN<*9o!nLe;jg$?cGmmv{B9sFu)%B~ zsDNjlxq~1~8-!#>P9W<)W!eZ~Lj2LdSM(^-hqVaz8)B3m`UvKm2Av`@c3)Ln;tPZ> z|BxBF3Jg;PE?3O628$hdVQkzNB9DRu4E)re90jrc6!!=hq9hI${``rZ67LiFT_e(B zq^BaP6j6UTGasJfaK9y%=z5a$M{Yr&&;KI0MuJ6|WKcL%k=~K7O`O~85n-Ub7+Y_g z*<;NQOcL}xZyd44f=DI0Gt_#S4!Fm{;AJrk4YFeqfB𝔳PS9)?>AVSA8F4IH=A) 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
F^xi*5mN+FG zjw#vd1Rl1)X?~c-14yPMOb=h{5HoW)`^8x0#&?jN)g1rz3nf-uqx3v$y zuvUxN_WZ{-#d39wX1dI2MR%}PT1~bxd_QhduKtT*L_|Qbl8!xywtt{)n)5ZpKX@X% ze`i{Sf+FE2wx_GfkLo2E=Uvl7Rs}J|U%}mf>6|_RwxC4nalWQBh}t0GAGihcx&lEL zJZ_HJyqr6A|Eu;IoRbR{JC7$ndmnuld*i5Edonj=D5H8O;gcnD8Do%%32Aw%S z=*-$&v*qyZ;P>D!^HfX%TVGJWYltq?uG6G_c~g@UEU}TjFUG6a_mp7Tv@2Z{_`j}; zQ{$DB9EZi8xX*^l)sF=Jm>OGn@N1*@xOw9CLX>}L?9J>*c_pJ8>;ebxkuFrRDF(}9 z8*LZeet`RjQ(>bw3mtz^^8e@WJ=CyFd!sWeI+=={rQ!s zaSj)&U9ofB>fYTXF8P~d*tpQ?9|_Lc`>qk73rS=Y+YxQ$TQ2nL=5n^_6>xAl+2v{J z*`n>Y`z3-^cvZqqhF!01z4i{KRr`w{At&2ZtKX!kRZw?34VHViZ@KtC9&41`OT+rA zFQ%1#aBy!Q8?9a*6l_$-z#7)+g^@_ zn}^C1J&p|sk;r*YEWc{!VRQeQQ59SBJ!{SKra`Ub#k|8dq^i}jJgGL^au6A5wVWWd zB<(Rj8~W(8yllB$yhC&*)hT*@-5*tVS)|c1WZwbd`)nmVc3xhV$B8-$A!HSKQqX}q z+Xgn_uT?i_NA_HWd9;-{1RA_dBx2UM%+3p;lv#sJ6Y{<6F;!jCMRF(E={7AV!%WR=fGF?)QE$Hq@Mdlk(<^LqFE0-fTSf z4xcVdIP>$}vm zJJtoZD6(my%NXXZnth)>0XYESdqd*>!xF7Y>gT+Vp6<_ImVeZxxL5DF-wlNDJ}dR0 zNvf)AW`(S_H}hctC|KwZJbelPg`zxQs^oZH&_+hLsZds2ktV6{Gy61{HuVEFlC{NV zy6|$`NL!mzO`4~MfqL(f+6Iti&wML-KC-&fE2DrdQpy(S(DjE2r~0+{Q#^Wn-5&8s z+3LlQWUEs%iM1p?p=MT<=BaQ~9>!r7R2**W43OCZW}!7`D{tCzF>clCgCeW=)!t)S z5$>wR_D5H~C%hLhc@0{4F~#2Rds(bk){P3jy2ASdKhj=3b zFsFd*?KS7wQ-8Du8Lh?8fyo#2ByG%q8NmBxx4;>`$Af^CV50%%fVAM$o2olQILVEK zQuZI`BMmG-I2y&fbx8tiIRM*GT)o?d;LzWO(D9QyWkA)+5r7ivmW-h!ex-^z983dj z^iFA#H2x5-8&;NAN=b}z29LV4g);@Nb*L5wko1e%xs1I#qONN~ICuRT>KDQ1FLDn0 z<8v~{4#SZhypYJmPD~I0#m5V{?)ccq>|}!A5Pwg-cTW!fQ=l(9AOh-_NxX3#1E_-N z?+6auhX(jKks_>P!I#DV+y5f^Tc`d704pfm_a+o=iz1_uv$l}?w-H0W)AA#~J~yBT z-Un?U<}g9xsjtWa!`who7CxdytA)fUdmbt*W zsJHTc^!XL)!!T<$HRaFXUg1kbN=O{me6-_O6XkXm?kAIc@h_cA1{0GvhK$KhM9xNeEIA+~G^%B%0Ag4)zOT?sz<$^8Hb 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 literal 0 HcmV?d00001 From e5ded88bbc65bf4218d9f3926ecd36c328cc58e3 Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Thu, 18 Jun 2026 13:18:09 +0200 Subject: [PATCH 08/11] Minor changes to direct emission docs --- docs/main/direct-emissions.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 27a45f38..759e3de9 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -2,45 +2,44 @@ title: Direct emissions --- -The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. Go to [this page](../contrib/direct-emissions-method.md) for more details on the technical implementation of the method. +The direct emissions method determines the greenhouse gas emissions of a scenario at the point where emissions are released. This method is available as an additional method alongside the default emissions method based on [primary demand](co2-main-principles#modelling-principles). This page explains the method principles and how it is implemented in the model. :::warning Beta release -The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Complete user output will first be available for national datasets and will later become availbale for regional (Dutch) datasets. Read more about how the method is currently implemented [here](#method-implementation). +The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Complete user output will first be available for national datasets and will later become availbale for regional (Dutch) datasets. Read more about how the method is currently implemented [here](#method-implementation). In the near future, the role of the direct emissions method vs. the primary emissions method will be reviewed and further improved. ::: ## Principles -The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. Direct emissions are determined following IPCC guidelines (with an exception explained below). The main principles of the method are: +The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. The main principles of the method are: * Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. For more information on on dynamically and statically modelled emissions, go to [this page](co2-main-principles#emission-categories). * The dynamically calculated CO2 emissions for a technology are determined based on the difference between incoming CO2 via input carriers and CO2 utilisation, and outgoing CO2 via output carriers and CO2 capture. The incoming and outgoing CO2 via input and output carriers is fixed CO2 that is determined based on the emission factor of the carrier. See the diagram and calculation example below. * CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). ![](/img/docs/direct_emissions_co2_flows.png) -***Figure**. Incoming and outgoing CO2 flows of a technology.* :::info Calculation example The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of `0.0945 kg CO2/MJ` for coal, the resulting CO2 emissions at the power plant are `100 MJ * 0.0945 kg CO2/MJ = 9.45 kg CO2`, which are allocated to the energy sector. ::: -## Deviation from IPCC guidelines +### Deviation from IPCC guidelines Due to the modelling structure of the ETM, the allocation of captured and used CO2 emissions in the ETM deviates from the IPCC guidelines. -The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the use sector where the CO2 is emitted. +The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the use sector where the CO2 is emitted. -From [IPCC, 2019 refinement](https://www.energy.gov/sites/default/files/2021-12/UN%20IPCC,%202019%20Refinement.pdf): +From [IPCC, 2019 Refinement](https://www.energy.gov/sites/default/files/2021-12/UN%20IPCC,%202019%20Refinement.pdf): > *Where CO2 emissions are captured from industrial processes or large combustion sources, captured emissions should be allocated to the sector generating the CO2 unless it can be shown that the CO2 is stored in properly monitored geological storage sites [...]* This means that according to IPCC guidelines, the released CO2 emissions from combustion of the synthetic fuel should be allocated to the sector where the CO2 was originally captured. See the calculation example below for the differences in allocation. :::info Calculation example -A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `80 kg CO2` is captured and `20 kg CO2` is emitted. The captured CO2 is used for synthetic kerosene production, which is later combusted in an aircraft, leading to `80 kg` of emitted CO2. +A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `80 kg CO2` is captured and `20 kg CO2` is emitted. The captured CO2 is used for synthetic kerosene production, which is later combusted in an aircraft, leading to `80 kg` of emitted CO2. -**Allocation ETM**: the energy sector emits `20 kg CO2`, the transport sector emits `80 kg CO2`. -**Allocation IPCC**: the energy sector emits `100 kg CO2`, the transport sector emits `0 kg CO2`. +**Allocation ETM**: the energy sector emits `20 kg CO2`, the transport sector emits `80 kg CO2`. +**Allocation IPCC**: the energy sector emits `100 kg CO2`, the transport sector emits `0 kg CO2`. ::: The detailed [data export](#method-implementation) will contain the results of emitted, captured and utilised CO2 per technology. With this data, users can do a reallocation of emissions between sectors if desired. From 1c2467f1e14dd8751060706ee16c67bd85082f4c Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Thu, 18 Jun 2026 13:19:28 +0200 Subject: [PATCH 09/11] Minor changes to direct emission docs --- docs/main/direct-emissions.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 759e3de9..118f25a4 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -7,7 +7,7 @@ The direct emissions method determines the greenhouse gas emissions of a scenari :::warning Beta release The direct emissions method is currently in beta release. This means that it is being implemented incrementally and is subject to further improvement and refinement. Complete user output will first be available for national datasets and will later become availbale for regional (Dutch) datasets. Read more about how the method is currently implemented [here](#method-implementation). -In the near future, the role of the direct emissions method vs. the primary emissions method will be reviewed and further improved. +In the near future, the role of the direct emissions method with respect to the primary emissions method will be reviewed and further improved. ::: ## Principles @@ -42,8 +42,6 @@ A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `8 **Allocation IPCC**: the energy sector emits `100 kg CO2`, the transport sector emits `0 kg CO2`. ::: -The detailed [data export](#method-implementation) will contain the results of emitted, captured and utilised CO2 per technology. With this data, users can do a reallocation of emissions between sectors if desired. - ## Method implementation Currently, the direct emissions method is implemented as an additional method alongside the default primary emissions method. The results of the direct emissions method can be viewed via a detailed [data export](https://energytransitionmodel.com/scenario/data/data_export/yearly-direct-greenhouse-gas-emissions). This data export provides a complete overview of all emissions in a scenario for the start year and future year. All technologies where emissions can occur are included and categorised by ETM sector and subsector. In addition, other greenhouse gas emissions that are not dynamically calculated are also included. From 8fd1a1071f5bc01d9dc7d690961f9ee405ec2b67 Mon Sep 17 00:00:00 2001 From: Kyra de Haan Date: Thu, 18 Jun 2026 13:44:31 +0200 Subject: [PATCH 10/11] Biogenic CO2 IPCC guidelines --- docs/main/direct-emissions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 118f25a4..91768685 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -11,10 +11,11 @@ In the near future, the role of the direct emissions method with respect to the ::: ## Principles -The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. The main principles of the method are: +The direct emissions method determines the emissions in a scenario based on where the emissions actually occur. The method generally follows IPCC guidelines for accounting emissions. The main principles of the method are: * Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. For more information on on dynamically and statically modelled emissions, go to [this page](co2-main-principles#emission-categories). * The dynamically calculated CO2 emissions for a technology are determined based on the difference between incoming CO2 via input carriers and CO2 utilisation, and outgoing CO2 via output carriers and CO2 capture. The incoming and outgoing CO2 via input and output carriers is fixed CO2 that is determined based on the emission factor of the carrier. See the diagram and calculation example below. +* Following IPCC guidelines, biogenic CO2 emissions are excluded from the emissions totals. Captured biogenic CO2 is included in determining emissions totals. * CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). ![](/img/docs/direct_emissions_co2_flows.png) @@ -23,7 +24,6 @@ The direct emissions method determines the emissions in a scenario based on wher The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of `0.0945 kg CO2/MJ` for coal, the resulting CO2 emissions at the power plant are `100 MJ * 0.0945 kg CO2/MJ = 9.45 kg CO2`, which are allocated to the energy sector. ::: - ### Deviation from IPCC guidelines Due to the modelling structure of the ETM, the allocation of captured and used CO2 emissions in the ETM deviates from the IPCC guidelines. From ec245c3aca24d19a02c3ebe5aeb6bef8c40634f3 Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Thu, 18 Jun 2026 14:50:03 +0200 Subject: [PATCH 11/11] Minor changes to direct emission docs --- docs/main/direct-emissions.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/main/direct-emissions.md b/docs/main/direct-emissions.md index 91768685..8a786d60 100644 --- a/docs/main/direct-emissions.md +++ b/docs/main/direct-emissions.md @@ -15,7 +15,7 @@ The direct emissions method determines the emissions in a scenario based on wher * Energetic CO2 emissions are dynamically calculated based on the modelled energy supply and demand flows. Most non-energetic CO2 emissions and other greenhouse gas emissions are not dynamically calculated but are given as input for a scenario. For more information on on dynamically and statically modelled emissions, go to [this page](co2-main-principles#emission-categories). * The dynamically calculated CO2 emissions for a technology are determined based on the difference between incoming CO2 via input carriers and CO2 utilisation, and outgoing CO2 via output carriers and CO2 capture. The incoming and outgoing CO2 via input and output carriers is fixed CO2 that is determined based on the emission factor of the carrier. See the diagram and calculation example below. -* Following IPCC guidelines, biogenic CO2 emissions are excluded from the emissions totals. Captured biogenic CO2 is included in determining emissions totals. +* Following IPCC guidelines, biogenic CO2 emissions are excluded from the emissions totals. Captured biogenic CO2 is included in determining emissions totals. * CO2 emissions are allocated to the sector where the emissions actually occur. Captured CO2 is deducted from the sector where it is captured. This is where the ETM [deviates from IPCC guidelines](#deviation-from-ipcc-guidelines). ![](/img/docs/direct_emissions_co2_flows.png) @@ -27,7 +27,7 @@ The coal-fired power plant consumes `100 MJ` coal. Taking the emission factor of ### Deviation from IPCC guidelines Due to the modelling structure of the ETM, the allocation of captured and used CO2 emissions in the ETM deviates from the IPCC guidelines. -The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the use sector where the CO2 is emitted. +The ETM deducts captured CO2 emissions from the sector where these emissions are captured. If this CO2 is then used and released in the short term (for example used for the production of synthetic fuels and combusted in an aircraft), the ETM allocates these emissions to the sector where the CO2 is emitted. From [IPCC, 2019 Refinement](https://www.energy.gov/sites/default/files/2021-12/UN%20IPCC,%202019%20Refinement.pdf): @@ -46,8 +46,8 @@ A coal-fired power plant in the energy sector produces `100 kg CO2`, of which `8 Currently, the direct emissions method is implemented as an additional method alongside the default primary emissions method. The results of the direct emissions method can be viewed via a detailed [data export](https://energytransitionmodel.com/scenario/data/data_export/yearly-direct-greenhouse-gas-emissions). This data export provides a complete overview of all emissions in a scenario for the start year and future year. All technologies where emissions can occur are included and categorised by ETM sector and subsector. In addition, other greenhouse gas emissions that are not dynamically calculated are also included. The following emission results, expressed in kg CO2-eq, are included in the data export: -* **CO2 production**: gross produced fossil CO2, before CO2 capture. -* **CO2 capture**: amount of captured fossil and biogenic CO2 emissions. +* **CO2 production**: fossil CO2 generated, before CO2 capture. +* **CO2 capture**: fossil and biogenic CO2 captured. * **Other GHG emissions**: total non-CO2 emissions. * **Total GHG emissions**: net total GHG emissions, calculated as `CO2 production - CO2 capture + Other GHG emissions`.