% Newton modszer % cel: x = cos(x) mikor? % ehelyett: cos(x) - x = 0 megoldasat keressuk a = 0 b = 1 function y = f1(x) y = cos(x) - x; endfunction function y = df1(x) y = -sin(x) - 1; % fejben kiszamol, kodba "beleegetjuk" endfunction function y = d2f1(x) y = -cos(x); endfunction % feltetelek ellenorzese t = 0:0.05:1; plot(t,df1(t),t,t*0) plot(t,d2f1(t),t,t*0) f1(a) f1(b) d2f1(a) d2f1(b) %f1(a) > 0, d2f1(a) < 0 -> a-bal indul az iteracio x = a for i = 1:5 x = x - f1(x)/df1(x) f1(x) endfor %% alternativ: x = 0 % nem preciz hibakortlat, de numerikusan megelegszunk vele while abs(f1(x)) > 0.01 x = x - f1(x)/df1(x) f1(x) endwhile