Hello, I have to write a simple Newton function but it's not working:
%%file newton.m
function out = newton (f, df, x, eps)
k = 0;
h = f(x)/df(x); % error
while abs(h)>= eps && (k < 1000)
h = f(x)/df(x);
x = x - h;
k = k+1;
end
out = x;
end
Then I have to create a matrix which stocks the solutions of the newton's function and create a graph from this matrix but it's not working either:
%%file f1.m
function [out] = f1(x)
out = x.^3 - (6*x.^2)+ 11*x - 6;
end
%%file df1.m
function out=df1(x)
out=3*x.^2 - 12*x + 11;
end
Tab[]
for i = -1:0.05:5 %% I have to apply Newton on the values x = [-1:0.05:5]
Tab = [Tab [newton(i,f1,df1,10^(-8))]] %% error message: the variable Tab appears to change size on every loop iteration
end
plot(-1:0.05:5,Tab)
Can someone please help me?

 采纳的回答

Matt J
Matt J 2021-9-12
编辑:Matt J 2021-9-12
Tab=[];
for x = -1:0.05:5
Tab = [Tab , newton(@f1,@df1,x,10^(-8)) ]
end

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Programming 的更多信息

产品

版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by