Я хотел бы реализовать следующее: я написал сценарий, который выполняет алгоритм Ньютона Рафсона для моей конкретной функции. Теперь я хотел бы написать сценарий, который повторяется, используя предыдущий найденный ноль в качестве следующей начальной точки:
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. Когда я реализую x (i) с начальным значением y0, newton (x, y) даст мне значение. Затем я хочу, чтобы скрипт снова выполнил newton(x,y) со значением x(2) для x и предыдущим найденным y0. Так что мне нужен какой-то цикл, но я не могу это сделать.. :(
EDIT
Это моя 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
? - person Chris Taylor   schedule 17.01.2014for
илиwhile
? 2.) Где вы хотите распечатать количество итераций иy0
значений? На экране, в файле? - person Schorsch   schedule 18.01.2014