A chemistry solver inside an atmospheric model has a peculiar job. Every few minutes the model changes the sunlight and hands it thousands of boxes of air, stiff systems whose species live from a nanosecond to years, to carry across the interval to one to three digits. Production solvers restart every interval, at a cost of some nine steps. We describe a better one: a standard three- stage Rosenbrock method with three changes to how it steps. It carries its step into the next interval, rounded to fit the interval exactly; it chooses the step with S¨oderlind’s H211b digital filter, which reads the last two error estimates and carries its memory across the boundary; and it ties the absolute tolerance to the concentration below which species are not scored. We compare it with pure-Python prototypes of a Rosenbrock loop that restarts every interval and of the backward Euler method of CAM-Chem, on eleven scenarios of MOZART-TS1, scoring every species down to 10−14 mol m−3 and counting operations. At three digits overall and two for every species, the integrator does a third of the restarting loop’s arithmetic; the advantage shrinks to a factor of 1.4 in steps at four and a half digits. The filter’s gain lies entirely in its memory. Backward Euler is cheaper per interval but delivers a third of a digit; split into enough sub-steps to reach two digits, it does 4.5 to 96 times the integrator’s arithmetic. The counts measure arithmetic; the saving in time remains to be measured.
No takes yet. Share an insight, caveat, or question.
David Fillmore (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: