Week 4.2 - Combustion Efficiency Calculation after Preheating
Objective:
- To study the effect of preheating on Adiabatic Flame Temperature (AFT).
- To study the effect of preheating on Combustion efficiency (`eta`).
Introduction
A recuperator is a heat exchanger in which energy from a steady flow of hot combustion products, i.e., flue gases is transferred to the air supplied to the combustion process. It is generally used to recover the heat generated during the combustion process.
A general flow diagram is shown below:

Combustion efficiency of recuperator
CASE:1 Effect of pre-heating on AFT
For case 1 we have to observe the variation in Adiabatic flame temperature by varying the Air preheating temperature from 298 to 600K.
Code with explanation
'''
Effect of preheating on AFT in Methane air combustion
'''
import cantera as ct
import matplotlib.pyplot as plt
import numpy as np
gas = ct.Solution('gri30.cti')
#Defining temperature pressure and mole fraction for fuel
fuel = ct.Quantity(gas)
fuel.TPX = 298.15, ct.one_atm, 'CH4:1'
fuel.moles = 1
air = ct.Quantity(gas)
T_min = 298
T_max = 600
#for loop for varying temperature from 298 to 600 and observe the result at each step
for T_pre in range (T_min,T_max):
air.TPX = T_pre, ct.one_atm, {'O2':0.21, 'N2':0.79}
air.moles = (2*3.76)/0.79
M = fuel + air
M.equilibrate('HP','auto')
print(M.T)
plt.plot(T_pre,M.T,'-*', color = 'red')
#plotting
plt.grid()
plt.xlabel('Preheating Temperature',fontsize=14, fontweight='bold')
plt.ylabel('Adiabatic Flame Temperature', fontsize=14, fontweight='bold')
plt.title('effect of preheating of fuel on AFT',fontsize=16, fontweight='bold')
plt.show()
Output plot

- Aft increases linearly as we increase the preheating temperature.
- As larger the heat is available to preheat the fuel, the more effectively fuel burns as useful heat is already available.
Case 2
To determine the amount of fuel saved as a result of preheating the air from 298 to 600K, we will write an energy balance for the system. assuming both the heat transferred to the load and the heat losses are the same, and without preheat. assume steady flow,
`-dotQ=-dotQ_text(load)-dotQ_text(loss)=dotm(h_text(product)-h_text(reactant))`
=`(dotm_A+dotm_F)h_text(product)-dotm_Fh_F-dotm_Ah_A`.
For convenience we define fuel utilization efficiency as
`eta_text(combustion) = text(available heat generated)/text(Maximum possible heat generation) `
`eta_text(combustion)=dotQ/(dotm_F*LHV)=(-([(A//F)+1]h_text(product)-(A//F)h_A-h_F))/(LHV)`
From stoichiometric combustion reaction of methane
`CH_4+2(O_2+3.76N_2)->CO_2+2H_2O+7.52N_2`
mole fraction of `CH_4 = 1/(1+2+7.52) =0.095`
mole fraction of `O_2 = 2/(1+2+7.52) =0.189`
mole fraction of `N_2 = 7.52/(1+2+7.52) =0.715`
no. of moles in reactant side = 10.52
Fuel saving percentage formula
`text(Saving)%=(1-eta_298/eta_600)*100`
Code with explanation
'''
effect of preheating on eficiency and fuel saving
'''
#import required libraries
import cantera as ct
import matplotlib.pyplot as plt
import numpy as np
gas = ct.Solution('gri30.cti')
#Assigning constant values
T_min = 298
T_max = 600
LHV = 50e6
#Methane fuel
fuel = ct.Quantity(gas)
fuel.TPX = 298.15, ct.one_atm, 'CH4:1'
fuel.moles = 1
Fuel_mass = fuel.mass
fuel_H = fuel.h
#product
product = ct.Quantity(gas)
product.TPX = 1700, ct.one_atm, {'CO2':0.095, 'H2O':0.190, 'N2':0.715}
product.moles = 10.52
product_mass = product.mass
product_H = product.h
# air
air = ct.Quantity(gas)
air.TPX = T_min, ct.one_atm, {'O2':0.21, 'N2':0.79}
air.moles = 9.52
mass_air = air.mass
air_H = air.h
Q = ((mass_air*air_H) + ((Fuel_mass*fuel_H)-(product_mass*product_H))) #calculating heat at 298K
efficiency_STP = (Q/(Fuel_mass*LHV))*100 # calculating efficiency at 298K
# For loop for varying temperature
for T_pre in range(T_min,T_max):
air = ct.Quantity(gas)
air.TPX = T_pre, ct.one_atm, {'O2':0.21, 'N2':0.79}
air.moles = 9.52
mass_air = air.mass
air_H = air.h
Q = ((mass_air*air_H) + ((Fuel_mass*fuel_H)-(product_mass*product_H)))#calculating heat in range of 298 to 600K
efficiency = (Q/(Fuel_mass*LHV))*100# calculating efficiency in range of 298 to 600K
saving = (1-(efficiency_STP/efficiency))*100# calculating fuel saving percentage in range of 298 to 600K
#plotting
plt.figure(1)#pre heating temperature vs efficiency
plt.grid('on')
plt.plot(T_pre,efficiency,'-*', color = 'red')
plt.xlabel('Preheating Temperature',fontsize=14, fontweight='bold')
plt.ylabel('Efficiency', fontsize=14, fontweight='bold')
plt.title('Effect of preheating of fuel on Efficiency',fontsize=16, fontweight='bold')
plt.figure(2)#pre heating temperature vs saving percentage
plt.grid('on')
plt.plot(T_pre,saving,'-*', color = 'blue')
plt.xlabel('Preheating Temperature[K]',fontsize=14, fontweight='bold')
plt.ylabel('Saving in %', fontsize=14, fontweight='bold')
plt.title('Percentage of fuel saving by preheating',fontsize=16, fontweight='bold')
plt.show()
Output plot and result

From the above plot we can observe that as we are increasing the pre-heating temperature efficiency is also increasing, it can be seen that by increasing pre heating temperature to 600K efficiency is increased by 44.43% . It is also important to note the exit temperature of the furnace is kept as 1700K. It is important to control the exit temperature because excessively high temperature can damage the furnace.

From the above plot we can observe that by increasing the pre-heating temperature saving percentage is increasing. at 600K of pre-heated air we can save 23.91% of the fuel.
Conclusion
- We can see that by using a recuperator in combustion we can recover heat and also save fuel up to 23.91%.
- Using a recuperator can also increase the efficiency of the combustor.