Jump to content

Ridders' method

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Esov (talk | contribs) at 17:41, 27 May 2013 (Method). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In numerical analysis, Ridders' method is a root-finding algorithm based on the false position method and the use of an exponential function to successively approximate a root of a function f. The method is due to C. Ridders (1979).

Ridders' method is simpler than Brent's method but Press et al. (2007) claim that it usually performs about as well. The formula below converges quadratically when the function is well-behaved, which implies that the number of additional significant digits found at each step approximately doubles; but the function has to be evaluated twice for each step, so the overall order of convergence of the method is √2. If the function is not well-behaved, the root remains bracketed and the length of the bracketing interval at least halves on each iteration, so convergence is guaranteed.

Method

Press et al. (2007) describe the method as follows. Given two values of the independent variable, x1 and x2, which are on two different sides of the root being sought, the method begins by evaluating the function at the midpoint x3 between the two points. One then finds the unique exponential function of the form eax which, when multiplied by f, transforms the function at the three points into a straight line. The false position method is then applied to the transformed values, leading to a new value x4, between x1 and x2, which can be used as one of the two bracketing values in the next step of the iteration. The other bracketing value is taken to be x3 if f(x3) has the opposite sign to f(x4), or otherwise whichever of x1 and x2 has f(x) of opposite sign to f(x4).

The method can be summarized by the formula (equation 9.2.4 from Press et al.)

References

  • Press, WH; Teukolsky, SA; Vetterling, WT; Flannery, BP (2007). "Section 9.2.1. Ridders' Method". Numerical Recipes: The Art of Scientific Computing (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.
  • Attention: This template ({{cite doi}}) is deprecated. To cite the publication identified by doi:10.1109/TCS.1979.1084580, please use {{cite journal}} (if it was published in a bona fide academic journal, otherwise {{cite report}} with |doi=10.1109/TCS.1979.1084580 instead.
  • Kiusalaas, Jaan (2010). Numerical Methods in Engineering with Python (2nd ed.). Cambridge University Press. pp. 146–150. ISBN 978-0-521-19132-6.