【发布时间】:2014-01-17 18:06:04
【问题描述】:
我想实现以下内容:我为我的特定功能编写了一个执行 Newton Raphson 算法的脚本。现在我想编写一个脚本,使用先前找到的零作为我的下一个初始起点重复自身:
x=zeros(1,31);
for i=1:31
x(i)=(i-1)/10;
end
y0=0;
for i=1:length(x)
y0=newton(x(i),y0)
end
所以,我希望这个脚本执行 newton(x,y0)。所以它将从 newton(0,0) 开始,它会找到一个新值 y0,然后我希望脚本执行 newton(0.1,y0) 等。我希望这些值与数量一起显示在表格中迭代需要找到 y0 的值。
我希望我的问题很清楚。感谢您的问候。
再次:我有一个向量 x,其中元素为 0、0.1、0.2、...、3 当我用初始值 y0 实现 x(i) 时,newton(x,y) 会给我一个值。然后我希望脚本再次执行 newton(x,y) 值 x(2) 为 x 和前一个找到 y0。所以我需要某种循环,但我无法完成它.. :(
编辑
这是我的newton-函数:
function nulpunt=newton(x,y0)
tolerantie=1e-8;
iteraties=0;
while (abs(functie1(y0,x))>tolerantie)
y0=y0-functie1(y0,x)/afgeleide_functie1(y0);
iteraties=iteraties+1;
end
if iteraties==100;
fprintf('Maximaal aantal iteraties bereikt')
else
fprintf('De benadering van het nulpunt y*(%.2f) is %.4f gevonden in %d iteraties.\n',x,y0,iteraties)
end
end
【问题讨论】:
-
您的函数是否还返回查找
y0所需的迭代次数? -
1.) 您是否考虑过将函数放在
for或while循环中? 2.) 您希望在哪里打印迭代次数和y0值?在屏幕上,在文件中? -
在屏幕上,我该如何设置?
标签: matlab implicit newtons-method