CHE-345 · Lesson 9 of 12 · 21 min

Multiple steady states and thermal runaway

The esterification and the dehydration are forgiving reactions: one barely releases heat, and the other absorbs it, so neither can run away. Ingrid wants Theo to understand the reactions that can, because the plant's next projects, and many reactors elsewhere in the industry, are strongly exothermic. Before Kingfisher Bioenergy, she spent eight years at a plant that hydrated an epoxide to a glycol in water, a liquid-phase reaction that releases about 85 kJ per mole. She gives Theo a simplified version of that reactor as an exercise, with illustrative kinetics, and asks him two questions: what happens to a continuous stirred tank when its feed temperature drifts, and how much time would operators have if cooling were lost on a batch version of the same reaction. The answers explain one of the most important safety ideas in chemical engineering.

Heat generated and heat removed

For a first-order liquid reaction in an adiabatic CSTR at steady state, the mole balance gives the conversion at any temperature, \(X_{\text{MB}} = k\tau/(1 + k\tau)\), which rises in an S-shape from near zero to near one as temperature rises and \(k\) grows exponentially. The energy balance gives a different relation: \(X_{\text{EB}} = (T - T_0)/\Delta T_{\text{ad}}\), a straight line through the feed temperature \(T_0\) with slope set by the adiabatic temperature rise. Multiplying both by \(\Delta T_{\text{ad}}\) gives two curves in temperature units:

\[G(T) = \Delta T_{\text{ad}}\frac{k(T)\tau}{1 + k(T)\tau}, \qquad R(T) = T - T_0\]

\(G(T)\) is the heat generated by reaction and \(R(T)\) the heat removed by the flowing stream, both per unit heat capacity of the feed. A steady state requires both balances at once, so steady states are the intersections of the S-curve and the straight line. A cooling coil adds a term to \(R(T)\), making it steeper and shifting it, but the picture is the same.

One or three steady states

Because \(G(T)\) is S-shaped and \(R(T)\) is a straight line, they can cross once or three times. With the exercise's values, an adiabatic rise of 64 K, an activation energy of 75 kJ/mol and a space time of 10 minutes, the code finds one steady state for feed temperatures below about 285 K or above about 292 K, and three steady states between.

Steady states of an adiabatic CSTR with an exothermic first-order reaction at several feed temperatures, the stability of the middle state, and the adiabatic time to maximum rate after a cooling failure in a batch reactor.
# Multiple steady states in an adiabatic CSTR and a cooling-failure check for a batch reactor
# Liquid, first order, exothermic: A -> B (illustrative constants for an aqueous hydration reaction)
import math
R = 8.314
E = 75e3            # J/mol
k320 = 1.7e-3       # 1/s at 320 K
dH = -85e3          # J/mol
CA0 = 3.0           # mol/L (3000 mol/m3)
rho_cp = 4.0e6      # J/(m3 K), mostly water
tau = 600.0         # s
def k(T): return k320 * math.exp(-E / R * (1 / T - 1 / 320.0))
dTad = -dH * CA0 * 1000 / rho_cp
print(f"adiabatic temperature rise for full conversion: {dTad:.1f} K")

def G(T):  # heat generated, as conversion times dTad (K)
    X = k(T) * tau / (1 + k(T) * tau)
    return X * dTad
def steady_states(T0):
    # R(T) = T - T0 (adiabatic, heat removed by the flowing stream); find sign changes of G - R
    out = []; prev = None; T = T0
    while T < T0 + dTad + 5:
        f = G(T) - (T - T0)
        if prev is not None and (f > 0) != (prev > 0):
            lo, hi = T - 0.05, T
            for _ in range(50):
                m = (lo + hi) / 2; fm = G(m) - (m - T0)
                lo, hi = (m, hi) if (fm > 0) == (prev > 0) else (lo, m)
            out.append(m)
        prev = f; T += 0.05
    return out
for T0 in (275, 280, 285, 290, 295, 300):
    ss = steady_states(T0)
    txt = ", ".join(f"{t - 273.15:.1f} C (X = {G(t) / dTad:.3f})" for t in ss)
    print(f"feed at {T0 - 273.15:5.1f} C: {len(ss)} steady state(s): {txt}")
# stability of the middle state: slope of G must be less than slope of R (= 1) for stability
ss = steady_states(285)
if len(ss) == 3:
    Tm = ss[1]; dG = (G(Tm + 0.01) - G(Tm - 0.01)) / 0.02
    print(f"middle state at {Tm - 273.15:.1f} C: dG/dT = {dG:.2f} > 1, so it is unstable")

# Batch cooling failure: adiabatic time to maximum rate, TMRad = cp R T0^2 / (q0 E), q0 = heat release rate per kg
cp = 4000.0                  # J/(kg K)
for T0 in (290.0, 300.0, 310.0):
    q0 = -dH * k(T0) * CA0 * 1000 / 1000.0   # W/kg (density about 1000 kg/m3), at the start of the batch
    tmr = cp * R * T0 ** 2 / (q0 * E)
    print(f"cooling lost at {T0 - 273.15:.0f} C: initial heat release {q0:.0f} kW/t, adiabatic time to maximum rate {tmr / 60:.1f} min")
Output
adiabatic temperature rise for full conversion: 63.8 K
feed at   1.9 C: 1 steady state(s): 2.5 C (X = 0.011)
feed at   6.9 C: 1 steady state(s): 8.2 C (X = 0.021)
feed at  11.9 C: 3 steady state(s): 14.5 C (X = 0.041), 57.1 C (X = 0.709), 61.0 C (X = 0.770)
feed at  16.9 C: 3 steady state(s): 22.8 C (X = 0.094), 41.4 C (X = 0.386), 74.6 C (X = 0.907)
feed at  21.9 C: 1 steady state(s): 82.0 C (X = 0.943)
feed at  26.9 C: 1 steady state(s): 88.2 C (X = 0.963)
middle state at 57.1 C: dG/dT = 1.09 > 1, so it is unstable
cooling lost at 17 C: initial heat release 23 kW/t, adiabatic time to maximum rate 26.5 min
cooling lost at 27 C: initial heat release 66 kW/t, adiabatic time to maximum rate 10.0 min
cooling lost at 37 C: initial heat release 175 kW/t, adiabatic time to maximum rate 4.1 min
Heat generated, an S-shaped curve rising from near zero at 280 kelvin to about 63 at 370 kelvin, and three dashed straight lines of slope 1 for heat removed with feeds at 280, 290 and 295 kelvin. The 290 kelvin line crosses the S-curve three times, at about 296, 315 and 348 kelvin, marked with dots.
Steady states are the intersections of the heat generated and heat removed. A 290 K feed gives three.

Which steady states are stable?

At the lower intersection, the reactor is cold and little converts. At the upper one it is hot and conversion is high. The middle one is different. If the temperature there rises slightly, \(G\) rises faster than \(R\), because the S-curve is steeper than the line, so more heat is generated than removed and the temperature keeps rising until it reaches the upper state. A slight fall does the reverse. The middle state is unstable: a reactor cannot be operated there without control. The test is the slopes: a steady state is stable to small disturbances when \(dR/dT > dG/dT\). The code finds the slope of \(G\) at the middle state with a 285 K feed to be 1.09, greater than the slope of \(R\), which is 1, confirming the instability.

Ignition and extinction

Imagine slowly raising the feed temperature of a cold reactor. It stays on the lower branch, with low conversion, until the feed reaches about 292 K, where the lower and middle states merge and vanish. The reactor then jumps to the upper branch, and its temperature leaps by tens of degrees in a few residence times. That is ignition. Lowering the feed temperature from there, the reactor stays on the upper branch past 292 K, all the way down to about 285 K, where the upper and middle states merge and it drops suddenly to the lower branch: extinction. Between the two temperatures, the reactor's state depends on its history. This hysteresis is why reactors are started up with care and why a temperature that is safe on the way up may not be safe on the way down.

For a plant, the hot upper branch is usually where it wants to be, at high conversion, but it must be sure that disturbances cannot push it off, and that if it ignites it will not overshoot into conditions where side reactions or boiling begin. Control systems manage the feed temperature and the cooling so that the operating point stays well inside the region where the desired state is the only one, or at least a robustly stable one.

Runaway in a batch reactor

A batch reactor has no flowing stream to carry heat away; it relies entirely on its cooling system. If cooling fails, the reaction heats the contents, the rate rises exponentially with temperature, and it heats them faster still. A measure of how much time remains is the adiabatic time to maximum rate, which for an initial heat release rate \(q_0\) per unit mass and a reaction of activation energy \(E\) is approximately

\[\text{TMR}_{\text{ad}} \approx \frac{c_PRT_0^2}{q_0E}\]

For the exercise reaction at full concentration, the code gives 26 minutes if cooling is lost at 17 °C, 10 minutes at 27 °C and only 4 minutes at 37 °C. A batch of this reaction at those concentrations would be operating with very little margin; the glycol plant Ingrid worked at ran the reaction continuously, with a large excess of water to absorb the heat and a small inventory in the reactor at any time. Process safety practice uses calorimetry, measuring the heat released by a sample as it is heated slowly, to find the onset of runaway and of any secondary reactions before scale-up, and treats a TMR of less than about a day at the maximum temperature the process could reach as a sign that a scenario needs serious protection.

T2 Laboratories, 2007

On 19 December 2007, a batch reactor at T2 Laboratories in Jacksonville, Florida, burst during the 175th batch of a gasoline additive. The US Chemical Safety Board found that the cooling system had probably failed, through a blocked water supply or a valve failure, and that the recipe could set off a second, unintended exothermic reaction if the temperature rose only slightly above its normal production temperature. About ten minutes after operators reported a cooling problem, the 2,500-gallon reactor exploded. Four employees were killed, and 28 people at neighbouring businesses were injured. The board concluded that the company had not recognised the runaway hazard despite earlier near-misses, and recommended that chemical engineering programs teach reactive hazard recognition, which is why topics like this one appear in this course.

The lessons transfer directly to any exothermic process. Know the heat of every reaction that can occur at conditions the process could reach, including side and decomposition reactions. Know how fast the reaction runs away if cooling fails, and make sure the protective systems act faster. Prefer continuous processes or semibatch feeding, lesson 10, which keep the unreacted inventory small. Provide independent layers of protection: a cooling system with backup, high-temperature alarms and interlocks that stop feeds, emergency relief sized for the runaway, and a quench or dump system where needed.

Worked problem

Is the middle steady state stable?

At the middle steady state of a CSTR, the slope of the heat-generation curve is 1.09 K/K and the heat removal line has slope 1. Is the state stable?

Show solution
  1. Stability requires \(dR/dT > dG/dT\).
  2. Here \(dR/dT = 1 < 1.09 = dG/dT\).
  3. A small temperature rise generates more heat than is removed, so the temperature keeps rising.

Answer: Unstable: the reactor moves to the upper or lower state unless actively controlled.

Process safety management

Hazard analysis of reactive processes is part of a wider system. In Ontario, the relevant framework is CSA Z767, the Canadian standard for process safety management, applied alongside Ontario's Occupational Health and Safety Act and the Technical Standards and Safety Authority's rules for pressure equipment. These frameworks require a process hazard analysis, written operating procedures, management of change, mechanical integrity programs, incident investigation and training. Reaction engineers contribute the information they uniquely hold: the reaction heats, the kinetics, the temperatures at which secondary reactions start and the behaviour of the reactor when things go wrong. Ingrid asks Theo to add a reactive hazards section to the ethyl acetate design basis even though that reaction is mild, because acetic acid, ethanol and ethyl acetate are flammable, the resin has a temperature limit, and the reboiler of the reactive distillation column is a heat source that a mole balance alone does not see.

Common mistakes

  • MistakeAssuming a reactor has only one steady state.

    InsteadExothermic CSTRs can have three; check where \(G(T)\) and \(R(T)\) intersect.

  • MistakeOperating at the middle steady state without control.

    InsteadIt is unstable; small disturbances move the reactor to another state.

  • MistakeConsidering only the intended reaction in a hazard review.

    InsteadInclude side and decomposition reactions that start at higher temperatures.

  • MistakeScaling up an exothermic batch without calorimetry.

    InsteadMeasure heat release and runaway onset before scale-up.

Summary and key terms

  • Steady states of an adiabatic CSTR are the intersections of the S-shaped heat generation curve and the straight heat removal line.
  • With the exercise data, three steady states exist for feeds between about 285 and 292 K.
  • A state is stable when the heat removal line is steeper than the heat generation curve; the middle state is unstable.
  • Ignition and extinction occur at different feed temperatures, giving hysteresis.
  • The adiabatic time to maximum rate, \(c_PRT_0^2/(q_0E)\), shrinks quickly as temperature rises.
  • T2 Laboratories (2007) showed the cost of unrecognised runaway hazards.
Steady-state multiplicity
More than one steady state for the same feed and operating conditions.
Heat generation curve
G(T), the heat released by reaction at steady state as a function of temperature.
Ignition
A sudden jump from the low-conversion to the high-conversion steady state.
Extinction
A sudden fall from the high-conversion to the low-conversion steady state.
Thermal runaway
An uncontrolled rise in temperature and rate when heat release exceeds removal.
Time to maximum rate
The time for an adiabatic runaway to reach its maximum rate.
Process hazard analysis
A systematic review of how a process could fail and what protects against it.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. What is the adiabatic temperature rise for \(\Delta H = -85\) kJ/mol, \(C_{A0} = 3\) mol/L and \(\rho c_P = 4\) MJ/(m³ K)?

    Show answer

    \(85{,}000 \times 3000/4\times10^6 = 63.8\) K.

  2. How does adding a cooling coil change the heat removal line?

    Show answer

    It makes the line steeper and shifts it, which can remove multiplicity.

  3. Why does a reactor started cold need a higher feed temperature to ignite than the temperature at which it extinguishes?

    Show answer

    Hysteresis: each branch persists until it merges with the middle state.

  4. If \(q_0\) doubles, how does the time to maximum rate change?

    Show answer

    It halves.

  5. Give three layers of protection against a batch runaway.

    Show answer

    Backup cooling, high-temperature interlocks that stop feeds, and emergency relief or quench.

  6. Why is a semibatch or continuous process often safer than a batch for an exothermic reaction?

    Show answer

    Less unreacted material is present at any moment, so less energy can be released at once.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz