Laguerre's Method

Author

Eric W. Weisstein
April 14, 2004

This notebook downloaded from http://mathworld.wolfram.com/notebooks/Algebra/LaguerresMethod.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/LaguerresMethod.html.

©2005 Wolfram Research, Inc. except for portions noted otherwise

Code

dLaguerre[p_,{x_,x0_}]:=Module[
{
P=Function[x,#][x0]&/@NestList[D[#,x]&,p,2],
g,h,
n=Exponent[p,x]
},
If[Abs[P[[1]]]<10^-10,
0,
g=P[[2]]/P[[1]];
h=g^2-P[[3]]/P[[1]];
Check[
Sort[n/(g+# Sqrt[(n-1)(n h-g^2)])&/@{-1,1},Abs[#1]<Abs[#2]&][[1]],
0]
]
]

LaguerreMethod[p_,{x_,x0_},n_]:=FixedPointList[#-dLaguerre[p,{x,#}]&,x0,n]

Derivation

Solve[{1/a+(n-1)/b==g,1/a^2+(n-1)/b^2==h},a,b]

FullSimplify[%]

Example

poly=1+2x+3x^2+4x^3;

N[Roots[poly==0,x],20]

LaguerreMethod[poly,{x,-1.},10]//InputForm