5th root with Newton-Raphson code
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
GEORGIOS BEKAS
am 11 Mär. 2018
Bearbeitet: John D'Errico
am 11 Mär. 2018
This is a code I have created to calculate numerically the 5th root. Something is wrong.
x = 0.05;
x_old = 500;
iter = 0;
while abs(x_old-x) > 10^-3 && x ~= 0
x_old = x;
x = x - (5*x*x*x*x);
iter = iter + 1;
end
0 Kommentare
Akzeptierte Antwort
GEORGIOS BEKAS
am 11 Mär. 2018
1 Kommentar
John D'Errico
am 11 Mär. 2018
Bearbeitet: John D'Errico
am 11 Mär. 2018
Yes. That will work. And very good of you to accept your own answer when I spent the time to find the bug in your code and explain how to fixit.
Weitere Antworten (1)
John D'Errico
am 11 Mär. 2018
Bearbeitet: John D'Errico
am 11 Mär. 2018
What is wrong? I'd start by pointing out that this is NOT Newton's method as you wrote it.
https://en.wikipedia.org/wiki/Newton%27s_method
Newton (or Newton/Raphson if you wish) has
xnew = xold - f(xold)/f'(xold)
So, if f(x) = x^5 - y, then what should you have written there? So, y is the value you want to compute a root of. Clearly, the 5th root of y will produce zero in f, as I wrote it.
So now you need to write the Newton iteration to use fas I wrote it, as well as the derivative of f.
1 Kommentar
Siehe auch
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!