TP7

Métodos Numéricos 2013 TRABAJO PRÁCTICO Nº7 Yésica Magnoli Ejercicio 4 (Guía de prácticos de clase): Estime el logari

Views 215 Downloads 6 File size 332KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli

Ejercicio 4 (Guía de prácticos de clase): Estime el logaritmo natural de 10 por medio de interpolación lineal. a) Interpole entre ln(8)=0.9030900 y ln(12)=1.791812 LINEAL: >> x=[8 12]; >> y=[0.9030900 1.0791812]; >> xi=[8:1:12]; >> in=interp1(x,y,xi,'linear'); >> log10=in(3) log10 = 0.99114 LAGRANGE: >> [xi,yi]=lagrange(x,y,3) xi = 8 10 12 yi = 0.90309 0.99114 1.0792 >> y=log10(10); >> error=((y-log10)/log10)*100 error = 0.89392%

b) Interpole entre ln(9)=0.9542425 y ln(11)=1.0413927. LINEAL: >> x=[9 11]; >> y=[0.9542425 1.0413927]; >> xi=[9:1:11]; >> i=interp1(x,y,xi,'linear'); >> log10=i(2) log10 = 0.99782

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli

LAGRANGE: >> x=[9 11]; >> y=[0.9542425 1.0413927]; >> xi=[9:0.1:11]; >> [xi,yi]=lagrange(x,y,3) xi = 9 10 11 yi = 0.95424 0.99782 1.0414

Se observa que en ambas interpolaciones, tanto por Lagrange como por interpolación lineal, el resultado es el mismo. También vemos, que en cuando más cerca del valor que queremos averiguar tomemos el intervalo, el error será menor.

>> y=log10(10); >> error=((y-log10)/log10)*100 error = 0.21848%

Ejercicio 5 (Guía de prácticos de clase): Los valores indicados en la tabla corresponden a la densidad del agua,  (gr/ml ), a diversas T(°C) : T (°C) 0 5 10 15 20 25 30 35 40 45 50 55 60

r (gr/ml) 0.0008679 0.9999919 0.9997279 0.9991265 0.9982323 0.9970739 0.9956756 0.9940594 0.9922455 0.99024 0.98807 0.98573 0.98324

Realícese la interpolación para diferentes valores de T usando interpolación lineal, por spline y polinomial (serie de potencias y Lagrange). Grafique los puntos y las interpolaciones obtenidas.

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli

INTERPOLACIÓN LINEAL: >> T=[0:5:60]; >>d=[0.0008679,0.9999919,0.9997279,0.9991265,0.9982323,0.9970739,0.9956756,0 .9940594,0.9922455,0.99024,0.98807,0.98573,0.98324]; >> Ti=[0:0.1:60]; >> di=interp1(T,d,Ti,'linear'); >> plot(Ti,di,'b')

LAGRANGE >> [Ti,di]=lagrange(T,d,200) >> hold on >> plot(Ti,di,'b')

POLINÓMICA >> p=polyfit(T,d,200); >> c=polyval(p,Ti); >> hold on >> plot(Ti,c,'g') SPLINE >> di=interp1(T,d,Ti,'spline'); >> hold on >> plot(Ti,di,'k')

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli

GRÁFICA

1.4 LINEAL LAGRANGE POLINÓMICA SPLINE

1.2

1

0.8

0.6

0.4

0.2

0

0

10

20

30

40

50

La gráfica anterior muestra las diferentes tipos de interpolaciones realizadas. Como conclusión se puede decir que ninguno de los métodos de interpolación es erróneo, sino cada uno responde de manera más satisfactoria que otros de acuerdo a la situación física de la cual queremos estudiar el comportamiento. Si de esta situación no se conoce o no se predice su comportamiento entonces debemos realizar todos estos tipos de interpolaciones hasta llegar al que mejor se aproxime al valor real de la curva.

60

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli

ALGORITMO DE INTERPOLACIÓN POR LAGRANGE (EN MATLAB)

function [xi,yi]=lagrange(x,y,n) %La función calcula el polinomio de lagrange para interpolar curvas. %ENTRADA: %x=vector de valores del eje x. %y=vector de valores del eje y. %n=números de puntos a estimar (vector). % %SALIDA %xi= vector de valores del eje x. %yi= vectores de valores valuados por interpolación de Lagrange. % %-------------------------------------------------------------------------m=length(x); xi=linspace(x(1),x(m),n); for k=1:n for i=1:m v(i)=1; for j=1:m if i~=j v(i)=v(i)*((xi(k)-x(j))/(x(i)-x(j))); end end end yi(k)=sum(v.*y); end

Métodos Numéricos 2013

TRABAJO PRÁCTICO Nº7

Yésica Magnoli