Stuck at coding newton-Rapson method
Show older comments
I inputed the number exp(-x) into an input and 3 into x0
but the Matlab says that Index exceeds the number of array elements, index must not exceed 1
Could you solve this problem for me, Thanks in advance.
clear all
clc
syms x;
fun=input('Enter the function as a variable of x');
f=inline(fun);
f2=diff(f(x));
x0=input('Enter the initial value of interval');
z=[];
error=10^-8;
tol=inf;
i=0;
z(1)=x0;
while tol>error
i=i+1;
z(i+1)=z(i)-(f(z(i))/f2(z(i)));
error=(z(i+1)-z(i))/z(i+1);
end
1 Comment
Why learn how to code using deprecated functions? https://www.mathworks.com/help/matlab/ref/inline.html

Answers (1)
KSSV
on 10 Apr 2022
Replace this line:
f2=diff(f(x));
with
f2=inline(diff(f(x)));
1 Comment
seoung gi Sin
on 10 Apr 2022
Categories
Find more on Matrix Indexing 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!