Está en la página 1de 2

function [C,L] = PintLagrange_Polyval(X,Y) %DATOS DE ENTRADA % X -> vector que contiene la lista de nodos (abscisas) % Y -> vector que

contiene la lista de ordenadas %RESULTADOS % C es un vector fila que contiene los coeficientes del polinomio interpolador % % % de Lagrange preparado para evaluarlo con la funcion polyval de MatLab. L es una matriz que contiene los coeficientes de las funciones (polinomios) cardinales de Lagrange por filas tambien para ser evaluadas con polyval.

w = length(X); n=w-1; L=zeros(w,w); %CONSTRUCCION DE LAS FUNCIONES CARDINALES DE LAGRANGE % La funcion de MatLab poly(a) construye el polinomio monico (x-a) % La funcion de MatLab conv(A,B) multiplica los polinomios A y B for k=1:n+1 V=1; for j=1:n+1 if k~=j V=conv(V,poly(X(j)))/(X(k)-X(j)); end end L(k,:) = V; end %CALCULO DE LOS COEFICIENTES DEL POLINOMIO INTERPOLADOR C=Y*L;

------------------------------------------------------

function [C,L]=lagran(X,Y) %variables de entrada % - X es un vector que contiene las % abcisas de los puntos % - Y es un vector que contiene las % ordenadas de los puntos %variables de salida % - C es una matriz cuyas entradas son % los coeficientes del polinomio % de interpolacin de Lagrange (VECTOR COLUMNA) % - L es una matriz cuyas entradas son % los coeficientes del polinomio % de interpolacin de Lagrange w=length(X); n=w-1; L=zeros(w,w); %Formacin de los coeficientes del polinomio for k=1:n+1 V=1;

for j=1:n+1 if k~=j V=conv(V,poly(X(j)))/(X(k)-X(j)); end end L(:,k)=V; end %Clculo de los coeficientes del polinomio %interpolador de Lagrange L C=L*Y'