SecTheory.Edm#

SecTheory.Edm.py

EDM - Equilibrium Dispersive Model

based on the paper 2022, Jamil Ur Rehman,

ANALYSIS OF EQUILIBRIUM DISPERSIVE MODEL OF LIQUID CHROMATOGRAPHY CONSIDERING A QUADRATIC-TYPE ADSORPTION ISOTHERM

Copyright (c) 2023, SAXS Team, KEK-PF

class Edm(z=30, L=30, a=1.5, b=0.5, u=1.2, e=0.4, Dz=0.02, cinit=0, cinj=1.0, c0=0.0001, tinj=2.0)#

Bases: object

Parameters:
  • a (float) – Henry coefficient = K_SEC × (Vp/V0), where K_SEC ∈ [0,1] is the Ogston partition coefficient and Vp/V0 is the pore-to-void volume ratio. For a fully accessible small molecule: a = 1 × (Vp/V0). Determined from peak retention (gam2 ≈ a for small c0).

  • b (float) – Langmuir nonlinearity. b < 0 → fronting (aggregation in SEC); b > 0 → tailing (secondary adsorption); b = 0 → linear isotherm. Note: b = 0 causes ZeroDivisionError (lam = 0 → U = 2/(lam*Pe) fails).

  • e (float) –

    Mobile-phase fraction of the accessible volume:

    e = V0 / (V0 + Vp)

    where V0 = interstitial void volume, Vp = pore volume. Solid bead volume is entirely outside the EDM mass balance. NOT the standard chromatographic total porosity ε_T = (V0+Vp)/V_column. The phase ratio F = (1-e)/e = Vp/V0 directly. Default e=0.4 → F=1.5. In the 2D column simulation (ColumnSimulation.py, rs=0.0381, ~42 grains) the measured volumes give Vp/V0 ≈ 0.88 → e ≈ 0.53.

  • u (float) – Mobile-phase velocity (column lengths per time unit).

  • Dz (float) – Axial dispersion coefficient.

  • cinj (float) – Injected concentration.

  • c0 (float) – Reference concentration for linearising the isotherm (keep small).

get_comp_params()#
edm_func(t, u, a, b, e, Dz, cinj, cinit=0, c0=0.0001, tinj=2.0, L=30, z=30)#
guess_multiple_edms(x, y, num_components, debug=False)#
guess_single_edm(x, y, init_params=None, debug=False)#