ozone_ode_test, an Octave code which calls ozone_ode(), which defines a stiff system of four ordinary differential equations (ODE) that simulate the daily variation in atmospheric ozone concentration.
This problem apparently was too difficult for the Octave versions of ode23() or ode45(), or for my version of midpoint(). Instead, I had to switch to the lsode() solver, which in turn uses a nonstandard arrangement for the arguments.
The computer code and data files described and made available on this web page are distributed under the MIT license
ozone_ode, an Octave code which defines a stiff system of four ordinary differential equations (ODE) that simulate the daily variation in atmospheric ozone concentration.