Understand rates of convergence for root finding methods
masterRoot finding methods are characterized by their order of convergence $q$ (where $e_{i+1} \approx e_i^q$) and their asymptotic efficiency $q^{1/p}$, where $p$ is the number of function evaluations per step.
When choosing a method, consider the trade-off between the convergence rate and the number of function evaluations (F evals) required per iteration. For example, Newton's method has quadratic convergence ($q=2$) but requires 2 function evaluations, whereas the Secant method has an order of $\varphi \approx 1.618$ but only requires 1 evaluation per step.
Common method types include:
- Classical: Methods like
Newton,Halley, andSuperHalleythat typically use derivatives. - Derivative Free: Methods like
Secant,Steffensen, andOrder16that do not require derivatives. - Bracketing: Methods like
Brent,ITP, andRiddersthat work within a known interval $[a, b]$. - Robust: Methods like
SchroderorThukraldesigned for stability.
| Type | Method | Order | F evals | Asymptotic efficiency |
|:--------------- | :--------------------------- | :--------------------- | :------ | :------------------------------------ |
| Hybrid | Order0 | | | ``\approx 1.618\dots`` |
| Derivative Free | Secant | ``\varphi=1.618\dots`` | ``1`` | ``1.618\dots`` |
| Derivative Free | Steffensen | ``2`` | ``2`` | ``1.414\dots`` |
| Derivative Free | Order5 | ``5`` | ``4`` | ``1.495\dots`` |
| Derivative Free | Order8 | ``8`` | ``4`` | ``1.681\dots`` |
| Derivative Free | Order16 | ``16`` | ``5`` | ``1.718\dots`` |
| Classical | Newton | ``2`` | ``2`` | ``1.414\dots`` |
| Classical | Halley | ``3`` | ``3`` | ``1.442\dots`` |
| Classical | QuadraticInverse | ``3`` | ``3`` | ``1.442\dots`` |
| Classical | ChebyshevLike | ``3`` | ``3`` | ``1.442\dots`` |
| Classical | SuperHalley | ``3`` | ``3`` | ``1.442\dots`` |
| MultiStep | LithBoonkkampIJzerman{S,D} | ``p^s=\sum p^k(d+\sigma_k)`` | ``D+1`` | varies, ``1.92\dots`` max |
| Bracketing | BisectionExact | ``1`` | ``1`` | ``1`` |
| Bracketing | A42 | ``(2 + 7^{1/2})`` | ``3,4`` |``(2 + 7^{1/2})^{1/3} = 1.6686\dots`` |
| Bracketing | AlefeldPotraShi | | ``3,4`` | ``1.618\dots`` |
| Bracketing | Brent | ``\leq 1.89\dots`` | ``1`` | ``\leq 1.89\dots`` |
| Bracketing | ITP | ``\leq \varphi`` | ``1`` | ``\leq \varphi`` |
| Bracketing | Ridders | ``1.83\dots`` | ``2`` | ``1.225\dots`` |
| Bracketing | RegularFalsi{:classic} | ``1`` | ``1`` | ``1`` |
| Bracketing | RegularFalsi{:Illinois} | ``1.442\dots`` | ``1`` | ``1.442\dots`` |
| Bracketing | RegulaFalsi{:AndersonBjork} | ``1.681\dots`` | ``1`` | ``1.681\dots`` |
| Bracketing | RegulaFalsi{:Ford4} | ``1.681\dots`` | ``1`` | ``1.681\dots`` |
| Bracketing | ModAB | ``≈1.7\dots`` | ``1`` | ``1.7\dots`` |
| Bracketing | LithBoonkkampIJzermanBracket | ``2.91`` | ``3`` | ``1.427\dots`` |
| Robust | King | ``\varphi=1.618\dots`` | ``2`` | ``1.272\dots`` |
| Robust | Esser | ``2`` | ``3`` | ``1.259\dots`` |
| Robust | Schroder | ``2`` | ``3`` | ``1.259\dots`` |
| Robust | Thukral3 | ``3`` | ``4`` | ``1.316\dots`` |
| Robust | Thukral4 | ``4`` | ``5`` | ``1.319\dots`` |
| Robust | Thukral5 | ``5`` | ``6`` | ``1.307\dots`` |