1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A method to compute roots other than sqrt.

  1. Mar 11, 2006 #1
    is there a method to compute roots other than sqrt?, like 10th root or 13th root of a number?

    and, what are they?
     
  2. jcsd
  3. Mar 11, 2006 #2

    VietDao29

    User Avatar
    Homework Helper

    This one is a good candidate for Newton's method. We choose an arbitrary value x0, then use:
    [tex]x_{n + 1} = x_n - \frac{f(x_{n})}{f'(x_{n})}[/tex].
    And then let n increases without bound to obtain the answer.
    [tex]x = \lim_{n \rightarrow \infty} x_n[/tex].
    For example:
    Find [tex]\sqrt[3]{4}[/tex]
    Let [tex]x = \sqrt[3]{4} \Rightarrow x ^ 3 = 4 \Rightarrow x ^ 3 - 4 = 0[/tex]
    We then define f(x) := x3 - 4.
    Say, we choose x0 = 1, plug everything into a calculator, use the formula:
    [tex]x_{n + 1} = x_n - \frac{x_{n} ^ 3 - 4}{3 x_{n} ^ 2}[/tex].
    and we'll have:
    x1 = 2
    x2 = 1.6666667
    x3 = 1.5911111
    x4 = 1.5874097
    x5 = 1.5874010
    x6 = 1.5874010
    ...
    So the value of xn will converge quite fast to [tex]\sqrt[3]{4}[/tex], as n tends to infinity.
     
  4. Mar 11, 2006 #3

    matt grime

    User Avatar
    Science Advisor
    Homework Helper

    Of course, the most obvious question is 'what is this method you have for computing arbitrary square roots'
     
  5. Mar 13, 2006 #4

    jim mcnamara

    User Avatar
    Science Advisor
    Gold Member

    FWIW - Logarithms work well for this. Especially if you're a programmer, and are happy with the inherent imprecision of floating point numbers.

    If you take
    result = (log(x) / n)

    and then convert the result back ie.,

    nth_root = exp(result)

    you can generate all roots of x.
     
  6. Mar 13, 2006 #5
    If you're doing fractions then you can use Newton's binomial expansion

    For instance, work out the fifth root of 31 by expanding [tex](1+x)^{\frac{1}{5}}[/tex] with x = -1/32

    [tex](1+x)^{\frac{1}{5}} = 1 + \frac{1}{5}x + \frac{1}{5}\left(-\frac{4}{5}\right)\frac{1}{2!}x^{2} + ....[/tex]

    Put in x = -1/32 (which gives excellent convergence) to get

    [tex]\left( \frac{31}{32} \right)^{\frac{1}{5}} = 1 + \frac{1}{5}\left(-\frac{1}{32}\right) + \frac{1}{5}\left(-\frac{4}{5}\right)\frac{1}{2!}\left(-\frac{1}{32}\right)^{2} + .... = 1 - \frac{1}{160} - \frac{1}{12800} = \frac{12719}{12800}[/tex]

    [tex]\frac{(31)^{\frac{1}{5}}}{2} = \frac{12719}{12800}[/tex]

    [tex](31)^{\frac{1}{5}} = \frac{12719}{6400}[/tex]

    In decimal form this is 1.9873475. Raise it to the 5th power and get 31.00023361. A nice approximation for 2 minutes work.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?