Thermal Power Plants: Rankine Cycle, Boilers & Heat Rate
How most of the world's electricity is still made. Learn the Rankine cycle and its components (boiler, turbine, condenser, pump), T–s diagrams and steam tables, efficiency improvements (superheat, reheat, regeneration, supercritical/ultra-supercritical), heat rate and coal consumption, cooling systems, auxiliaries, emissions control (ESP, FGD, SCR), flexible operation and plant performance indices — with Python solving an ideal Rankine cycle.
Coal, gas, nuclear, biomass, solar-thermal and geothermal plants all boil water, expand steam through a turbine and condense it again — the Rankine cycle. In India, coal-fired Rankine plants still generate most electricity.
Improving plant efficiency by just one percentage point saves millions of tonnes of coal and CO₂ nationally, so thermal-plant engineering remains central to energy engineering.
An analogy
A steam power plant is like a pressure cooker driving a windmill: fuel boils water into high-pressure steam, the steam spins a turbine as it expands, and a cold condenser pulls it back into water so the pump can send it round again.
Plant layout
Fuel handling and pulverisers → boiler (furnace, water walls, superheater, reheater, economiser, air preheater) → steam turbine (HP, IP, LP) → generator; exhaust steam → condenser (cooling tower or once-through water) → feed pumps and feedwater heaters → back to the boiler. Flue gas → ESP → FGD → stack.
Raising efficiency
Ways to improve the Rankine cycle:
- Higher steam pressure and temperature (subcritical ~165 bar/540 °C → supercritical 247 bar/565 °C → ultra-supercritical 280+ bar/600 °C+)
- Reheat — returns steam to the boiler mid-expansion; raises efficiency and dryness
- Regenerative feed heating — bleeds steam to preheat feedwater
- Lower condenser pressure — colder cooling water
- Reduced auxiliary consumption (fans, pumps, mills ~6–9% in coal plants)
Performance indices
Gross and net heat rate, plant load factor (PLF), availability factor, auxiliary power consumption, specific coal and water consumption, boiler efficiency (direct and indirect methods — losses to dry flue gas, moisture, unburnt carbon). India's PAT scheme sets heat-rate targets for thermal plants.
Emissions and flexibility
Emission norms require ESPs (particulates), wet limestone FGD (SO₂), low-NOₓ burners and SCR/SNCR (NOₓ), and mercury controls. With high solar/wind penetration, thermal plants must run flexibly: lower minimum load (~40%), faster ramping, frequent cycling — which increases fatigue and heat rate. Biomass co-firing, carbon capture and repurposing sites for storage are transition options.
Formulas
- Pump work:
w_p = v·(P_boiler − P_condenser) - Turbine exit quality (isentropic):
x₄ = (s₃ − s_f)/s_fg; h₄ = h_f + x₄·h_fg - Cycle efficiency:
η = (w_t − w_p)/q_in = [(h₃ − h₄) − (h₂ − h₁)]/(h₃ − h₂) - Heat rate:
HR = 3600/η kJ/kWh - Fuel consumption:
ṁ_fuel = P/(η·CV) - Steam rate:
SSC = 3600/w_net kg/kWh
Worked example: Heat rate
Given: Net efficiency 38%
Find: Heat rate.
- 3600/0.38
Answer: 9474 kJ/kWh (≈ 2263 kcal/kWh)
Worked example: Steam flow
Given: 500 MW, steam rate 2.82 kg/kWh (ideal)
Find: Steam flow.
- 500 000 × 2.82/3600
Answer: ≈ 392 kg/s (real plants need more)
Worked example: Annual coal saving
Given: 500 MW at 80% PLF, efficiency 36% → 38%
Find: Coal saved per year.
- Coal ∝ 1/η: 278 → 263 t/h
- 15 t/h × 7008 h
Answer: ≈ 102 000 t/yr
Ideal Rankine cycle with steam-table values
# Simple ideal Rankine cycle with superheat, using steam-table values (IAPWS-IF97)
h1, v1 = 191.8, 0.001010 # sat. liquid at 10 kPa: kJ/kg, m3/kg
P_boiler = 10000.0 # kPa (100 bar)
h3, s3 = 3375.1, 6.5995 # 100 bar, 500 C superheated steam
sf, sfg, hf, hfg = 0.6492, 7.5010, 191.8, 2392.1 # 10 kPa saturation
w_pump = v1 * (P_boiler - 10)
h2 = h1 + w_pump
x4 = (s3 - sf) / sfg
h4 = hf + x4 * hfg
w_turb = h3 - h4
q_in = h3 - h2
eta = (w_turb - w_pump) / q_in
print(f"turbine exit quality x4 = {x4:.3f}, turbine work {w_turb:.0f} kJ/kg, pump work {w_pump:.1f} kJ/kg")
print(f"thermal efficiency = {eta*100:.1f}%, steam rate {3600/(w_turb-w_pump):.2f} kg/kWh")
# Plant heat rate and coal use for 500 MW at 38% net efficiency
eta_net, P = 0.38, 500e3
coal_cv = 18000 # kJ/kg (Indian coal ~ 4300 kcal/kg)
print(f"heat rate {3600/eta_net:.0f} kJ/kWh, coal {P/eta_net/coal_cv*3600/1000:.0f} t/h")
# turbine exit quality x4 = 0.793, turbine work 1286 kJ/kg, pump work 10.1 kJ/kg
# thermal efficiency = 40.2%, steam rate 2.82 kg/kWh
# heat rate 9474 kJ/kWh, coal 263 t/hThe pump uses less than 1% of the turbine work because liquid water is nearly incompressible — the Rankine cycle's big advantage. The wet exhaust (x = 0.79) would erode turbine blades, so real plants reheat. A 500 MW unit burns ~263 tonnes of Indian coal every hour.
Common mistakes
- Wrong: Confusing gross and net efficiency. — Right: Net subtracts auxiliary consumption.
- Wrong: Using HHV and LHV inconsistently. — Right: State the basis (Indian practice uses GCV).
- Wrong: Ignoring part-load heat-rate penalty. — Right: Efficiency drops at low load.
Applications
- Coal and lignite plants: Base-load generation in India.
- Nuclear plants: Saturated-steam Rankine cycles.
- Solar thermal: CSP with molten-salt storage.
- Industrial CHP: Back-pressure turbines supplying process steam.
Key takeaways
- Rankine: pump, boiler, turbine, condenser.
- η = w_net/q_in; HR = 3600/η.
- Superheat, reheat, regeneration raise efficiency.
- Emissions control and flexibility are modern priorities.
Going further
- Advanced ultra-supercritical: 700 °C steam with nickel alloys, ~48% efficiency.
- Oxy-fuel & post-combustion capture: CCS retrofits for coal plants.
- Flexibilisation: Low-load operation and fast ramps for renewables integration.