
Hello, all, I'm pleased to announce a small Runge-Kutta library for numerically solving ordinary differential equations, which I'm hereby unleashing upon an unsuspecting world. The README is as follows: This is a small module collecting about a dozen Runge-Kutta methods of different orders, along with a couple of programs to exercise them. Build and run testrk, volterra, volterra2, and arenstorf: o testrk exercises all of the methods in a non-adaptive way, solving a test problem with a known analytic solution, to check convergence. (This was what first indicated that there was a problem with the Fehlberg 7(8) listing in HNW.) o volterra uses a non-adaptive method to solve the Lotka-Volterra equations from t=0 to t=40: either from a built-in starting point, or from a starting point specified on the command line. o volterra2 does the same, except it uses an adaptive solver o arenstorf solves the restricted 3-body problem (earth+moon+satellite) using an adaptive solver with some specific initial conditions which yield periodic orbits The volterra2 and arenstorf examples use an "oracle" function to decide what is a good step size. Right now that oracle function is in each test file; arguably it should be in the RungeKutta module. Eventually it will be, but I haven't spent much time yet on making that oracle especially good. I have so far only tested it with ghc 6.8.3 on MacOS 10.3.9 (powerPC), but I know of no reason why it wouldn't work with other versions and OSs. It's BSD licensed, in fact I stole the LICENSE file from ghc (and filed off the serial numbers). I'm afraid I haven't messed with cabal much yet, so it's not cabalized; neither is it uploaded to hackage, as I have no account there. If someone wants to do either of those, please feel entirely free to do so. In addition to attaching a tarball to this message, I'm also putting this onto my (sadly neglected) web site: it will live at http://www.korgwal.com/software/rk-1.0.0.tar.gz. Enjoy! Uwe