Michael Gardel
Nuovo Utente
|
Inserito il - 27/12/2014 : 12:57:29
|
salve tutti !
qualcuno mi può aiutare a implementare l'algoritmo del metodo di halley per il calcolo dello zero d'un polinomio in Matlab ? ci ho provato ma mi vengono sempre degli errori. mi dà errore anche la funzione feval. grazie
%%% %%function [x,X] = halley(f,df,d2f,x,tol,Maxit)
%%% %% %INPUT
% df(x) derivata prima della function, % ddf(x) derivata seconda della function, % x punto iniziale, % e toleranza, % n max iterazione.
%% OUTPUT:
% x soluzione dell'equazione % X vecteur approssimazioni.
%%%%% %%
function [x,X] = halley(f,df,d2f,x,tol,Maxit) X=x; fx =feval(f); for k=1:Maxit if abs(fx) < tol break; end; dfx = feval(df); d2fx = feval(d2f); d=dfx^2-reshape(d2fx*fx,size(dfx))/2; h = d(dfx*fx); x = x - h; X = [X,x]; fx=feval(f); if norm(h,inf) + norm(fx,inf) < tol break; end; end; end
|
|