Gas Power Cycles (Otto, Diesel, Brayton) | Thermodynamics with Python | Skill-Lync Resources

50% OFF - Ends Soon!

Lesson 8 of 13 30 min

Gas Power Cycles (Otto, Diesel, Brayton)

The engine in your car, the turbine under a jet's wing, and the power plant that peaks during summer afternoons all share a common family tree: the gas power cycles. Unlike vapor cycles, the working fluid stays gaseous throughout — no phase change. This makes them lighter and faster-responding, at the cost of a much larger back-work penalty.

In this lesson, we'll idealize three cornerstone cycles — Otto (spark ignition), Diesel (compression ignition), and Brayton (gas turbines) — and analyze them with Python.

Air-Standard Assumptions

Real combustion engines are messy. To make them tractable, we apply the air-standard assumptions:

Sponsored

Abhishek landed his dream job at TATA ELXSI

From learning simulations to working at an industry leader

See His Journey
  • The working fluid is air, behaving as an ideal gas.
  • All processes are internally reversible.
  • Combustion is replaced by heat addition from an external source.
  • Exhaust is replaced by heat rejection that restores the initial state.

When we additionally assume constant specific heats at room temperature ($c_p = 1.005$, $c_v = 0.718$ kJ/kg·K, $k = 1.4$), it's called the cold-air-standard analysis.

The Otto Cycle (Spark Ignition)

The Otto cycle models gasoline engines. Its four processes:

ProcessDescription
1 → 2Isentropic compression
2 → 3Constant-volume heat addition (spark)
3 → 4Isentropic expansion (power stroke)
4 → 1Constant-volume heat rejection (exhaust)

The defining parameter is the compression ratio:

Sponsored

70% of India's auto industry trusts Skill-Lync

For training their engineers in CAD, CAE & simulation

Learn More

$$r = \frac{V_1}{V_2} = \frac{V_{max}}{V_{min}}$$

Using the isentropic relations and constant-volume heat exchanges, the thermal efficiency simplifies beautifully:

$$\eta_{Otto} = 1 - \frac{1}{r^{k-1}}$$

Sponsored

175+ hours of industry projects & 12 IIT faculty sessions

Master CATIA, NX, LS-DYNA, HyperMesh and more

View Full Curriculum

Efficiency depends only on compression ratio and $k$. Higher $r$ is better — but knocking limits real gasoline engines to $r \approx 8$–11.

The Diesel Cycle (Compression Ignition)

The Diesel cycle differs in one key process: heat is added at constant pressure (fuel injected into hot compressed air), not constant volume.

ProcessDescription
1 → 2Isentropic compression
2 → 3Constant-pressure heat addition
3 → 4Isentropic expansion
4 → 1Constant-volume heat rejection

Besides $r$, the Diesel cycle introduces the cutoff ratio:

$$r_c = \frac{V_3}{V_2}$$

The efficiency is:

$$\eta_{Diesel} = 1 - \frac{1}{r^{k-1}} \left[ \frac{r_c^{k} - 1}{k (r_c - 1)} \right]$$

The bracketed term is always greater than 1, so for the same $r$, a Diesel cycle is less efficient than Otto. But Diesel engines run at much higher $r$ (15–22), so in practice they win.

🎯 3,000+ Engineers Placed
Sponsored
Harshal Sukenkar

Harshal

Fiat Chrysler

Abhishek

Abhishek

TATA ELXSI

Srinithin

Srinithin

Xitadel

Ranjith

Ranjith

Core Automotive

Gaurav Jadhav

Gaurav

Automotive Company

Bino K Biju

Bino

Design Firm

Aseem Shrivastava

Aseem

EV Company

Puneet

Puneet

Automotive Company

Vishal Kumar

Vishal

EV Startup

The Brayton Cycle (Gas Turbines)

The Brayton cycle powers jet engines and gas-turbine power plants. It's an open or closed loop of:

ProcessComponentDescription
1 → 2CompressorIsentropic compression
2 → 3CombustorConstant-pressure heat addition
3 → 4TurbineIsentropic expansion
4 → 1(Exhaust)Constant-pressure heat rejection

The key parameter is the pressure ratio $r_p = P_2/P_1$. The efficiency is:

$$\eta_{Brayton} = 1 - \frac{1}{r_p^{(k-1)/k}}$$

Back-Work Ratio

In gas turbines, the compressor consumes a large fraction of the turbine's output:

$$\text{BWR} = \frac{w_{compressor}}{w_{turbine}}$$

BWR is often 40–80% — enormous compared to the ~1% of vapor cycles. This is why gas turbines need very efficient compressors.

Regeneration

When turbine exhaust (state 4) is hotter than compressor exit (state 2), a regenerator preheats the combustor air with exhaust heat, cutting fuel use. Effectiveness $\epsilon$ sets the recovered heat. Regeneration helps only at low pressure ratios (where $T_4 > T_2$).

Python: Otto Efficiency vs Compression Ratio

import numpy as np
import matplotlib.pyplot as plt

k = 1.4
r = np.linspace(4, 22, 200)
eta_otto = 1 - 1 / r ** (k - 1)

plt.figure(figsize=(9, 5))
plt.plot(r, eta_otto * 100, 'b-', lw=2)
plt.axvline(10, color='g', ls='--', label='Typical gasoline limit (~10)')
plt.xlabel('Compression ratio r')
plt.ylabel('Otto thermal efficiency (%)')
plt.title('Otto Cycle Efficiency vs Compression Ratio')
plt.legend()
plt.grid(True, alpha=0.3)
plt.show()

for ri in [8, 10, 12, 18]:
    print(f"r = {ri:2d} -> eta = {(1 - 1/ri**(k-1))*100:.1f}%")
Output:
r =  8 -> eta = 56.5%
r = 10 -> eta = 60.2%
r = 12 -> eta = 63.0%
r = 18 -> eta = 68.5%

Note these air-standard numbers overstate real engines (~25–35%) because of finite combustion, heat loss, and friction.

Python: Diesel Cycle State Analysis

A full state-by-state Diesel analysis ($r = 18$, cutoff $r_c = 2$, intake at 300 K, 100 kPa).

import numpy as np

# Air properties
k = 1.4
cp = 1.005   # kJ/kg.K
cv = 0.718   # kJ/kg.K
R  = 0.287   # kJ/kg.K

# Given
T1, P1 = 300.0, 100.0   # K, kPa
r  = 18.0               # compression ratio
rc = 2.0                # cutoff ratio

# State 2: isentropic compression
T2 = T1 * r ** (k - 1)
P2 = P1 * r ** k

# State 3: constant-pressure heat addition, V3/V2 = rc
T3 = T2 * rc
P3 = P2

# State 4: isentropic expansion back to V1
# V4/V3 = V1/V3 = r/rc  -> T4 = T3 * (V3/V4)^(k-1)
T4 = T3 * (rc / r) ** (k - 1)
P4 = P1 * (T4 / T1)     # constant volume from 4->1

q_in  = cp * (T3 - T2)
q_out = cv * (T4 - T1)
w_net = q_in - q_out
eta   = w_net / q_in

print(f"State 1: T={T1:6.1f} K, P={P1:7.1f} kPa")
print(f"State 2: T={T2:6.1f} K, P={P2:7.1f} kPa")
print(f"State 3: T={T3:6.1f} K, P={P3:7.1f} kPa")
print(f"State 4: T={T4:6.1f} K, P={P4:7.1f} kPa")
print("-" * 38)
print(f"q_in  = {q_in:6.1f} kJ/kg")
print(f"q_out = {q_out:6.1f} kJ/kg")
print(f"w_net = {w_net:6.1f} kJ/kg")
print(f"eta   = {eta*100:5.1f} %")
Output:
State 1: T= 300.0 K, P=  100.0 kPa
State 2: T= 953.3 K, P= 5720.0 kPa
State 3: T=1906.6 K, P= 5720.0 kPa
State 4: T= 791.7 K, P=  263.9 kPa
--------------------------------------
q_in  =  958.1 kJ/kg
q_out =  353.0 kJ/kg
w_net =  605.1 kJ/kg
eta   =  63.2 %

Python: Brayton Net Work & Optimal Pressure Ratio

For a Brayton cycle with fixed inlet temperature $T_1$ and maximum temperature $T_3$, net work peaks at a specific pressure ratio. The optimum occurs at:

$$r_{p,opt} = \left( \frac{T_3}{T_1} \right)^{\frac{k}{2(k-1)}}$$

import numpy as np
import matplotlib.pyplot as plt

k  = 1.4
cp = 1.005   # kJ/kg.K
T1 = 300.0   # K  (compressor inlet)
T3 = 1300.0  # K  (turbine inlet, metallurgical limit)

rp = np.linspace(2, 40, 300)
# Isentropic temperature ratios
T2 = T1 * rp ** ((k - 1) / k)
T4 = T3 / rp ** ((k - 1) / k)

w_comp = cp * (T2 - T1)
w_turb = cp * (T3 - T4)
w_net  = w_turb - w_comp
q_in   = cp * (T3 - T2)
eta    = 1 - 1 / rp ** ((k - 1) / k)
bwr    = w_comp / w_turb

# Optimal pressure ratio for max net work
rp_opt = (T3 / T1) ** (k / (2 * (k - 1)))

fig, ax1 = plt.subplots(figsize=(9, 5))
ax1.plot(rp, w_net, 'b-', lw=2, label='Net work')
ax1.axvline(rp_opt, color='k', ls='--', label=f'rp_opt = {rp_opt:.1f}')
ax1.set_xlabel('Pressure ratio rp')
ax1.set_ylabel('Net work (kJ/kg)', color='b')
ax2 = ax1.twinx()
ax2.plot(rp, eta * 100, 'r--', lw=2, label='Efficiency')
ax2.set_ylabel('Thermal efficiency (%)', color='r')
ax1.legend(loc='upper left')
plt.title('Brayton Cycle: Net Work and Efficiency vs Pressure Ratio')
ax1.grid(True, alpha=0.3)
plt.show()

i = np.argmax(w_net)
print(f"Optimal pressure ratio (max work) = {rp_opt:.2f}")
print(f"At rp_opt: net work = {w_net[i]:.1f} kJ/kg, eta = {eta[i]*100:.1f}%, BWR = {bwr[i]*100:.1f}%")
print(f"At rp=20 : eta = {(1 - 1/20**((k-1)/k))*100:.1f}%")
Output:
Optimal pressure ratio (max work) = 11.31
At rp_opt: net work = 339.2 kJ/kg, eta = 50.7%, BWR = 50.0%
At rp=20 : eta = 57.5%

Notice the tension: net work peaks near $r_p \approx 11$, but efficiency keeps rising with $r_p$. Designers choose a pressure ratio that balances power output against fuel economy — and the back-work ratio of 50% shows why compressor efficiency is critical.

Cycle Comparison

CycleApplicationKey parameterEfficiency formula
OttoGasoline enginesCompression ratio $r$$1 - 1/r^{k-1}$
DieselDiesel engines$r$, cutoff $r_c$$1 - \frac{1}{r^{k-1}}\frac{r_c^k-1}{k(r_c-1)}$
BraytonGas turbines, jetsPressure ratio $r_p$$1 - 1/r_p^{(k-1)/k}$

For the same compression ratio: $\eta_{Otto} > \eta_{Diesel}$. For the same maximum pressure and heat input (the fairer comparison for real engines): $\eta_{Diesel} > \eta_{Otto}$.

Common Pitfalls

  • Using Celsius in the cycle formulas. All isentropic relations need absolute temperatures (kelvin).
  • Thinking Otto efficiency depends on heat input. It depends only on $r$ and $k$ — heat input changes the work, not the efficiency.
  • Ignoring the back-work ratio in Brayton. A 50%+ BWR means small compressor inefficiencies devastate net output.
  • Confusing "max work" with "max efficiency". In Brayton they occur at different pressure ratios — pick based on the design goal.
  • Over-trusting air-standard numbers. Real efficiencies are far lower due to combustion losses, friction, and heat transfer.

Key Takeaways

  • Air-standard assumptions turn messy combustion engines into solvable ideal-gas cycles.
  • Otto efficiency $1 - 1/r^{k-1}$ rises with compression ratio but is capped by knock.
  • Diesel adds the cutoff ratio; for equal $r$ it's less efficient than Otto, but real diesels run at much higher $r$.
  • Brayton efficiency rises with pressure ratio, while net work peaks at $r_{p,opt} = (T_3/T_1)^{k/[2(k-1)]}$; its large back-work ratio demands efficient compressors.
  • Regeneration improves Brayton efficiency only at low pressure ratios where exhaust is hotter than compressor exit.

You've now covered the major power cycles — the thermodynamic engines that move the modern world.

3,000+ Engineers Placed in Top Companies
Career Growth

3,000+ Engineers Placed in Top Companies

Join the ranks of successful engineers at Bosch, Tata, L&T, and 500+ hiring partners.