EnergyInnovation / eps-us

Energy Policy Simulator - United States
GNU General Public License v3.0
22 stars 7 forks source link

Add new industrial policy lever for controlling N2O emissions from chemicals industry or modify structure to allow for input data driven repurposing #167

Closed robbieorvis closed 3 years ago

robbieorvis commented 3 years ago

Adipic and Nitric Acid producers emit a lot of N2O in the production process. In China, for instance, the EPA Non-CO2 report estimates there are more than 300 MMT CO2e of potential N2O emissions reductions in 2050 from the Adipic and Nitric Acid industry alone

Currently, these emissions reductions are grouped in with the F-gas policies in PERAC, because these industries are tiny in the US. However, given their role in other countries, we should consider adding in this policy lever or using the alternative below.

It might make sense to move the variables Fraction of Process Emissions Reductions by Pollutant and Fraction of Process Emissions Reductions by Policy to an input data variable, with separate CSVs for each industrial policy, and one dimension covering industries and another covering pollutants. This would provide a lot of flexibility in modifying how the process emissions policies work internally (and allow for regional flexibility). If we had this structure, I could just collapse two of the F-gas levers (for instance combining the recovery/recycling and inspection/maintenance/retrofit levers) in the input data and repurpose one to cover N2O mitigation in industry, which would avoid the need to modify the model structure (or even add a new policy in this instance).

(Also, generally speaking, I think there are multiple places where mappings are hard coded in Vensim but could be handled externally through an input data variable, such as mapping power plant fuels/fuel prices onto the power plants themselves. Generally, this would allow for a lot more flexibility when deploying the model to a new region in the future).

jrissman commented 3 years ago

Mapping subscript elements to mean something else is not officially supported in the EPS. Remapping subscript elements is prone to causing bugs because it can be difficult to know all the places where an existing mapping involves structural assumptions or other input data in the model. For example, every industrial process emissions policy not only has its own marginal abatement cost schedule (PERAC) and which pollutants it targets, but also has its own costs and its own assignment of the spending on those costs to various ISIC codes. Everything has to change in concert, and it's easy for a person adapting the model to miss one place something needs to be updated or to misunderstand something. Remapping is risky and often unsafe software design.

If there is a feature you need, it is usually better to decide to support the feature explicitly, rather than rely on mapping.

I like your idea to add a N2O abatement policy for the Chemicals industry, the industry that encompasses nitric and adipic acid production. It would be a worthwhile addition to the model. (Agricultural N2O abatement is already part of the agriculture policies.)

I feel we should add this new process emissions policy in the same manner as other process emissions policies. This would be relatively straightforward to implement. It would be the cleanest way to program the needed feature and will not increase the model complexity or chances of creating bugs.


Remapping things in some subscripts is easier than others.

I made a doc page providing advice about how easy or hard it is to map the elements of certain subscripts, along with advice about limits that must be observed: https://us.energypolicy.solutions/docs/remapping.html

Those mappings are not officially supported, but the doc page does provide a sense of where it is easier and where it is hard. That doc page notes that power plant types have "good" remapping capability (the main constraint being that fuel-using plant types should be mapped onto fuel-using plant types, and non-fuel-using plant types should be mapped onto non-fuel-using plant types). I am unaware of any issues with "mapping power plant fuels/fuel prices onto the power plants themselves." If you have encountered a problem doing this, can you please open a different GitHub issue for it and describe the limitation you have encountered?


The variable Fraction of Process Emissions Reductions by Policy is calculated based on user settings, so it cannot be turned into an input variable. There would be no point, anyway. It is used as a check to ensure that reductions do not exceed total process emissions (of a given pollutant for a given industry).

In contrast, the variable Fraction of Process Emissions Reductions by Pollutant could involve pollutant assignments made in input data. It might be better programming style to do it that way. I would still discourage people from changing the assignments because of the difficulty in remapping any process emissions policy, but it would make such remapping more possible than it is today. I'm open to making these assignments via an input data variable.

So in summary, the work tasks I see for this GitHub issue are:

jrissman commented 3 years ago

The following screenshot is from PERAC. Note all the industry/gas combinations for which no process emissions abatement policy exists currently (the ones with "NONE" in the last column). Are there any others that are currently labeled "NONE" that are important? If so, it may be easier to do them all at once.

Note that CO2 process emissions are targetable using the CCS policy. (The CCS policy is not listed here because it's not part of PERAC.) So the only industrial process emissions that aren't targetable by any policy in the EPS right now are:

In GitHub, click on the image to see it at larger size.

PERAC_actions

robbieorvis commented 3 years ago

Thanks for this (and your earlier comment makes sense).

I think the best way to vet this would be to take a closer look at the EPA Non-CO2 data and see if they include any measure covering those three categories and then decide if we should add them.

The methodology report (https://www.epa.gov/sites/production/files/2019-09/documents/nonco2_methodology_report.pdf) is particularly helpful for this.

CH4 from chemicals is specifically mentioned as a category not covered due to a lack of data on mitigation options and I don’t see any N2O mitigation options in water and waste. So, it would see that adding N2O from chemicals might be sufficient in this case.


Robbie Orvis Director of Energy Policy Design +1 415-799-2171 98 Battery Street, Suite 202 San Francisco, CA 94111 www.energyinnovation.orghttp://www.energyinnovation.org/ @.***D75C84.8D6A6E80]

From: Jeff Rissman @.> Sent: Tuesday, June 8, 2021 4:26 PM To: Energy-Innovation/eps-us @.> Cc: Robbie Orvis @.>; Author @.> Subject: Re: [Energy-Innovation/eps-us] Add new industrial policy lever for controlling N2O emissions from chemicals industry or modify structure to allow for input data driven repurposing (#167)

The following screenshot is from PERAC. Note all the industry/gas combinations for which no process emissions abatement policy exists currently (the ones with "NONE" in the last column). Are there any others that are currently labeled "NONE" that are important? If so, it may be easier to do them all at once.

Note that CO2 process emissions are targetable using the CCS policy. (The CCS policy is not listed here because it's not part of PERAC.) So the only industrial process emissions that aren't targetable by any policy in the EPS right now are:

In GitHub, click on the image to see it at larger size.

[PERAC_actions]https://user-images.githubusercontent.com/7120106/121252065-6b704b80-c85c-11eb-8732-1a391b0aeecf.PNG

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Energy-Innovation/eps-us/issues/167#issuecomment-857103314, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AK5N6SIHD2MQD4VO6PBZGUTTRZ4HDANCNFSM46KSFIIA.

robbieorvis commented 3 years ago

I will also mention that for agricultural industry apportionment, I believe these are apportioned by US data, but those shares might be quite different in other countries with different animal mixes. I wonder if it would make sense to split apart those levers into N2O and methane policies, which are different and would allow for better regionalization of data.


Robbie Orvis Director of Energy Policy Design +1 415-799-2171 98 Battery Street, Suite 202 San Francisco, CA 94111 www.energyinnovation.orghttp://www.energyinnovation.org/ @.***D75C84.FB83B430]

From: Jeff Rissman @.> Sent: Tuesday, June 8, 2021 4:26 PM To: Energy-Innovation/eps-us @.> Cc: Robbie Orvis @.>; Author @.> Subject: Re: [Energy-Innovation/eps-us] Add new industrial policy lever for controlling N2O emissions from chemicals industry or modify structure to allow for input data driven repurposing (#167)

The following screenshot is from PERAC. Note all the industry/gas combinations for which no process emissions abatement policy exists currently (the ones with "NONE" in the last column). Are there any others that are currently labeled "NONE" that are important? If so, it may be easier to do them all at once.

Note that CO2 process emissions are targetable using the CCS policy. (The CCS policy is not listed here because it's not part of PERAC.) So the only industrial process emissions that aren't targetable by any policy in the EPS right now are:

In GitHub, click on the image to see it at larger size.

[PERAC_actions]https://user-images.githubusercontent.com/7120106/121252065-6b704b80-c85c-11eb-8732-1a391b0aeecf.PNG

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Energy-Innovation/eps-us/issues/167#issuecomment-857103314, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AK5N6SIHD2MQD4VO6PBZGUTTRZ4HDANCNFSM46KSFIIA.

jrissman commented 3 years ago

The division between agricultural N2O and agricultural CH4 is already handled via formula in Fraction of Process Emissions Reductions by Pollutant (where it is allocated in proportion to the modeled region's agricultural emissions of these two gases), so it already adapts itself to different countries/regions with no special attention required from the model adapter.

We'd actually lose that capability if I change the apportionment in Fraction of Process Emissions Reductions by Pollutant to use an input data variable, so maybe that's an argument for keeping that variable the way it is. In that case, the only change would be adding a chemicals industry N2O abatement policy.

robbieorvis commented 3 years ago

Ah okay, I misinterpreted how that variable works and thought I saw values hard coded. Sounds good.


Robbie Orvis Director of Energy Policy Design +1 415-799-2171 98 Battery Street, Suite 202 San Francisco, CA 94111 www.energyinnovation.orghttp://www.energyinnovation.org/ @.***D75D1C.48103C50]

From: Jeff Rissman @.> Sent: Tuesday, June 8, 2021 6:05 PM To: Energy-Innovation/eps-us @.> Cc: Robbie Orvis @.>; Author @.> Subject: Re: [Energy-Innovation/eps-us] Add new industrial policy lever for controlling N2O emissions from chemicals industry or modify structure to allow for input data driven repurposing (#167)

The division between agricultural N2O and agricultural CH4 is already handled via formula in Fraction of Process Emissions Reductions by Pollutant (where it is allocated in proportion to the modeled region's agricultural emissions of these two gases), so it already adapts itself to different countries/regions with no special attention required from the model adapter.

We'd actually lose that capability if I change the apportionment in Fraction of Process Emissions Reductions by Pollutant to use an input data variable, so maybe that's an argument for keeping that variable the way it is. In that case, the only change would be adding a chemicals industry N2O abatement policy.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Energy-Innovation/eps-us/issues/167#issuecomment-857204998, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AK5N6SMSARN4RMP4WWMXOF3TR2H2LANCNFSM46KSFIIA.

jrissman commented 3 years ago

Completed in 280eb90.

I wanted to get this feature into 3.3.0 because Robbie indicated the N2O abatement policy is particularly important in China, and my understanding is the China model updates will be released on 3.3.0 (at least the one that needs 2060 end date support). This new policy lever doesn't require any new or different data sources (it relies on the EPA global non-CO2 greenhouse gases report, which we were already using). However, if the partners are customizing indst/PERAC with non-EPA data sources, they should work from the latest PERAC version, which includes a new output tab for the new N2O abatement policy. (Note that BPEiC is unchanged.)

jrissman commented 3 years ago

Incidentally, this new policy also improves the accuracy of our U.S. results. I added this policy to the U.S. policy packages (using the same setting and implementation schedule that each policy scenario uses for similar policies like methane destruction and f-gas destruction).