[Shootout-list] Numerical medium-sized benchmarks

Sebastien Loisel Sebastien Loisel <sloisel@gmail.com>
Fri, 25 Mar 2005 09:13:35 -0800


> I was being quite serious about the MathWorld URL - we need a simple
> way to explain what's required, and provide some context.

Sorry, I guess I misunderstood you. Here's the MathWorld for the SIAM
100 digit challenge:

http://mathworld.wolfram.com/Hundred-DollarHundred-DigitChallengeProblems.html

For the numerical integration, I used two Gaussian quadrature methods:

http://mathworld.wolfram.com/GaussianQuadrature.html

One is of order 5, the other of order 7. Then, as with ODE solvers, I
used an "embedded" error estimate. I found a discussion of it here:

http://www.google.ch/url?sa=U&start=1&q=http://www.library.cornell.edu/nr/bookcpdf/c16-2.pdf&e=7385

I couldn't find it on mathworld.

For the larger benchmark, I numerically solve an ODE (like the n-body
problem) using the trapezoidal method.

http://mathworld.wolfram.com/TrapezoidalRule.html

The trapezoidal method is implicit, the implicit solver is the Newton iteration.

http://mathworld.wolfram.com/NewtonsMethod.html

To compute the y such that f(y)=0, Newton's method needs f'. Many
numerical algorithm replace f' with a finite difference, but I used
automatic differentiation to compute it. I didn't find an autodiff
page on mathworld, but the following pages may be helpful:

http://www-unix.mcs.anl.gov/autodiff/AD_Tools/
http://www.autodiff.org/
http://www.math.mcgill.ca/loisel/ad-matlab.pdf

Sebastien Loisel