analisisnumericomt309b.files.wordpress.com · web viewinterpolaciÓn polinomial interpolar un...

13

Click here to load reader

Upload: hathuy

Post on 18-May-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

INTERPOLACIÓN Y AJUSTES DE CURVAS

En muchos estudios de campo y trabajos experimentales se registran conjunto de pares de datos:

Estos datos pueden proceder de procesos “muy confiables” y seguros (por ejemplo provenientes de la discretización de una función determinada) o pueden contener grados considerables de errores o “ruido”.

En todo caso, para estudiar el fenómeno científicamente y poder establecer estimaciones confiables, se requiere determinar relaciones funcionales que pueden ser: polinómicas, exponenciales, logarítmicas, trigonométricas, etcétera.

INTERPOLACIÓN En el caso de contar con datos muy precisos, la relación funcional se construye mediante técnicas llamadas de interpolación, cuya característica fundamental es que la función obtenida coincide con los datos objeto de estudio. Esto es, P(ti) = yi donde P es la relación funcional construida.

Se interpola un conjunto de datos o una función con el objeto de estimar el valor de y para algún valor dado de tk que no está registrado en la data original.

AJUSTE DE CURVAS. Si los datos que han de procesarse exhiben un grado de error significativo o “ruido”, las técnicas que se aplican para determinar la relación funcional que describe el comportamiento de los datos, se llaman ajuste de curvas o aproximación de los datos por funciones. Estas técnicas se caracterizan por que no necesariamente la función obtenida coincide con los datos procesados, si no que los aproxima minimizando al máximo el error asociado. Es decir f(ti) ≈ yi, donde f es la curva que ajusta a los datos.

Page 2: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

INTERPOLACIÓN POLINOMIAL

Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data original, de tal manera que a través de esta se pueda estimar confiablemente un valor o valores de la variable dependiente, para un valor o valores de la variable independiente dentro del rango de los datos, no registrado en los datos originales. Generalmente las relaciones funcionales que se construyen son de tipo polinómicas. En tal caso hablamos de interpolación polinomial.

Teorema (Aproximación de Weierstrass)

Sea f una función continua en [a, b]. Para cada ε>0 existe un polinomio P(x) con la propiedad:

, para toda x en [a, b]

INTERPOLACIÓN POLNOMIAL POR DIFERENCIAS DIVIDIDAS DE NEWTON

xi yi Orden cero Orden uno Orden dos Orden tresf[xi] f[xi, xi+1] f[xi, xi+1, xi+2] f[xi, xi+1, xi+2,xi+3]

x0 y0 f[x0]

Page 3: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

f[x0, x1] =

x1 y1 f[x1]

f[x1, x2] =

x2 y2 f[x2]

f[x2, x3] =

x3 y3 f[x3]

Para n+1 puntos: xi x0 x1 x2 … xn

yi y0 y1 y2 … yn

la diferencia dividida de mayor orden es de orden n. Está dada por:

Generalizando, se tiene que la k-ésima diferencia dividida de Newton involucra k+1 puntos y está dada por:

El polinomio interpolante por diferencias divididas de Newton se determina por:

Ejemplo

En un circuito con un voltaje impreso ε(t) y una inductancia L, medimos la corriente i en amperios para varios valores de tiempo t en segundos, como se registra en la tabla:

t (segundos) 1.00 1.01 1.02 1.03 1.04i (amperios) 3.10 3.12 3.14 3.18 3.24

Se desea estimar el valor de i cuando t = 1.025segundos y cuando t = 1.08segundos.

Construyamos la tabla de diferencias divididas:

k tk ik f[tk] f[tk, tk+1] f[tk, tk+1, tk+2] f[tk, tk+1, tk+2,tk+3] f[tk, tk+1, tk+2,tk+3, tk+4]0 1.00 3.10 3.10

2.00

Page 4: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

1 1.01 3.12 3.12 0.002.00 3333.33

2 1.02 3.14 3.14 100.00 -83333.254.00 0.00

3 1.03 3.18 3.18 100.006.00

4 1.04 3.24 3.24

El polinomio interpolante para los 5 pares de datos (puntos) queda:

P(x) = 3.1+2*(x-1)+3333.33*(x-1)*(x-1.01)*(x-1.02)-83333.25*(x-1)*(x-1.01)*(x-1.02)*(x-1.03)

Simplificando se tiene:

P(x) = (-333333/4)*x4 + 341666*x3 – 525191*x2 + (717439/2)*x - 275575/3

Las estimaciones pedidas se obtienen evaluando el polinomio en los valores de t indicados. Estas son:

P(1.025) = 3.1570 P(1.08) = 2.9800

Para una mejor comprensión del ejemplo analicemos la gráfica:

0.98 0.99 1 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.082.85

2.9

2.95

3

3.05

3.1

3.15

3.2

3.25

3.3

3.35

t

Cor

rient

e i

P(t)(tk,ik)

Información para la práctica en la sala de informática

Utilizando las instrucciones propias del ambiente computacional Matlab se tiene:

>> t= [1 1.01 1.02 1.03 1.04];>> i= [3.1 3.12 3.14 3.18 3.24];

Page 5: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

>> iklineal = interp1(t,i,1.025,'linear') se obtiene iklineal = 3.1600

>> ikspline = interp1(t,i,1.025,'spline') se obtiene ikspline = 3.1572

>> ikcubica = interp1(t,i,1.025,'cubic') se obtiene ikcubica = 3.1573

Para mayor información sobre el uso de la instrucción interp1, teclear en la ventana de comandos del Matlab help interp1 o buscar otras ayudas incorporadas en el Matlab. Existen buenos manuales en español. Ver la bibliografía relacionada en el plan de asignatura entregado en la primera semana de clases.

AJUSTE DE DATOS O AJUSTE DE CURVAS(Caso discreto)

Dado un conjunto de pares de datos , que traen asociado un grado de error significativo o “ruido”, se trata de construir una o unas relaciones funcionales que describan el comportamiento de los datos de tal manera que f(ti) ≈ yi, minimizando al máximo el error posible en la aproximación. Esto es, se trata de determinar la curva que mejor se ajusta al conjunto de datos.

La técnica que generalmente se aplica es la llamada método de Mínimos cuadrados, que consiste en minimizar la suma del cuadrado del error de la aproximación en cada punto. Esto es:

AJUSTE POLINOMIAL POR MÍNIMOS CUADRADOS

Polinomio de primer grado (recta: )

Dado . Se minimiza el error total: , con respecto a los

parámetros , entonces:

Page 6: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

Y así se forma el sistema:

Recuerde que .

Se resuelve el sistema y se determina para construir la recta ) que ajusta al conjunto de datos.

EjemploSe realiza un experimento para determinar el porcentaje de elongación de un material conductor eléctrico como función de la temperatura. Los datos que han resultado son:

Temperatura en 200 250 300 375 425 475 525 600

Porcentaje de elongación 11 13 13 15 17 19 20 23

Ajuste una recta a los datos usando regresión lineal y estime la elongación a una temperatura de 4000 C.

Solución:Sean: xi = Ti y yi = (Porcentaje de elongación)i

xi yi xi2 xi*yi

200 11 40000 2200250 13 62500 3250300 13 90000 3900375 15 140625 5625425 17 180626 7225475 19 225625 9025525 20 275625 10500600 23 360000 138003150 131 1375000 55525

Las ecuaciones normales correspondientes son: 8*a0 + 3150*a1 = 131 3150*a0 + 1375000*a1 = 55525

Al resolver se tiene: a0 = 4.8457 y a1 = 0.0293.

Page 7: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

La recta es : . Ahora podemos hacer algunas predicciones, por ejemplo si x= 400, entonces y=16.5580. Esto asociado al problema significa que para una temperatura de 4000C, el porcentaje de elongación es de 16.5580.

Para cuantificar la bondad del ajuste, se debe determinar el coeficiente de correlación r, o grado de interconexión entre variables, que intenta determinar con que precisión describe o explica la relación entre variables una ecuación que representa una curva determinada. El cálculo de r requiere de la suma de los cuadrados de las desviaciones de yi, respecto a la media (St) y de la suma de los cuadrados de los errores en cada punto respecto a la curva de ajuste (Sr).

En el caso del ejercicio, se tiene:

=

xi yi St = (yi - )2 Sr = [yi - 2

200 11 28.8906 0.0866250 13 11.3906 0.6877300 13 11.3906 0.4041375 15 1.8906 0.6942425 17 0.3906 0.0889475 19 6.8906 0.0561525 20 13.1406 0.0521600 23 43.8906 0.32983150 131 117.875 2.3996

Entonces . Luego r = 0.9897. ¿QUÉ TAN BUENO ES EL AJUSTE A TRAVÉS

DE LA RECTA OBTENIDA?

Page 8: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

CONSULTAS

1. Determinar las ecuaciones normales para el ajuste de un polinomio de segundo grado de la forma

a un conjunto de datos , en el sentido de mínimos cuadrados.

2. Ajustar una parábola a los datos del ejemplo inmediatamente anterior. Determine el coeficiente de correlación. ¿Cuál de los dos ajustes es mejor y porqué?

Para práctica con Matlab

3. Escribir un guión que determine la recta que ajusta a un conjunto de datos: , en el sentido de mínimos cuadrados.

4. Revise la instrucción polyfit, para construir ajustes polinomiales y aplíquela para determinar los polinomios de primer grado y de segundo grado que ajustan los datos del ejercicio resuelto. Compare resultados.

AJUSTE DE TIPO EXPONENCIAL (

Si el comportamiento de los datos indica que pueden ser descritos por una curva exponencial, se aplica el ajuste de la función al conjunto de datos.

Para determinar los parámetros a y b, procedemos:

implica que entonces

Sí hacemos z = lny y A= lna se tiene: z = bx + A, que es la ecuación de una recta donde la variable dependiente es z. Así que se hará el ajuste de una recta al conjunto de datos . Se determinarán los parámetros A y b. Como A= lna, entonces a= eA. Conocidos a y b, se construye la función exponencial correspondiente.

Basados en las ecuaciones normales ya deducidas para el ajuste de una recta al conjunto de datos, ahora se tiene que:

Ejemplo

Consideremos los datos del ejemplo inicial:

Temperatura en 200 250 300 375 425 475 525 600

Page 9: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

Porcentaje de elongación 11 13 13 15 17 19 20 23

Ajustemos una función exponencial de la forma a estos datos.

Sean: xi = Ti y yi = (Porcentaje de elongación)i

xi yi zi = lnyi xi2 xi*zi

200 11 2.3979 40000 479.5791250 13 2.5649 62500 641.2373300 13 2.5649 90000 769.4848375 15 2.7081 140625 1015.5188425 17 2.8332 180626 1204.1157475 19 2.9444 225625 1398.6085525 20 2.9957 275625 1572.7594600 23 3.1355 360000 1881.29653150 131 22.1447 1375000 8962.6002

Las ecuaciones normales correspondientes son:8*lna + 150*b = 22.1447

3150*lna + 1375000*b = 8962.6002Resolviendo el sistema se tiene: lna = 2.0573 y b = 0.0018. Como lna=2.0573, entonces a = e2.0573 = 7.8248.La función exponencial buscada es:

150 200 250 300 350 400 450 500 550 600 65010

12

14

16

18

20

22

24

26

Temperatura

Por

cent

aje

de E

long

ació

n

datos originalesmodelo de ajuste: 7.8248exp(0.0018x)

Calculemos el coeficiente de correlación:

xi yi St = (yi - )2 Sr = [yi - 2

200 11 28.8906 0.0464250 13 11.3906 0.5304300 13 11.3906 0.1827375 15 1.8906 0.1355

Page 10: analisisnumericomt309b.files.wordpress.com · Web viewINTERPOLACIÓN POLINOMIAL Interpolar un conjunto de datos significa determinar una relación funcional que coincida con la data

425 17 0.3906 0.0341475 19 6.8906 0.3612525 20 13.1406 0.0174600 23 43.8906 0.00173150 131 117.875 1.3094

Entonces lo cual implica que r =0.9944.

Comparando el coeficiente de correlación para el ajuste por la recta y el coeficiente de correlación para la curva exponencial, nos damos cuenta que la función ajusta mejor los datos del experimento.

150 200 250 300 350 400 450 500 550 600 65010

12

14

16

18

20

22

24

26

Temperatura

Por

cent

aje

de E

long

ació

n

datos originalesmodelo de ajuste: 7.8248exp(0.0018x)