Metodo de Newton-Raphson modificado

Este metodo es para resolver raices multiples, la formula que representa el metodo de Newton-Raphson es la siguiente:
 
 


 
 

Programa en Matlab



%****************************************************************

%** Raices de Ecuaciones                                       **

%** Metodo de Newton-Raphson Modificado                   UdeG **

%**                                    Maestria en Electronica **

%** Ing. Jesus Norato Valencia                                 **

%** Materia: Metodos Numericos                                 **

%** Maestro: M.C. J.Gilberto Mateos Suarez            8/Dic/99 **

%****************************************************************

clear;

clc;

%****************************************************************

%** Se ingresan los datos de la ecuacion que deseamos          **

%** conocer sus raices, valor inicial de x y con que           **

%** porcentaje de error.                                       **

%****************************************************************
 
 
 
 

fprintf('\nCalculo de la raiz de una ecuacion por el metodo de Newton Rapson Modoficado\n\n');

f=input('Dame la funcion f(x) : ','s');

ff=input('Dame la derivada de funcion f(x) : ','s');

fff=input('Dame la senda derivada de funcion f(x) : ','s');

xi=input('Dame el valor inicial de x : ');

e=input('Dame el porciento del error : ');

ea=1000;

c=1;

x=xi;

%****************************************************************

%** Se realizan los calculos para determinar la raiz en la     **

%** siguiente seccion.                                         **

%****************************************************************
 
 

while ea>e
 
 

g=eval(f);

h=eval(ff);

k=eval(fff);

j=x-(g*h)/(h^(2)-(g*k));

ea=abs((j-x)/j*100);

x=j;

c=c+1;

end

%****************************************************************

%** Se imprimen resultados                                     **

%****************************************************************
 
 

fprintf('\n\n\n\nLa raiz exacta es: %d',j)

fprintf('\n\nNumero de iteraciones: %d',c);