Ingeniería asistida por ordenador. Integración numérica

Anuncio
72
INDICE
1. INTRODUCCIÓN.
2. MÉTODO DE LOS TRAPECIOS.
3. MÉTODO DE LOS TRAPECIOS TANGENTES.
4. MÉTODO DE SIMPSON.
5. MÉTODO DE NEWTON-COTES.
6. MÉTODO DE GAUSS.
7. MÉTODO DE ROMBERG.
8. CONCLUSIONES.
73
INTRODUCCIÓN
En este tema nos planteamos el problema del cálculo de la integral
ò
b
a
f ( x)dx donde
la función f : [a, b] → ℜ cumpla determinadas condiciones de regularidad.
Recordemos que la regla de Barrow nos dice que si f : [a, b] → ℜ es integrable y F
es una primitiva de f en [a,b] (es decir F’(x)=f(x) en [a,b]) entonces tenemos
ò
b
a
f ( x)dx = F (b) − F (a) . Pero en ocasiones no disponemos de una primitiva explícita
de f (por ejemplo, f ( x) =
2
sen x
o f ( x) = e − x ) o no es una primitiva sencilla de
x
calcular.
Por ello vamos a estudiar una serie de métodos que proponen sustituir la integral por
una aproximación más o menos razonable de ésta.
Como ejemplo, el método más sencillo de aproximar una integral es el método de los
rectángulos. Este método propone dividir el intervalo [a,b] en n subintervalos de igual
b−a
longitud [xi , xi +1 ] para i=0,…,n-1, donde x0 = a, xi +1 = xi + h = a + hi y h =
.
n
Aproximamos entonces
ò
b
a
n −1
n −1
i =0
0
f ( x)dx por Rn = å f ( xi )( xi +1 − xi ) = h å f ( xi )
aproximación
xi+1
74
MÉTODO DE LOS TRAPECIOS
Dada f : [a, b] → ℜ integrable, el método de los trapecios es parecido al método de
los rectángulos salvo que en vez de sustituir en cada subintervalo la integral por el área
del rectángulo correspondiente, la sustituye por el área de un trapecio.
xi
Aproximaremos
n −1
Tn = å
i =0
xi+1
por
ò
tanto
b
a
f ( x)dx
por
n −1
h
( f ( x i ) + f ( x i +1 )) = h æç f (a) + 2å f ( x i ) + f (b) ö÷
2
2è
1
ø
Teorema: Sea f : [a, b] → ℜ 2 veces derivable con | f ' ' ( x) |≤ M en [a,b]. Se tiene
b
entonces que E n =| ò f ( x)dx − Tn |≤
a
Demostración:
Observemos
Mnh 3 M (b − a) 3
=
12
12n 2
que el error en
el
intervalo
[xi , xi+1 ]
es
xi +1
f ( xi +1 ) + f ( xi )
( xi +1 − xi ) |=| ò f ( x) − P1 ( x)dx |≤
xi
xi
2
xi +1 1
xi +1
Mh 3
|
(
)(
)
|
|
(
)
(
)
|
f
x
P
x
dx
M
x
x
x
x
dx
−
≤
−
−
=
1
i
i +1
òxi
òxi 2
24
|ò
xi +1
f ( x)dx −
Observemos que otra forma de ver este método es que en cada subintervalo
aproximamos la integral de f por la integral de un polinomio de interpolación suyo (en
este caso el polinomio de interpolación de grado 1 que pasa por los extremos del
subintervalo). Métodos que veremos posteriormente siguen esta misma idea.
Podemos modificar el método de manera que nos quede una formula iterativa sin
h
más que observar que tenemos T2n = ( f ( x0 ) + 2 f ( x1 ) + ... + 2 f ( x 2 n −1 ) + f ( x 2 n ) ) =
2
h
= ( f ( x0 ) + 2 f ( x 2 ) + ... + 2 f ( x 2 n − 2 ) + f ( x 2 n ) ) + h ( f ( x1 ) + f ( x3 ) + ... + f ( x 2 n −1 ) ) =
2
T
= n + h ( f ( x1 ) + f ( x3 ) + ... + f ( x 2 n −1 ) )
2
Es decir, podemos construir un algoritmo que refine iterativamente la partición del
intervalo [a,b] y actualice la fórmula de los trapecios para aproximar la integral de f(x)
hasta una precisión determinada.
75
Algoritmo:
ENTRADA: a, b,tol.
SALIDA: Aproximación de
ò
b
a
f ( x)dx con un error menor que tol
PASO 1: I = (b-a)(f(b)+f(a))/2, error=tol+1
PASO 2: mientras error > tol
Dividir en 2 cada intervalo
x = nuevos puntos, y = f(x)
Inueva = I/2 + h*sum(y)
error = abs(I-Inueva)
I = Inueva
PASO 3: SALIDA(I)
76
MÉTODO DE LOS TRAPECIOS
TANGENTES
Este método propone sustituir el anterior los trapecios del anterior método por
trapecios obtenidos al tomar la recta tangente en el punto medio de cada subintervalo.
xi
Es decir, aproximaremos
ò
b
a
xi+1
n −1
f ( x)dx por TTn = hå ( f ( xi + h / 2) )
i=0
Teorema: Sea f : [a, b] → ℜ 2 veces derivable con | f ' ' ( x) |≤ M en [a,b]. Se tiene
b
Mnh 3 M (b − a) 3
=
24
24n 2
que el error en el
entonces que E n =| ò f ( x)dx − TTn |≤
a
Demostración:
|ò
xi +1
xi
=| ò
intervalo
f ( x) − f ( xi + h / 2) − f ' ( xi + h / 2)( x − xi − h / 2)dx |≤
xi +1
xi
Observemos
f ' ' (c )
M
( x − xi − h / 2) 2 dx | ≤
2
2
ò
xi +1
xi
( x − xi − h / 2) 2 dx =
77
Mh 3
24
[xi , xi+1 ]
es
MÉTODO DE SIMPSON
Dada f : [a, b] → ℜ integrable este método propone dividir el intervalo [a,b] en 2n
subintervalos de igual longitud longitud [xi , xi +1 ] para i=0,…,2n-1, donde
xi +2
b−a
. Aproximamos entonces ò
f ( x)dx por la
x0 = a, xi +1 = xi + h = a + hi y h =
xi
2n
integral en [xi , xi + 2 ] del polinomio de interpolación de orden 2 de f por los puntos
xi , xi +1 , xi + 2 (i=0,2,…,2n-2)
Observemos el parecido de este método con el método del trapecio, el siguiente
método que estudiaremos será una generalización de esta idea de sustituir f por
polinomios de interpolación.
En
las
condiciones
anteriores
tenemos
x 2i + 2 − x 2i
òx 2i P2 ( x)dx = 6 ( f ( x2i ) + 4 f ( x2i +1 ) + f ( x2i+ 2 ) ) para i=0,…n-1. Por tanto
b
h n −1
sustituimos ò f ( x)dx por S n = å f ( x 2i ) + 4 f ( x 2i +1 ) + f ( x 2i + 2 ) =
a
3 0
h
= ( f ( x0 ) + 4 f ( x1 ) + 2 f ( x 2 ) + 4 f ( x3 ) + 2 f ( x 4 ) + ... + 2 f ( x 2 n − 2 ) + 4 f ( x 2 n −1 ) + f ( x 2 n ) )
3
Teorema:
x 2i + 2
Teorema: Sea f : [a, b] → ℜ 4 veces derivable con | f iv ) ( x) |≤ M en [a,b]. Se tiene
b
entonces que E n =| ò f ( x)dx − S n |≤
a
Mnh 5 M (b − a) 5
=
180
12n 4
Hacemos notar que en numerosos libros este método se conoce como método de
Simpson compuesto, dejando el nombre de método de Simpson para el método
particular que se obtiene a tomar n=2 en el método de Newton-Cotes. Análogamente, es
común encontrar el nombre de método del trapecio para el método particular en el que
n=1.
78
MÉTODO DE NEWTON-COTES
Siguiendo con la idea de sustituir una función por algún polinomio de interpolación,
el método de Newton-Cotes propone, dada f : [a, b] → ℜ integrable, elegir n+1 puntos
distintos x0 , x1 ,..., x n ∈ [a, b] y aproximar
ò
b
a
f ( x)dx por
ò
b
a
n
Pn ( x)dx = å f ( xi ) Ai donde
i=0
( x − xk )
Ai = ò ∏
dx depende de a, b, n, xi
a
k = 0 ( xi − x k )
n
b
k ≠i
Observemos que si elegimos los xi equidistantes como en los métodos anteriores
tendremos que Ai dependerá solo de a, b, n y tenemos el siguiente resultado.
Teorema: En las condiciones anteriores se tiene Ai = (b − a ) Bi , n ( n ∈ ℵ, i = 0,..., n )
donde Bi ,n son los coeficientes de Cotes, que verifican:
a) Bi ,n ∈ Q
b) Bi ,n depende solo de n.
c) Bi , n = Bn −i ,n
d)
n
åB
i ,n
=1
i =0
TABLA DE COEFICIENTES DE COTES
n
B0
B1
B2
B3
1
1/2
1/2
2
1/6
4/6
1/6
3
1/8
3/8
3/8
1/8
4
7/90
32/90
12/90
32/90
7/90
5
19/288
75/288
50/288
50/288
75/288
79
B4
B5
19/288
MÉTODO DE GAUSS
Hasta ahora hemos estudiado métodos que proponen sustituir
n
å f (x )A
expresión de la forma
i
i
ò
b
a
f ( x)dx por una
o dividir primero en intervalo original en
i =0
subintervalos donde se hace una aproximación de este tipo. En dichos métodos, con el
conocimiento a priori de los datos ( xi , f i ) calculábamos las constantes Ai .
Vamos a enfocar ahora el problema desde otro punto de vista, tratando tanto los
coeficientes Ai como los puntos xi como incógnitas. Este hecho nos da más libertad
permitiéndonos reducir el error.
La idea que vamos a seguir es escoger los coeficientes de modo que la fórmula
ò
b
a
n
f ( x)dx = å f ( xi ) Ai sea exacta para polinomios de grado 2n-1. De momento nos
i =0
vamos a centrar en el caso en el que el intervalo de integración es [-1,1], para obtener lo
que se denomina método de Gauss-Legendre.
Veamos como ejemplo el caso n=2, queremos determinar A1 , A2 , x1 , x 2 de manera
1
ò
que la expresión
−1
f ( x)dx = A1 f ( x1 ) + A2 f ( x 2 ) sea exacta para polinomios de grado
≤3, en particular tenemos las 4 ecuaciones:
1
ò 1dx = 2 = A + A
ò xdx = 0 = A x + A x
−1
1
1
−1
1 1
1
òx
2
−1
1
dx =
2
3
2
2
= A1 x12 + A2 x 22
3
ò x dx = 0 = A x
−1
2
3
1 1
+ A2 x 23
1
Cuya solución es x1 = −
integración aproximada
3
1
ò
−1
, x2 =
1
3
, A1 = A2 = 1 , es decir, obtenemos la fórmula de
f ( x)dx ≈ f (−
1
3
)+ f(
1
3
)
La solución general depende fuertemente de los llamados polinomios de Legendre,
pero la idea es fácil de establecer. Como en el ejemplo anterior, sustituyendo f por las
funciones x i para i=0,…,2n obtenemos 2n ecuaciones que nos dan un sistema no lineal
que proporciona los coeficientes buscados. La solución que se obtiene viene recogida en
el siguiente resultado.
Teorema: La solución del sistema obtenido aplicando lo anterior viene dada por
1 n
x − xk
x1 ,..., x n las raíces del polinomio de Legendre de orden n y Ai = ò ∏
dx
−1
k =1 x i − x k
k≠ j
80
Teorema: Dada f : [− 1,1] → ℜ derivable 2n veces con | f
2n)
( x) |≤ M en [-1,1], el
M 1 n
error cometido al aplicar el método anterior viene dado por E ≤
( x − xi ) 2 dx
∏
ò
−
1
(2n)! i =1
En el caso general en el que integramos en un intervalo [a,b] basta aplicar una
cambio de variable para reducirnos al caso anterior o directamente aplicar la idea
anterior resolviendo el sistema obtenido directamente.
COEFICIENTES PARA EL MÉTODO DE GAUSS
n
xi
2
±
3
3
1
3
3
±
5
0
5
9
8
9
4
± 0.86113631
± 0.33998104
0.34785485
0.65214515
± 0.90617985
± 0.53846931
0.23692689
0.47862867
0
0.56888889
± 0.93246951
± 0.66120939
0.17132449
0.36076157
± 0.23861919
0.46791393
5
6
Ai
81
MÉTODO DE ROMBERG
La integración de Romberg nos permite mejorar la precisión del método del trapecio
basándose en la técnica de extrapolación de Richardson (ver APÉNDICE II)
Dividimos el intervalo [a,b] en n subintervalos de igual longitud, aproximando la
integral de f por el método del trapecio tenemos la ecuación I(f)=T(h)+O(h2) donde
T(h) será la fórmula dada por este método y O(h 2 ) ≈ Ch 2 . En una primera
aproximación tenemos entonces I(f)≈T(h)+Ch2. Así I(f)≈T(h/2)+Ch2/4, de donde
1
I ( f ) ≈ (4T (h / 2) − T (h) ) . Esta nueva expresión tiene un error de orden O(h4). Para
3
eliminar este termino de error se vuelve a repetir el proceso. De este modo vamos
consiguiendo resultados teóricamente cada vez más precisos.
Algoritmo de Romberg
ENTRADA: fun, a, b, n, tol
SALIDA: Aproximación de la integral de fun en [a,b] por el método de Romberg.
PASO 1: % Construcción de la tabla de Romberg
k = 1, I(1,1) = trapecios(fun,a,b,n); % Fila 1
PASO 2: mientras error > tol
PASO 2.1: k = k+1 % Fila k
dividir en 2 cada subintervalo
x = nuevos puntos, y = f(x)
I(k,1) = I(k-1,1)/2 + h*sum(y)
PASO 2.2: para j = 2 : k
% Aplica el método de Romberg
PASO 2.2.1: I(k,j) = (4^(j -1)*I(k,j -1) - I(k -1,j -1)) / (4^(j -1) -1)
error = abs(I(k,j) - I(k,j -1))
PASO 3: SALIDA(I(k,k))
82
CONCLUSIÓN
El método de los rectángulos es conceptualmente muy simple y fácil de implementar,
pero su precisión es muy mala.
Los métodos de los trapecios y trapecios tangentes son también muy sencillos de
entender e implementar y disponemos de una cota relativamente sencilla para el error.
El método de Newton-Cotes comienza a ser difícil de implementar en su versión
general, ya que depende del parámetro n. Aunque se dispone de una cota del error, ésta
no es sencilla y depende fuertemente de la paridad de n.
Los métodos particulares de Newton-Cotes proporcionan buenos resultados para n
pequeño, ya que un orden superior a 6 comienza a ser poco práctico y los errores de
redondeo empiezan a jugar un papel importante. Además el caso n=5 es más costoso
que n=4 y tiene un error del mismo orden.
El método de Gauss aporta una gran precisión con pocas operaciones, pero precisa
del conocimiento explícito de la función además de tener una cota de error poco
práctica.
Por último el método de Romberg también aporta una gran precisión y nos permite
encontrar soluciones de distintos ordenes, pero el error es difícil de acotar y las fórmulas
de orden superior pueden dar problemas de redondeo.
83
Descargar