12
Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización: 24/09/2013 Aproximación funcional e Interpolación Representación mediante funciones analíticas sencillas de: • Información discreta. (Resultante de muestreos). • Funciones complicadas. Siendo y k = f(x k ) una cierta función de la que no se conoce una fórmula explícita, o bien es muy complicada para evaluarla, derivarla, integrarla, hallarle ceros, etc. Si la información se representa mediante un polinomio p n (x) en un intervalo dado, nos referimos a: Aproximación polinomial o Interpolación polinomial Aproximación de una función por polinomios de Taylor La precisión aumenta cuando aumentan la cantidad de términos (n), Necesidad de conocer f y las n derivadas de f en x 0 . La aproximación es mejor en valores cercanos a x 0. Necesidad de restringir el valor |x-x 0 |. fx p x f x k x x n k k n k ( ) ( ) ( ) ! ( ) ( ) = - = 0 0 0 Interpolación Dados n +1 puntos en R 2: (x 0 ,y 0 ),(x 1 ,y 1 ),...,(x n ,y n ), con y i = f(x i ) (siendo f(x) no necesariamente conocida) en los cuales x o ,x 1 ,...,x n son números distintos que se distribuyen en el intervalo [x o ,x n ]. se quiere encontrar un polinomio p n (x) de grado n tal que: p n (x k )=y k , k=0,1,...,n Si para estimar un valor y, se emplea el polinomio p n (x) de grado n que pasa por los puntos dados, la aproximación se denomina interpolación polinomial (lineal, cuando sólo se emplean dos puntos) y a p n (x) se lo denomina polinomio de interpolación ó polinomio interpolante. Para un valor x de los dados Si x 0 < x < x n y será un valor interpolado, Si x <x 0 ó x > x n y será un valor extrapolado. Polinomio interpolante Dados n +1 puntos (x 0 ,y 0 ),(x 1 ,y 1 ),...,(x n ,y n ), con valores x 0 ,x 1 ,...,x n distintos, existe un único polinomio de grado menor o igual que n que pasa por esos puntos

Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

  • Upload
    lamdiep

  • View
    258

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12

Última actualización: 24/09/2013

Aproximación funcional e Interpolación

Representación mediante funciones analíticas sencillas de:

• Información discreta. (Resultante de muestreos).

• Funciones complicadas.

Siendo yk = f(xk) una cierta función de la que no se conoce una fórmula explícita, o bien es muy complicada para evaluarla, derivarla, integrarla, hallarle ceros, etc.

Si la información se representa mediante un polinomio pn(x) en un intervalo dado, nos referimos a:

Aproximación polinomial o

Interpolación polinomial

Aproximación de una función por polinomios de Taylor

• La precisión aumenta cuando aumentan la cantidad de términos (n),

• Necesidad de conocer f y las n derivadas de f en x0.

• La aproximación es mejor en valores cercanos a x0.

• Necesidad de restringir el valor |x-x0|.

f x p xf x

kx xn

k

k

nk( ) ( )

( )

!( )

( )

≈ = −=

∑ 0

00

Interpolación

Dados n +1 puntos en R2: (x0,y0),(x1,y1),...,(xn,yn), con yi = f(xi)

(siendo f(x) no necesariamente conocida) en los cuales xo,x1,...,xn

son números distintos que se distribuyen en el intervalo [xo,xn].se quiere encontrar un polinomio pn(x) de grado ≤ n tal que:

pn(xk)=yk, k=0,1,...,n

Si para estimar un valor y, se emplea el polinomio pn(x) de grado ≤ nque pasa por los puntos dados, la aproximación se denomina interpolación polinomial (lineal, cuando sólo se emplean dos puntos) y a pn (x) se lo denomina polinomio de interpolación ópolinomio interpolante.

Para un valor x ≠ de los dados Si x0< x < xn⇒ y será un valor interpolado, Si x < x0 ó x > xn ⇒ y será un valor extrapolado.

Polinomio interpolante

Dados n +1 puntos (x0,y0),(x1,y1),...,(xn,yn), con valores x0,x1,...,xn distintos, existe un único polinomio de grado menor o igual que n que pasa por esos puntos

Page 2: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 2/12

Última actualización: 24/09/2013

Existencia del polinomio único

Si en los n +1 puntos (x0,y0),(x1,y1),...,(xn,yn), los valores xo,x1,...,xn

son números distintos, existe un único polinomio

de grado menor o igual que n tal que pn(xk) = yk, con k = 0,1,2,...,n ⇒ existen números reales únicos a0 ,a1 ,a2,...,an tales que:

p x a a x a x a xn nn( ) = + + + +0 1 2

2 L

a a x a x a x y

a a x a x a x y

a a x a x a x y

a a x a x a x y

n

n

n

n

n

n

n n n n

n

n

0 1 0 2 0

2

0 0

0 1 1 2 1

2

1 1

0 1 2 2 2

2

2 2

0 1 2

2

+ + + + =

+ + + + =

+ + + + =

+ + + + =

L

L

L

M

L

El sistema anterior, de n +1 ecuaciones lineales en las n +1incógnitas a0, a1 ,a2,...,an , escrito en forma matricial es

Si det(A) ≠ 0 el sistema tiene solución única.

{ {

1

1

1

0 0

2

0

1 1

2

1

2

0

1

0

1

x x x

x x x

x x x

a

a

a

y

y

y

n

n

n n nn

A

n

X

n

b

L

L

M M M M

L1 2444 3444

M M

=

Polinomio único

Determinante de la matriz

)xx)(xx)(xx()Adet(

xx00

xx10

xx1

)xx)(xx(

xx10

xx10

xx1

)xx)(xx(

xxxx0

xxxx0

xx1

xx1

xx1

xx1

A

120201

12

01

2

00

0201

02

01

200

0201

2

0

2

202

2

0

2

101

200

2

22

2

11

200

−−−=⇒

+−−=

=

+

+−−=

−−

−−=

=

( )det( )A x xi ji j n

= −≤ < ≤

∏1

En general Determinante de Vandermonde

Si xi ≠ xj entonces det(A) ≠ 0 , y por tanto el sistema en consideración tiene solución única.

Por lo general, la matriz de coeficientes de este sistema resulta mal condicionada si dos abscisas están relativamente cerca.

Forma de Lagrange del polinomio interpolante

01

0010

xx

xx)yy(y)x(p

−−+=

( ) )x(pyxxxx

yyy =+−

−= 00

01

01

En interpolación lineal, la recta que pasa por los puntos (x0,y0), (x1,y1),

posee una pendiente m=(y1-y0)/(x1-x0) , siendo la ecuación de la recta

y=m(x-x0)+y0

Es decir:

Reordenando los términos:

Evaluando p(x) en los puntos dados x0 y x1:

)x(p*)yy(yy

)x(p*)yy(yy

10101

00100

1

0

=−+=

=−+=

Coeficientes L1,0(x0)=1, L1,0(x1)=0 de Lagrange L1,1(x0)=0, L1,1(x1)=1

L1,0 L1,1

Lagrange propone un polinomio equivalente:

)x(pxx

xxy

xx

xxyy 1

01

0

1

10

1

0=

−+

−=

Page 3: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 3/12

Última actualización: 24/09/2013

El polinomio se denomina

Polinomio de interpolación de Lagrange o Forma de Lagrange del polinomio interpolante para los datos dados.

( )( )( )( )

( )( )( )( )

( )( )( )( )1202

102

2101

201

2010

2102

xxxx

xxxxy

xxxx

xxxxy

xxxx

xxxxy)x(p

−−

−−+

−−

−−+

−−

−−=

( )( )( )( )

( )( )( )( )

( )( )( )( )1202

102

2101

201

2010

210

)(

)(

)(

xxxx

xxxxxL

xxxx

xxxxxL

xxxx

xxxxxL

−−

−−=

−−

−−=

−−

−−=

)()()()( 2211002 xLyxLyxLyxp ++=

Los polinomios L0, L1, L2, se denominan Polinomios

fundamentales de Lagrange

Para tres puntos: x0, x1, x2 En general

∑=

=+++=n

i

iinnn )x(Ly)x(Ly)x(Ly)x(Ly)x(p0

1100 L

( )( ) ( )( ) ( )( )( ) ( )( ) ( )

( )( )

n1,..., 0,i con ,01110

1110 =−

−=

−−−−−

−−−−−= ∏

≠=+−

+−n

ikk ki

k

niiiiiii

niii

xx

xx

xxxxxxxxxx

xxxxxxxxxx)x(L

LL

LL

( ) cada para 1 si 0

si 1

0

∑=

=

==

n

i

kiki x)x(Lik

ikxL

( )( ) ( )( )

( ) ( ) [ ]n

nnn

x,xxxx

xf!n

)xx()xx)(xx()x(p)x(f)x(E

0

110

y , de depende que número un es donde

1

+

−−−≈−= +

ξξ

ξL

Para n +1 puntos, los polinomios fundamentales de Lagrange (Li) son de grado n.

Cota de error

Ejemplo 1

)x(L*)x(L*)x(L*)x(Ly)x(Ly)x(Ly)x(p 2102211002 010 ++=++=

( ) 02

1002

221100 =

======

−==

ππcosy)x(f,cosy)x(f,cosy)x(f

Aproximar la función f(x) = cos(x) en el intervalo [-ππππ/2, ππππ/2]mediante un polinomio de interpolación de Lagrange de grado dos.

⇒ x0 = -π/2, x1= 0, x2 = π/2

( )( )( )( )

2

22

22

2101

201

41

4

4

22

22x

xxx

xxxx

xxxx)x(L

ππ

π

ππ

ππ

−=

−=

+

=−−

−−=

2

22

41)( xxp

π−=

Resultados

-3 -2 -1 0 1 2 3

-1

-0.5

0

0.5

1

x

(π / 2 , 0) (−π / 2 , 0)

π/4

cos(x)

1-(4/pi2)*x2

(0,1)

.

.

. 7071

2

1

44.cosf ==

=

ππ

754

3

4

11

4

41

4

2

22 .p ==−=

−=

π

π

π

0429075070710444

2 ...pfE =−=

=

πππ

Page 4: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 4/12

Última actualización: 24/09/2013

Cota de Error

( )( )( )

( )( )

( )( ) ( )( ) ( )

0.0429 real Error

24212816

3

2441646

1

44

22 xtodo para

46

1

22 toda para 1

6

20

2

3

3222

22

210

=

==

=

−≤

=

−∈

−≤

−∈≤=

=−=−==

−−

+

=−−−

=

.E,xpara

,xx)x(E

,xxsenx'''f

)x(sen)x('''f),xcos()x(''f),x(sen)x('f),xcos()x(f

xf

xxx

xf!

)xx)(xx)(xx()x(E ''''''

ππππππππ

πππ

ππξξξ

ξ

ππ

ξ

Ejercicio 2

Use los polinomios interpolantes de Lagrange de grados uno, dos y tres, más apropiados, para aproximar f(2.5).

Si f(2.0) = .5103757, f(2.2) = .5207843, f(2.4) = .5104147,

f(2.6) = .4813306 y f(2.8) = .4359160.

El polinomio de interpolación de Lagrange de grado uno, más apropiado, es el que se obtiene tomando los nodos x0 = 2.4 y x1 = 2.6

Para p2(x), hay dos polinomios apropiados, el que pasa por los nodos x0=2.2, x1=2.4, x2=2.6 y el que pasa por los nodos x0=2.4, x1=2.6, x2=2.8

).(f.).(p

xx

xx)x(f

xx

xx)x(f)x(Ly)x(Ly)x(p

5249587270521

01

01

10

1011001

≈=

−+

−=+=

Ej. Polinomio interpolante de Lagrange

0 (2.0 , 0.5103757)

1 (2.2 , 0.5207843)

2 (2.4 , 0.5104147)

3 (2.6 , 0.4813306)

4 (2.8 , 0.4359160)

( ) ( )( )( )( )( )( ) ( )

( ) ( )( ) ( )( ) ( )( ) ( )

( )( ) ( )( )( )( ) ( )( )

( ) ( )( ) ( )( ) ( )( ) ( )

( )( ) ( )( )

− − − − − − − −= + +

− − − − − − − −

− − − − − − − −+ + +

− − − − − − − −

− − − −+

1 2 3 4 0 2 3 4

4 0 1

0 1 0 2 0 3 0 4 1 0 1 2 1 3 1 4

0 1 3 4 0 1 2 4

2 3

2 0 2 1 2 3 2 4 3 0 3 1 3 2 3 4

0 1 2 3

4

( )

x x x x x x x x x x x x x x x xp x y y

x x x x x x x x x x x x x x x x

x x x x x x x x x x x x x x x xy y

x x x x x x x x x x x x x x x x

x x x x x x x xy

( )( ) ( )( )− − − −4 0 4 1 4 2 4 3x x x x x x x x

− −= + = +

− −

− −+ =

− −

3 21 2 2 3 3 2 3

2 3 3 2

( ) ( ) ( )

2.6 2.4= 0.5104147 0.4813306

2.4 2.6 2.6 2.4

= 0.859421 - 0.1454 0·x 2

x x x xp x y L x y L x y y

x x x x

x x

Polinomio interpolante de Newton

El polinomio pn(x) de grado menor o igual que n que interpola a f en los datos dados, puede expresarse en la forma

02

01

01

12

12

1202

02

01

0102

2

21202202102

01

011101101

00000

10

110102010

)()()()(

))((

)()()(

)()(

)())(()()(

)()( )()()(

)(b )()(

,,1,0),()( Si

escoeficient los determinar Para

)())(())(()()(

xx

xx

xfxf

xx

xfxf

xxxx

xxxx

xfxfxfxf

b

xfxxxxbxxbbxp

xx

xfxfbxfxxbbxp

xfxfbxp

nkxfyxp

,..., b, bb

xxxxxxbxxxxbxxbbxp

n

n

n

kkkn

n

nnn

−−

=−−

−−

−−−

=⇒

⇒=−−+−+=

−=⇒=−+=

=⇒==

===

−−−++−−+−+= −

L

LL

Page 5: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 5/12

Última actualización: 24/09/2013

Diferencia dividida hacia adelante(progresiva) de Newton.

a) La diferencia dividida cero de f con respecto a xk es

b) La diferencia dividida uno de f con respecto a xk y xk+1 es

c) La diferencia dividida dos de f con respecto a xk, xk+1 y xk+2 es

[ ] ( ) n,,1,0k,xfxf kk L==

[ ] [ ] [ ]1n,,1,0k,

xx

xfxfx,xf

k1k

k1k1kk −=

−=

+

++ L

[ ] [ ] [ ]2n,,1,0k,

xx

x,xfx,xfx,x,xf

k2k

1kk2k1k2k1kk −=

−=

+

+++++ L

d) En general, se definen las n-i+1 diferencias divididas i (progresivas) de f con respecto a xk, xk+1,..., xk+i como:

Fórmula de diferencia dividida (regresiva) El polinomio interpolante de Newton es de la forma:

[ ] [ ]( ) [ ]( )( )[ ]( )( ) ( )1n10n10

102100100n

xxxxxxx,,x,xf

xxxxx,x,xfxxx,xfxf)x(p

−−−−+

+−−+−+=

LL

L

[ ] [ ]( ) [ ]( )( )[ ]( )( ) ( )11nnn10

1nnn1n2nnn1nnn

xxxxxxx,,x,xf

xxxxx,x,xfxxx,xfxf)x(p

−−−+

+−−+−+=

−−−−

LL

L

[ ] [ ] [ ]in,,1,0k,

xx

x,,x,xfx,,x,xfx,,x,xf

kik

1ik1kkik2k1kik1kk −=

−=

+

−+++++++ L

LLL

y el polinomio interpolante (progresivo) es de la forma:

k xk

Dif. div. 0

f[xk]=f(xk)=yk

Dif. div. 1

f[xk,xk+1]

Dif. div. 2

f[xk,xk+1,xk+2] ...

Dif. div. n

f[x0,...,xn]

0 x0 f[x0] = b0

f[x0,x1] = b1

1 x1 f[x1] f[x0,x1,x2] = b2

f[x1,x2] ...

2 x2 f[x2] f[x1,x2,x3]

f[x2,x3] f[x0,...,xn] = bn

3 X3 f[x3] ...

... ... ... ... ...

n-1 Xn-1 f[xn-1] f[xn-2,xn-1,xn] = b2

f[xn-1,xn] = b1

n xn f[xn] =b0

Esquema de cálculo Estimación del error para el polinomio interpolante de Newton

( )( ) ( )( )

( ) ( ) [ ]n0

1nn10n

x,xxξxxξ

xξf!1n

)xx()xx)(xx()x(p)x(f)x(E

+

−−−≈−= +

y , de depende que número un es donde

L

[ ]!n

)ξ(fx,,x,xf

)n(

n10 =L

)())(](,,...,[)()()( 1010 nnn xxxxxxxxxxfxpxfxE −−−≈−= L

Se puede demostrar que si existe una función f definida sobre el intervalo [x0, xn], n veces diferenciable, entonces existe ξ ∈ [x0, xn] tal que:

Considerando la fórmula del error de Lagrange

usando la forma de Newton del polinomio interpolante de grado menor o igual que n + 1 para f en los nodos x0,x1,...,xn, x , tenemos que

Page 6: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 6/12

Última actualización: 24/09/2013

xk f(x)=f[xk] Dif. Div. 1 Dif. Div. 2 Dif. Div. 3 Dif. Div. 4

2.0 0.5103757

.052043

2.2 0.5207843 -.2597275

-.051848 .04299367

2.4 0.5104147 -.2339313 .008341125

-.1454205 .04966667

2.6 0.4813306 -.2041313

-.227073

2.8 0.4359160

Aproximaciones progresivas

p1(x) = f[x0]+f[x0,x1](x-x0) = 0.5103757+.052043(x-2.0) ⇒ f(2.1) = .51558

p2(x) = p1(x)+ f[x0,x1,x2](x-x0)(x-x1) = p1(x) -.2597275 (x-2.0)(x-2.2)

p3(x) = p2(x)+ f[x0,x1,x2,x3](x-x0)(x-x1)(x-x2) =

= p2(x)+ .04299367 (x-2.0)(x-2.2)(x-2.4)

p4(x) = p3(x)+ .008341125 (x-2.0)(x-2.2)(x-2.4)(x-2.6)

Aproximaciones regresivas

p1’(x) = f[xn]+f[xn,xn-1](x-xn) = 0.4359160 -.227073 (x-2.8)

p2’(x) = p1(x)+ f[xn,xn-1,xn-2](x-x0)(x-xn-1) = p1(x) -.2041313(x-2.8)(x-2.6)

p3’(x) = p2(x)+ f[x0,xn-1,xn-2,xn-3](x-x0)(x-xn-1)(x-xn-2) =

= p2(x)+ .04966667(x-2.8)(x-2.6)(x-2.4)

p4’(x) = p3(x)+ .008341125 (x-2.8)(x-2.6)(x-2.4)(x-2.2)

2 2.2 2.4 2.6 2.80.42

0.44

0.46

0.48

0.5

0.52

0.54 P1(x)

P2(x)

P3(x)

P1'(x) P2'(x)

P3'(x)

Ej. Polinomios interpolantes de Newton

Aproximaciones progresivas expresadas en forma estandar

p1(x) = 0.5103757+0.052043(x-2.0) = 0.0520429·x + 0.406289

p2(x) = p1(x) -0.2597275 (x-2.0)(x-2.2)

= 0.5103757+0.052043(x-2.0) -0.2597275 (x-2.0)(x-2.2) =

= 0.0520429·x + 0.406289 - 0.259727·x2 + 1.09085·x - 1.14279 =

= - 0.259727·x2 + 1.14289·x - 0.736500

p3(x) = p2(x)+ .04299367 (x-2.0)(x-2.2)(x-2.4) =

= 0.5103757+.052043(x-2.0) -0.2597275 (x-2.0)(x-2.2) +

+ 0.04299367 (x-2.0)(x-2.2)(x-2.4) =

= 0.0429935·x3 - 0.543484·x2 + 1.76544·x - 1.19052

p4(x) = p3(x)+ 0.008341125 (x-2.0)(x-2.2)(x-2.4)(x-2.6) =

= 0.5103757+0.052043(x-2.0) -.2597275 (x-2.0)(x-2.2) +

+ 0.04299367 (x-2.0)(x-2.2)(x-2.4) +

+ 0.008341125 (x-2.0)(x-2.2)(x-2.4)(x-2.6) =

= 0.00834111·x4 - 0.0337447·x3 - 0.279571·x2 + 1.36333·x - 0.961508

Desventajas de los polinomios interpolantes

• A medida que aumentan la cantidad de puntos aumenta el grado del polinomio

• Un polinomio de grado muy alto puede tener oscilaciones muy marcadas, por lo que puede no ser apto para interpolar o representar una función

Esto sugiere que se intente la interpolación localmente, es decir,

por sub-intervalos.

Page 7: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 7/12

Última actualización: 24/09/2013

Interpolación por segmentos

El proceso de aproximación sobre sub-intervalos se conoce como interpolación segmentaria o por segmentos.

• La interpolación segmentaria linealinterpola entre dos puntos consecutivos con un

polinomio lineal

• La interpolación segmentaria cuadráticainterpola entre dos puntos consecutivos con un

polinomio cuadrático

• La interpolación segmentaria cúbica interpola entre dos puntos consecutivos con un polinomio cúbico

El conjunto de los distintos polinomios constituye un Trazador

Trazador cúbico

Para asegurar que las derivadas m-ésimas sean continuas en los nodos, se debe emplear un trazador de un grado de, al menos, m + 1.

En la práctica se usan con más frecuencia polinomios de tercer grado o trazadores cúbicos que aseguran primera y segunda derivadas continuas.

Son n polinomios de grado menor o igual que tres y cada uno con cuatro coeficientes incógnitas, así que tenemos un total de 4n incógnitas por determinar (ak,bk,ck,dk).

10,1,...,n-k

)xx(d)xx(c)xx(ba)x(p)x(p kkkkkkkk

)k(

=

−+−+−+=≡

con

323

Interpolación segmentaria cúbica(spline cúbico )

Las condiciones que deben satisfacer tales polinomios son:

Condiciones de interpolación. (n +1 ecuaciones)

Condiciones de continuidad en los nodos interiores. (n -1 ecuaciones)

Condiciones de derivabilidad en los nodos interiores. (n -1 ecuaciones)

Condiciones de continuidad de la primera derivada en los nodos interiores: se conserva la concavidad en la vecindad del nodo interior, a no ser que la segunda derivada sea cero en el nodo interior. (n -1 ecuaciones).

- Hasta aquí tenemos n + 1 + 3(n-1) = 4n-2 condiciones.Se satisface uno de los siguientes pares de condiciones de frontera:

+ + +

+ + +

+ + +

+ +

= = −

=

= = −

= = −

= = −

= = =

1

1 1 1

1 1 1

1 1 1

0 0 1 1 0 0

( ) ( ), 0,1,..., 1)

( ) ( )

) ( ) ( ), 0,1,..., 2

) ' ( ) ' ( ), 0,1,..., 2

) '' ( ) '' ( ), 0,1,..., 2

) ) '' ( ) 0 '' ( ) 0 ) ' ( )

k k k

n n n

k k k k

k k k k

k k k k

k k

p x f x k ni

p x f x

ii p x p x k n

iii p x p x k n

iv p x p x k n

v a p x y p x b p x f − =0 1'( ) ' ( ) '( )n n nx y p x f x

Trazador cúbico

Dados n puntos [x0,xn], un trazador cúbico es un conjunto de n polinomios cúbicos pk(x), cada uno definido en el intervalo [xk,xk+1] .

T(x) = pk(x) para x∈[xk,xk+1] y pk(x), k = 0,1,...,n-1 cumple las condiciones i) a v). Si el Trazador cúbico satisface las condiciones v),a), se llama natural, y si satisface las condiciones v), b) se llama de frontera sujeta.

Page 8: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 8/12

Última actualización: 24/09/2013

1-0,1,..., Si 32

3 nk,)xx(d)xx(c)xx(ba)x(p)x(p kkkkkkkk

)k( =−+−+−+=≡

)x(f)x(pn,...,,k,a)x(f)x(p)i nnnkkkk =−=== −1 y 110 Por

si

Por

1

32

k1k

13

12

11

111

++

++++

+++

=+++⇒−=

=−+−+−+

⇒=

kkkkkkkkk

kkkkkkkkkkk

kkkk

ahdhchbaxxh

a)xx(d)xx(c)xx(ba

)x(p)x(p)ii

12

111 32 Por ++++ =++⇒= kkkkkkkkkk bhdhcb)x('p)x('p)iii

k

k1kkkkk1k

1kkkk1k1k1kk

h3

ccdhd3cc

c2hd6c2)x(''p)x(''p)iv Por

−=⇒+=⇒

=+==

++

++++

(1)

(2)

(3)

(4)

Remplazando en cada punto se determina un sistema de ecuacionesAX=B, con:

( )

( )

( ) ( )

( ) ( )

0

10 0 1 1

n 1n 2 n 2 n 1 n 1

n

2 1 1 0

1 0

n n 1 n 1 n 2

n 1 n 2

c1 0 0 0 0

ch 2 h h h 0 0

A X0

ch 2 h h h

c0 0 0 1

0

3 3a a a a

h h

B

3 3a a a a

h h

0

−− − − −

− − −

− −

+ = =

+

− − −

=

− − −

L

MO M

M

L L

M

Por (6)

Ejemplo

k xk f(Xk)=3xex-2ex hk=xk+1- xk

0 1.00 2.718282 0.05

1 1.05 3.286299 0.02

2 1.07 3.527609 0.03

3 1.10 3.905416

Adoptando p0’’(x0)=0 y p2’’(x3)=0 (condición de frontera) entonces c0=0 y c3=0 , así que debemos resolver el siguiente sistema:

=

=++

=++

=

0

3.286299)-527609 (3.02

3-3.527609)-(3.905416

.03

3.03 .05) 2(.02

2.718282)-3.286299 (.05

3-3.286299)-3.527609 (

.02

3 .022(.07).05

0

3

321

210

0

c

ccc

ccc

c

La solución de este sistema es:

c0 = 0, c1=13.22529, c2= 13.19694, c3= 0

b0 =11.13992, b1 =11.80118, b2 = 12.32963

d0 =88.16863 , d1 = −.4725490, d2 = −146.6327

T(x)→ pk (x) =ak +bk (x - xk )+ck (x -xk )2 +dk (x - xk )3

p0(x) = 2.718282 + 11.13992(x -1.00) + 0(x -1.00)2 +88.16863(x-1.00)3

p1(x) = 3.286299 + 11.80118 (x -1.05) + 13.22529(x-1.05)2 -.4725490(x-1.05)3

p2(x) = 3.527609 + 12.32963(x -1.07) + 13.19694(x-1.07)2 -146.6327(x-1.07 )3

f(1.03)≈ T(1.03) = p0(1.03)=

= 2.718282+11.13992103 (1.03-1.00)+88.16863(1.03 –1.00)3

= 3.054860

)cc2(3

h

h

aab 1kk

k

k

k1kk +

+ +−−

=

k

k1kk

h3

ccd

−= +

(5)

(4)

Page 9: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 9/12

Última actualización: 24/09/2013

P0 (x)= 88.16863x3 -264.50589x2 + 275.64581x -96.590268

P1 (x)= - 0.472549x3 + 14.7138193500x2 - 17.5348848174x + 6.02297676112

P2 (x)= - 146.6327·x3 + 483.887907000·x2 - 519.551156290·x + 185.075444212

p0

p1

p20.95 1 1.05 1.1

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Ventajas y desventajas del trazador cúbico

• El algoritmo consiste en resolver un sistema de ecuaciones• El sistema de ecuaciones es tridiagonal, con lo cual se puede

simplificar la resolución• Se pueden obtener soluciones con menos oscilaciones cuando

hay muchos puntos• Es adecuado para describir formas eligiendo los puntos

adecuados

• Para realizar una interpolación es necesario identificar el polinomio correspondiente

• Cualquier cálculo aplicado al trazador tiene que repetirse para cada polinomio, lo cual puede ser complicado cuando hay muchos puntos

Ajuste de un polinomio por mínimos cuadrados (regresión polinomial)

Encontrar el polinomio que "mejor se ajuste" a los datos en el sentido de que la distancia entre los puntos dados y los obtenidos mediante un polinomio sea mínima.

Este criterio se conoce como mínimos cuadrados, y el método para obtener los polinomios que mejor se ajustan según mínimos cuadrados se llama Regresión polinomial.

Encontrar

sea mínima

( )( ) ( )( )∑∑==

n

0k

2kkm

2

1n

0k

2kkm yxp o yxp

( )∑=

−+++=

<+++=n

kk

m

kmkkm

mmm

yxaxaxaa)a,a,a

,xaxaxaa)x(p

0

22

21010

2210

s( que tal

nm con

LL

L

Una condición necesaria para la existencia de un mínimo relativo de

la función S es que las derivadas parciales con respecto a aj , con j=0,1,...,m, sean cero, ⇒

Si anulamos el 2 y

02

02

02

02

02

2

210

0

2

210

0

22

210

02

2

210

01

2

210

00

=−+++=∂

=−+++=∂

=−+++=∂

=−+++=∂

=−+++=∂

=

=

=

=

=

)x)(yxaxaxaa(a

S

)x)(yxaxaxaa(a

S

)x)(yxaxaxaa(a

S

)x)(yxaxaxaa(a

S

)yxaxaxaa(a

S

m

kk

m

kmkk

n

km

j

k

m

kmkk

n

kj

kk

m

kmkk

n

k

kk

m

kmkk

n

k

k

m

kmkk

n

k

k

L

M

L

M

L

L

L

( ) 0

n

0k

0 a1na +=∑=

( )∑=

−+++=n

k

k

m

kmkkm yxaxaxaaaaa0

22

21010 ),,s( LL

Page 10: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 10/12

Última actualización: 24/09/2013

Obtenemos un sistema de m+1 ecuaciones lineales con m+1

incógnitas a0, a1,...,am denominado Sistema de ecuaciones

normales.

m,...,,jcon

yx)xa(n

k

kjk

n

k

jik

m

i

i

10

general En

000

=

= ∑∑∑==

+

=

=

++

+

=

++

+

=

++

+

=

++

++

∑∑∑∑

∑∑∑∑

∑∑∑∑

∑∑∑

===

+

=

==

+

=

+

=

==

+

==

===

n

0k

kmkm

n

0k

2m1

n

0k

m10

n

0k

m

n

0k

kjkm

n

0k

jm1

n

0k

j10

n

0k

j

n

0k

kkm

n

0k

1m1

n

0k

20

n

0k

k

n

0k

km

n

0k

m1

n

0k

k0

yxaxaxax

yxaxaxax

yxaxaxax

yaxax1)a(n

kkk

kkk

kk

k

L

M

L

M

L

L

En el caso particular en que m = 1, p(x) = a 0 + a1 x1 es la recta de mínimos cuadrados donde a0 y a1

se obtienen resolviendo el sistema lineal de dos ecuaciones con dos

incógnitas.

=

+

=

+

∑∑∑

∑∑∑

===

==

+

=

n

0k

kk1

n

0k

2

k0

n

0k

1

k

n

0k

k1

n

0k

1

k0

1n

n

0k

0

k

yxaxax

yaxax

43421

Medir el error es estimar la bondad del ajuste según mínimos cuadrados. Para N=cantidad de puntos (n+1):

( )( )

( )( )

( )( )

1 Varianzaiii)

o E Cuadrático Medio Error ii)

o E Error

2

02

2

0RMS

2

0

−−

=

=

−=

=

=

=

mN

yxp

N

yxp

yxp)i

n

k

kkm

n

k

kkm

n

k

kkm

σ

Ejemplo

a) p1(x) = a0 + a1x

b) P2(x) = b0 + b1x + b2x2

a) p1(x) = a0 + a1x

La solución al sistema es:a0 = -17/26 ≈ 0.654a1 = 6/13 ≈ 0.461

b) P2(x) = b0 + b1x + b2x2

La solución al sistema es:b0 = -15/13 b1 = 101/78b2 = -1/6

=

+

=

+

∑∑∑

∑∑∑

===

===

3

0k

kk1

3

0k

2k0

3

0k

1k

3

0k

k1

3

0k

1k0

3

0k

0k

yxaxax

yaxax

=

+

+

=

+

+

=

+

+

∑∑∑∑

∑∑∑∑

∑∑∑∑

====

====

====

3

0k

k

2

k2

3

0k

4

k1

3

0k

3

k0

3

0k

2

k

3

0k

kk2

3

0k

3k1

3

0k

2k0

3

0k

1k

3

0k

k2

3

0k

2k1

3

0k

1k0

3

0k

0k

yxbxbxbx

yxbxbxbx

ybxbxbx

Page 11: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 11/12

Última actualización: 24/09/2013

( )( ) ( ) ( ) ( ) ( )

( )( )

( )( )( )( )

231 , 5554

y 231 b)

11512

232 ,747

4

232

4

23265271269346 a)

2

23

0

223

0

2

2

23

0

1

222223

0

1

..

yxp

E.yxpE

..

..

yxp

E

.....yxpE

k

kk

RMS

k

kk

k

kk

RMS

k

kk

==

==−=

====

=

=−++−+−=−=

∑∑

=

=

=

=

σ

σ

Graficamente

-1 0 1 2 3 4 5 6-6

-5

-4

-3

-2

-1

0

1

2

3

4

p1(x)=0.4615*x-0.6538

p2(x)=-0.1667*x2+ 1.2949*x -1.1538

p3(x)=-0.2667*x3+1.8333*x

2-2.1*x-1.00008

La función potencial y=c·xa se puede trasformar en log y=a*log x + log cUsando nuevas variables x’ =log x e y’ =log yobtenemos la relación lineal y’ =ax’+b, donde b=log c ⇒ c=10^b

Ejemplo:

x 10 20 30 40 50 60 70 80

y 1.06 1.33 1.52 1.68 1.81 1.91 2.01 2.11

Variantes de la regresión lineal

X=log x 1.0 1.30 1.477 1.60 1.699 1.778 1.845 1.903

Y=log y 0.025 0.124 0.182 0.225 0.258 0.281 0.303 0.324

10 20 30 40 50 60 70 801

1.5

2

xx=log10(x)yy=log10(y)p=polyfit(xx,yy,1)hold onplot(x,10^p(2)*x.^p(1))

La función exponencialy=c·eax , se puede transformar en ln y=ax+ln cUsando nuevas variables x’ = x e y’ =ln yobtenemos la relación lineal y’ =ax’+b, donde b=ln c

Ejemplo:

Variantes de la regresión lineal

X= x 12 41 93 147 204 264 373 509 773

Y=ln y 6.835 6.703 6.449 6.188 5.913 5.580 4.990 4.330 2.833

x 12 41 93 147 204 264 373 509 773

y 930 815 632 487 370 265 147 76 17

0 100 200 300 400 500 600 700 8000

100

200

300

400

500

600

700

800

900

1000

yy=log(y)p=polyfit(x,yy,1)hold onplot(x,exp(p(2))*exp(p(1)*x))

Page 12: Métodos Numéricos – Cap 5: Interpolación y … - 2013b - 5 - interpolacion... · Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 1/12 Última actualización:

Métodos Numéricos – Cap 5: Interpolación y Aproximación polinomial 12/12

Última actualización: 24/09/2013

Instrucciones Matlab

YI = Interp1(X,Y,XI,metodo) Interpola entre puntos X,Y; X vector de valores x, Y vector de valores y, XI valor a interpolar,YI resultado de la interpolación en XI, método:

'nearest' - redondeo al valor más cercano'linear' - interpolación lineal'spline' - interpolación segmentaria cubica Spline'cubic' - aproxima a un polinomio cúbico

YI = spline(X,Y,XI) Evalúa XIP = spline(X,Y) Devuelve los coeficientes de los polinomios en formato “pp”[X,coef,npol,nterm,dim] = unmkpp(P) Recupera información de los

polinomiosYI = ppval(P,XI) Evalúa polinomios ”pp” en un punto

[coef,P] = polyfit(X,Y,N) Ajusta X,Y con un polinomio de grado N, ( por mínimos cuadrados), coef son los coeficientes del polinomio y P es el polinomio “pp” para ser evaluado con ppval