REVIEW 3 major objections 6 minor 35 references
ChromOps.jl: High-order simulation and discrete forward sensitivity analysis for chromatography models
T0 review · 3 major / 6 minor · reviewed 2026-08-07 · deepseek-v4-flash
Pith's one-line read ChromOps.jl differentiates the full discrete chromatography solver with dual numbers, giving gradients of user-defined outputs at about 1.4 forward solves per parameter.
desk verdict Solid niche contribution with a real reproducibility gap: the work-precision results are believable, but the headline gradient claim is only checked against itself and the code is not public. read the letter →
The pith
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
The reading
What carries the argument
Forward-mode automatic differentiation over the discretized initial-value problem carries the argument: dual numbers with nilpotent perturbations are propagated through the semi-discrete right-hand side, the implicit QNDF integrator's Newton iterations, the coloured sparse Jacobian evaluation, and the KLU sparse linear solves, so primal and dual-valued computations follow literally the same code path. The parameter count enters through the chunk size of the perturbation tuple, and the cost per additional parameter stays near one extra partial because the compiler unrolls the dual arithmetic. A supporting ingredient is the finite-difference summation-by-parts (FD-SBP) operator, whose energy stability and lack of duplicated interface nodes give it a work-precision advantage over the discontinuous Galerkin spectral element method in the reported benchmark.
What would settle it
Run the six-component ion-exchange case with $N_p = 24$ parameters and compare the DFSA gradients against a central finite-difference reference at several elution times, while recording wall-clock time as $N_p$ is swept. If the gradients disagree beyond a user-defined tolerance, or if the measured time departs from roughly $1.4(1+N_p)$ forward-solve equivalents, the paper's central scaling-and-accuracy claim is falsified.
Extended reading notes
Core claim
Discrete forward sensitivity analysis is done by seeding each parameter with its own nilpotent direction and propagating multi-dimensional dual numbers $\hat{x} = x + \sum_k x'_k \varepsilon_k$, with $\varepsilon_j \varepsilon_k = 0$, through every operation of the discretized solver, including Newton iterations, coloured sparse Jacobian assembly, and sparse LU factorizations. Because the dual-valued solve shares the same implementation as the primal solve, the derivative of any scalar output with respect to any seeded parameter falls out of the solve itself at machine precision, in the sense of the first-order Taylor truncation, without user-written sensitivity equations. On the 6-component ion-exchange column with steric mass-action kinetics, the paper reports that propagating $N_p$ parameters costs about $1.4(1+N_p)$ forward solves, and that the FD-SBP spatial discretization outperforms DG-SEM at matched accuracy on both primal and 8-parameter dual-valued problems.
Load-bearing premise
The scaling claim rests on dual-number propagation through the implicit integrator's Newton iterations and sparse linear algebra costing about the same per step as the primal solve; if that overhead grows with parameter count or problem size, the $t_{\mathrm{DFSA}} \approx 1.4(1+N_p)t_{\mathrm{fwd}}$ rule fails.
Editorial extensions
If this is right
- Users can differentiate arbitrary objectives (yield, pool purity, outlet optical density) directly, with no hand-derived chain-rule code.
- Gradient-based parameter estimation loops cost about 1.4 forward solves per additional parameter, so the derivative computation no longer dominates the optimization budget.
- FD-SBP emerges as a competitive, conceptually simpler spatial discretization for production chromatography simulation on this class of problems.
- The number of derivative directions per pass can be tuned; one wide pass is usually cheapest, but narrower passes win at 14–16 and 22–24 parameters.
Reading between the lines
- Inference: the reported sensitivities are of the discrete solver path, including its fixed step-size choices; differentiating the step-size selection itself would produce continuous sensitivities and different gradient values, a distinction users should keep in mind.
- Inference: if the $1.4(1+N_p)$ scaling holds at larger state vectors and parameter counts, the same single-code-path design should extend to general-rate-model columns and coupled column networks.
- Inference: the discretization comparison is benchmark-specific; the FD-SBP advantage on this 6-component SMA problem is a work-precision observation, not a theorem that FD-SBP dominates DG-SEM in all chromatography models.
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The paper presents ChromOps.jl, a Julia framework for simulating lumped-rate chromatography models with two high-order spatial discretizations: finite difference summation-by-parts (FD-SBP) and discontinuous Galerkin spectral element (DG-SEM). The manuscript verifies both discretizations on manufactured problems, benchmarks them on a 6-component ion-exchange problem with steric mass action kinetics, and demonstrates discrete forward sensitivity analysis (DFSA) via ForwardDiff.jl dual numbers, claiming a cost of roughly 1.4 forward solves per parameter for up to 24 parameters and accurate gradients without hand-derived chain-rule code. The central claims are that FD-SBP outperforms DG-SEM at matched accuracy and that the single-code-path DFSA approach provides fast, accurate gradients for user-defined outputs.
Significance. If the claims are substantiated, the framework would make gradient-based parameter estimation and optimization substantially more accessible for industrial chromatography, and the reported DFSA scaling is attractive. The manuscript has notable strengths: convergence rates are checked against external theory (Hesthaven-Warburton; Mattsson-Nordström), the reference solution for the benchmark is supported by mesh-halving and a method-neutral FD-SBP cross-check, and the paper provides per-operation cost decompositions and a broad comparison of linear solvers and ODE integrators. However, the accuracy of the DFSA gradients is not validated against any independent derivative, which is a load-bearing gap for the paper's main claim.
major comments (3)
- [§4.2.4, Eq. (42)] The only quantitative accuracy check for the DFSA is the RMS-error∂ metric in Eq. (42), whose reference ∂ODref_sum is produced by the same ForwardDiff-based dual-number machinery on a more resolved mesh. This metric can detect spatial non-convergence of the sensitivities, but it cannot detect a systematic error in the dual propagation through, for example, the QNDF Newton iterations, the adaptive step-size controller, or the sparse linear solve; the additional FD-SBP cross-check establishes only method neutrality, not correctness of the AD. The abstract's claim that ChromOps.jl provides accurate gradients is therefore not substantiated. Please add an independent validation: finite differences of the discrete solver on a fixed mesh, a hand-derived chain rule for a small parameter set, or a comparison with an established continuous forward sensitivity method for the same model.
- [§3.3, Eq. (22)] The paper states that dual-number evaluation is 'exact (to machine precision)' because of the nilpotent condition ε²=0. That exactness holds for a single evaluation of a differentiable arithmetic expression; in a full implicit solve, the dual components are propagated through Newton iterations stopped by tolerances and through an adaptive step-size controller in QNDF, so the computed gradient is the derivative of the discrete algorithm only up to integrator tolerances. The manuscript should state precisely what object is differentiated, for example the discrete solver with the accepted step sequence held fixed, and verify the practical accuracy of that object rather than implying machine-precision gradients for the PDE solution.
- [§4.2.4, Figure 9] The headline scaling law t_DFSA ≈ 1.4(1+Np)t_fwd rests on a fitted constant k≈1.4 obtained from a single machine, a single problem, and a single spatial configuration, with no measure of variability. The staircase in Figure 9 and the two reported exceptions (Np = 14–16 and Np = 22–24) show that the per-parameter cost is not uniformly 1.4 across the sweep. Please report repeat variability or reframe the statement as an observed estimate for this benchmark rather than a general scaling law.
minor comments (6)
- [Table 4] The entries '105' for keq,A and keq,B are ambiguous; they should be typeset as 10^5 to avoid confusion with the surrounding values written with explicit exponents.
- [Figure 9] The dashed line in Figure 9 is labeled 1.37 · t_fwd · (1 + n_params), while the text reports k ≈ 1.4; align these values.
- [Eqs. (41)-(42)] Equations (41) and (42) contain corrupted radical notation ('/radicaltp/radicalvertex/radicalvertex√') in the manuscript text; please repair the LaTeX or rendering.
- [Tables 6-7] The 'Other' cost category is large, reaching 23% in the primal sweep and 30–55% in the dual sweep; a sentence identifying the dominant contributions within 'Other' would make the decomposition more informative.
- [Software availability] No repository link or code availability statement is provided. Since the paper's contribution is a software framework described as an 'inner-source' project, a public artifact or a clear availability statement is important for reproducibility.
- [Table 6 caption] The caption runs two sentences together: 'The FD-SBP interior order is l = 2r Figure 6 shows the total wall-clock time.' Please insert punctuation.
Circularity Check
No substantive circularity: DFSA reduces to standard forward-mode chain-rule AD, and the only self-referential element is a sensitivity verification metric rather than a load-bearing derivation step.
full rationale
The derivation of DFSA in Section 3.3 is self-contained: Equations (22) and (23) state the dual-number Taylor expansion and the multi-direction perturbation rule, and the claim that propagating dual numbers through the shared primal/dual code path yields sensitivities is a direct consequence of the chain rule for the discrete solver. The manufactured-problem tests in Tables 1 and 2 verify the primal spatial operators against external analytical solutions (sine advection and heat equation), so the convergence results are not fitted to the paper's own outputs. The DFSA scaling tDFSA ≈ 1.4(1+Np)tfwd is an empirical description of the authors' wall-clock measurements in Figure 9, not a parameter fitted to data and then relabeled as a prediction. The only self-referential element is the sensitivity accuracy metric RMS-error∂ in Equation (42), whose reference ∂ODref is itself produced by the same dual-number machinery on a finer mesh; this checks mesh-convergence of the same method and would not detect a systematic error common to both meshes, and it is not supplemented by an independent finite-difference or analytic gradient check. That is a verification gap and a correctness risk, but not a circular derivation, because the method's output is not constructed from the reference solution and the accuracy claim also rests on the independent mathematical correctness of forward-mode AD. Self-citations such as Ma et al. (2021) and Rackauckas and Nie (2017) are background or software references and are not load-bearing for the paper's central numerical results.
Assumptions & free parameters
free parameters (1)
- DFSA scaling constant k =
approx 1.4
assumptions (4)
- domain assumption The lumped-rate model with SMA isotherm (Eqs. 1-5, 10) adequately describes the industrial ion-exchange process.
- standard math The theoretical convergence properties of FD-SBP and DG-SEM, and the BR1 lifting approach, hold in the implemented form.
- domain assumption Forward-mode automatic differentiation via dual numbers through the full implicit time integrator yields the derivative of the discrete solver output.
- domain assumption The single in-house Novo Nordisk parameter set is representative enough to support the FD-SBP versus DG-SEM ranking and the DFSA scaling conclusions.
Cite this review
Pith. "Pith review of ChromOps.jl: High-order simulation and discrete forward sensitivity analysis for chromatography models." pith.science (2026). https://pith.science/paper/G4QDRWU4
@misc{pith2026260806131,
author = {Pith},
title = {Pith review of: ChromOps.jl: High-order simulation and discrete forward sensitivity analysis for chromatography models},
year = {2026},
howpublished = {\url{https://pith.science/paper/G4QDRWU4}},
note = {Machine review of arXiv:2608.06131}
}
read the original abstract
Mechanistic chromatography models are valuable for process development, but gradient-based parameter estimation and optimization can be hindered by computational cost and the effort of deriving objective-function gradients. To address this concern, a fully differentiable Julia chromatography solver, ChromOps.jl, is presented that combines high-order spatial discretization with discrete forward sensitivity analysis (DFSA). Two high-order spatial discretizations, finite difference summation-by-parts (FD-SBP) and the discontinuous Galerkin spectral element method (DG-SEM), are compared on a 6-component ion-exchange chromatography problem with steric mass action kinetics. Both attain their theoretical convergence rates on manufactured problems, while FD-SBP shows favourable work-precision performance for both forward (primal) and dual-valued simulations and is conceptually simpler to implement. DFSA scales as tDFSA approx 1.4(1+Np)tfwd for up to Np = 24 parameters propagated in a single ForwardDiff.jl chunk, i.e. about 1.4 forward solves per additional parameter. Because the primal and dual-valued solves share the same code path, DFSA provides accurate gradients of user-defined objectives without any hand-derived chain-rule code, enabling accessible gradient-based parameter estimation and optimization.
Figures
Figures from the paper (7 more)
Reference graph
Works this paper leans on
-
[16]
LLVM: A compilation framework for lifelong program analysis & transformation, in: International Symposium on Code Generation and Optimization (CGO ’04), IEEE. pp. 75–86. URL:https://doi.org/10.1109/CGO.2004.1281665. 23 Leweke, S., von Lieres, E.,
arXiv 2004
-
[18]
A fast and accurate solver for the general rate model of column liquid chromatography. Comput. Chem. Eng. 34, 1180–1191. URL:https://doi.org/10.1016/ j.compchemeng.2010.03.008. Ma, Y., Dixit, V., Innes, M., Guo, X., Rackauckas, C.,
work page 2010
-
[20]
Summation by parts operators for finite difference approximations of second derivatives. J. Comput. Phys. 199, 503–540. URL:https://doi.org/10.1016/j.jcp. 2004.03.001. Meyer, K., Huusom, J.K., Abildskov, J.,
doi:10.1016/j.jcp 2004
-
[21]
High-order approximation of chromatographic models using a nodal discontinuous Galerkin approach. Comput. Chem. Eng. 109, 68–76. URL: https://doi.org/10.1016/j.compchemeng.2017.10.023. Meyer, K., Ibsen, M.S., Vetter-Joss, L., Hansen, E.B., Abildskov, J.,
-
[22]
Industrial ion-exchange chromatography development using discontinuous Galerkin methods coupled with forward sen- sitivity analysis. J. Chromatogr. A 1689, 463741. URL:https://doi.org/10.1016/j.chroma. 2022.463741. Meyer, K., Leweke, S., von Lieres, E., Huusom, J.K., Abildskov, J.,
-
[24]
Revisiting Sparse Matrix Coloring and Bicoloring
Revisiting sparse matrix coloring and bicoloring. arXiv preprint arXiv:2505.07308 URL:https://arxiv.org/abs/2505.07308. Morbidelli, M., Servida, A., Storti, G., Carra, S.,
-
[27]
Utilizing algorithmic differentiation to efficiently compute chromatograms and parameter sensitivities. Chem. Eng. Sci. 139, 152–162. URL:https://doi.org/10.1016/j.ces.2015.08.050. Püttmann, A., Schnittert, S., Naumann, U., von Lieres, E.,
-
[30]
arXiv preprint arXiv:1607.07892 URL:https://arxiv.org/abs/1607.07892
Forward-mode automatic differentiation in Julia. arXiv preprint arXiv:1607.07892 URL:https://arxiv.org/abs/1607.07892. Rischawy, F., Saleh, D., Hahn, T., Oelmeier, S., Spitz, J., Kluters, S.,
Show all 35 references
-
[31]
Good modeling practice for industrial chromatography: Mechanistic modeling of ion exchange chromatography of a bispecific antibody. Comput. Chem. Eng. 130, 106532. URL:https://doi.org/10.1016/j. compchemeng.2019.106532. Schenk, O., Gärtner, K.,
2019
-
[32]
Future Gener
Solving unsymmetric sparse systems of linear equations with pardiso. Future Gener. Comput. Syst. 20, 475–487. URL:https://doi.org/10.1016/j.future.2003. 07.011. Schenk, O., Gärtner, K.,
2003 doi
-
[33]
A purely hyperbolic discontinuous Galerkin approach for self-gravitating gas dynamics. J. Comput. Phys. 442, 110467. URL:https://doi.org/10.1016/j.jcp.2021.110467. Svärd, M., Nordström, J.,
2021
-
[35]
Review of summation-by-parts schemes for initial–boundary-value problems. J. Comput. Phys. 268, 17–38. URL:https://doi.org/10.1016/j.jcp.2014.02.031. 25
2014 doi
-
[77]
Revels, J., Lubin, M., Papamarkou, T.,
URL:https://doi.org/10.21105/jcon.00077. Revels, J., Lubin, M., Papamarkou, T.,
-
[1953]
Distribution of residence times
Continuous flow systems. Distribution of residence times. Chem. Eng. Sci. 2, 1–13. URL:https://doi.org/10.1016/0009-2509(53)80001-1. Davis, T.A.,
-
[1982]
model analysis and numerical solution
Simulation of multicomponent adsorption beds. model analysis and numerical solution. Ind. Eng. Chem. Fundam. 21, 123–131. URL: https://doi.org/10.1021/i100006a005. Nicoud, R.M.,
-
[1990]
ACM Trans
A set of level 3 basic linear algebra subprograms. ACM Trans. Math. Softw. 16, 1–17. URL: https://doi.org/10.1145/77626. 79170. Frandsen, J., Breuer, J.M., Schmölder, J., Huusom, J.K., Gernaey, K.V., Abildskov, J., von Lieres, E.,
-
[1992]
Steric mass-action ion exchange: Displacement profiles and in- duced salt gradients. AIChE J. 38, 1969–1978. URL:https://doi.org/10.1002/aic.690381212. 22 Chen, J., Revels, J.,
1969 doi
-
[1997]
A high-order accurate discontinuous finite element method for the numerical solution of the compressible Navier–Stokes equations. J. Comput. Phys. 131, 267–279. URL:https://doi.org/10.1006/jcph.1996.5572. Benner, S.W., Welsh, J.P., Rauscher, M.A., Pollard, J.M.,
1996
-
[2004]
ACM Trans
Algorithm 832: Umfpack v4.3—an unsymmetric-pattern multifrontal method. ACM Trans. Math. Softw. 30, 196–199. URL:https://doi.org/10.1145/992200.992206. Davis, T.A., Natarajan, E.P.,
-
[2005]
ACM Trans
SUNDIALS: Suite of nonlinear and differential/algebraic equation solvers. ACM Trans. Math. Softw. 31, 363–396. URL:https://doi.org/10.1145/1089014.1089020. Kobl, K., Nicoud, L., Nicoud, E., Watson, A., Andrews, J., Wilkinson, E.A., Shahid, M., McKay, C., Andrews, B.I., Omer, B...
-
[2006]
On the order of accuracy for difference approximations of initial- boundary value problems. J. Comput. Phys. 218, 333–352. URL:https://doi.org/10.1016/j. jcp.2006.02.014. Svärd, M., Nordström, J.,
2006 doi
-
[2008]
Texts in Applied Mathematics, Springer, New York, NY
Nodal Discontinuous Galerkin Methods: Algorithms, Analysis, and Applications. Texts in Applied Mathematics, Springer, New York, NY. URL: https://doi.org/10.1007/978-0-387-72067-8. Hindmarsh, A.C., Brown, P.N., Grant, K.E., Lee, S.L., Serban, R., Shumaker, D.E., Woodward, C.S.,
-
[2010]
ACM Trans
Algorithm 907: KLU, a direct sparse solver for circuit simulation problems. ACM Trans. Math. Softw. 37, 1–17. URL: https://doi.org/10.1145/1824801. 1824814. Dongarra, J.J., Du Croz, J., Hammarling, S., Duff, I.S.,
-
[2013]
Fast and accurate parameter sensitivities for the general rate model of column liquid chromatography. Comput. Chem. Eng. 56, 46–57. URL:https://doi.org/10.1016/j.compchemeng.2013.04.021. Rackauckas, C., Nie, Q.,
2013 doi
-
[2014]
Adjoint-based estimation and optimization for column liquid chromatography models. Comput. Chem. Eng. 64, 41–54. URL:https://doi.org/10.1016/j.compchemeng.2014.01.013. Hesthaven, J.S., Warburton, T.,
2014 doi
-
[2015]
Cambridge Series in Chemical Engineering, Cambridge University Press, Cambridge, UK
Chromatographic Processes: Modeling, Simulation, and Design. Cambridge Series in Chemical Engineering, Cambridge University Press, Cambridge, UK. URL:https: //doi.org/10.1017/CBO9781139998284. Püttmann, A., Schnittert, S., Leweke, S., von Lieres, E.,
- [2016]
-
[2017]
SIAM Rev
Julia: A fresh approach to numerical computing. SIAM Rev. 59, 65–98. URL:https://doi.org/10.1137/141000671. Breuer, J.M., Leweke, S., Schmölder, J., Gassner, G., von Lieres, E.,
-
[2018]
Chromatography analysis and design toolkit (CADET). Comput. Chem. Eng. 113, 274–294. URL:https://doi.org/10.1016/j.compchemeng.2018.02.025. von Lieres, E., Andersson, J.,
2018 doi
-
[2019]
Prediction of lab and manufacturing scale chromatography performance using mini-columns and mechanistic modeling. J. Chromatogr. A 1593, 54–62. URL:https://doi.org/10.1016/j.chroma.2019.01.063. Bezanson, J., Edelman, A., Karpinski, S., Shah, V.B.,
2019 doi
-
[2020]
ChromaTech: A discontinuous Galerkin spectral element simulator for preparative liquid chromatography. Comput. Chem. Eng. 141, 107012. URL:https://doi.org/10.1016/j.compchemeng.2020.107012. Montoison, A., Dalle, G., Gebremedhin, A.,
2020
-
[2021]
arXiv preprint arXiv:1812.01892 URL:https://doi.org/10.48550/arXiv.1812.01892
A comparison of automatic differentia- tion and continuous sensitivity analysis for derivatives of differential equation solutions. arXiv preprint arXiv:1812.01892 URL:https://doi.org/10.48550/arXiv.1812.01892. Mattsson, K., Nordström, J.,
-
[2023]
Spatial discontinuous Galerkin spectral element method for a family of chromatography models in CADET. Comput. Chem. Eng. 177, 108340. URL:https://doi.org/10.1016/j.compchemeng.2023.108340. Brooks, C.A., Cramer, S.M.,
2023
-
[2024]
Oligonucleotide purification by ion exchange chromatography: A step-by-step guide to process understanding, modeling, and simulation. Org. Process Res. Dev. 28, 2569–2589. URL: https://doi.org/10.1021/acs.oprd.4c00013. Kumar, V., Lenhoff, A.M.,
-
[2025]
CADET-Julia: Efficient and versatile, open-source simulator for batch chromatography in julia. Comput. Chem. Eng. 192, 108913. URL:https://doi.org/10.1016/j.compchemeng. 2024.108913. George, A., Liu, J.W.,
2024
Reviewed August 7, 2026 · model on record in the stance chip above.
Discussion (0). Continue with ORCID to comment.