JGCRI / gcam-core

GCAM -- The Global Change Analysis Model
http://jgcri.github.io/gcam-doc/
Other
263 stars 159 forks source link

Livestock emission scenarios #386

Open Swati0201 opened 4 months ago

Swati0201 commented 4 months ago

Hi @realxinzhao @pkyle. I am trying to model some policy scenarios for livestock emissions in India (GCAMV6). I have the following policy on my mind that i want to implement a) Change emission factors in future years as due to feed supplement that can reduce emission by 20%. b) Change in feed fraction as this could change output For e.g. more milk production if more green fodder is added instead of crop residue at the same time reduce emission. c) Somehow increase the animal offtake rate /productivity , so less animals are required in future and hence less emissions. In order to reduce emissions. I tried manipulating the emission factor with for future year in "all_aglu_emissions_IRR_MGMT" but did not see any desired output as it was impacting production too(which i don't want to be impacted). For the second scenario, I tried changing the feed fraction for 2030 in the CSV "IMAGE_an_Feedfrac_Rimg_C_Sys_Fd_Y.csv", reducing the ratio of scavenging and balancing it in another category, but the xml produce (an_input) does not register any change. I have tried understanding the IMAGE model(2.4) by reading its documentation and associated research papers (https://sci-hub.wf/10.1016/j.agsy.2004.05.006) from where the data and concept for the livestock module are fetched. So if you can please help me in figuring out ways, or developing conceptual clarity(if i am missing it) to implement the policy,.

pkyle commented 4 months ago

Reducing emissions coefficients should be pretty straightforward, though first I guess you need to figure out what they are, as emissions by livestock in the model are indicated as input-emissions in all_aglu_emissions_IRR_MGMT.xml and the emissions coefficients are calculated in the model. But they're written out to the debug file, and can be calculated as queried emissions divided by queried output (e.g., CH4 from Beef divided by output of Beef). Emissions coefficients calculated in the base year are passed forward to future years with no modifications, but can be read assigned in any future time period using the tag emiss-coef. Another option is to read in a more aggressive MAC curve, with more zero-cost abatement, in all_aglu_emissions_IRR_MGMT_MAC. I'm not sure about the phase-in of it however. Re: the feed fractions, I assume this is for future years, not base years. The relevant choices are happening in the technologies of the animal production sectors; it seems you want more Pasture_FodderGrass and less FodderHerb_Residue. Right now in an_input.xml there's a fixed interpolation being used:

                    <stub-technology name="FodderHerb_Residue">
                        <interpolation-rule apply-to="share-weight" from-year="2015" to-year="2100">
                            <interpolation-function name="fixed"/>
                        </interpolation-rule>

You could just read in another XML file that phases it out slowly over time, specifying the values within the interpolation function. E.g., this would reduce the share of FodderHerb_Residue within the given sector over time.

                    <stub-technology name="FodderHerb_Residue">
                        <interpolation-rule apply-to="share-weight" from-year="2015" to-year="2110">
                            <to-value>0</to-value>
                            <interpolation-function name="linear"/>
                        </interpolation-rule>

The to-year of an interpolation rule doesn' t need to be a model time period if the to-value is specified.

Any of these changes that influence calibration should be done as far upstream as possible, e.g. in the source data, though be aware that they'll often have minimal impacts on the model behavior as the model's calibration parameters will just re-set.

Swati0201 commented 4 months ago

Thank you, @pkyle, for your suggestion. I did try the emission coefficient idea using the same methodology mentioned above, but to my surprise, this did not work. So will try the other ones.

Swati0201 commented 4 months ago
image

Hi, @pkyle, @realxinzhao. So I tried calculating the emission factor so that I could put them exogenously in the all_aglu_emissions_IRR_MGMT.xml. But I see a different trend: the emission factor is decreasing over time, which I do not understand, So if you could please guide me here,? I have fetched the production results from queries "meat and dairy production by tech" and "nonCO2 emission by tech." 2) Regarding the feed, I understand how feed relates production to the land use sector but do not see its co-relation with emission reduction. So, one of the policies in India claims that feeding balanced diets to animals (some ratio of green to dry fodder) improves animal yield and reduces emissions. The idea is to model that policy. But as you can observe in the screenshot, the emission factor for all the feed types remains the same in any given year. So any suggestions of changing that.

pkyle commented 3 months ago

Just seeing this--the reason the coefficients are declining over time is the marginal abatement cost curve, which is intended to estimate the decrease in emission factors as a function of CO2 prices, but often has zero-CO2-price abatement. Here's what I see in the XML file all_aglu_emissions_IRR_MGMT_MAC.xml, which indicates that with zero CO2 prices, there will be a 3% reduction in the CH4 emissions factor over time, and it looks from the output that the default is a 25-year phase-in time:


<supplysector name="Beef" nocreate="1">
                <subsector name="Mixed" nocreate="1">
                    <stub-technology name="FeedCrops" nocreate="1">
                        <period year="2020">
                            <Non-CO2 name="CH4_AGR">
                                <mac-control name="Livestock">
                                    <mac-reduction tax="0">0.029</mac-reduction>
                                    <market-name>CO2</market-name>
                                    <mac-reduction tax="5">0.029</mac-reduction>
                                    <mac-reduction tax="10">0.029</mac-reduction>
                                    <mac-reduction tax="15">0.029</mac-reduction>
                                    <mac-reduction tax="31">0.03</mac-reduction>
                                    <mac-reduction tax="65">0.053</mac-reduction>
                                    <mac-reduction tax="128">0.058</mac-reduction>
                                    <mac-reduction tax="242">0.058</mac-reduction>
                                    <mac-reduction tax="484">0.058</mac-reduction>
                                    <mac-reduction tax="1088">0.058</mac-reduction>
                                    <mac-reduction tax="2056">0.058</mac-reduction>
                                    <mac-reduction tax="4838">0.059</mac-reduction>
                                    <mac-reduction tax="7256">0.059</mac-reduction>
                                    <mac-reduction tax="12094">0.059</mac-reduction>
                                </mac-control>
                            </Non-CO2>