Golay’s open-tubular column: the van Deemter equation with A = 0#

An open capillary has no packing, so Golay’s equation for it is the van Deemter equation with no eddy-diffusion term: \(H=B/u+Cu\). Using van_deemter_H() with \(A=0\) for a capillary and \(A>0\) for a packed column shows the lower plate height, and hence the many more plates a long capillary delivers.

import matplotlib.pyplot as plt
import numpy as np

from chemistrykit.analytical import minimum_plate_height, optimum_flow_velocity, van_deemter_H

u = np.linspace(1.0, 100.0, 3000)  # cm/s
# Illustrative GC coefficients (H in cm): packed column vs. open-tubular capillary.
packed = {"A": 0.05, "B": 0.4, "C": 0.002, "length_cm": 200.0}
capillary = {"A": 0.0, "B": 0.4, "C": 0.0005, "length_cm": 3000.0}

fig, ax = plt.subplots(figsize=(7, 4.5))
for name, p in (("packed column (A > 0)", packed), ("open tubular, Golay (A = 0)", capillary)):
    H = van_deemter_H(u, p["A"], p["B"], p["C"])
    H_min = minimum_plate_height(p["A"], p["B"], p["C"])
    u_opt = optimum_flow_velocity(p["B"], p["C"])
    N = p["length_cm"] / H_min  # N = L / H
    print(f"{name:30s}: H_min = {H_min * 10:.3f} mm at u = {u_opt:.1f} cm/s; {p['length_cm'] / 100:.0f} m column -> N = {N:,.0f} plates")
    ax.plot(u, H * 10, label=name)
    ax.plot([u_opt], [H_min * 10], "o", color=ax.lines[-1].get_color())
plot 04 golay open tubular column
packed column (A > 0)         : H_min = 1.066 mm at u = 14.1 cm/s; 2 m column -> N = 1,877 plates
open tubular, Golay (A = 0)   : H_min = 0.283 mm at u = 28.3 cm/s; 30 m column -> N = 106,066 plates
ax.set_ylim(0, 2.0)
ax.set_xlabel("linear velocity u (cm/s)")
ax.set_ylabel("plate height H (mm)")
ax.set_title("Removing the eddy-diffusion term lowers H")
ax.legend()
plt.tight_layout()
plt.show()
plot 04 golay open tubular column

Total running time of the script: (0 minutes 0.017 seconds)

Gallery generated by Sphinx-Gallery