Talk:Bulirsch–Stoer algorithm

relevant chat log:

(person A) 18:28 too bad (this algorithm) is not any good but yes, it's cool (there's a long history of the mathematical community taking a long time to realize it's bad, because of a simple book that said the wrong thing )

(person B) 18:28 no good at all? I've never had reason to try it ouch ^^

(person A) 18:29 it got popular early on for two reasons

(person B) 18:29 1) mathematicians went "wow, that's neat" ?

(person A) 18:29 1) arbitrary order, and mathematicians assumed that higher order always meant less error. That's only true asymtopically. 2) Numerical Recipes was published by a non-domain expert with code examples, and said that it was the best. Engineers and scientists listened. 3) It is pretty cool

(person B) 18:30 ^^

(person A) 18:30 but lots of theory later, people realized that you don't want infinitesimal timesteps

(person A) 18:30 because well, that's a lot of timesteps

(person B) 18:32 well, I can understand nr. 1, though nr. 2 is a shame; one of those things one would hope doesn't happen in the scientific community

(person A) 18:33 https://www.stat.uchicago.edu/~lekheng/courses/302/wnnr/nr.html

(person B) 18:33 (too often, which it probably doesn't) ^^

(person A) 18:33 [Since Shampine wrote this, the authors of NR have consulted a worker active in the field. Unfortunately, a great many other experts in the field consider the advice they got to be very poor indeed -- extrapolation methods are almost always substantially inferior to Runge-Kutta, Taylor's series, or multistep methods.] There's a better way of thinking about extrapolation techniques essentially, they are a bad arbitrary order Runge-Kutta method If you pick an order then at that order it actually is an Runge-Kutta method if you check the number of steps, there are far more steps than optimal. And if you check the coefficient of the highest order error term, its really bad so it's essentially just a series of bad RK methods. however, if your necessary tolerance is really low, then a higher order RK method will always do better but the definition of "low" seems to be really low like, 5th order does well until like 1e-5, then something like 8th order does well until you need sub 1e-16 accuracy, 14th order still beats extrapolation even at accuracies like 1e-40

(person B) 18:36 being equivalent with some RK-method really says it all; would be weird if it just happened to coincide with the optimal RK at all (or any) order ^^

(person A) 18:37 but order still wins out if you go low enough so maybe, somewhere down in like a tolerance of 1e-60, extrapolation is better than all of the Runge-Kutta methods ever created.

(person B) 18:37 okay, so it could still become useful some day, maybe

(person A) 18:38 But, for these reasons, I haven't implemented it in DifferentialEquations.jl to test it yet

(person B) 18:38 well, thanks for the info, interesting stuff

(person A) 18:38 it's a facinating tidbit of mathematical history how it's still in textbooks to this day.