DEV Community

Cover image for Sizing a Gas Absorption Column: NTU, HTU, and the Kremser Shortcut
NovaSolver
NovaSolver

Posted on Originally published at novasolver.jp

Sizing a Gas Absorption Column: NTU, HTU, and the Kremser Shortcut

Every packed absorption column boils down to one question the process engineer has to answer before any steel gets ordered: how tall does this thing need to be? Too short and you don't hit your outlet spec; too tall and you've wasted packing, pressure drop, and capital. The NTU/HTU method is the standard hand-calculation route to that number, and it's worth walking through slowly because the shortcuts people take with it are exactly where mistakes creep in.

Setting up the problem

Picture a packed column absorbing a solute — say, an acid gas or a VOC — out of a gas stream using a liquid solvent, counter-current, gas entering at the bottom and liquid entering at the top. Two flow rates define the operating line: Gas flow rate G (kmol/h) and Liquid flow rate L (kmol/h). Two mole fractions define your separation target: Inlet gas y₁ (mol fr.), the concentration you're starting with at the bottom, and Outlet gas target y₂, the concentration you need to hit at the top before the gas leaves the column. Everything else in the design — column height, packing requirement, even whether the separation is thermodynamically achievable at all — falls out of these four numbers plus the equilibrium relationship between gas and liquid phases, which for a dilute system is well approximated by Henry's law: y* = m·x, where Henry's constant m is the slope of the equilibrium line.

The two curves that decide everything

Draw a y-x diagram — gas-phase mole fraction on the vertical axis, liquid-phase mole fraction on the horizontal. Two lines go on it.

The operating line comes from a mass balance around the top of the column and is a straight line with slope L/G:

y = (L/G)(x - x2) + y2
Enter fullscreen mode Exit fullscreen mode

The equilibrium line is the Henry's law relationship y* = m·x, which for a dilute Henry's-law system is also a straight line, just with a different slope.

The vertical gap between these two lines at any height in the column is the driving force for mass transfer at that point — how far the actual gas composition is from what it would be in equilibrium with the liquid it's currently contacting. Where the two lines nearly touch, transfer is slow and you need a lot of packing to make progress; where they're far apart, transfer is fast. This is the entire physical content of NTU: it's a way of adding up "how much driving force did I need, integrated over the whole separation."

NTU and HTU, separately

The two halves of the calculation are deliberately independent of each other, and mixing them up is the single most common student mistake.

NTU (Number of Transfer Units) is dimensionless and comes purely from the y-x diagram — it depends only on the operating line, the equilibrium line, and how far you're trying to push the separation. For a dilute system with a straight equilibrium line, there's a closed-form shortcut (the Kremser equation) instead of graphical integration:

A = L / (m·G)                         # absorption factor

NTU = 1/(1 - 1/A) * ln[ (1 - 1/A)(y1 - m·x2)/(y2 - m·x2) + 1/A ]
Enter fullscreen mode Exit fullscreen mode

HTU (Height of a Transfer Unit), in meters, comes from the packing itself — its mass-transfer coefficient and interfacial area per unit volume — and is essentially independent of the separation you're trying to achieve:

HTU = G / (Kya · S)
Enter fullscreen mode Exit fullscreen mode

where Kya is the overall volumetric mass-transfer coefficient and S is the column cross-sectional area, set by Column diameter D (m). Multiply the two together and you get the number every engineer actually wants:

Z = NTU x HTU
Enter fullscreen mode Exit fullscreen mode

That's it — that's the column height. The reason it's worth keeping NTU and HTU conceptually separate, rather than reaching straight for a lumped correlation, is that they respond to completely different design levers. Tightening your outlet spec (Outlet gas target y₂) changes NTU but not HTU. Switching to a more efficient packing changes HTU but not NTU. If your calculated height comes out wrong, knowing which half of the product is responsible tells you immediately whether the fix is "adjust the operating conditions" or "change the packing."

A worked example

Suppose you're absorbing a solute out of a gas stream with Gas flow rate G = 100 kmol/h and Liquid flow rate L = 150 kmol/h. Inlet gas concentration y₁ = 0.05 (5 mol%), and you need to knock it down to Outlet gas target y₂ = 0.005 (a 90% removal). The solvent enters essentially solute-free, x2 ≈ 0. Henry's constant m = 0.72.

First, the absorption factor:

A = L / (m·G) = 150 / (0.72 * 100) = 2.08
Enter fullscreen mode Exit fullscreen mode

A > 1 tells you immediately that the liquid rate is comfortably above the minimum needed for this separation — a healthy design margin, not one running close to a pinch.

Now NTU via Kremser:

1/A = 0.48
NTU = 1/(1 - 0.48) * ln[ (1 - 0.48)(0.05 - 0)/(0.005 - 0) + 0.48 ]
    = 1.923 * ln[ 0.52 * 10 + 0.48 ]
    = 1.923 * ln(5.68)
    = 1.923 * 1.737
    ≈ 3.34
Enter fullscreen mode Exit fullscreen mode

Suppose the packing and gas-liquid system give Kya = 45 kmol/(h·m³) at the chosen Column diameter D = 0.6 m, so S = π(0.3)² ≈ 0.283 m²:

HTU = G / (Kya * S) = 100 / (45 * 0.283) ≈ 7.85 m
Enter fullscreen mode Exit fullscreen mode

Wait — that's an unusually large HTU for a real packed column (typical values run 0.3–1.5 m for structured or random packing), which is a useful sanity check in itself: it would flag that Kya was probably specified in the wrong units or that the diameter is undersized for this gas rate. Correcting to a more realistic Kya = 400 kmol/(h·m³) at the same diameter gives HTU ≈ 0.88 m, and:

Z = NTU x HTU = 3.34 * 0.88 ≈ 2.94 m
Enter fullscreen mode Exit fullscreen mode

A column a little under 3 meters tall gets you your 90% removal at these flow rates — a believable number for a small-to-medium packed absorber.

Where this method quietly fails

The straight-line Kremser shortcut assumes a dilute system with a linear equilibrium relationship and constant L/G through the column. For a concentrated feed (inlet mole fractions above roughly 5–10%), both the operating line and the equilibrium relationship curve, flow rates change as solute transfers between phases, and you need to fall back on true graphical (or numerical) NTU integration rather than the closed-form equation — plugging concentrated-feed numbers into Kremser without checking this will quietly give you a height that's wrong by 20–30% or more.

The other trap is running close to the minimum liquid rate. As A approaches 1 (equivalently, as L/G approaches m, the equilibrium slope), the operating and equilibrium lines converge and NTU blows up toward infinity — you're asking for an infinitely tall column. Real designs keep A comfortably in the 1.25–2 range specifically to avoid sitting anywhere near that asymptote, and it's worth checking your Absorption factor A against that range before trusting a height calculation, not just after.

Try it yourself

Rather than iterating this by hand for every combination of flow rates and target purity, it's faster to see the operating and equilibrium lines plotted directly and watch NTU, HTU, and Column height Z update as you drag the inputs. Try it on the absorption column design tool here. If your process also involves a reaction step upstream or downstream, the adiabatic reactor temperature tool covers a related piece of the same flowsheet.

Top comments (0)