Newton-Raphson algorithm stuck running after 4 or 5 iterations
Show older comments
Code:
%% initial setup
syms x real
f = x^5-2*x^3+4*x+2;
error_lim = 1e-5;
%% newton raphson
d_f = diff(f);
m = 5;
disp(m)
% iterate till root is found with certain accuracy
more off;
while true
e = m - subs(f,m)/subs(d_f,m);
err = abs(e-m);
fprintf("error = %g\n", err)
if err < error_lim
break
end
m = e;
fprintf("x_p = %g\n", m)
end
fprintf("the root newton raphson method is %g\n", e)
and the output is:
>> stat3_b
5
error = 0.972474
x_p = 4.02753
error = 0.774926
x_p = 3.2526
error = 0.620288
x_p = 2.63231
error = 0.505877
x_p = 2.12643
error = 0.439351
x_p = 1.68708
error = 0.467107
x_p = 1.21998
error = 0.968289
x_p = 0.251687
error = 0.817551
x_p = -0.565863
After 8th iterations matlab is busy, but nothing prints. It runs and gives appropriate solution of the function when initial m is set to 1 or 2 but problem arises when m is set to 3 or higher. What is wrong with the above allgorithm?
Thanks in advance.
Accepted Answer
More Answers (0)
Categories
Find more on Newton-Raphson Method in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!