Вы находитесь на странице: 1из 5

Anlisis Numrico y Programacin (2011)

PRACTICA 12
Diferenciacin e integracin numrica.
Diferenciacin numrica. Sea f una funcin suave sobre un intervalo
1
. En un punto a de
dicho intervalo, la derivada de f puede ser estimada a partir del cociente incremental
f

(a)
f(a + h) f(a)
h
,
para valores pequeos de h. Tal aproximacin es conocida como frmula de diferencia progresiva
(si h > 0) o regresiva si (h < 0).
Ejercicio 1. Mostrar que el error de truncamiento de la frmula de diferencia anterior est dado
por
E(f) =
h
2
f
(2)
(),
para algn entre a y a + h.
Ejercicio 2. Mostrar que la frmula de diferencia centrada
f

(a)
f(a + h) f(a h)
2h
,
tiene un trmino de error
E(f) =
h
2
6
f
(3)
(),
donde se encuentra entre a h y a + h, y por lo tanto constituye una mejor aproximacin que
la frmula anterior.
Ejercicio 3. Compute, con precisin simple, la aproximacin de f

(0.1) para f(x) = sin(x) uti-


lizando la formula de diferencia centrada con diferentes valores de h. Comience con h = 10 y
reduzca sucesivamente el paso a la dcima parte del paso anterior, procediendo de esta manera
por lo menos quince veces. Imprima para cada h el valor estimado de la derivada y el error come-
tido. Comente los resultados obtenidos. A qu se debe lo observado? Cual parece ser el rango
del valor apropiado para h?
Ejercicio 4. Repita el ejercicio anterior, pero ahora con precisin doble y efectuando la divisin
del paso h al menos veinticinco veces.
Ejercicio 5. Mostrar que si los errores de redondeo por la utilizacin de aritmtica nita en la
evaluacin de f estn acotados por algn > 0 y la derivada tercera de f est acotada por M > 0,
entonces

(a)

f(a + h)

f(a h)
2h


h
+
h
2
6
M,
donde

f denota la evaluacin de f en aritmtica nita. Mientras que el error de truncamiento,
(h
2
/6)M, decrece conforme h disminuye, el error debido al redondeo, /h, se incrementa confome
h disminuye. Claramente, para h sucientemente pequeo, el error debido al redondeo dominar al
error de truncamiento, convirtindose en la fuente principal de error. Mostrar que el valor ptimo
1
Por suave queremos decir que las derivadas de hasta orden n 1 de f son continuas sobre el intervalo, donde
el orden n depende del contexto del problema.
Prctica 13 1
Anlisis Numrico y Programacin (2011)
de h, denido como el valor de h para el cual la suma de las magnitudes del error de redondeo y
truncamiento se minimizan, puede ser estimado como
h
ptimo
=
3
_
3
M
.
Calcular el valor ptimo de h para los dos ejercicios anteriores y comparar con los resultados
obtenidos.
Ejercicio 6. Mostrar que f

(a) puede ser aproximada por la frmula de diferencias


f

(a)
f(a h) 2f(a) + f(a h)
h
2
,
con un trmino de error dado por
E(f) =
h
2
12
f
(4)
(),
donde se encuentra entre a h y a + h.
Frmulas elementales de integracin numrica. Sea f una funcin suave sobre el intervalo
cerrado [a, b], el cual es subdividido en n subintervalos de longitud h = (b a)/n por los puntos
esquipaciados
x
0
a, x
n
b, x
i
= x
0
+ ih i = 0, 1, . . . , n.
Se tienen entonces las siguientes reglas de integracin con sus respectivos trminos de error (siendo
un punto del intervalo (a, b)),
Regla del rectngulo
_
b
a
f(x) dx = h
n

i=1
f(x
i1
) +
h(b a)
2
f

().
Regla del trapecio
_
b
a
f(x) dx =
h
2
_
f(x
0
) + f(x
n
) + 2
n1

i=1
f(x
i
)
_

h
2
(b a)
12
f

().
Regla de Simpson
_
b
a
f(x) dx =
h
3
_
f(x
0
) + f(x
n
) + 2
m1

j=1
f(x
2j
) + 4
m

j=1
f(x
2j1
)
_

h
4
(b a)
180
f
(4)
(),
siendo n = 2m.
Ejercicio 7. Indicar cual es el grado de exactitud o precisin de las reglas de integracin anteriores,
esto es, el entero n no negativo tal que la regla de integracin es exacta para todo los polinomios
de grado menor o igual que n.
Ejercicio 8. Implementar los mtodos anteriores ya sea como funciones o subrutinas fortran.
Ejercicio 9. Estimar
_

0
sin(x) dx,
con paso h = /10 utilizando las subrutinas implementadas en el punto anterior. Compare los
resultados obtenidos. Cul debera ser, para cada mtodo, el nmero n de nodos necesario para
garantizar que el error en la estimacin correspondiente de la integral sea, a lo ms, 2 10
5
?
Prctica 13 2
Anlisis Numrico y Programacin (2011)
Mtodo de integracin de Romberg. La frmula de Euler-McLaurin muestra que si f es
sucientemente suave, el error de truncamiento al aproximar I(f) =
_
b
a
f(x) dx por la regla de
integracin del trapecio T(f; h) con paso h, admite un desarrollo en potencias pares de h con
coecientes independientes de h,
I(f) = T(f; h) + a
1
h
2
+ a
2
h
4
+
Esto permite aplicar el algoritmo de extrapolacin de Richardson, y el procedimiento resultante se
conoce como mtodo de integracin de Romberg. El mtodo procede tomando los pasos en sucesin
geomtrica
h
m
= (b a)/2
m
, m = 0, 1, 2, . . .
y comienza obteniendo aproximaciones con la regla del trapecio como
T
m,0
= T(h
m
), m = 0, 1, 2, . . .
Aplicamos ahora la extrapolacin de Richardson, generando para cada k = 1, 2, . . . , m
T
m,k
= T
m,k1
+
T
m,k1
T
m1,k1
4
k
1
=
4
k
T
m,k1
T
m1,k1
4
k
1
lo cual construye la tabla de extrapolacin la por la segn el siguiente esquema
T
0,0
T
1,0
T
1,1
T
2,0
T
2,1
T
2,2
T
3,0
T
3,1
T
3,2
T
3,3
T
4,0
T
4,1
T
4,2
T
4,3
T
4,4
donde cada columna produce una aproximacin de la integral de orden h
(2k+2)
m
que es exacta para
todo polinomio de grado 2k+1. El valor T
m,m
se considera como una aproximacin correcta dentro
de una tolerancia prejada > 0 cuando la diferencia entre los valores anteriores sobre la misma
columna dieren en menos de tal tolerancia:
|T
m,m1
T
m1,m1
| < .
La implementacin algortmica del mtodo es dada a continuacin.
Algoritmo de extrapolacin de Romberg
Para aproximar la integral I =
_
b
a
f(x) dx. Dada una cota superior N para el nmero
de las (columnas) de la tabla de extrapolacin y una tolerancia para el error.
paso 1. Tomar h = (b a) y calcular T(0, 0) = h/2 [f(a) + f(b)]
paso 2. Imprimir T(0, 0)
paso 3. Tomar n = N 1 y para m = 1, . . . , n seguir los pasos 49
paso 4. Calcular
T(1, 0) = 1/2
_
T(0, 0) + h

2
(m1)
i=1
f(a + (i 1/2)h)

(trapecios).
paso 5. Para k = 1, . . . , m tomar
T(1, k) =
4
k
T(1, k 1) T(0, k 1)
4
k
1
(extrapolacin).
paso 6. Imprimir T(1, k) para k = 0, 1, . . . , m
paso 7. Si |T(1, m1) T(0, m1)| < parar. T(1, m) es la estimacin de I.
paso 8. Tomar h = h/2.
paso 9. Para k = 0, . . . , m tomar T(0, k) = T(1, k) (solo dos las en memoria).
paso 4. Parar (cota superior N de las alcanzada).
Ejercicio 10. Implemente el mtodo de Romberg como un programa fortran.
Ejercicio 11. Utilice el mtodo de Romberg para calcular
_

0
sin(x) dx.
Prctica 13 3
Anlisis Numrico y Programacin (2011)
Cuadratura de Gauss-Legendre. Si x
1
, x
2
, . . . , x
n
son las n races del polinomio de Legendre
de grado n, la frmula de cuadratura de Gauss-Legendre de n puntos para estimar la integral de
una funcin f sobre el intervalo [1, 1] est dada por
_
1
1
f(x) dx A
i
f(x
i
), donde A
i
=
_
1
1
n

j=1
j=i
(x x
j
)
(x
i
x
j
)
dx,
y el error de truncamiento est dado por E(f) = c
n
f
(2n)
() donde es un punto del intervalo
(1, 1) y c
n
es una constante. Tal frmula es exacta para todo polinomio de grado 2n 1.
Ejercicio 12. Mostrar que la frmula de Gauss-Legendre de dos puntos es
_
1
1
f(x) dx f(1/

3) + f(1/

3),
y su trmino de error es E(f) =
1
135
f
(4)
(). (Ayuda: Recordar que P
2
(x) =
3
2
(x
2

1
3
). Adems
utilizando el hecho de que la frmula debe ser exacta para todo polinomio de grado menor o
igual que 3 determinar los coecientes A
1
y A
2
, va el mtodo de los coecientes indeterminados,
aplicando la frmula a f(x) = 1 y f(x) = x. Finalmente el coeciente c
2
del trmino del error
puede ser determinado calculando el error de truncamiento para f(x) = x
4
).
Ejercicio 13. Mostrar que, si b > a, al efectuar el cambio de variable t =
2x (b + a)
(b a)
,
_
b
a
f(x) dx =
_
1
1
(t) dt,
donde
(t) =
1
2
(b a)f
_
1
2
(b a) t +
1
2
(b + a)
_
Esto permite calcular la integral dada por las frmulas de Gauss-Legendre.
Ejercicio 14. Implemente un programa fortran para la evaluacin de
_
b
a
f(x) dx por el mtodo
de Gauss-Legendre de seis puntos. Los nodos y coecientes correspondientes son dados en la
siguiente tabla.
x
i
A
i
0.9324695142 0.1713244924
0.6612093865 0.3607615730
0.2386191861 0.4679139346
Ejercicio 15. Utilice el programa anterior para estimar
_
1.5
1
e
x
2
dx.
Compare el resultado con el valor que se obtiene al aplicar el mtodo de Romberg.
Integrales impropias.
Ejercicio 16. La integral del tipo
_

a
f(x)dx, a > 0, si existe, puede ser aproximada usando
frmulas de cuadratura despus del cambio de variable x = t
1
.
Prctica 13 4
Anlisis Numrico y Programacin (2011)
a) Demuestre que
_

a
f(x) dx =
_
1/a
0
t
2
f(1/t) dt.
b) Aplique la parte (a) para aproximar
_

1
dx
1 + x
2
,
utilizando algn mtodo de integracin numrica. Nota: el resultado exacto es /4.
Ejercicio 17. Sea f(x) continua sobre el intervalo [0, 1]. La integral del tipo
_
1
0
x
p
f(x)dx, p > 0,
tiene un integrando singular en el origen, pero es convergente si p < 1. La singularidad puede ser
removida utilizando el cambio de variable
x = t
1
1p
.
a) Demuestre que, bajo tal cambio de variable,
_
1
0
x
p
f(x) dx =
1
1 p
_
1
0
f(t
1
1p
) dt.
b) Aplique la parte (a) para aproximar
_
1
0
sin(x)

x
dx,
utilizando algn mtodo de integracin numrica.
Prctica 13 5

Вам также может понравиться