Stationary Combustion¶
Stationary Combustion is a Scope 1 Emission that includes, but is not limited to, boilers, simple and combined-cycle combustion turbines, engines, incinerators, and process heaters. Stationary fuel combustion sources are devices that combust solid, liquid, or gaseous fuel, generally for the purposes of producing energy, generating steam, providing useful heat or energy for industrial, commercial or institutional use, or reducing the volume of waste by removing combustible matter.
Usage¶
- class atomic6ghg.formulas.stationary_combustion.StationaryCombustion(wks_data=None)¶
Stationary combustion includes fuels that are burned at stationary facilities.
- all_fuels = ['anthraciteCoal', 'bituminousCoal', 'subBituminousCoal', 'ligniteCoal', 'naturalGas', 'distillateFuelOilNo2', 'residualFuelOilNo6', 'kerosene', 'liquefiedPetroleumGases', 'woodAndWoodResiduals', 'landfillGas']¶
- static calculate_ch4_emissions(fuel, total_fuel_combustion)¶
Calculate CH4 emissions for a fuel
- static calculate_co2_emissions(fuel, total_fuel_combustion)¶
Calculate CO2 emissions for a fuel
- static calculate_n2o_emissions(fuel, total_fuel_combustion)¶
Calculate N2O emissions for a fuel
- common_units = {'anthraciteCoal': 'shortTon', 'bituminousCoal': 'shortTon', 'distillateFuelOilNo2': 'gallons', 'kerosene': 'gallons', 'landfillGas': 'scf', 'ligniteCoal': 'shortTon', 'liquefiedPetroleumGases': 'gallons', 'naturalGas': 'scf', 'residualFuelOilNo6': 'gallons', 'subBituminousCoal': 'shortTon', 'woodAndWoodResiduals': 'shortTon'}¶
- fossil_fuels = ['anthraciteCoal', 'bituminousCoal', 'subBituminousCoal', 'ligniteCoal', 'naturalGas', 'distillateFuelOilNo2', 'residualFuelOilNo6', 'kerosene', 'liquefiedPetroleumGases']¶
- make_biomass_co2_equivalent_emissions()¶
Calculate non-fossil-fuel emissions
- make_co2_equivalent_emissions()¶
Calculate co2 equivalent emissions
- make_emissions()¶
Calculate emissions for all fuels burned
- make_total_combustion()¶
Calculate total combustion for all input rows
- non_fossil_fuels = ['woodAndWoodResiduals', 'landfillGas']¶
- recalc(wks_data: dict) dict ¶
Execute recalc procedure for StationaryCombustion
- to_dict()¶
API to expose _output
- to_json()¶
API to expose _output as JSON
from atomic6ghg.formulas import StationaryCombustion
input_data = {
"version": "stationary-combustion.1.0.0",
"stationarySourceFuelConsumption": [
{
"sourceId": "BLR-014",
"sourceDescription": "West Power Plant",
"sourceArea": 10517,
"fuelCombusted": "anthraciteCoal",
"quantityCombusted": 100,
"units": "mmbtu"
}
]
}
calculated_data = StationaryCombustion(input_data).to_dict()
print(calculated_data['totalCO2EquivalentEmissions'])
print(calculated_data['totalBiomassEquivalentEmissions'])
EPA Equation Analysis¶
Stationary combustion allows for inputs of combusted quantities for the following sources with units, which are converted into an internal atomic6 unit:
Source |
Input Units |
Internal Unit |
---|---|---|
Anthracite Coal |
Short Ton, MMBtu |
Short Ton |
Bituminous Coal |
Short Ton, MMBtu |
Short Ton |
Sub-bituminous Coal |
Short Ton, MMBtu |
Short Ton |
Lignite Coal |
Short Ton, MMBtu |
Short Ton |
Natural Gas |
scf, MMBtu, Therm |
scf |
Distillate Fuel Oil No. 2 |
Gallons, MMBtu |
Gallons |
Residual Fuel Oil No. 6 |
Gallons, MMBtu |
Gallons |
Kerosene |
Gallons, MMBtu |
Gallons |
Liquefied Petroleum Gases (LPG) |
Gallons, MMBtu |
Gallons |
Wood and Wood Residuals |
Short Ton, MMBtu |
Short Ton |
Landfill Gas |
scf, MMBtu, Therm |
scf |
The fundamental calculation for each source are their \(\text{CO}_2\), \(\text{CH}_4\), and \(\text{N}_2\text{O}\) emissions associated with the quantity combusted. The formula is:
This is Equation 2.1 from [IPCC2006V2CH2]. Note, in atomic6, the \(Fuel\; Consumption_{fuel}\) is actually composed of two terms:
where \(Unit\; Conversion\; Factor_{fuel\; units}\) converts the \(fuel\; units\) into the standardized internal atomic6 unit for \(Fuel\; Consumption_{fuel}\), which varies depending on the stationary combustion source (see above table). This is necessary, since \(Emission\; Factor_{GHG,\; fuel}\) is only available in limited sets of units, but we want to allow for a wide range of input units for \(fuel\; units\) to minimize unit conversion being done by the user from the system they use for record keeping.
For stationary combustion, the \(Total \text{CO}_2\; Equivalent\; Emissions_{GHG,\, fuel}\) and \(Total\; Biomass\; \text{CO}_2\; Equivalent\; Emissions_{GHG}\) in metric tons are calculated. The formulas are:
where \(Total\; \text{CO}_2\; Equivalent\; Emissions_{GHG, fuel}\) is the sum of all \(GHG\) emissions by each source (fossil fuel or non fossil fuel), \(Emissions_{GHG,\, fuel}\) are emissions of any \(GHG\) (fossil fuel or non fossil fuel \(\text{CO}_2\), \(\text{CH}_4\), and \(\text{N}_2\text{O}\)), and \(EF_{GHG}\) is the emission factor for that \(GHG\) to convert it into \(\text{CO}_2\;\). Note that in atomic6, those emissions with units of grams are converted into kilograms, then the final value of this calculation is divided by \(1000\) to convert this value into \(metric \; tons\).
These equations are outlined in Equation 2.2 from [IPCC2006V2CH2].
where \(Total\; Biomass\; \text{CO}_2\; Equivalent\; Emissions_{fuel}\) is the sum of \(Non\; Fossil\; Fuel\; \text{CO}_2\; Emissions_{fuel, n}\), which only accounts for the GHG \(\text{CO}_2\). Note that in atomic6 the final value of this calculation is converted into \(metric \; tons\).