Advertisement
SalahAdDinYusuf

Metodo de Aproximacion de Newton

Apr 17th, 2013
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.04 KB | None | 0 0
  1. %Jose Luis Sandoval Alaguna 258120
  2. %
  3. %Laboratorio 1 -> Ejercicio 2
  4. %Aproximacion de Newton
  5.  
  6. function [paprox,ddiv] = aprox_newton(xi,fxi)
  7.     %Construimos la Matriz
  8.     lon=length(xi); %Halla la longitud del vector
  9.     ddiv=zeros(lon);
  10.    
  11.     %Llenamos las dos primeras columnas con x y f(x)
  12.     for i=1:lon
  13.         ddiv(i,1)=fxi(i);
  14.     endfor
  15.    
  16.     %Hallamos diferencia dividida
  17.     for i=2:(lon+1)     %i=3 por que la columna tres contiene las diferencias divididas
  18.         for j=1:(lon-i+1)
  19.             ddiv(j,i)=(ddiv(j+1,i-1) - ddiv(j,i-1))/(xi(i+j-1)-xi(j));
  20.         endfor
  21.     endfor
  22.    
  23.     %Ahora creamos el vector paprox y lo llenamos
  24.     paprox=zeros(1,lon+1);
  25.     %P polinomio axiliar que denota los multiplicadores de las diferencias divididas
  26.     paux=zeros(1,lon+1);
  27.     paux(lon+1)=1;
  28.    
  29.     %Ahora resolvemos el polinomio de aproximacion
  30.     for i=1:lon
  31.         paprox=paux*ddiv(1,i) + paprox;
  32.         paux=conv(paux,[1,-xi(i)]); %Multiplica polinomios como si fueran vectores
  33.         paux = paux(2:(lon+2));
  34.     endfor
  35.     ddiv=[xi', ddiv]; %Retorna Matriz de Diferencias divididas incluyendo el vector X
  36. endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement