Netwon Method using MATLAB

Hi ,
I am trying to make newtons Method work.
I want it to work in a specific way , somthing like this
[s,fc] = mynewton (@somethingfunction,1,10^-4);
function [fv , fpv ] = somethingfunction(x)
% MYFUN Function to test Newton
%
fv = x^2 - 10;
fpv = 2*x;
end
function [x ]= mynewton (somethingfunction,x0 , tol )
fncon=1;
[f(1), g(1)] = myfun(x0);
s(1)=x0 ;%nitial point
for i=1:1000 %it should be stopped when tolerance is reached
[f(i), g(i)] = myfun(s(i));
s(i+1) = s(i) - f(i)/g(i);
if( abs(s(i+1)-s(i)/s(i))>tol) % tolerance
disp(double(s(i+1)));
break
end
end
if fncon
fprintf(' %16.16f \n',s(end))
end
end

 Risposta accettata

Ameer Hamza
Ameer Hamza il 7 Giu 2020
Condition should be
if(abs(s(i+1)-s(i)/s(i))<tol)
% ^ less than operator

Più risposte (0)

Categorie

Scopri di più su Get Started with MATLAB in Centro assistenza e File Exchange

Prodotti

Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by