Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
% Autor: Thiago PX % % Entradas % - f é a função a ser analisada. % - df é a derivada de f. % - x1 é o chute inicial % - epsilon é a máxima variação entre estimativas % - maxit é o número máximo de iterações % % Saídas % - xns (solução) function xns = NewtonRoot(f, df, x1, epsilon, maxit) oldx = x1; disp('iteracao xi |f(xi)| |xi - xi-1|/xi-1'); for i = 1:maxit newx = oldx - f(oldx)/df(oldx); err = abs((newx - oldx)/oldx); fprintf('%5i %15.6f %13.6f %14.6f \n', i+1, newx, abs(f(newx)), err); if err < epsilon xns = newx; break; end if i == maxit fprintf('Solucao não obtida apos %i iteracoes', maxit); break; end; oldx = newx; end end
Compartilhar