halley | R Documentation |
Finding roots of univariate functions using the Halley method.
halley(fun, x0, maxiter = 500, tol = 1e-08, ...)
fun |
function whose root is to be found. |
x0 |
starting value for the iteration. |
maxiter |
maximum number of iterations. |
tol |
absolute tolerance; default |
... |
additional arguments to be passed to the function. |
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.
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
https://mathworld.wolfram.com/HalleysMethod.html
newtonRaphson
halley(sin, 3.0) # 3.14159265358979 in 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
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.