Boost logo

Boost Users :

Subject: Re: [Boost-users] [Math] advice using brent_find_minima()
From: John Maddock (boost.regex_at_[hidden])
Date: 2014-12-11 11:00:56


> OK, now I got it!
> You have brent algorithm for finding the minima, but not brent algorithm
> for finding the root.
>
> I don't have derivative for f, so how does toms748_solve compare to [1]?

They are very similar and differ only in the interpolation methods used,
see
http://na.math.kit.edu/alefeld/download/1995_Algorithm_748_Enclosing_Zeros_of_Continuous_Functions.pdf
for the details, but TOMS748 claims to be the best of the bunch - albeit
I suspect for many problems there is little to choose between them.
Certainly TOM748 seems to be very robust, and for most functions will
find the root to double precision in about 8-10 calls to f() provided
the starting bounds aren't too far apart. Of course in the extreme case
that your function is basically a square wave, you can't do better than
bisection, which all of these algorithms ultimately fall back to.

John.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net