Skip to content

Commit

Permalink
Merge pull request #373 from singularity-energy/greg/nox_so2_factors
Browse files Browse the repository at this point in the history
Update Uncontrolled NOx and SO2 factors
  • Loading branch information
grgmiller authored Jul 3, 2024
2 parents 63b0754 + 458287a commit 214247d
Show file tree
Hide file tree
Showing 9 changed files with 10,021 additions and 1,750 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Calculating uncontrolled and controlled NOx emissions relies on boiler design, e
## Detailed steps for calculating NOx emissions

1. Load boiler design-, prime mover-, and fuel-specific [uncontrolled NOx factors](https://github.com/singularity-energy/open-grid-emissions/blob/main/data/manual/emission_factors_for_nox.csv). These factors are derived from [Table A-2](https://www.eia.gov/electricity/annual/html/epa_a_02.html) of the U.S. EIA's Electric Power Annual.
2. Assign these uncontrolled NOx emission factors to each boiler based on the relevant parameters. If an emission factor is not available for a specific boiler design, we default to using the lowest emission factor associated with that prime mover-fuel combination (see [this issue](https://github.com/singularity-energy/open-grid-emissions/issues/150))
2. Assign these uncontrolled NOx emission factors to each boiler based on the relevant parameters. If an emission factor is not available for a specific boiler design, we default to using the value for a dry-bottom, "other" firing type boiler, which is consistent with the assumption made by the EIA's Electric Power Annual (https://www.eia.gov/electricity/annual/pdf/tech_notes.pdf)
3. Because the fuel consumption data is reported at the generator-fuel level, we crosswalk each boiler-fuel to each generator-fuel and then calculate calculate a simple average NOx emission factor for all boilers associated with each generator.
4. Because emission factors are reported in lb NOx per unit mass or unit volume of fuel consumed (instead of per mmbtu), we then convert these factors to lb per mmbtu. In the EIA-923 boiler fuel table, each boiler reports the month-specific heat content (mmbtu) per mass of fuel consumed for each boiler. If there is not a boiler-specific heat content value available, we use the month-specific national average heat content of that fuel. If a month-specific national average heat content value is not available, we use the national and annual average heat content of that fuel.
5. After calculating uncontrolled NOx emissions for each generator, we then calculated controlled NOx emissions. Actual generator-specific and control equipment specific controlled emission rates are reported by certain generators, for both the ozone season (May-Sept) and for the annual average, in EIA-923 Schedule 8. We calculate a non-ozone season average rate using the annual average and the ozone season average.
Expand Down
7 changes: 3 additions & 4 deletions docs/docs/Methodology/Emissions Calculations/SO2 Emissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ Measured SO2 data is reported in CEMS, but otherwise must be estimated. Unlike g

### Detailed Approach
1. Load boiler design-, prime mover-, and fuel-specific [uncontrolled SO2 factors](https://github.com/singularity-energy/open-grid-emissions/blob/main/data/manual/emission_factors_for_so2.csv). These factors are derived from [Table A-1](https://www.eia.gov/electricity/annual/html/epa_a_01.html) of the U.S. EIA's Electric Power Annual.
2. Assign these uncontrolled SO2 emission factors to each boiler based on the relevant parameters. If an emission factor is not available for a specific boiler design, we default to using the lowest emission factor associated with that prime mover-fuel combination (see [this issue](https://github.com/singularity-energy/open-grid-emissions/issues/150))
2. Assign these uncontrolled SO2 emission factors to each boiler based on the relevant parameters. If an emission factor is not available for a specific boiler design, we default to using the value for an "other" firing type boiler, which is consistent with the assumption made by the EIA's Electric Power Annual (https://www.eia.gov/electricity/annual/pdf/tech_notes.pdf)
3. Some SO2 emission factors depend on the specific sulfur content of the fuel burned by each boiler. The sulfur content of the fuel burned in each boiler-month is reported in EIA-923, so we use that to calculate the boiler-month-fuel specific SO2 emission factor. If boiler-month specific sulfur content data is reported in EIA-923, we use that value. If those values are missing, we utilitize backstop values in the following order, if available: month- and fuel-specific national-average values, year- and fuel-specific national-average values, fuel-specific national-average values from the previous year.
4. Because the fuel consumption data is reported at the generator-fuel level, we crosswalk each boiler-fuel to each generator-fuel and then calculate calculate a simple average SO2 emission factor for all boilers associated with each generator.
5. Because emission factors are reported in lb SO2 per unit mass or unit volume of fuel consumed (instead of per mmbtu), we then convert these factors to lb per mmbtu. In the EIA-923 boiler fuel table, each boiler reports the month-specific heat content (mmbtu) per mass of fuel consumed for each boiler. If there is not a boiler-specific heat content value available, we use the month-specific national average heat content of that fuel. If a month-specific national average heat content value is not available, we use the national and annual average heat content of that fuel.
6. After calculating uncontrolled SO2 emissions for each generator, we then calculate controlled SO2 emissions. Certain boilers report the SO2 removal efficiency of all of the the SO2 control equipment that they have installed in EIA-923. Certain generators use multiple types of control equipment, but the total number of hours per year that each control equipment was operating is reported. Thus, when aggregating the SO2 removal efficiency up to the generator level, we are able to calculate a weighted average emission factor using the number of operating hours as the weighting factor.
6. After calculating uncontrolled SO2 emissions for each generator, we then calculate controlled SO2 emissions. Certain boilers report the SO2 removal efficiency of all of the the SO2 control equipment that they have installed in EIA-923. Certain generators use multiple types of control equipment, but the total number of hours per year that each control equipment was operating is reported. Thus, when aggregating the SO2 removal efficiency up to the generator level, we are able to calculate a weighted average emission factor using the number of operating hours as the weighting factor. The exception is boilers with a fluidized bed boiler type, whose emission factors already represent controlled emissions in EIA (see: https://www.eia.gov/electricity/annual/pdf/tech_notes.pdf)
7. If there is an SO2 removal efficiency value available, final so2 emissions values are calculated by multiplying the total uncontrolled so2 emissions by (1 - so2 removal efficiency) for each generators. Otherwise, we assume SO2 emissions are uncontrolled, and we use the calculated uncontrolled SO2 value.


Expand All @@ -29,5 +29,4 @@ These factors are loaded separately from our [manual geothermal emissions factor
## Future Work, Known Issues, and Open Questions
- Issues with SO2 emission factors for coal plants with fluidized bed boilers ([details](https://github.com/singularity-energy/open-grid-emissions/issues/248))
- Issues with SO2 emission factors for landfill gas generators ([details](https://github.com/singularity-energy/open-grid-emissions/issues/218))
- Missing SO2 emissions in CEMS are not currently being imputed ([details](https://github.com/singularity-energy/open-grid-emissions/issues/153))
- Need to determine standard fallback behavior when boiler design unknown ([details](https://github.com/singularity-energy/open-grid-emissions/issues/150))
- Missing SO2 emissions in CEMS are not currently being imputed ([details](https://github.com/singularity-energy/open-grid-emissions/issues/153))
Loading

0 comments on commit 214247d

Please sign in to comment.