Vous êtes sur la page 1sur 34

Introduccin

Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Grado en Fsicas
Mtodos Numricos

Tema 2. Interpolacin y aproximacin


de funciones
Alejandro Medina

Octubre 2014

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Esquema

Introduccin

Interpolacin

Aproximacin de funciones

Ajuste de datos

Evaluacin de polinomios. Regla de Horner

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Esquema

Introduccin

Interpolacin

Aproximacin de funciones

Ajuste de datos

Evaluacin de polinomios. Regla de Horner

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Esquema
1

Introduccin

Interpolacin
Interpolacin polinmica
Interpolacin local

Aproximacin de funciones

Ajuste de datos

Evaluacin de polinomios. Regla de Horner


Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin
Interpolacin polinmica. Polinomios de Lagrange
Pn (x ) = f0 `0 (x ) + f1 `1 (x ) + + fn `n (x ) =

n
X

fi `i (x )

i=0

donde los polinomios `i (x ) deben verificar que: `i (xj ) = ij


`i (x ) =
=

(x x0 )(x x1 ) . . . (x xi1 )(x xi+1 ) . . . (x xn )


(xi x0 )(xi x1 ) . . . (xi xi1 )(xi xi+1 ) . . . (xi xn )
n
Y
x xj

x
j=0 i
j6=i

xj

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo de los polinomios de Lagrange


Calclese el valor aproximado de f(0,14) dados los valores de f (x )
contenidos en la tabla adjunta:
i
xi
f (xi )

0
0
1,00000

1
0,1
1,10517

2
0,3
1,34986

3
0,6
1,82212

La funcin f (x ) es realmente e x , lo que nos permitir estimar la bondad


de la aproximacin.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo de los polinomios de Lagrange


Primero se evala cada uno de los polinomios, `i (x ), en el punto x = 0, 14:
(x x1 )(x x2 )(x x3 )
(x0 x1 )(x0 x2 )(x0 x3 )
(x x0 )(x x2 )(x x3 )
`1 (x ) =
(x1 x0 )(x1 x2 )(x1 x3 )

`0 (0,14) = 0, 16356

`1 (0,14) = 1, 03040

...

`2 (0,14) = 0, 14311

...

`3 (0,14) = 0, 00996.

`0 (x ) =

Entonces,
f (0,14) ' f0 `0 (0,14) + f1 `1 (0,14) + f2 `2 (0,14) + f3 `3 (0,14) =
= (1,0000)(0,16356) + (1,10517)(1,03040) + (1,34986)(0,14311)+
+ (1,82212)(0,00996) =
= 1,150251.
Valor correcto para f (0,14) con 6 cifras, e 0,14 = 1,150274.
La diferencia en el valor aproximado aparece en la quinta cifra significativa.
Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin polinmica. Polinomios de Newton


n+1 puntos

}|

Pn (x ) = Pn1 (x ) + f [xn , xn1 , . . . x0 ](x x0 )(x x1 ) . . . (x xn1 ),


donde:

Pn1 (x ) es el polinomio que utiliza {x0 , x1 , . . . xn1 }

n
n

z }| {
z }| {
f [xn , . . . x1 ] f [xn1 , . . . x0 ]
f [xn , xn1 , . . . x0 ]

xn x0

P0 (x ) f0 ;

f [xi ] fi

Los nmeros f [xn , xn1 , . . . x0 ] se denominan diferencias divididas.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo. Polinomios de Newton


Consideremos un conjunto de 4 puntos y sus correspondientes imgenes:
{x0 , x1 , x2 , x3 }

{f0 , f1 , f2 , f3 }

1. Tomamos primero slo x0 .


P0 (x ) = f0
2. Consideramos ahora x0 y x1 .
P1 (x ) = P0 (x ) + f [x1 , x0 ](x x0 )
con

f [x1 , x0 ] =
f [x1 ] f1 ;

Alejandro Medina

f [x1 ] f [x0 ]
f10
x1 x0
f [x0 ] f0

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo. Polinomios de Newton


f0

x0

f1

x1

f10

P1 (x ) = f0 +

f1 f0
(x x0 ) = = f0 `0 (x ) + f1 `1 (x )
x1 x0

3. Con tres puntos {x0 , x1 , x2 }: P2 (x ) = P1 (x ) + f [x2 , x1 , x0 ](x x0 )(x x1 )


f0

x0

f1

x1

f2

x2

f10
f210
f21

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo. Polinomios de Newton


4. Y para el caso de 4 puntos el esquema a seguir sera:
f0

x0

f1

x1

f2

x2

f3

x3

f10
f210
f3210

f21
f321
f32

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Polinomios de Newton. Ejemplo numrico


Estimacin de log 2 mediante una interpolacin con el mtodo de Newton.
aproximacin lineal

1.5

log

1.0

1.0

P1(x)

0.5
0.0

P2(x)

0.5

aproximacin cbica

1.5

0.0

aproximacin P4(x)

1.5

1.0

1.0

0.5
0.0

aproximacin parablica

1.5

0.5

P3(x)
1

0.0

P4(x)
1

Error relativo respecto al valor exacto utilizando P4 (x ): 4 = 2,6 %


Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Ejemplo. Limitaciones de la interpolacin polinmica


Se desea interpolar la funcin:

5(0,2 |x |)
0

f (x ) =

1 x 0,2
0,2 x 0,2
0,2 x 1

Aproximaciones obtenidas con polinomios de grados 2, 4, y 6.


1

1
0.8

0.5

P2 (x)

0.6

f (x)

0.4
0.2

f(x)
-1

-0.5

0.5

f (x)

-0.5

P6 (x)

0.5

P4 (x)

-0.5

-1

-0.5

Alejandro Medina

0.5

-1

-0.5

0.5

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin local
Interpolacin lineal entre dos puntos conocidos
f(x)
fi+1
f(x)
fi

xi

_
x=x

x i+1

Es fcil encontrar la ecuacin de una recta que pasa por esos dos puntos:
x xi
f (x ) fi
=
xi+1 xi
fi+1 fi

Alejandro Medina

f (x ) ' fi

x xi+1
x xi
+ fi+1
xi xi+1
xi+1 xi

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin local

Interpolacin lineal por segmentos

x0

x1

x2

Alejandro Medina

x3

x4

x5

x6

x7 ...

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin cbica por segmentos


Por cada pareja (xi , xi+1 ) pasa un polinomio, Si (x ), de grado 3. Esquemticamente:

x0 x1 x2 ... xi-1 x i x i+1 ... x n-1 x n

f0

f1

S0

f2 ... fi-1 f i fi+1 ... fn-1 f n


S j-1 S j
S n-1
S1

i: 0,1 ... n
j: 0,1 ... n-1

Hay n polinomios de grado 3, luego 4n coeficientes desconocidos = 4n incgnitas.


(1)(i = 0, 1, . . . n 1)

(2)(i = 1, 2 . . . n 1)

Si (xi ) = fi
Si (xi+1 ) = fi+1

Si (xi )

S 0 (xi )
Si00 (x )
i
i

n ecuaciones
n ecuaciones

= Si1 (xi ) contenida en (1)


0 (x ) n 1 ecuaciones
= Si1
i
00 (x ) n 1 ecuaciones
= Si1
i

(faltan los extremos)


Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Interpolacin cbica por segmentos


(3) Para los extremos hay dos posibles condiciones de contorno:
a) naturales (extremo libre):
00 (x ) = 0 2 ecuaciones
S000 (x0 ) = Sn1
n

Es decir, que en los extremos haya dos puntos de inflexin.


b) otras condiciones:

S00 (x0 ) = f00 ;

0
Sn1
(xn ) = fn0 ,

que deben ser datos 2 ecuaciones

Nmero total de ecuaciones:


n + n + (n 1) + (n 1) + 2 = 4n ecuaciones.
Nmero total de incgnitas: 4n incgnitas.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Resumen splines (i)


x0 x1 x2 ... xi-1 x i x i+1 ... x n-1 x n

f0
S0

f1

f2 ... fi-1 f i fi+1 ... fn-1 f n


S j-1 S j
S n-1

S1

Si (x ) = ai (x xi )3 + bi (x xi )2 + ci (x xi ) + di

i: 0,1 ... n
j: 0,1 ... n-1

(i = 0, 1 . . . n 1)

hi xi+1 xi

(1)

d i = fi

(2)

ai1 =

Alejandro Medina

bi bi1
3(xi xi1 )

(8)

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Resumen splines (ii)


ci =

di+1 di
(bi+1 + 2bi )

(xi+1 xi )
xi+1 xi
3

bi1 hi1 + 2 bi (hi + hi1 ) + bi+1 hi =

(7)

3
3
(di+1 di )
(di di1 )
hi
hi1

Condiciones naturales de contorno:


b0 = 0;

Alejandro Medina

bn = 0

(6)

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Resumen splines (iii)


Cambio de variables:

ui bi (incgnitas)

r 3 (d d )
i

i+1

hi
Ai hi1
Bi 2(hi + hi1 )
Ci hi

hi1

(di di1 )
(3)

[Para todas estas variables, i = 1, 2 . . . n 1, excepto para Ai : (i = 2, 3 . . . n 1) y para Ci :


(i = 1, 2 . . . n 2)].
Sistema de ecuaciones tridiagonal:

B1
A2

C1
B2
A3

C2
B3

C3

..

..

.
An2

..

.
Bn2
An1

Alejandro Medina

Cn2
Bn1

u1
u2
u3
.
.
.

un2
un1

r1
r2
r3
.
.
.

rn2
rn1

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Interpolacin polinmica
Interpolacin local

Resumen splines (y iv)


Sustitucin/eliminacin gaussiana:

(i = 2, 3 . . . n 1)

B1
r1

B1
r1

Bi Bi Ci1 Ai
ri

Bi1
ri1 Ai
ri
Bi1

(4)

= Solucin del sistema:

r
un1 = n1
ui

Bn1
ri Ci ui+1
=
Bi

Alejandro Medina

(5)
(i = n 2, n 3 . . . 1)

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Aproximacin de Chebyshev

Esquema

Introduccin

Interpolacin

Aproximacin de funciones
Aproximacin de Chebyshev

Ajuste de datos

Evaluacin de polinomios. Regla de Horner

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Aproximacin de Chebyshev

Aproximacin de funciones

Aproximacin de Chebyshev. Polinomios de Chebyshev

T0 (x ) = 1

T0 (x)

Tn (x)

T1 (x ) = x
T2 (x ) = 2x 2 1

T2 (x)

T3 (x ) = 4x 3 3x
4

T1 (x)

0.5

T4 (x ) = 8x 8x + 1

T3 (x)

-0.5

.........
Tn+1 (x ) = 2xTn (x ) Tn1 (x )

(n 1)

Alejandro Medina

-1

-1

-0.5

-0.5

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Aproximacin de Chebyshev

Implementacin de la aproximacin de Chebyshev (i)


paso 1.- Si se quiere evaluar una funcin, F (z), en un intervalo [a, b] 6= [1, 1] se
efecta un cambio de variable:
z [a, b]

se define

x=

z (b + a)/2
(b a)/2

x [1, 1]

y despejando z en funcin de x se tiene:


z(x ) =

1
1
(b a)x + (b + a)
2
2

Llamando f (x ) = F (z(x )), ya se le puede aplicar directamente la aproximacin de


Chebyshev.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Aproximacin de Chebyshev

Implementacin de la aproximacin de Chebyshev (ii)


paso 2.- Se calculan los n coeficientes (n < 30, 40) para la aproximacin de grado n.
Para ello se utiliza:

(k 1/2)
n



Tj1 (xk ) = cos


(j 1)(k 1/2)
n
xk = cos

cj =

2
n

n
X

f (xk )Tj1 (xk )

k=1

Alejandro Medina

con

f (xk ) = F (z(xk ))

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Aproximacin de Chebyshev

Implementacin de la aproximacin de Chebyshev (y iii)


paso 3.- Conocidos los cj , se evala F (
z ) = f (
x ) a orden m < n haciendo la suma:
F (
z ) = f (
x) '

m
X

ck Tk1 (
x)

1
c1
2

donde

x = x (
z)

k=1

Para calcular Tk1 (


x ), se utiliza la relacin de recurrencia:
Tn+1 (x ) = 2xTn (x ) Tn1 (x )

(n 1)

siendo,
T0 (x ) = 1

Alejandro Medina

T1 (x ) = x .

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Esquema

Introduccin

Interpolacin

Aproximacin de funciones

Ajuste de datos

Evaluacin de polinomios. Regla de Horner

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Esquema

Introduccin

Interpolacin

Aproximacin de funciones

Ajuste de datos

Evaluacin de polinomios. Regla de Horner

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Evaluacin de polinomios. Regla de Horner


Considerado el polinomio:
P(x ) = c0 + c1 x + c2 x 2 + + cn x n
si lo intentamos calcular en la forma,
P(x ) = c0 + c1 x + c2 x x + cn x x

{z

n veces

hay que realizar n + (n 1) + (n 2) + n (n 2) + 1 = (n/2)(n + 1)


multiplicaciones.
Sin embargo, si lo evaluamos as (sacando factor comn a las x ):
P(x ) = c0 + x (c1 + x (c2 + . . . x (cn1 + x cn )))
slo hay que realizar n multiplicaciones.
Este tipo de procedimiento se denomina: multiplicacin anidada.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

En FORTRAN se programara as:


P=C(N)
DO I=N-1,0,-1
P=P*X+C(I)
END DO
Y para calcular el valor del polinomio y su derivada simultneamente:
P=C(N)
DP=0.D0
DO I=N-1,0,-1
DP=DP*X+P
P=P*X+C(I)
END DO

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Ejercicios tericos

1.- La ecuacin:
x 9x = 0
tiene una solucin en el intervalo [0, 1]. Utilizando el polinomio interpolador de
Lagrange sobre los puntos x0 = 0, x1 = 0,5, x2 = 1, encuntrese una solucin
aproximada en dicho intervalo.
2.- Una funcin f (x ) toma valores segn la siguiente tabla:
i
xi
f (xi )

0
2
0

1
0
1

2
1
1

La ecuacin f (x ) = 0 tiene una solucin en el intervalo [0, 1]. Encuntrese una


solucin aproximada de la anterior ecuacin haciendo uso del polinomio interpolador
de Lagrange obtenido a partir de los puntos de la tabla.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Ejercicios tericos
3.- La tabla adjunta representa la fuerza, f (x ), que experimentan dos tomos de Ar en
funcin de la distancia, x , entre sus ncleos. Obtngase aproximadamente f (1,5)
haciendo uso de la construccin recursiva de los polinomios de Newton, P0 (x ), P1 (x ),
P2 (x ) y P3 (x ), eligiendo adecuadamente los puntos a considerar.
Estmese la precisin obtenida en cada caso sabiendo que el valor exacto de la funcin
es f (1,5) = 0,5118277.
x
1,0
1,3
1,6
1,9

f (x )
0,7651977
0,6200860
0,4554022
0,2818186

4.- Determnense los valores de a, b, c que hacen que la siguiente funcin sea un
spline cbico con nodos en los puntos x0 = 0, x1 = 1, x2 = 3:


S(x ) =

x 3 si x [0, 1]
12 (x 1)3 + a(x 1)2 + b(x 1) + c

si

x [1, 3]

Tiene el spline obtenido condiciones de contorno naturales en los puntos x0 = 0 y


x2 = 3?
Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Ejercicios tericos
5.- Una funcin f (x ) toma valores segn la siguiente tabla:
i
xi
f (xi )

0
1
13

1
0
7

2
1
9

Haciendo uso de los puntos de la tabla, encuntrese el spline cbico S(x ) que
aproxima a la funcin f (x ) en el intervalo [1, 1]. Considrense condiciones de
contorno naturales.
6.- Estmese el valor de log 10 con cada uno de los procedimientos que se detallan a
continuacin. En cada caso calclese el error relativo comparando con el valor exacto.
Utilcense 7 cifras significativas en todos los clculos.
a) Interpolacin lineal de Newton a partir de log 8 y log 12.
b) Interpolacin lineal de Newton a partir de log 9 y log 11.
c) Interpolacin de Newton a partir de log 8, log 9 y log 11.
c) Interpolacin de Newton a partir de log 8, log 9, log 11 y log 12.

Alejandro Medina

Introduccin
Interpolacin
Aproximacin de funciones
Ajuste de datos
Evaluacin de polinomios. Regla de Horner

Ejercicios tericos

7.- La tabla adjunta representa un conjunto de datos medidos en el laboratorio para la


evolucin de la entropa especfica del agua sobrecalentada a 200 MPa en funcin del
volumen especfico. Haciendo uso de los polinomios de Lagrange, obtngase la
entropa cuando el volumen especfico vale v = 0,108 m3 /kg.
v (m3 /kg)
s [kJ/(kg K)]

0,10377
6,4147

Alejandro Medina

0,11144
6,5453

0,12540
6,7664

Vous aimerez peut-être aussi