3. Interpolación polinomial

1
I.T.I. GESTIÓN
BOLETÍN CON LOS EJERCICIOS RESUELTOS
CÁLCULO NUMÉRICO
CURSO 2004-05
3. Interpolación polinomial
1. Obtener el polinomio interpolador de Lagrange para cierta función f de la que conocemos que: f(-1)=1
; f(0)=-1 ; f(2)=2 y f(3)=2.
Solución.
En primer lugar los polinomios de Lagrange:
P0 (x) =
(x)(x − 2)(x − 3)
(x − 0)(x − 2)(x − 3)
=
(−1 − 0)(−1 − 2)(−1 − 3)
−12
P1 (x) =
(x + 1)(x − 2)(x − 3)
(x + 1)(x − 2)(x − 3)
=
(0 + 1)(0 − 2)(0 − 3)
6
P2 (x) =
(x + 1)(x − 0)(x − 3)
(x + 1)(x)(x − 3)
=
(2 + 1)(2 − 0)(2 − 3)
−6
P3 (x) =
(x + 1)(x − 0)(x − 2)
(x + 1)(x)(x − 2)
=
(3 − 0)(3 + 1)(3 − 2)
12
Ahora el polinomio interpolador:
P (x) = 1
(x + 1)(x − 2)(x − 3)
(x + 1)(x)(x − 3)
(x + 1)(x)(x − 2)
(x)(x − 2)(x − 3)
−1
+2
+2
−12
6
−6
12
P (x) =
−1
(5x3 − 19x2 + 12).
12
2. Obtener el polinomio interpolador de Lagrange para la función f (x) = log(x) con el soporte s =
{1, 2, 4, 6, 8}. Determinar la función del error y acotar el error cometido al usar P(3) para aproximar
el valor de log(3).
Solución.
Sabido que log(1) = 0; log(2) = 0.633147; log(4) = 2 log(2) = 1.386294; log(6) = 1.791759 y que
log(8) = 3 log(2) = 2.079441, el polinomio interpolador es:
P (x) = −0.001768x4 + 0.038892x3 − 0.325901x2 + 1.425121x − 1.136444.
Para acotar la función error necesitamos la derivada cuarta de la función: f 4 (x) =
24
x5 .
En el intervalo I = [1, 8], puesto que es una función decreciente en él, ofrecerá su valor máximo en x
=1 luego: M= 24.
Por tanto la función del error será:
24
≤
|(x − 1)(x − 2)(x − 4)(x − 6)| = |(x − 1)(x − 2)(x − 4)(x − 6)|.
4!
Para aproximar log(3) uso:
P (3) = −0.00176834 + 0.03889233 − 0.32590132 + 1.4251213 − 1.136444 = 1.112814.
con lo que el error:
≤ |(3 − 1)(3 − 2)(3 − 4)(3 − 6)| = 6.
Realmente la acotación resulta excesiva puesto que el valor “exacto” es log(3) = 1.098612 y el “error
exacto:” 0.014202.
2
3. Obtener el polinomio interpolador de Lagrange para cierta función f(x) de la que conocemos: f(-2)=0;
f(0)=1; f(1)=-1. Idem por Newton, Diferencias Divididas. Escribirlo en la forma a0 + a1 x + a2 x2
para comprobar que son idénticos.
Solución.
Por Lagrange:
(x)(x − 1)
6
(x + 2)(x − 1)
P1 (x) =
−2
P0 (x) =
P2 (x) =
Por lo tanto:
P (x) =
(x)(x + 2)
3
−1
(5x2 + 7x − 6) = −0.833333x2 − 1.166666x + 1.
6
Por Newton:
xi
−2
0
1
f (xi )
0
1
−1
f [xi , xi+1 ]
0.5
−2
f [xi , xi+1 , xi+2 ]
−0.833333
Con ello:
P (x) = 0 + 0.5(x + 2) − 0.833333(x + 2)x = −0.833333x2 − 1.166666x + 1.
4. Disponemos de los siguientes datos sacados de un polinomio de grado g ≤ 5. ¿Podrı́amos averiguar
de qué grado es?
xi -2 -1 0 1 2 3
yi -5 1
1 1 7 25
Solución.
Lo resolveremos por Diferencias Divididas.
xi
−2
−1
0
1
2
3
f (xi )
−5
1
1
1
7
25
f [xi , xi+1 ]
6
0
0
6
18
f [xi , xi+1 , xi+2 ]
−3
0
3
6
f [xi , · · · , xi+3 ]
1
1
1
f [xi , · · · , xi+4 ]
0
0
f [xi , · · · , xi+5 ]
0
Con estos datos:
P (x) = −5 + 6(x + 2) − 3(x + 2)(x + 1) + 1(x + 2)(x + 1)x + 0(x + 2)(x + 1)x(x − 1) = x3 − x + 1.
Al anularse las diferencias de cuarto orden se deduce que se trata de un polinomio de tercer grado,como
finalmente obtenemos.
3
5. Sabemos que P4 (x) =
los datos:
−5 4
24 x
+
14 3
24 x
+
29 2
24 x
xi
yi
−
62
24 x
-1
3
es el polinomio interpolador de cierta función para
0
0
1
-1
2
1
3
2
Lo hemos calculado por Diferencias Divididas, compruebalo y determina el polinomio interpolador
resultante si ampliamos los datos con el punto A = (4, 3).
Solución.
Comenzaremos por las Diferencias Divididas para el soporte inicial:
xi
−1
0
1
2
3
f (xi )
3
0
−1
1
2
f [xi , xi+1 ]
−3
−1
2
1
f [xi , xi+1 , xi+2 ]
1
1.5
−0.5
f [xi , · · · , xi+3 ]
0.166666
0.666666
f [xi , · · · , xi+4 ]
−0.208333
Y de aquı́, el polinomio interpolador es:
P4 (x) =
−5 4 14 3 29 2 62
x + x + x − x = −0.2083333x4 + 0.583333x3 + 1.208333x2 − 2.583333x.
24
24
24
24
Ahora ampliamos la tabla de Diferencias Divididas:
xi
−1
0
1
2
3
f (xi )
3
0
−1
1
2
f [xi , xi+1 ]
−3
−1
2
1
f [xi , xi+1 , xi+2 ]
1
1.5
−0.5
f [xi , · · · , xi+3 ]
0.166666
0.666666
0.166666
f [xi , · · · , xi+4 ]
−0.208333
0.208333
f [xi , · · · , xi+5 ]
0.833333
Obtenemos el término que hay que añadir: 0.833333(x + 1)x(x − 1)(x − 2)(x − 3) y que sumaremos
al polinomio anterior:
P5 (x) = −0.2083333x4 + 0.583333x3 + 1.208333x2 − 2.583333x + 0.833333(x + 1)x(x − 1)(x − 2)(x − 3)
P5 (x) = 0.833333x5 − 0.625x4 + x3 + 1.625x2 − 3.083333x.
3. Integración numérica
6. Calcular el valor de
{0, π2 , π}.
Rπp
0
1 + cos2 (x)dx usando la fórmula de Newton-Cotes con el soporte S =
Solución.
El soporte es equiespaciado de paso h = π2 , los coeficientes serán:A0 = A2 = π6 y A1 =
Z πp
π
2π
π
1 + cos2 (x)dx ' f (x0 ) +
f (x1 ) + f (x2 ) =
6
3
6
0
√ π
2π π √
π√
2 = (2 + 2) = 1.138711π
2+
+
3
3
6
6
Rπp
2
y si tomamos π = 3.141592; 0
1 + cos (x)dx ' 3.575355
=
2π
3
y con ello,
4
R1
7. La función f (x) = e2x+1 es continua en [−1.1]. Hallar el valor exacto de −1 f (x)dx y comparar el
resultado con el obtenido al usar la fórmula de Newton-Cotes en el soporte S = {−1, 0, 1}. Determina
una cota del error cometido.
Solución.
Integrando directamente tenemos
Z 1
Z
1 1 2x+1
e3 − e−1
e2x+1 dx =
e
2dx =
= 9.858829
2 −1
2
−1
Como se trata de un soporte equiespaciado de paso h = 1, los coeficientes serán:A0 = A2 =
A1 = 43 y con ello,
Z 1
e2x+1 dx ' 10.442181
1
3
y
−1
Comparando, el error es = |10.442181 − 9.858829| = 0.583352
Newton-Cotes con el soporte dado n = 2 ⇒ es Simpson, por lo tanto lo podemos hacer directamente
Z 1
1
4
1
e2x+1 dx ' e−1 + e0 + e1 = 10.442181
3
3
3
−1
Como es la fórmula de Simpson, acotamos el error, previa acotación de la derivada cuarta de la función
f 4 (x) = 16e2x+1 como se aprecia en la evolución de las derivadas la siguiente serı́a positiva en su
dominio lo que hace que podamos asegurar que la f 4 es creciente en [−1, 1] y M = 16e3 < 16(33 ) = 432
<
(1 + 1)5
432 = 4.8
2880
que como se aprecia es una cota muy mala.
Rπ
8. Calcular el valor exacto de 0 sen(x)dx y comparar el resultado con el obtenido al usar la fórmula
compuesta de los Trapecios para n=8. Determina una cota del error cometido.
Solución.
Integrando directamente tenemos
Z π
sen(x)dx = −cos(π) + cos(0) = −1 + 1 = 2
0
Para aplicar la fórmula del trapecio para n = 8 el soporte es
π 2π 3π 4π 5π 6π 7π
,
,
,
,
,
,
, π}
8 8 8 8 8 8 8
Rπ
π
2π
3π
4π
5π
por lo tanto: 0 sen(x)dx ' π−0
2(8) [sen(0) + 2{sen( 8 ) + sen( 8 ) + sen( 8 ) + sen( 8 ) + sen( 8 ) +
π
π
2π
3π
4π
5π
π
π
π
sen(6 8 )} + sen(π)] = 8 [sen( 8 ) + sen( 8 ) + sen( 8 ) + sen( 8 ) + sen(6 8 )] = 8 [2sen( 8 ) + 2sen( π4 ) +
π
2sen( 3π
8 ) + sen( 2 ] = 1.974232
S = {0,
Para llegar al resultado anterior hemos considerado lo siguiente:
q √
π
1− 22
π
4
sen( 7π
)
=
sen(
)
=
sen(
)
=
8
8
2
2
π
sen( 6π
8 ) = sen( 4 ) =
sen( 5π
8 )
=
sen( 3π
8 )
√
=
2
2
cos( π8 )
3
q
=
√
1+ 22
2
(π−0)
Cota del error, < 12(8
la derivada segunda de la función es f 2 = −sen(x) por lo tanto M2 = 1
2 )M
2
y consecuentemente,
π3
3.23
32.77
<
<
=
= 0.0426..
2
12(8 )1
768
768
5
R1 2
9. Determinar el número mı́nimo de partes necesarias para calcular 0 ex dx por la fórmula compuesta
de los Trapecios con 4 cifras decimales exactas. Calcular el valor de dicha integral en el caso que
necesitemos que el error sea menor que una centésima.
Solución.
3
2
(1−0)
Sabemos que < 12(n
la derivada segunda de la función es f 2 = (4x2 + 2)ex función creciente
2 )M
2
en el intervalo de integración, por lo tanto M2 = 6e < 18 y consecuentemente,
0.0001 >
18
12(n2 )
18
12(0.0001)
⇒ n2 >
= 15000 ⇒ n > 122.47..
Luego tendremos que tomar n = 123; si apuramos más en las cotas, por ejemplo tomando e = 2.8,
mejoramos algo la partición.
6(2.8)
12(n2 )
Ahora hacemos, 0.01 >
⇒ n2 >
S = {0,
por lo tanto:
1.465794..
R1
0
2
ex dx '
6(2.8
0.02
= 140 ⇒ n > 11.8.. tenemos que tomar n = 12
1 2 3 4 5 6 7 8 9 10 11
, , , , , , , , , , , 1}
12 12 12 12 12 12 12 12 12 12 12
1
1−0
0
12
2(12) [e + 2[e
2
3
4
5
6
7
8
9
10
+ e 12 + e 12 + e 12 + e 12 + e 12 + e 12 + e 12 + e 12 + e 12 +] + e1 ] =
El valor ”exacto” es 1.462652 y el ”error exacto” 0.003...
10. Usar el método de Simpson para calcular el valor de
R1
0
x5 dx con error menor que una milésima.
Solución.
Lo primero es averiguar la partición que necesitamos para cumplir el enunciado. f 4 = 120x por lo
120
120
4
tanto es fácil deducir que M4 = 120 0.001 > 180(n
4 ) ⇒ n > 180(0.001) = 666.6... ⇒ n > 5.08...
Bastará tomar n como el primer número natural par posterior a 5.08.. es decir n = 6.
Aplicando Simpson con la partición obtenida:
Z
1
0
Partición = {0, 16 , 26 , 36 , 46 , 56 , 1}
E = 0 + 1 = 1; I = ( 16 )5 + ( 36 )5
Z
0
11. Calcular el valor de
R2
1
1
x5 dx '
x5 dx '
1−0
[E + 4I + 2P ]
3(6)
+ ( 56 )5 = 0.433256..; P = ( 26 )5 + ( 46 )5 = 0.135802..
1
[1 + 4(0.433256) + 2(0.135802)] = 0.1669238..
18
x8 log(x)dx con error menor que 5(10−2 ).
Solución.
Las derivadas de la función son continuas en todo su dominio, la segunda es f 2 = x6 (15 + 56log(x))
y la cuarta, f 4 = x4 (1066 + 1680log(x)); ambas crecientes en [1, 2].
Si usamos el método de los Trapecios:
M2 = f 2 (2) = 26 (15 + 56log(2) = 3444.24 ; 0.05 >
n = 76.
3444.24
12(n2 )
⇒ n2 >
3444.24
12(0.05)
⇒ n > 75.7... debo tomar
Si usamos el método de Simpson:
M4 = f 4 (2) = 24 (1066 + 1680log(2)) = 35687.8.. ; 0.05 >
tomar n = 8.
A la vista del resultado, lo haremos por Simpson.
35687.8
180(n4 )
⇒ n4 >
35687.8
180(0.05)
⇒ n > 7.93... debo
6
xi
yi
1
0
1.125
0.302206
1.250
1.330039
1.375
4.068815
12.5
10.391627
2
Z
x8 log(x)dx '
1
1.625
23.606041
1.750
49.225977
1.875
96.026375
2
177.445668
1
[E + I + 2P ] = 33.13978
24
R∞
12. Sabemos que 2 e−3x dx = 0.0008 con todas sus cifras decimales exactas, ¿podemos afirmar que
R ∞ −3x
R2
e
dx = 0 e−3x dx con error menor que una milésima?
0
R∞
Con los datos conocidos y aplicando Simpson, calcular 0 e−3x dx con una cifra decimal exacta,
determinando previamente la partición del intervalo de integración que lo garantiza.
Solución.
En primer lugar,
R ∞ −3x
R2
R∞
e
dx = 0 e−3x dx + 2 e−3x dx ⇒
0
R2
R∞
R ∞ −3x
e
dx − 0 e−3x dx = 2 e−3x dx = 0.0008 < 0.001
0
R2
luego como el error es menor que una milésima, podemos usar 0 e−3x dx para aproximar el valor de
R ∞ −3x
e
dx sin que repercuta sobre el error que necesitamos: ε < 0.001.
0
R2
R∞
Ahora calcularemos 0 e−3x dx en las condiciones solicitadas,aproximada por 0 e−3x dx
f4 =
81
e3x
por lo que su valor máximo, en el intervalo de integración, lo dará en el extremo inferior,
M4 = 81.
Con este dato averiguaremos la partición necesaria,
0.1 >
25
180n4 81
2
⇒ n4 >
25
1800.1 81
= 24 32 ⇒
n2 > 2 3 ⇒ n > 3.4 debemos tomar n = 4.
xi
yi
0
1
0.5
−3
e2
1
e−3
1.5
−9
e2
2
e−6
y con estos datos:
Z
0
Podemos concluir que
R2
0
2
e−3x dx '
2
[E + I + 2P ] = 0.339835
12
e−3x dx = 0.3 con todas sus cifras exactas.