The secant method of root-finding is an iterative method that is a variation on Newton's iteration formula. Newton's iterator is xn+1 = xn - f(xn)/f'(xn) The secant method replaces f'(xn) with a finite difference, so two starting values are required. f'(xn) ≈ (f(xn) - f(xn-1))/(xn - xn-1) So the iterator becomes xn+1 = xn - f(xn)*((xn - xn-1)/(f(xn) - f(xn-1))) Example Suppose we have f(x) = x^2 - 2, for which we would like to find a root. (We know that one root is √2 ≈ 1.4142.) Further suppose that we want to start with x0=1 and x1=2. x2 = x1 - (x1^2 - 2)*(x1 - x0)/((x1^2 - 2) - (x0^2 - x)) (the secant method iterator) x2 = x1 - (x1^2 - 2)/(x1 + x0) (factor the denominator & cancel the common factor from the numerator) x2 = (2+x0*x1)/(x0+x1) (we simplify the iterator first, so the steps below are not so difficult) Substituting our starting values, we get x2 = (2+1*2)/(1+2) = 4/3 (≈1.3333) x3 = (2 + (2)*(4/3))/(2 + 4/3) = 7/5 (= 1.4000) x3 = (2 + (4/3)*(7/5))/(4/3 + 7/5) = 58/41 (≈1.4146) x4 = (2 + (7/5)*(58/41))/(7/5 + 58/41) = 816/577 (≈1.4142)
Under some conditions, the method will not converge, so various refinements have been suggested by different authors.
Under some conditions, the method will not converge, so various refinements have been suggested by different authors.