This calculator estimates the benefit of efficiency improvements in a fuel-fired furnace by computing excess air, heat input, air properties, available heat, fuel savings, and new energy input. The calculation is based on standard thermodynamic relationships and is implemented in the processHeatEfficiencyImprovement function.
The calculation follows a top-down approach:
- Excess Air Calculation: Compute current and new excess air from flue gas oxygen and air multipliers.
- Heat Input Calculation: Compute current and new heat input from flue gas temperature and coefficients.
- Air Specific Heat Calculation: Compute current and new air specific heat from combustion air temperature and coefficients.
- Air Correction Calculation: Compute current and new air correction using air specific heat, flue gas temperature, and excess air.
- Combustion Air Correction Calculation: Compute current and new combustion air correction using air specific heat, combustion air temperature, and excess air.
- Available Heat Calculation: Compute current and new available heat as the sum of heat input, air correction, and combustion air correction.
- Fuel Savings Calculation: Compute new fuel savings as the percent improvement in available heat.
- New Energy Input Calculation: Compute new energy input based on current energy input and fuel savings.
Excess Air Calculation
Calculates current and new excess air.
Computes the excess air percentage for both current and improved conditions based on measured flue gas oxygen and process-specific multipliers. Excess air is a key indicator of combustion efficiency and impacts fuel usage.
\begin{equation}\label{eq:pheic-excess-air} EA = \frac{100 \cdot S_A \cdot (\frac{O_2}{100})}{D_B - O_2M \cdot (\frac{O_2}{100})}\end{equation}
| \(EA\) | Excess air \([\unit{ \percent}]\) |
| \(S_A\) | Stoichiometric air multiplier (8.52381) \([\unit{ \unitless}]\) |
| \(O_2\) | Flue gas oxygen (dry) \([\unit{ \percent}]\) |
| \(D_B\) | Denominator base (2.0) \([\unit{ \unitless}]\) |
| \(O_2M\) | O2 denominator multiplier (9.52381) \([\unit{ \unitless}]\) |
Heat Input Calculation
Calculates current and new heat input.
Calculates the effective heat input to the process for both current and improved conditions, using flue gas temperature and empirical coefficients. Heat input reflects the energy delivered to the system.
\begin{equation}\label{eq:pheic-heat-input} HI = H_B + H_C \cdot T_{FG}\end{equation}
| \(HI\) | Heat input \([\unit{ \percent}]\) |
| \(H_B\) | Heat input base (95.0) \([\unit{ \percent}]\) |
| \(H_C\) | Heat input temp coeff (-0.025) \([\unit{ \percent\per\degreeFahrenheit}]\) |
| \(T_{FG}\) | Flue gas temperature \([\unit{ \degreeFahrenheit}]\) |
Air Specific Heat Calculation
Calculates current and new air specific heat.
Determines the specific heat capacity of combustion air for both current and improved conditions, as a function of air temperature. This value is important for quantifying the energy required to heat the combustion air.
\begin{equation}\label{eq:pheic-air-specific-heat} C_{p,air} = C_B + C_C \cdot T_{CA}\end{equation}
| \(C_{p,air}\) | Air specific heat \([\unit{ \btu\per\pound\per\degreeFahrenheit}]\) |
| \(C_B\) | Air specific heat base (0.017828518) \([\unit{ \btu\per\pound\per\degreeFahrenheit}]\) |
| \(C_C\) | Air specific heat temp coeff (0.000002556) \([\unit{ \btu\per\pound\per\degreeFahrenheit}]\) |
| \(T_{CA}\) | Combustion air temperature \([\unit{ \degreeFahrenheit}]\) |
Air Correction Calculation
Calculates current and new air correction.
Calculates the energy correction associated with heating excess air, for both current and improved conditions. This correction accounts for the energy lost to heating air that does not participate in combustion.
\begin{equation}\label{eq:pheic-air-correction} AC = -\left(A_B + C_{p,air} \cdot T_{FG}\right) \cdot \frac{EA}{100}\end{equation}
| \(AC\) | Air correction \([\unit{ \percent}]\) |
| \(A_B\) | Air correction base (-1.07891327) \([\unit{ \unitless}]\) |
| \(C_{p,air}\) | Air specific heat \([\unit{ \btu\per\pound\degreeFahrenheit}]\) |
| \(T_{FG}\) | Flue gas temperature \([\unit{ \degreeFahrenheit}]\) |
| \(EA\) | Excess air \([\unit{ \percent}]\) |
Combustion Air Correction Calculation
Calculates current and new combustion air correction.
Computes the energy correction for heating the total combustion air (including excess air), for both current and improved conditions. This step quantifies the energy required to bring all combustion air to the desired temperature.
\begin{equation}\label{eq:pheic-combustion-air-correction} CAC = \left(CA_B + C_{p,air} \cdot T_{CA}\right) \cdot \left(1 + \frac{EA}{100}\right)\end{equation}
| \(CAC\) | Combustion air correction \([\unit{ \percent}]\) |
| \(CA_B\) | Combustion air correction base (-1.078913827) \([\unit{ \unitless}]\) |
| \(C_{p,air}\) | Air specific heat \([\unit{ \btu\per\pound\degreeFahrenheit}]\) |
| \(T_{CA}\) | Combustion air temperature \([\unit{ \degreeFahrenheit}]\) |
| \(EA\) | Excess air \([\unit{ \percent}]\) |
Available Heat Calculation
Calculates current and new available heat.
Sums the heat input and both air corrections to determine the available heat for the process, for both current and improved conditions. Available heat represents the fraction of input energy that is actually usable for the process.
\begin{equation}\label{eq:pheic-available-heat} AH = HI + AC + CAC\end{equation}
| \(AH\) | Available heat \([\unit{ \percent}]\) |
| \(HI\) | Heat input \([\unit{ \percent}]\) |
| \(AC\) | Air correction \([\unit{ \btu}]\) |
| \(CAC\) | Combustion air correction \([\unit{ \btu}]\) |
Fuel Savings Calculation
Calculates new fuel savings.
Calculates the percentage of fuel saved by implementing the efficiency improvement, based on the increase in available heat. This value quantifies the benefit of the improvement in terms of reduced fuel consumption.
\begin{equation}\label{eq:pheic-fuel-savings} FS = \frac{AH_{new} - AH_{current}}{AH_{new}} \cdot 100\end{equation}
| \(FS\) | Fuel savings \([\unit{ \percent}]\) |
| \(AH_{new}\) | New available heat \([\unit{ \percent}]\) |
| \(AH_{current}\) | Current available heat \([\unit{ \percent}]\) |
New Energy Input Calculation
Calculates new energy input.
Determines the new required energy input to the process after efficiency improvements, accounting for the calculated fuel savings. This step provides the expected reduction in energy demand.
\begin{equation}\label{eq:pheic-new-energy-input} EI_{new} = EI_{current} \cdot \left(1 - \frac{FS}{100}\right)\end{equation}
| \(EI_{new}\) | New energy input \([\unit{ \MMBtu\per\hour}]\) |
| \(EI_{current}\) | Current energy input \([\unit{ \MMBtu\per\hour}]\) |
| \(FS\) | Fuel savings \([\unit{ \percent}]\) |
|
| ProcessHeatEfficiencyImprovementResults | process_heat_efficiency_improvement::processHeatEfficiencyImprovement (double current_flue_gas_oxygen, double new_flue_gas_oxygen, double current_flue_gas_temp, double new_flue_gas_temp, double current_combustion_air_temp, double new_combustion_air_temp, double current_energy_input) |
| | Calculates the efficiency improvement for a fuel fired furnace.
|
| |
| double | process_heat_efficiency_improvement::calculateExcessAir (double flue_gas_oxygen, double stoich_air_multiplier, double excess_air_denominator_base, double excess_air_o2_multiplier) |
| | Calculates excess air percentage.
|
| |
| double | process_heat_efficiency_improvement::calculateHeatInput (double flue_gas_temp, double heat_input_base, double heat_input_temp_coeff) |
| | Calculates heat input.
|
| |
| double | process_heat_efficiency_improvement::calculateAirSpecificHeat (double combustion_air_temp, double air_specific_heat_base, double air_specific_heat_coeff) |
| | Calculates air specific heat.
|
| |
| double | process_heat_efficiency_improvement::calculateAirCorrection (double air_correction_base, double air_specific_heat, double flue_gas_temp, double excess_air) |
| | Calculates air correction.
|
| |
| double | process_heat_efficiency_improvement::calculateCombustionAirCorrection (double combustion_air_correction_base, double air_specific_heat, double combustion_air_temp, double excess_air) |
| | Calculates combustion air correction.
|
| |
| double | process_heat_efficiency_improvement::calculateAvailableHeat (double heat_input, double air_correction, double combustion_air_correction) |
| | Calculates available heat.
|
| |
| double | process_heat_efficiency_improvement::calculateFuelSavings (double new_available_heat, double current_available_heat) |
| | Calculates new fuel savings.
|
| |
| double | process_heat_efficiency_improvement::calculateNewEnergyInput (double current_energy_input, double new_fuel_savings) |
| | Calculates new energy input.
|
| |
◆ calculateAirCorrection()
| double process_heat_efficiency_improvement::calculateAirCorrection |
( |
double |
air_correction_base, |
|
|
double |
air_specific_heat, |
|
|
double |
flue_gas_temp, |
|
|
double |
excess_air |
|
) |
| |
- Parameters
-
| [in] | air_correction_base | Base for air correction \([\unit{\btu\per\pound}]\). |
| [in] | air_specific_heat | Air specific heat \([\unit{\btu\per\pound\per\degreeFahrenheit}]\). |
| [in] | flue_gas_temp | Flue gas temperature \([\unit{\degreeFahrenheit}]\). |
| [in] | excess_air | Excess air \([\unit{\percent}]\). |
- Returns
- Air correction as \([\unit{\percent}]\) of HHV.
◆ calculateAirSpecificHeat()
| double process_heat_efficiency_improvement::calculateAirSpecificHeat |
( |
double |
combustion_air_temp, |
|
|
double |
air_specific_heat_base, |
|
|
double |
air_specific_heat_coeff |
|
) |
| |
- Parameters
-
| [in] | combustion_air_temp | Combustion air temperature \([\unit{\degreeFahrenheit}]\). |
| [in] | air_specific_heat_base | Base specific heat of air \([\unit{\btu\per\pound\per\degreeFahrenheit}]\). |
| [in] | air_specific_heat_coeff | Temperature coefficient for specific heat of air \([\unit{\btu\per\pound\per\degreeFahrenheit}]\). |
- Returns
- Air specific heat \([\unit{\btu\per\pound\per\degreeFahrenheit}]\).
◆ calculateAvailableHeat()
| double process_heat_efficiency_improvement::calculateAvailableHeat |
( |
double |
heat_input, |
|
|
double |
air_correction, |
|
|
double |
combustion_air_correction |
|
) |
| |
- Parameters
-
| [in] | heat_input | Heat input \([\unit{\percent}]\). |
| [in] | air_correction | Air correction \([\unit{\percent}]\) of HHV. |
| [in] | combustion_air_correction | Combustion air correction \([\unit{\percent}]\) of HHV. |
- Returns
- Available heat \([\unit{\percent}]\) of HHV.
◆ calculateCombustionAirCorrection()
| double process_heat_efficiency_improvement::calculateCombustionAirCorrection |
( |
double |
combustion_air_correction_base, |
|
|
double |
air_specific_heat, |
|
|
double |
combustion_air_temp, |
|
|
double |
excess_air |
|
) |
| |
- Parameters
-
| [in] | combustion_air_correction_base | Base for combustion air correction \([\unit{\btu\per\pound}]\). |
| [in] | air_specific_heat | Air specific heat \([\unit{\btu\per\pound\per\degreeFahrenheit}]\). |
| [in] | combustion_air_temp | Combustion air temperature \([\unit{\degreeFahrenheit}]\). |
| [in] | excess_air | Excess air \([\unit{\percent}]\). |
- Returns
- Combustion air correction as \([\unit{\percent}]\) of HHV.
◆ calculateExcessAir()
| double process_heat_efficiency_improvement::calculateExcessAir |
( |
double |
flue_gas_oxygen, |
|
|
double |
stoich_air_multiplier, |
|
|
double |
excess_air_denominator_base, |
|
|
double |
excess_air_o2_multiplier |
|
) |
| |
- Parameters
-
| [in] | flue_gas_oxygen | Flue gas oxygen percentage (dry basis) \([\unit{\percent}]\). |
| [in] | stoich_air_multiplier | Stoichiometric air multiplier. |
| [in] | excess_air_denominator_base | Base value in denominator. |
| [in] | excess_air_o2_multiplier | O2 multiplier in denominator. |
- Returns
- Excess air \([\unit{\percent}]\).
◆ calculateFuelSavings()
| double process_heat_efficiency_improvement::calculateFuelSavings |
( |
double |
new_available_heat, |
|
|
double |
current_available_heat |
|
) |
| |
- Parameters
-
| [in] | new_available_heat | New available heat \([\unit{\percent}]\) of HHV. |
| [in] | current_available_heat | Current available heat \([\unit{\percent}]\) of HHV. |
- Returns
- New fuel savings \([\unit{\percent}]\).
◆ calculateHeatInput()
| double process_heat_efficiency_improvement::calculateHeatInput |
( |
double |
flue_gas_temp, |
|
|
double |
heat_input_base, |
|
|
double |
heat_input_temp_coeff |
|
) |
| |
- Parameters
-
| [in] | flue_gas_temp | Flue gas temperature \([\unit{\degreeFahrenheit}]\). |
| [in] | heat_input_base | Base value for heat input \([\unit{\percent}]\). |
| [in] | heat_input_temp_coeff | Temperature coefficient for heat input \([\unit{\percent\per\degreeFahrenheit}]\). |
- Returns
- Heat input \([\unit{\percent}]\).
◆ calculateNewEnergyInput()
| double process_heat_efficiency_improvement::calculateNewEnergyInput |
( |
double |
current_energy_input, |
|
|
double |
new_fuel_savings |
|
) |
| |
- Parameters
-
| [in] | current_energy_input | Current energy input \([\unit{\mega\btu\per\hour}]\). |
| [in] | new_fuel_savings | New fuel savings \([\unit{\percent}]\). |
- Returns
- New energy input \([\unit{\mega\btu\per\hour}]\).
◆ processHeatEfficiencyImprovement()
| ProcessHeatEfficiencyImprovementResults process_heat_efficiency_improvement::processHeatEfficiencyImprovement |
( |
double |
current_flue_gas_oxygen, |
|
|
double |
new_flue_gas_oxygen, |
|
|
double |
current_flue_gas_temp, |
|
|
double |
new_flue_gas_temp, |
|
|
double |
current_combustion_air_temp, |
|
|
double |
new_combustion_air_temp, |
|
|
double |
current_energy_input |
|
) |
| |
Uses process parameters to estimate the benefit of efficiency improvements.
- Parameters
-
| [in] | current_flue_gas_oxygen | Current % dry of flue gas oxygen. |
| [in] | new_flue_gas_oxygen | New % dry of flue gas oxygen. |
| [in] | current_flue_gas_temp | Current temperature of flue gas \([\unit{\degreeFahrenheit}]\). |
| [in] | new_flue_gas_temp | New temperature of flue gas \([\unit{\degreeFahrenheit}]\). |
| [in] | current_combustion_air_temp | Current temperature of combustion air \([\unit{\degreeFahrenheit}]\). |
| [in] | new_combustion_air_temp | New temperature of combustion air \([\unit{\degreeFahrenheit}]\). |
| [in] | current_energy_input | Current energy input \([\unit{\mega\btu\per\hour}]\). |
- Returns
- ProcessHeatEfficiencyImprovementResults struct with all calculated outputs.