Está en la página 1de 24

Programa de Doctorado: Tecnologías Industriales y

de Comunicación
Matemática Numérica
Tema 1: Derivación e integración numéricas

1

Introducción

Los métodos numéricos sirven para obtener una solución aproximada de un problema
matemático mediante la implementación de un algoritmo.
Por tanto, la solución que obtenemos posee un margen de error que es conveniente
controlar.
Hay dos fuentes de error en un algoritmo numérico.
Una fuente de error es la propia representación del número en el ordenador. Normalmente los números se representan en el ordenador en código binario y en notación
cientí…ca. Como el número de bits que podemos utilizar es …nito, esta representación
implica necesariamente un redondeo. Además, al realizar operaciones aritméticas se introducen nuevos errores que se van propagando. A esta parte del error lo llamaremos
Error de Redondeo.
Notemos pues que a la hora de diseñar un algoritmo numérico es importante tener en
cuenta el número de operaciones necesarias para su implementación, ya a mayor número,
mayor es el error de redondeo y mayor es el tiempo de cálculo.
Si un algoritmo obtiene la solución exacta de un problema en un número …nito de
pasos decimos que el algoritmo es directo. En este caso la única fuente de error es el de
redondeo.
Un algoritmo es un método iterativo si consiste en una sucesión de pasos dependientes de uno o varios parámetros y que proporciona aproximaciones de la solución cada
vez mejores a medida que los parámeteros tienden a in…nito. Si las sucesivas soluciones
se acercan cada vez más a la solución real, entonces decimos que el método es convergente. En este caso el método en sí tiene un error proprio, al que llamaremos Error de
Truncamiento.
Es importante resaltar que en los métodos iterativos no es sólo importante estudiar
la convergencia del método, sino también la velocidad a la que converge, ya que a mayor
velocidad, menos tiempo de cálculo necesitaremos para la resolución del problema.
Por tanto, si x aproxima la solución x, expresaremos el error x x en la forma:
Error = x

x = ERed + ET runc :
1

El error absoluto jx

x j lo estimaremos mediante la desigualdad
jx

2

xj

jERed j + jET runc j :

Derivación numérica

El problema de la derivación numérica consiste en aproximar la función derivada f 0 (x)
de una función f dado que conocemos las imágenes de la función en ciertos puntos.
Las fórmulas de derivación numéricas son importantes en el desarrollo de algoritmos de
resolución de ecuaciones diferenciales, como veremos en el siguiente tema.
Dado que, por de…nición,
f (x + h)
h!0
h

f 0 (x) = lim

f (x)

= lim

f (x)

f (x
h

h!0

h)

= lim

f (x + h)

f (x
2h

h!0

h)

;

el método más sencillo para estimar numéricamente derivadas parece evidente: tómese
h lo su…cientemente pequeño para que la diferencia entre el cociente incremental y su
límite cuando h ! 0 sea menor que la precisión deseada. Este método de derivación
numérica se llama aproximación por diferencias …nitas. Más especí…camente, tenemos la
aproximación por diferencias hacia adelante
f (x + h)
h

f 0 (x) '

f (x)

=

f1

f0
h

;

la aproximación por diferencias hacia atrás
f 0 (x) '

f (x)

f (x
h

h)

=

f0

f

1

h

:

y, …nalmente, la aproximación por diferencias centrales.
f 0 (x) '

f (x + h)

Ejemplo. Vamos a aproximar

f (x
2h

d x
e
dx

1. Diferencias hacia delante: f 0 (1) '
2. Diferencias hacia atrás: f 0 (1) '
3. Diferencias centrales: f 0 (1) '

h)

=

f1

f
2h

1

:

(1)

en x = 1 con h = 0:1 (e = 2:7182818):
e1:1 e
0:1

e1 e0:9
0:1

e1:1 e0:9
0:2

= 2:8588, Error = 0:1405:

= 2:868, Error = 0:1315:

= 2: 722 8, Error = 0:0045:

Vemos que el error es menor en el último caso. Más tarde veremos que esto no es
casualidad.
Como estas fórmulas de aproximación utilizan los valores de f en dos puntos distintos,
se llaman fórmulas de dos puntos. En general, se llaman fórmulas de k puntos a aquellas
que aproximan el valor de f (n) (x); k
n + 1; mediante los valores de f en k puntos
2

h) Vamos a ver los errores de truncamiento de las aproximaciones de la primera derivada que hemos visto: (Fórmulas de dos puntos para f 0 (x)) 3 . Una solución es ir disminuyendo hk hasta que se cumpla el siguiente criterio de parada: o bien jDk Dk 1 j < ". Nosotros nos restringiremos siempre al caso en el que todos estos puntos distan de x un múltiplo de una distancia mínima h. h) = f (n) (x) D (x. h) una aproximación de la derivada enésima en el punto x. sino que hemos de buscar el valor óptimo. no basta con ir disminuyendo h hasta obtener la precisión deseada. pasaremos a examinar más detenidamente el error de las aproximaciones (sin tener ahora en cuenta el error de redondeo). mientras que el denominador no sufre ningún redondeo. 71783 10 13 0 5 Dk 2:85884195 2:719 64142 2:71829542 2:717825964 0 Error 0:140 56 0:001 359 1:3592 10 0:00046 2: 718 282 5 Al contrario de lo que pudiera uno pensar. De…nición. La derivada de ex en el punto x = 1 es e ' e1+hk e para distintos valores 2:718281828.distintos. Consideremos la función f (x) = ex . Por tanto. Una vez visto este importante aspecto. h) a la diferencia Etrunc (x. el mejor resultado se ha obtenido en h = 0:00001. Veamos varias aproximaciones del tipo Dk = hk de hk (cálculos realizados en Excel): hk 0:1 0:001 0:00001 10 13 10 15 e1+hk 3:004166024 2: 721 001 47 2:718309011 2:718281828 2:718 281828 e1+hk e 0:285884195 0:02719 641 2:71829542 10 2. La primera pregunta que nos aparece es obvia: ¿qué valor de h hemos de elegir para que que la aproximación de la derivada sea buena? Veamos un ejemplo que ilustra que la solución de este problema no es simple debido a los errores de redondeo que tiene el ordenador. Llamaremos error de truncamiento Etrunc (x. el problema no es sencillo. Llega un momento (h = 10 15 ) en el cual el numerador es un cero máquina (under‡ow) y el resultado resulta por completo erróneo. mientras que para valores más pequeños el error aumenta. y se produce una pérdida importante de cifras signi…caticas debido al redondeo. que en cuenta aumenta la diferencia entre dos iteradas consecutivas paramos el cálculo. Sea D (x. o bien jDk+1 Dk j jDk Dk 1 j : Es decir. El problema reside en que para valores de h muy pequeños los valores e1+h y e son casi idénticos.

por el teorema del valor medio existe 2 (a. (Diferencias centrales) Sea f 2 C 3 [a. b[ tal que f 0 (x) = f (x + h) f (x h.1. b[ tal que f 0 (x) = f (x + h) h f (2) ( ) h: 2 f (x) 2. x 2 [a. 1) Si Etrunc (f (n) (x). x. x + h 2 [a. 2 R. b]: h. h) Mh M. b] y supongamos que x Entonces. en el primer caso tenemos: f (x + h) h f (x) 2 f (x) + f 0 (x) h + f (2) ( ) h2 = h f (x) h = f 0 (x) + f (2) ( ) . existe 2]a. 2 luego f (x + h) f (x) f (2) ( ) h: f (x) = h 2 El segundo caso se demuestra de forma similar. 4 . existe 2]a. b]. existe 2]a. En cuanto al último tenemos: 0 f (x + h) f (x 2h h) 3 2 f (x) + f 0 (x) h + f (2) (x) h2 + f (3) ( 1 ) h6 = 2h 3 2 f (3) ( 1 ) h6 f (x) f 0 (x) h + f (2) (x) h2 2h 2 h h2 = f 0 (x) + f (3) ( 1 ) + f (3) ( 2 ) = f 0 (x) + f (3) ( ) : 12 6 (3) En el último paso hemos utilizado que. por lo que conviene elegir un esquema con un valor alto de . (Diferencias hacia adelante) Sea f 2 C 2 [a. no es aconsejable en los cálculos por ordenador usar valores de h muy pequeños. las diferencias hacia atrás y hacia delante tienen orden O (h) y las diferencias centrales tienen orden O (h2 ). como f es continua. b) tal que f (3) ( + f (3) ( 2 ) = f (3) ( ) : 2 La precisión de las diferencias centrales es mejor. b] y supongamos que x Entonces. b[ tal que f 0 (x) = f (x) f (x h h) + f (2) ( ) h: 2 3. b]. (Diferencias hacia atrás) Sea f 2 C 2 [a. para 8x 2 [a. por tanto. convergerá más rápidamente. diremos entonces que la fórmula Dn (x. y. b]: f (3) ( ) 2 h: 6 h) 2h Estos resultados son consecuencia inmediata del desarrollo en serie de Taylor. Efectivamente. Entonces. x + h 2 [a. Como hemos visto. b] y supongamos que x. h) es de orden (de precisión) O(h ): Por tanto.

5 (h) 4k Dk 1 1 (2h) .1 El método de extrapolación de Richardson Vamos a ver un método que nos permitirá obtener esquemas de mejor orden.2. A partir de estos resultados podemos extrapolar el método general: si Dk 1 (h) = f 0 (x) + Ch2k + O h2k+2 . 2h) = f 0 (x) + 4Ch2 + O h4 : Entonces 3f 0 (x) + O h4 = 4D0 (h) D0 (2h) 4 (f (x + h) f (x h)) f (x + 2h) f (x = 2h 4h f (x + 2h) + 8f (x + h) 8f (x h) + f (x = 4h 2h) 2h) . de donde obtenemos la aproximación de orden cuatro: f 0 (x) ' f (x + 2h) + 8f (x + h) 8f (x 12h h) + f (x 2h) = f2 + 8f1 8f 12h 1 +f 2 : (2) Pongamos ahora que D1 (h) = D1 (2h) = f (x + 2h) + 8f (x + h) 8f (x h) + f (x 2h) = f 0 (x) + Ch4 + O h6 . entonces Dk (h) = 4k Dk 1 es de orden h2k+2 . 12h f (x + 4h) + 8f (x + 2h) 8f (x 2h) + f (x 4h) = f 0 (x) + 16Ch4 + O h6 . con lo cual Dk 1 (2h) = f 0 (x) + 4k Ch2k + O h2k+2 . Supondremos que la función f posees derivadas continuas de cualquier orden. 24h por lo que una aproximación de orden seis es D2 (h) = 16D1 (h) D1 (2h) : 15 Para estos cálculos es importante resaltar que no hay términos impares. Usando la serie de Taylor obtenemos que D0 (h) = f (x + h) f (x 2h f (x + 2h) f (x D0 (2h) = 4h h) = f 0 (x) + Ch2 + O h4 .

si k = 3 tenemos que D0 (x. 6 f2 + 4f1 2h 3f0 . h) D2 (x. h8 ) D3 (x. h) = e 0:2e = 2: 722 814 6 1:2 0:8 D0 (1. h8 ) Ejemplo.Podemos pues calcular las aproximaciones de forma recursiva hasta obtener la precisión deseada. Por ejemplo. h4 ) D1 (x. h) = 16 2: 718 272158 2: 718 136 2 = 2: 718 281 907 Error=j2: 718 281 9 2: 718 281 829j = 0:000 000 071 = 7:1 10 8 Este mismo procedimiento se puede aplicar a las diferencias hacia delante y hacia atrás. h) D0 (x. 2h) D1 (x. h) Este procedimiento es equivalente a D0 (x. h) D3 (x. f (x) = ex . h) = 4 2: 722 81436 2: 736 44 = 2: 718 272 8 D1 (1. 2h) D0 (x. 4h) D1 (x. h) D1 (x. x = 1. h2 ) D0 (x. h = 0:1 y k = 2 e = 2: 718 281 829 i=0 i=1 i=2 2: 791 351 5 2: 736 44 2: 718 136 2 2: 722 814 6 2: 718 272 8 2: 718 281 9 1:1 0:9 D0 (1. 8h) D0 (x. h8 ) D1 (x. 2h) = 4 2: 736 44 3 2: 791 351 5 = 2: 718 136 2 D2 (1. para las diferencias hacia delante tenemos f (x + h) f (x) = f 0 (x) + Ch + O h2 . h2 ) D1 (x. 4h) = e 0:8e = 2: 791 351 5 D1 (1. 2h) = e 0:4e = 2: 736 44 1:4 0:6 D0 (1. h f (x + 2h) f (x) = f 0 (x) + 2Ch + O h2 : D0 (2h) = 2h D0 (h) = Por tanto 2D0 (h) D0 (2h) = D1 (h) = 4f (x + h) f2 + 4f1 2h 4f (x) f (x + 2h) + f (x) = 2h 3f0 . h4 ) D0 (x. Por ejemplo. h4 ) D2 (x. 4h) D0 (x. h8 ) D2 (x. Estos cálculos se pueden ordenar en una matriz triangular. 2h) D2 (x. .

8y 2 [x. f (x + 2h) + 4f (x + h) f (x) + f 0 (x) 2h + 3f (x) = +4 f (x) + f 0 (x) h + = f 0 (x) 2h + f 00 (x) 2 f 000 ( 1 ) 3 4h + 8h 2 6 f 00 (x) 2 f 000 ( 2 ) 3 h + h 2 6 2f 000 ( 3 2) 3 h 4f 000 ( 3 3f (x) 1) 3 h. 2h) = e 0:2 e = 3:0091755 1:4 1 D0 (1. Efectivamente. jEtrunc (x. si jf 000 (y)j M . x + 2h]: A partir de estos resultados podemos extrapolar el método general: si Dk 1 (h) = f 0 (x) + Chk + O hk+1 . 2h) = 2 3:00917551 3:3422953 = 2: 676 055 7 D2 (1. h)j M h2 . h) = e 0:1 e = 2:858842 1:2 1 D0 (1. Obtener una aproximación de orden h3 de la derivada de ex en x = 1 con h = 0:1: i=0 3:3422953 3:0091755 2:858842 1:1 i=1 i=2 2: 6760557 2:7085085 2: 7193261 1 D0 (1. h) = 4 2:70850853 2: 6760557 = 2: 719 326 1 7 . con lo cual Dk 1 (2h) = f 0 (x) + 2k Chk + O hk+1 . entonces Dk (h) = 2k Dk 1 (h) 2k Dk 1 1 (2h) es un esquema de orden O hk+1 : Ejemplo. h) = 2 2:8588421 3:0091755 = 2: 708 508 5 D1 (1.que es una aproximación de orden O (h2 ). es decir. 4h) = e 0:4 e = 3:3422953 D1 (1.

Supongamos que f (x h) = y 1 + e 1 . Si aproximamos f 0 (x) con diferencias centrales f 0 (x) = y1 y 2h 1 + E (x. Al contrario. donde e 1 . f (x + h) = y1 + e1 . si je1 j . Hallemos el valor de h que minimiza la parte derecha: M " + h = 0. si f (x) = sen (x) (M = 1) y " = 0:5 10 9 . h) viene determinado por la suma E (x. Hagamos un análsis del error en el que tenemos en cuenta tanto el error del método como el error de redondeo. h) + Etrunc (x. h)j Notemos en primer lugar que si h ! 0 el error de redondeo aumenta y converge a 1. h) . h) = Ered (x. 2 h 3 3" M h= 1 3 : Este valor de h nos dará un error próximo al óptimo. e1 son los errores de redondeo. je 1 j M tenemos que " M 2 + h: h 6 jE (x. para h grandes aumenta el error del método. Por ejemplo. h) e1 e 1 f 000 ( ) 2 = h: 2h 6 " y jf 000 j Por tanto.2 Análisis del error Hemos visto al principio que el error de redondeo juega un papel importante en la derivación numérica.2. h) = 1 12 8 (5) 8 f ( 1 ) h4 + f (5) ( 2 ) h4 5! 5! 8 32 (5) f ( 3 ) h4 5! 32 (5) f ( 4 ) h4 : 5! . el error E (x. entonces h= 3 0:5 10 1 9 1 3 = 0:001145: El error sería menor que 0:5 10 9 0:0011452 + = 6: 55 10 7 : 0:001145 6 Para la fórmula (2) el análisis es similar. Sabemos (ver el Apéndice) que Etrunc (x.

pero el error de redondeo marca un límite que no podemos mejorar. para f (x) = sen (x). f1 2f0 + f h2 2 1 3 4 f (x) + f 0 (x) h + f 00 (x) h2 + f 000 (x) h6 + f (4) ( 1 ) h24 = h2 3 4 h2 0 00 f (x) f (x) h + f (x) 2 f 000 (x) h6 + f (4) ( 2 ) h24 + h2 2 h = f 00 (x) + f (4) ( ) : 12 9 2f (x) . h) De aquí para jek j 8y 12h 1 M tenemos +y 8e 12h 1 2 +e + E (x.3 Derivadas de orden superior Las derivadas aproximadas de orden superior se pueden obtener de manera recursiva. h)j + 0:0202384 = 4: 64 10 8 : 2 0:020214 18 Vemos que el método de extrapolación de Richardson mejora la precisión. f (5) (x) 27 0:5 10 4 1 h= 1. + 2h2 18 27" 4M h= 1 5 : En el ejemplo anterior.Usando la notación f (x + kh) = yk + ek y f (5) (y) y2 + 8y1 f 0 (x) = e2 + 8e1 E (x. 2. si utilizamos las diferencias centrales tenemos 00 f (x) ' f0 x + h 2 f0 x f (x+h) f (x) h h 2 = h f (x + h) 2f (x) + f (x h) f1 = = 2 h f (x) f (x h) h h 2f0 + f h2 1 . 2 + M 4 h: 18 ". Por ejemplo. Efectivamente. que es de orden O (h2 ). h)j 18" M 4 3" M 4 + h = + h: 12h 18 2h 18 El valor que minimiza la parte derecha viene dado por: 3" 4M 3 h = 0. tenemos 1 5 9 = 0:020214 y 3 0:5 10 9 1 jE (x. tenemos jE (x. h) .

Si utilizáramos el esquema hacia delante. entonces tendríamos f 2 f1 f1 f0 f2 f 0 (x + h) f 0 (x) h ' h = h h El esquema sigue siendo de orden O (h).Aplicando el procedimiento de extrapolación de Richardson obtenemos la aproximación de orden O (h4 ) : f 00 (x) ' 4 = f (x + h) 2f (x) + f (x h2 h) f (x + 2h) 2f (x) + f (x 4h2 3 30f (x) + 16f (x 12h2 f 2 : f (x + 2h) + 16f (x + h) f (x 2h) 30f0 + 16f 1 12h2 El procedimiento de Richardson se utiliza aquí exactamente igual que para la primera derivada. es decir. = f2 + 16f1 h) 2h) f 0 (x) ' f1 f0 h . para la tercera derivada tenemos = f 00 (x) + f 000 ( 000 f (x) ' 1) f 00 (x + h) f 00 (x h) 2h f (x + 2h) 2f (x + h) + f (x) h2 ' = = f (x + 2h) f2 2f (x + h) + 2f (x 2h3 2f1 + 2f 1 f 2 . 2h3 f (x) 2f (x h) + f (x h2 2h h) f (x 2h) y para la cuarta f (4) (x) ' ' = f 00 (x + h) f2 f2 2f 00 (x) + f 00 (x h) ' h2 2f1 + f0 2f1 + 4f0 2f 1 + f0 h4 4f1 + 6f0 4f 1 + f 2 : h4 10 2f 1 +f 2 2h) h3 2) 6 + f0 . Efectivamente: 2f1 + f0 : h2 f 00 (x) ' f2 = 2f1 + f0 h2 2 f (x) + f 0 (x) 2h + f 00 (x) 4h2 + f 000 ( 8h3 1) 6 2 2 f (x) + f 0 (x) h + f 00 (x) h2 + f 000 ( h2 4h h f 000 ( 2 ) : 3 3 De manera análoga.

Se puede obtener un esquema distinto operando de la siguiente manera: f (4) (x) ' ' = f 000 (x + h) f3 f3 f 000 (x h) 2h 2f2 + 2f0 f 1 f1 4h4 2f2 f1 + 4f0 f 1 4h4 2f0 + 2f 4h4 2f 2 + f f 2 3 3 : Podemos obtener también esquemas de aproximación usando el esquema hacia delante: f 000 (x) ' f 00 (x + h) h f (x + 3h) ' = f3 f 00 (x) 2f (x + 2h) + f (x + h) h2 h 3f2 + 3f1 f0 . h = 0:1 Calculemos f 00 (x) con una aproximación de orden O (h6 ) i=0 0:255 137 47 0:251 258 4 0:250 313 02 i=1 i=2 0:249 965 38 0:249 997 89 0:250 000 06 ln(2)+ln(1:9) D0 (h) = ln(2:1) 20:01 = 0:250 313 02 ln(2:2) 2 ln(2)+ln(1:8) D0 (2h) = = 0:251 258 4 0:04 ln(2:4) 2 ln(2)+ln(1:6) D0 (4h) = = 0:255 137 47 0:01 16 4 ( 0:250 313 02)+0:251 258 4 D1 (h) = = 0:249 997 89 3 4 ( 0:251 258 4)+0:255 137 47 D1 (2h) = = 0:249 965 38 3 16 ( 0:249 997 89)+0:249 965 38 D2 (h) = = 0:250 000 06 15 Error = 6 10 8 Para las derivadas de orden superior se puede realizar un análisis del error similar. f (x) = ln (x). x = 2. 11 . h3 f (4) (x) ' ' = f (x + 2h) f 00 (x + 2h) f4 f4 2f 00 (x + h) + f 00 (x) h2 2f3 + f2 2 (f3 2f2 + f1 ) + f2 h4 4f3 + 6f2 4f1 + f0 : h4 2f (x + h) + f (x) h2 2f1 + f0 Vamos a aplicar el método de Richardson para calcular una aproximación de la segunda derivada de orden O (h6 ) Ejemplo.

si no podemos encontrar ninguna primitiva de f o sólo conocemos f para ciertos valores de x (cosa que ocurre cuando f viene dada por una tabla de valores). Por ejemplo. por cuatro puntos una función cúbica. incluso en este caso. x1 . n. Vamos a de…nir los siguientes polinomios de grado n : Lk (x) = (x (xk x0 ) (x x0 ) (xk x1 ) x1 ) (x (xk i=n Y (x xk 1 ) (x xk+1 ) (x xn ) i=0. yn arbitrarios existe un único polinomio de grado n que pasa por estos puntos. Si x0 . El polinomio y su derivada se puede evaluar en cualquier punto de forma e…ciente utilizando el algoritmo de Ru¢ ni. una función diferenciable F tal que F 0 (x) = f (x) para 8x 2 [a.i6=k 12 xi ) : xi ) . entonces hay que recurrir necesariamente a la integración numérica. entonces.i6=k = i=n xk 1 ) (xk xk+1 ) (xk xn ) Y (xk i=0. por dos puntos pasa una recta. 3. obtenemos Z b f (x)dx = F (b) F (a): a Pero. buscaremos un polinomio de grado n p (x) tal que p (xi ) = yi . aplicando la regla de Barrow. entonces decimos que el valor de f (x) está extrapolado. b]. es decir.1 El polinomio interpolador de Lagrange Dados los puntos (xi . etc. yi ).3 Integración numérica Ahora ocuparemos del siguiente problema: dada una función f integrable en un intervalo …nito [a. 8i: A este polinomio se le llama polinomio de interpolación y los puntos xi los centros del polinomio. b] mediante los valores de f (x) en un número …nito de puntos de dicho intervalo. si conocemos una primitiva de f. evaluar la integral de…nida Z b f (x)dx: (3) a Por supuesto. Si calculamos p (x) en x < a o x > b. Teorema. Supondremos de ahora en adelante que los valores de xi son distintos y están ordenados en orden creciente. El objetivo de la integración numérica es aproximar la integral de la función f (x) en el intervalo [a. b]. :::. :::. entonces para valores y0 . si F tiene una expresión muy complicada puede ser más conveniente evaluar la integral (3) numéricamente que calcular la diferencia F (b) F (a): Por supuesto. i = 0. :::. por tres puntos pasa una parábola. xn son números reales distintos. Si a = x0 < x1 < ::: < xn = b entonces al aproximar f (x) para a < x < b decimos que el valor de f (x) está interpolado.

ya que para evaluar ahora el polinomio en cualquier punto necesitamos realizar muchas multiplicaciones. por lo que 4 13 jxj x 2 . 2 x 2 x 4 Veamos ahora el análisis del error que cometemos en la aproximación de la función. Entonces En = f (x) f (n+1) (c (x)) p (x) = (x (n + 1)! x0 ) (x x2 ) (x xn ) para cierto c (x) 2 [a. 8k. En el ejemplo anterior jf 000 (x)j = jsen (x)j jE2 (x)j 1 x 6 1. b]. . x0 . b]) . Tenemos: 2 L0 (x) = x x 4 4 L1 (x) = x x L2 (x) = x x 8 8 2 = 16 2 x x 4 4 2 p (x) = = x 2 2 4 2 = 8 2 x x 4 2 . El término de error es muy similar al término que se emplea en la serie de Taylor. Ejemplo. Lo ideal es contar con un método similar al de Ru¢ ni para evaluar el polinomio. si de…nimos el polinomio p (x) = n X yk Lk (x) . . :::. y además el grado de p no puede ser mayor que n. Dada la función f (x) = cos (x) y los puntos: xk f (xk ) 0 1p 4 2 2 0 construir el polinomio interpolador de Lagrange. Teorema.Resulta fácil ver que Lk (xk ) = 1. b]. c (x) es una función continua. k=0 entonces tenemos que p (xk ) = yk . Lk (xi ) = 0. Sea f 2 C n+1 ([a. Además. 8i 6= k: Por tanto. 4 p 28 x x 2 x : 4 2 2 Desde el punto de vista numérico este método no es muy efectivo. xn 2 [a. (4) . b] si x 2 [a.

.si x 2 [a. yi ): a0 = y 0 y1 a1 = x1 a2 = a0 x0 y2 (x2 p1 (x2 ) x0 ) (x2 x1 ) (xi yi x0 ) (xi . 3 = 0:866 03.. interpolamos). Si x = 6 tendríamos E2 1 6 6 6 4 6 Efectivamente. .. ai = pi 1 (xi ) x1 ) (xi 14 xi 1 ) : x1 ) (x x2 ) . por lo que si añadimos un punto hemos de empezar todo de nuevo. p cos 6 6 = = 6 p 8 2 6 p 4 6 2 28 2 2 = 0:01794: 6 6 2 = 0:850 76. b] (es decir. Pn (x) = a0 + a1 (x x0 ) + a2 (x x0 ) (x x1 ) + :::+ + an (x x0 ) (x x1 ) (x xn 1 ) = n i 1 X Y ai (x i=0 Tenemos que x0 ) (x xj ) : j=0 pk (x) = pk 1 (x) + ak (x x0 ) (x x1 ) (x xk 1 ) : En cada paso vamos calculando los valores de ai a partir de (xi . Los polinomios de Newton se calculan de forma recursiva: P0 (x) = a0 P1 (x) = a0 + a1 (x x0 ) P2 (x) = a0 + a1 (x x0 ) + a2 (x x0 ) (x x1 ) P3 (x) = a0 + a1 (x x0 ) + a2 (x x0 ) (x x1 ) + a3 (x . Otro problema aparece porque no existe relación entre el polinomio pn 1 y pn .2 0:850 76j = 0:015 27: El polinomio interpolador de Newton Como hemos dicho anteriormente. uno de los inconvenientes del método de Lagrange reside en que no es muy e…ciente desde el punto de vista computacional. 2 y Error Absoluto = j0:866 03 3.

a para ciertos pesos wi . a donde Etrunc (f ) es el error de truncamiento. a1 = y1 x1 1:8 a0 = x0 2 p1 (2) = 3:6 a2 = 3:6 = 1 1:8 (3 1: 8. A este tipo de fórmulas se les llama fórmulas de cuadratura. Los puntos xi se denominan nodos de integración y los valores wi pesos de la fórmula.3 1:8 (x 1) + 0:6 (x 1) (x 2) : Las fórmulas de Newton-Cotes Notemos que la integral de…nida de una función continua se de…ne mediante el límite Z b f (x) dx = lim (f (x0 ) (x1 x0 ) + f (x1 ) (x2 x1 ) + ::: + f (xn 1 ) (xn xn 1 )) . vamos a intentar aproximar el valor de la integral por una suma …nita del siguiente tipo: Z b f (x) dx ' Q (f ) = f (x0 ) w0 + f (x1 ) w1 + ::: + f (xM ) wM . n!1 a donde a = x0 < x1 < x2 < ::: < xn 1 < xn = b. 1) = 0. 15 . Dados los puntos xk f (xk ) 1 3:6 2 1:8 3 1:2 calcular el poliniomio interpolador de Newton. y2 p1 (2) 1:2 0 = = 0:6: (x2 x1 ) (x2 x0 ) (3 2) (3 1) Así. Pondremos Z b f (x) dx = Q (f ) + Etrunc (f ) .Ejemplo. p2 (x) = 3:6 3. Calculamos ai : a0 = y0 = 3:6. Por tanto.

Si elegimos nodos equiespaciaciados xi = x0 + ih b a h= n y calculamos el área del trapecio formado al unir los puntos (x0 . Calculemos 0 x2 dx. Si sumamos los valores de todos los subintervalos obtenemos la fórmula compuesta del trapecio: ! Z b n 1 X fi + fi+1 h f (x) dx h = (f0 + 2f1 + 2f2 + ::: + 2fn 1 + fn ) : 2 2 a i=0 R1 Ejemplo. 16 ! jxx10 = f0 + f1 h: 2 .De…nición. (5) 2 2 x0 que se conoce como fórmula simple del trapecio. f (x1 )) con una recta. El grado de precisión de una fórmula de cuadratura es el número natural n que veri…ca lo siguiente: E (Pi ) = 0 para todos los polinomios de grado i n. y se deriva de la de…nición de integral y su interpretación geométrica. xi+1 ]. h = 0:2 : Z 1 x2 dx ' 0:1 0 + 2 0:22 + 2 0:42 + 2 0:62 + 2 0:82 + 12 = 0:34 0 Como R1 0 x2 dx = 0:333 333 333 3 tenemos que Error = j0:333 333 333 3 0:34j = 0:006 666 666 7: La fórmula (5) se puede obtener fácilmente del polinomio interpolador de Lagrange con dos puntos por intervalo: P1 (x) = f0 x x1 + f1 x1 x1 x x0 x0 : x0 Integrando este polinomio tenemos Z 2 x1 x0 P1 (x) dx = 2 f0 (x x1 ) f1 (x x0 ) + 2 x0 x1 2 x1 x0 El mismo cálculo se realiza para cada intervalo [xi . tenemos que Z x0 +h f (x0 ) + f (x1 ) f0 + f1 f (x) dx ' h= h. y existe un polinomio de grado n + 1 tal que E (Pn+1 ) 6= 0: Regla del trapecio Esta es la fórmula más sencilla. f (x0 )) y (x1 .

por lo que P Z b h 1 3 nk=1 f 00 (ck ) f (x) dx = (f0 + 2f1 + 2f2 + ::: + 2fn 1 + fn ) n h 2 12 n a 00 h f (c) = (f0 + 2f1 + 2f2 + ::: + 2fn 1 + fn ) (b a) h2 : 2 12 El orden de aproximación es O (h2 ). Esto se deduce de la fórmula Etrunc = f 00 (c) (b 12 a) h2 . ya que f 00 (c (x)) es una función continua y (x x0 ) (x x1 ) no cambia de signo en [x0 . usando el segundo teorema del valor medio. = 2 2 3 2 Z x1 f (x) dx = x0 f0 + f1 h 2 f 00 (c) 3 h: 12 Este resultado es cierto en cada subintervalo [xi . por lo que. x1 ]. 17 . por ejemplo.Supondremos que f 2 C 2 ([a. Esto es cierto para cualquier recta. entonces el error de redondeo en la regla del trapecio está acotada por jEred j h h (" + 2" + ::: + 2" + ") = (2 + 2n 2 2 2) " = hn" = (b a) ": En este caso. y podemos elegir h tan pequeño como queramos. xi+1 ]. el redondeo no afecta seriamente a los resultados. Esto será cierto en general para todos los métodos de integración numérica. si los valores de fr se calculan con una precisión ". Para valorar el término del error utilizamos que f (x) = P1 (x) + f 00 (c (x)) (x 2 x0 ) (x x1 ) . b]). Ejemplo. hubiéramos elegido elegido f (x) = x. al contrario que en la diferenciación numérica. ya que f 00 (c) = 0 si f (x) = m + nx: Notemos por otro lado que. tenemos Z x1 Z f0 + f1 1 x1 00 f (x) dx = h+ f (c (x)) (x x0 ) (x x1 ) dx 2 2 x0 x0 Z f0 + f1 f 00 (c) x1 = h+ (x x0 )2 h (x x0 ) dx 2 2 x0 f 00 (c) h3 h3 f0 + f1 h+ . jf 00 (x)j = 2 : jEtrunc (f )j = 2 0:22 = 0:006666666: 12 Si. En el ejemplo anterior. entonces el error sería cero.

Z 8h3 3 Z 4h3 x2 (x = x0 )2 4h . b] = [0. 12 3 x2 )2 + 2h (x x2 ) dx x0 x0 ) (x x1 ) 1 dx = 2 x0 ) (x2 x1 ) 2h 1 = 2 2h Por tanto. h = 0:1: 18 a) h4 f (4) ( ) : 180 . 3 h (x x0 ) dx x0 8h3 3 4h3 2 = h : 3 f0 + 4f1 + f2 h: 3 h5 f (4) ( ) : 90 Considerando la integral en todo el intervalo completo tenemos que Z b h f (x) dx ' (f0 + 4f1 + 2f2 + 4f3 + 2f5 + ::: + 4fn 1 + fn ) : 3 a E (f ) = Notemos que para poder aplicar esta fórmula el número de intervalos ha de ser par (n = 2N ). El error de la última fórmula vendría dado por E (f ) = Ejemplo.Regla de Simpson Hemos visto en el método anterior que el poliniomio interpolador de Lagrange es útil para obtener fórmulas de cuadratura. f (x) = e x2 n h5 f (4) ( ) = 2 90 (b . Elijamos ahora el polinomio P2 : P2 (x) = f0 (x (x0 (x x1 ) (x x2 ) + f1 x1 ) (x0 x2 ) (x1 x0 ) (x x2 ) (x + f2 x0 ) (x1 x2 ) (x2 (x (x0 x1 ) (x x2 ) 1 dx = 2 x1 ) (x0 x2 ) 2h 1 = 2 2h x0 ) (x x1 ) : x0 ) (x2 x1 ) Tenemos Z x2 x0 Z x2 x0 (x (x1 x0 ) (x x2 ) dx = x0 ) (x1 x2 ) = Z x2 x0 (x (x2 Z x2 x0 Se puede demostrar que f (x) dx ' x2 (x x2 )2 + h (x x2 ) dx x0 Z 1 h2 1 h2 8h3 3 4h3 2 x2 (x = 4h h = . [a. 1] .

1. 2 d4 e x (0:958 57) = dx4 7: 507 042 18. P2 es el polinomio de interpolación que pasa a través de los puntos (x0 . los extremos absolutos de la cuarta derivada se encuentran en uno de los siguientes puntos: 0. la fórmula de cuadratura es exacta para todas las funciones cúbicas. (x2 . y P3 el polinomio de interpolación que pasa a través de los puntos (x0 . (x3 . (x1 . Entonces p = P3 y gracias a lo estudiado en el polinomio interpolador de Newton sabemos que p (x) = P2 (x) + a3 (x 19 x0 ) (x x1 ) (x x2 ) . (x1 . 0:958 57 o 0:958 57. p (x0 )). El valor de la cuarta y quinta derivadas son las siguientes: 2 2 2 2 d4 e x = 12e x 48x2 e x + 16x4 e x 4 dx d5 dx5 2 2 e x = 8xe x (4x4 20x2 + 15) Las raíces de la quinta derivada son: 4x4 20x2 + 15 = 0 ) x = 2: 020 18. (x2 .La integral aproximada por Simposon es la siguiente: Z 1 2 e x dx 0 2 2 0:1 0 2 (e + 4e (0:1) + 2e (0:2) + 4e 0:3 + 2e 3 2 2 2 0:62 2e + 4e 0:7 + 2e 0:8 + 4e 0:9 + e 1 ) = 0:746 82496: ' 0:42 + 4e 0:52 + Vamos a estimar el error de truncamiento. xi = x0 + ih. p (x3 )). los polinomios de grado 3: Para ver esto sea p (x) un polinomio de grado 3. Como 2 2 d4 e x d4 e x (0) = 12. (1) = dx4 dx4 7: 357 588 82. x = 0:958 57: Por tanto. p (x1 )). p (x1 )). es decir. p (x2 )). p (x0 )). el error global es el siguiente: Error = j0:746 824 133 0:746 82496j = 0:000 000 827 = 8:27 10 7 : Por otro lado. p (x2 )). tenemos que d4 e x M ax dx4 Así Dado que R1 0 jEtrunc (f )j e x2 2 = 12: 12 0:14 = 6: 666 6 667 180 10 6 : dx = 0:746 824 133.

h) + a1 h2 + a2 h4 + ::: + O h2n .y Z x2 p (x) dx = Z x2 P2 (x) dx + x0 x0 Z | x2 (x x0 x0 ) (x x1 ) (x {z k 0 x2 ) dx = S (p. Esto permite utilizar el procedimiento de Richardson para mejorar el grado de precisión de las fórmulas de cuadratura. h) T (f. a2 . n=2 Apliquemos la anterior fórmula trapezoidal con nodos fx2k gk=0 : Z b f (x)dx = T (f. podemos estimar el error de redondeo del método de Simpson de la siguiente manera: jEred j h h n n (" + 4" + 2" + ::: + 2" + 4" + ") = 4" + 2" = hn" = (b 3 3 2 2 a) ": Por tanto. x0 Finalmente. a donde n 2y h (f0 + 2f1 + 2f2 + ::: + 2fn 1 + fn ) 2 es la fórmula de cuadratura trapezoidal con n nodos separados una distancia h = (b a)=n y a1 . que f posee derivadas continuas de cualquier orden en el intervalo [a. . h) := a Restando esta igualdad de Z b 4 f (x)dx = 4T (f. es decir. ::: 2 R: Por tanto. Supongamos que f 2 C 1 [a. el error de redondeo no depende de h. el error de truncamiento de la fórmula trapezoidal es de O(h2 ) y puede expresarse como una serie de potencias pares de h.4 Método de Romberg Vamos a ver que el método de Richardson que vimos en la derivación numérica es también aplicable en la integración. 2h) 3 20 + b1 h4 + b2 h6 + ::: + O h2n . 3. h) + 4a1 h2 + 4a2 h4 + ::: + O h2n a obtenemos Z a b f (x)dx = 4T (f. b]: Entonces puede probarse usando la serie de Taylor que Z b f (x)dx = T (f. R x2 pero vemos que se obtiene un grado más de precisión gracias a que la integral (x x0 ) (x x1 ) (x x2 ) dx es igual a 0. al igual que en el método del trapecio. b]. h) : } Es evidente desde el principio que la fórmula de Simpson es exacta para las parábolas. 2h) + 4a1 h2 + 16a2 h4 + :: + O h2n : T (f.

La fórmula simple de Boole quedaría de la siguiente manera: B (f. h) T (f. 2h) R1 (x. su error de truncamiento puede expresarse como una serie de potencias pares de h. Z b f (x)dx = S(f. h) R1 (x. a (h) Rk 1 (2h) : 4k 1 Esta regla es la fórmula de cuadratura de Romberg. 2h) R2 (x. además. b2 := 4T (f. h) es la regla de Boole. h) + c1 h6 + c2 h8 + ::: + O h2n . Prosiguiendo de este modo obtendríamos ahora Z b 16S(f. a lo cual prueba no sólo que la regla de Simpson es de O(h4 ) sino que. 4h) R1 (x.donde b1 := 12a2 . a k 4 1 Z b f (x)dx = 4k Rk 1 (h) Rk 1 4k Rk 1 (2h) + b1 h2k+2 + b2 h2k+4 + ::: + O h2n . 2h) 48b2 6 240b3 8 h h + ::: f (x)dx = 15 15 15 a = B(f. 4 h2 (f0 + 2f1 + ::: + 2fn 1 + fn ) 3 h (f0 + 2f2 + :::2fn h (f0 + 4f1 + 2f2 + 4f3 + ::: + 2f2n 3 =: S(f. h) S(f. etc. 2h) R0 (x. 8h) R0 (x. a Z b f (x)dx = Rk 1 (2h) + a1 4k h2k + a2 4k+1 h2k+2 + :::: + O h2n . h) + b1 h4 + b2 h6 + ::: + O h2n . El esquema resultante se llama integración Romberg. h) = 16 h3 (f0 + 4f1 + 2f2 + 4f3 + f4 ) 15 2h 3 (f0 + 4f2 + f4 ) = 2h (7 + 32f1 + 12f2 + 32f3 + 7f4 ) : 45 En el caso general tendríamos que para la cuadratura Rk en el paso k: Z b f (x)dx = Rk 1 (h) + a1 h2k + a2 h2k+2 + ::: + O h2n . donde B(f. h) R3 (x. h) R2 (x. 4h) R0 (x. ::: Ahora bien. Los cálculos se pueden resumir en la siguiente tabla: Rk (h) = R0 (x. h) 21 . h) = 2 + 4f2n 1 2 + fn ) + f2n ) es la fórmula de cuadratura de Simpson con nodos fxk gnk=0 : Por tanto. 2h) 3 = 60a3 .

Error de truncamiento del esquema en diferencias centrales de orden O(h4) Apéndice: Veamos el esquema de aproximación de la primera derivada: f 0 (x) ' f (x + 2h) + 8f (x + h) 8f (x 12h h) + f (x 2h) : Teorema. Tenemos que f (x + h) f (x 1 1 00 2 h) = 2f 0 (x) h + f 00 (x) h2 f (x) h2 + f 000 (x) h3 2 2 3! 1 (4) 1 1 1 + f (x) h4 f (4) (x) h4 + f (5) ( 1 ) h5 + f (5) ( 2 ) h5 4! 4! 5! 5! 1 1 1 = 2f 0 (x) h + f 000 (x) h3 + f (5) ( 1 ) h5 f (5) ( 2 ) h5 : 3 5! 5! 22 . es conveniente 2 Ejemplo. h = 0:05: Obtenemos la siguiente tabla: Trapecio 0:744 368 34 0:746 210 8 0:746 670 84 Simpson Boole 0:746 824 96 0:746 824 19 0:746 824 14 Trapecio R 1 x2 e dx = 0:744 368 34 (h = 0:2) R01 x2 e dx = 0:746 210 8 (h = 0:1) R01 x2 e dx = 0:746 670 84 (h = 0:05) 0 Simpson R1 (0:05) = 4 0:746 670 843 0:746 210 8 = 0:746 824 19 R1 (0:1) = 4 0:746 210 83 0:744 368 34 = 0:746 824 96 Boole R2 (0:05) = 16 0:746 824 19 0:746 824 96 15 = 0:746 824 14 Podemos comparar este resultado con el obtenido con la fórmula de Simpson con 1000 intervalos: Z 1 e x2 dx = 0:746 824 132 8: 0 Notemos que la fórmula de Boole es exacta para todos los polinomios de grado 4 5. a.Como el paso utilizado ha de dividir la longitud del intervalo b elegir primero 8h y después ir dividiendo. Si f 2 C 5 ([a. Demostración. b]). f (x) = e x . entonces el error de truncamiento es de orden O (h4 ).

Dado que f (3) (x) M . Hallar en ese caso el valor de h y una cota del error global. Aplicar estos resultados a la función f (x) = cos (x) con un error máximo de redondeo de 5 10 9 . 18 f (x + 2h) + 8f (x + h) 8f (x f 0 (x) = 12h f 0 (x) = 5 32 (5) f ( 4 ) h5 5! 2h. jE (x. (Sol: h = 2" M 1 3 . 8x 2 [x f (x + 2h) + 8f (x + h) 8f (x 12h M 4 jEtrunc (x. h)j h.Es necesario eliminar el término que contiene la tercera derivada. a partir del esquema del ejercicio anterior un esquema de orden O (h4 ) usando el método de Richardson. x + 2h]. f (x + 2h) + 8f (x + h) 8f (x h) + f (x 2h) 8 8 8 = 16f 0 (x) h + f 000 (x) h3 + f (5) ( 1 ) h5 + f (5) ( 2 ) h5 3 5! 5! 8 32 32 4f 0 (x) h + f 000 (x) h3 + f (5) ( 3 ) h5 + f (5) ( 4 ) h5 3 5! 5! 8 8 32 (5) = 12f 0 (x) + f (5) ( 1 ) h5 + f (5) ( 2 ) h5 f ( 3 ) h5 5! 5! 5! = 12f 0 (x) h + O h5 : De aquí. 4. Mostrar que la aproximación f 000 (x) ' 10 5 ) 1: 392 5 f2 2f1 +2f 2h3 1 f 2 es de orden O (h2 ) : 3. h) . si elegimos M tal que f (5) (x) M . h)j 2. + O h4 : Ejercicios 1. Vemos que f (x + 2h) f (x 2h) = 4f 0 (x) h + 16 000 32 32 f (x) h3 + f (5) ( 3 ) h5 + f (5) ( 4 ) h5 : 3! 5! 5! Así. x 2 [x. Demostrar que f 0 (x) = 4f1 3f0 2h f (3) ( 3 f2 1) 2 h + 2f (3) ( 3 2) 2 h: Obtener la fórmula del error que tiene en cuenta el redondeo. x + 2h]. Dado el esquema en diferencias hacia delante de tres puntos f 00 (x) ' f2 23 2f1 + f0 . h2 . h = 0:0021544. Obtener. hallar el valor de h óptimo. obtenemos h) + f (x 2h) h) + f (x 2h) + Etrunc (x.

calcular una aproximación de orden O (h3 ) de la segunda derivada de ln (x) en x = 2. Aplicar la regla del trapecio y la regla de Simpson para aproximar Z 1 Z 1 p 1 sen dx. 2) Trapecio: 0:54598. (Sol: 1) Trapecio: 0:66050934. (Sol: 1) 0:6658696. usando el método de Richardson. Simpson: 0:6640996. Simpson: 0:55033.que tiene orden O (h) . con h = 0:05. Aplicar la regla de Boole (mediante el método de Romberg) para calcular Z 1 Z 1 p 1 sen xdx. jE (f )j 0:0066661) 6. x 0 0:4 con h = 0:1. Dar estimaciones del error de truncamiento en el segundo caso. Error = 0:002567. y sea f (x) = ln (x). (Sol: f 00 (2) ' 0:24986) 5. 2) 0:5505508) 7. Utilizar integración de Romberg para aproximar Z 1:8 y(x)dx 1 utilizando la siguiente tabla de valores: x 1:0 1:2 1:4 1:6 1:8 y(x) 1:0000 0:8333 0:7143 0:6250 0:5556 ¿Qué orden del error se ha obtenido? (Sol: B (0:2) = 0:587794) 24 . dx x 0:4 0 con h = 0:05. Error = 0:00616. Usando el método de Romberg obtener la fórmula de Boole Z x4 2h (7f0 + 32f1 + 12f2 + 32f3 + 7f4 ) : f (x) dx B (h) = 45 x0 8. xdx. jE (f )j 0:03516. Calcular el error absoluto y comparar los resultados en el primer caso.