Sidi's generalized secant method
Sidi's method is a root-finding algorithm, that is, a numerical method for solving equations of the form . The method was published by Avraham Sidi.[1][2] It is a generalization of the secant method.
Algorithm
We call the root of , that is, . Sidi's method is an iterative method which generates a sequence of estimates of . Starting with k + 1 initial estimates , the estimate is calculated in the first iteration, the estimate is calculated in the second iteration, etc. Each iteration takes as input the last k + 1 estimates and the value of for those estimates. Hence the nth iteration takes as input the estimates and the values .
The number k must be 1 or larger: k = 1, 2, 3, .... It remains fixed during the execution of the algorithm. In order to obtain the starting estimates one could carry out a few initializing iterations with a lower value of k.
The estimate is calculated as follows in the nth iteration. A polynomial of degree k is fitted to the k + 1 points . With this polynomial, the next approximation of is calculated as
1 |
with the derivative of at . Having calculated one calculates and the algorithm can continue with the (n + 1)-th iteration.
The iterative cycle is stopped if an appropriate stop-criterion is met. Typically the criterion is that the last calculated estimate is close enough to the sought-after root .
To execute the algorithm effectively, Sidi's method calculates the interpolating polynomial in its Newton form.
Convergence
Sidi showed that if the function is (k+1)-times continuously differentiable in an open interval containing (that is, ), and the initial estimates are chosen close enough to , then the sequence converges to (i.e. the following limit holds: ).
Sidi furthermore showed that the sequence converges to of order , i.e.
with a rate of convergence > 0. The order of convergence is the only positive root of the polynomial
We have e.g. ≈ 1.6180, ≈ 1.8393 and ≈ 1.9276. The order approaches 2 from below if k becomes large: .
Related algorithms
Sidi's method reduces to the secant method if we take k = 1. In this case the polynomial is the linear approximation of around which is used in the n-th iteration of the secant method.
We can expect that the larger we choose k, the better is an approximation of around . Also, the better is an approximation of around . If we replace with in (1) we obtain that the next estimate in each iteration is calculated as
2 |
This is the Newton-Raphson method. It starts off with a single estimate so we can take k = 0 in 2. It does not require an interpolating polynomial but instead one has to evaluate the derivative in each iteration. Depending on the nature of this may not be possible or practical.
Once the interpolating polynomial has been calculated, one can also calculate the next estimate as a solution of instead of using 1. For k = 1 these two methods are identical: it is the secant method. For k = 2 this method is known as Muller's method. For k = 3 this approach involves finding the roots of a cubic function, which is unattractively complicated. This problem becomes worse for even larger values of k. An additional complication is that the equation will in general have multiple solutions and a prescription has to be given which of these solutions is the next estimate . Muller does this for the case k = 2 but no such prescriptions appear to exist for k > 2.
References
- ^ Sidi, Avram, Applied Mathematics E-notes 8 (2008), 115-123, http://www.math.nthu.edu.tw/~amen/2008/070227-1.pdf
- ^ The home page of Avraham Sidi at the Israel Institute of Technology is at Avraham Sidi
Category:Root-finding algorithms
This article, Sidi's generalized secant method, has recently been created via the Articles for creation process. Please check to see if the reviewer has accidentally left this template after accepting the draft and take appropriate action as necessary.
Reviewer tools: Inform author |