R: Halley's Root Finding Mathod

halley {pracma} | R Documentation

## Halley's Root Finding Mathod

### Description

Finding roots of univariate functions using the Halley method.

### Usage

    halley(fun, x0,
            maxiter = 100, tol = .Machine$double.eps^0.5)

### Arguments

`fun` | function whose root is to be found.
`x0` | starting value for the iteration.
`maxiter` | maximum number of iterations.
`tol` | absolute tolerance; default `eps^(1/2)`

### Details

Well known root finding algorithms for real, univariate, continuous functions; the second derivative must be smooth, i.e. continuous. The first and second derivative are computed numerically.

### Value

Return a list with components `root`, `f.root`, the function value at the found root, `iter`, the number of iterations done, and the estimated precision `estim.prec`

### References

http://mathworld.wolfram.com/HalleysMethod.html

### See Also

`newtonRaphson`

### Examples

    halley(sin, 3.0)        # 3.14159265358979 in the 3 iterations
    halley(function(x) x*exp(x) - 1, 1.0)
                            # 0.567143290409784 Gauss' omega constant

    # Legendre polynomial of degree 5
    lp5 <- c(63, 0, -70, 0, 15, 0)/8
    f <- function(x) polyval(lp5, x)
    halley(f, 1.0)          # 0.906179845938664

[Package pracma version 2.0.4 Index]