Laboratorio Métodos de Interpolación

9
LABORATORIO 3 METODOS DE INTERPOLACIÓN (Por método de Newton y Lagrange) Integrantes del grupo: Juan Camilo Chavarro, Cód. 285876 Juan Camilo Espindola, Cód. 235068 UNIVERSISDAD NACIONAL DE COLOMBIA

description

En este laboratorio se describen y elaboran algunos metodos de interpolación usando el programa scilab

Transcript of Laboratorio Métodos de Interpolación

LABORATORIO 3METODOS DE INTERPOLACIN (Por mtodo de Newton y Lagrange)

Integrantes del grupo:

Juan Camilo Chavarro, Cd. 285876

Juan Camilo Espindola, Cd. 235068

UNIVERSISDAD NACIONAL DE COLOMBIAFACULTAD DE INGENIERABOGOT DC2014Introduccin

En la prctica muchos fenmenos naturales son modelados por una funcin f(x), la cual es encontrada por el ajuste del comportamiento del sistema a dicha curva, con ciertas observaciones del mismo, las cuales determinan la naturaleza del ajuste. En este documento se trabajaran con observaciones precisas, por lo que la funcin ser hallada por los mtodos de interpolacin. Los que se aplican en este documento son el Polinomio de Newton y el de Lagrange. Tambin se muestran los grficos de las funciones encontradas.

Desarrollo de las Interpolaciones

1) Se propone obtener el polinomio de Lagrange que pase por los puntos que aparecen en la tabla 1.

x (hora)f(x) (grados C)

1219.35

1319.25

1418.15

1517.05

1615.95

Tabla 1. Puntos de la funcin a interpolar

Primero se realiz el cdigo en Scilab para el mtodo de Lagrange, el cual se muestra a continuacin.

clearclcfunction [P]=lagrang(X, Y)//con X centros,Y valores;//P es el polinomio de lagrange

n=length(X);x=poly(0,"x");P=0;

for i=1:n,

L=1; for j=[1:i-1,i+1:n] L=L*(x-X(j))/(X(i)-X(j)); end P=P+L*Y(i);end

endfunction//////////////////////////////

disp(" ** Laboratorio Tres - Grupo 04 ** ") disp("Codigos: 235068 285876")ww=getdate();mprintf( "AA:%d ,MM:%d ,DD:%d a las HH:%d ,MM:%d ,SS:%d ",ww(1),ww(2),ww(6),ww(7),ww(8),ww(9));

disp("Con los puntos dados x");X = [12;13;14;15;16];disp(X = [12;13;14;15;16]);disp("Y los valores y");Y = [19.35;19.25;18.15;17.05;15.95];disp(Y = [19.35;19.25;18.15;17.05;15.95]);disp("EL Polinomio de lagrange correspondiente es ");P=lagrang(X,Y);disp(P=lagrang(X,Y));

xi=[10.5:0.2:17.5]; //Se procede a grficar el polinomioyi=horner(P,xi);plot(xi,yi,'r-',X,Y,'b-');xtitle('Polinomio de Lagrange', 'Hora', 'Grados C');

Al ejecutar el cdigo se obtuvo el resultado mostrado en la figura 1.

Fig. 1. Resultado de la ejecucin cdigo en la ventana de comando de Scilab.

El grfico del polinomio que se obtuvo en Scilab se muestra en a figura 2, se hizo con ayuda de la funcin plot(xi,yi). Adems se muestran los puntos observados de la tabla 1.

Fig. 2. Curva del polinomio de Lagrange encontrado (Rojo) y las observaciones (Azul).

2) Se propone obtener el polinomio de Newton que pasa por los puntos dados en la tabla 2.

Xf(x)

13.51.0

14.51.23607

15.51.44949

16.51.64575

17.51.82843

Tabla 2. Puntos de la funcin a interpolar por polinomio de newton

Se realiz el cdigo en Scilab para el mtodo de Newton, el cual se muestra a continuacin.

clearclcfunction [P]=polnewton(X, Y)

n = length(X);D = zeros(n, n);D(:, 1) = Y;P = 0;// Se Forma la tabla de diferencias divididasfor j = 2:n for k = j:n D(k, j) = (D(k, j-1) - D(k-1, j-1)) / (X(k) - X(k-j+1)); endend

// Construccin del polinomio interpolante de Newton a partir de la matriz Dfor k = 2:1:n C = poly(X(1:k-1),"x"); P = P + D(k,k)*C;end

P = P + D(1,1);

endfunction///////////////////////

disp(" ** Laboratorio Tres - Grupo 04 ** ") disp("Codigos: 235068 285876")ww=getdate();mprintf( "AA:%d ,MM:%d ,DD:%d a las HH:%d ,MM:%d ,SS:%d ",ww(1),ww(2),ww(6),ww(7),ww(8),ww(9));

disp("Con los puntos dados x");X = [13.5;14.5;15.5;16.5;17.5];disp(X = [13.5;14.5;15.5;16.5;17.5]);disp("Y los valores y");Y = [1;1.23607;1.44949;1.64575;1.82843];disp(Y = [1;1.23607;1.44949;1.64575;1.82843]);disp("EL Polinomio de Newton correspondiente es ");P=polnewton(X, Y);disp(P=polnewton(X, Y));

xi=[11:0.2:19]; //Se procede a grficar el polinomioyi=horner(P,xi);plot(xi,yi,'r-',X,Y,'b-');xtitle('Polinomio de Newton');

Al ejecutar el cdigo se obtuvo el resultado mostrado en la figura 3.

Fig. 3. Resultado de la ejecucin del cdigo del Polinomio de Newton en la ventana de comandos de Scilab.

El grfico del polinomio que se obtuvo en Scilab para el polinomio de Newton se muestra en a figura 4, se hizo con ayuda de la funcin plot(xi,yi). Adems se muestran los puntos observados de la tabla 2.

Fig. 4. Curva del polinomio de Newton encontrado (Rojo) y las observaciones (Azul).

Conclusiones

Por medio de la grfica se puede comprobar que tan preciso resulta el mtodo de interpolacin al observar que tanto se ajusta dicha curva a los datos. Se verifica con xito la precisin de los mtodos al ver que tienden a acerarse bastante a los puntos. Se puede observar que los polinomios se acercan de forma suave a las observaciones, en el caso del primer problema cumple correctamente con el comportamiento de la temperatura, modelando de forma satisfactoria dicho sistema. Con los conceptos interiorizados, el procedimiento realizado y las funciones encontradas se pudo contemplar la importancia de estos mtodos en la ingeniera, la cual se materializa gracias a la conexin que hace el modelamiento de sistemas entre el mundo fsico y la teora.