next up previous
Next: Inverting functions Up: Building additional iterators Previous: Other special cases.

Remove linear term heuristic.

At the beginning of this section we saw that an arbitrary iterator $x = \frac{F(x)+ax}{a+1}$ can be constructed for any $a \neq -1$. For a general iterator, if $F'(\alpha) = 0$ the iterator has superlinear convergence. Hence if we have any knowledge about the value of $F'(\alpha)$, we could set $a = -F'(\alpha)$ and improve the convergence order. Even if we only know an approximation of $F'(\alpha)$ then using such an a will mean that the value of the derivative of the new iterator near the root will be small and linear convergence will be accelerated. Knowledge about $F'(\alpha)$ could be inferred from F'(0)or from $F'(\pm \infty)$ when they exist. Iterators modified in this way are shown in table 12 with a $\dagger$.
 
Table 6: Simple iterators, modified to remove a possible linear term (-F'(0))
66644 random equations producing 20656 iterators
method failures
converged to a root 12.09% converged to a non-root .66%
failed 87.91% diverged 9.24%
average time .415 outside domain .65%
time per root 3.429 too many iterations 7.74%
    iterator fails 0.00%
iterators per equation .310 no iterators 81.70%

Table 6 shows the results of simulations of the simple iterators with a = F'(0). Surprisingly, the results are only marginally better (about 3% better) than the ones for simple iterators, and the roots found are typically the same. This heuristic produced significantly fewer iterators than the simple ones. Hence we do not recommend this heuristic to generate extra iterators.


next up previous
Next: Inverting functions Up: Building additional iterators Previous: Other special cases.
Gaston Gonnet
1998-07-08