Sucesiones, series y orden de convergencia

Anuncio
PRÁCTICAS DE MATEMÁTICAS II
PRÁCTICA 2. Cálculo del orden de convergencia de sucesiones y series
Página web de la asignatura: http://personales.unican.es/segurajj/mii.html
El objetivo es analizar de forma cuantitativa la rapidez de convergencia de sucesiones y series
numéricas utilizando el concepto de orden de convergencia.
Dada una sucesión {xn } que converge a α, diremos que el orden de convergencia es p ≥ 1 si el
siguiente lı́mite es finito
|xn − α|
=C
n→+∞ |xn−1 − α|p
lim
Esto quiere decir que para n suficientemente grande tendremos que, aproximadamente,
|xn − α| ' C|xn−1 − α|p
Vemos que, si la diferencia entre xn y α es pequeña, cuanto más grande sea p más pequeña será
la diferencia entre xn+1 y α. De este modo, a mayor p (orden de convergencia), mayor rapidez de
convergencia (y también cuanto menor sea C, pero esto es menos importante).
Podemos determinar experimentalmente el orden de convergencia de una sucesión de la siguiente
forma. Llamando n = |xn − α| y considerando que
n+1 ' CPn
y que
n+2 ' Cpn+1
dividiendo
n+2
'
n+1
n+1
n
p
y tomando logaritmos
p'
log(n+2 /n+1 )
log(n+1 /n )
(1)
Como el orden de convergencia se define para n → +∞ cuanto más grande sea n más sentido tendrá
la ecuación (1).
1
Construcción de un programa para calcular órdenes de convergencia
El objetivo es construir un programa MATLAB con la siguiente sintaxis:
function [p,err]=orden(x,valor)
Las entradas son:
1. Un vector [x(1) x(2) ... x(N)] conteniendo los N primeros términos de una sucesión.
2. El valor al que converge la sucesión, α.
Las salidas son
1. Los N errores [err(1) ... err(N)], donde err(n)=abs(x(n)-α)
2. Las N − 2 estimaciones del orden de convergencia [p(1) p(2) ... p(N-2)] donde
p(n)=log(err(n+2)/err(n+1))/log(err(n+1)/err(n)).
Nota: es habitual que no se conozca exactamente el valor exacto del lı́mite, α. En esos casos, se
utilizarı́a la mejor estimación disponible (usualmente, el último elemento de la sucesión). En nuestro
caso, no tendremos este problema porque vamos a trabajar con sucesiones cuyo lı́mite es conocido.
2
Primeros ejemplos: sucesiones para calcular raı́ces
Apliquemos en primer lugar el programa a las sucesiones construı́das en la práctica 1.
Consideremos la sucesión
xk + α
xk+1 =
, x1 = α , α ∈ (0, 1)
xk + 1
(2)
En clase se comprobó que la sucesión es monótona creciente y acotada, luego convergente, y que el
√
lı́mite es l = α.
√
Tomar, por ejemplo, α = 0.5 y calcular α mediante el programa iter1.m construido en la práctica
anterior con una precisión de 10−8 .
Repetir para iter2.m y comparar resultados.
3
Orden de convergencia para series numéricas
La misma idea se puede aplicar para obtener el orden de convergencia de una serie numérica, definido
como el orden de convergencia de la sucesión de sus sumas parciales.
P
Diremos que una serie convergente +∞
k=1 ak tiene orden de convergencia p si la sucesión de las sumas
parciales {Sn },
n
X
Sn =
ak
k=1
tiene orden de convergencia p.
En esta segunda parte de la práctica, analizaremos el orden de convergencia de varias series que se
pueden utilizar para calcular los números log(2) y π.
3.1
Cálculo de log(2)
En este curso, demostraremos que
∞
log(2) = 1 −
X (−1)k−1
1 1
+ − ... =
2 3
k
k=1
Se trata de construir el programa iter3.m, con la sintaxis
function x=iter3(n)
que devuelva las n primeras sumas parciales de la serie en el vector x.
Es importante que el programa esté bien organizado para que no se repitan cálculos de forma
P
innecesaria. As, para calcular la suma k-ésima de la serie ∞
i=1 ai , no hay que sumar cada vez
todos los términos, sino tener en cuenta que podemos calcular mediante Sk = Sk−1 + ak (empezando
por S1 = a1 ).
Se pide obtener el orden de convergencia de la serie utilizando los programas iter3.m (por ejemplo
con n = 14) y orden.m
Repetiremos el proceso para la serie
log(2) = 2
∞
X
1
1
1
1
+ 3 + 5 + ... = 2
3 33
53
(2i − 1)32i−1
i=1
que programaremos en iter4.m.
Representaremos en una misma gráfica los valores de p(i) frente a i para las dos series.
Comparar las aproximaciones que se obtienen con cada serie.
¿Qué ocurre cuando utilizamos un n más grande?. Probar, por ejemplo, con n = 20.
3.2
Cálculo de π
Se pide repetir el proceso para las siguientes series para calcular π (que incluiremos en sendos programas
iter5.m, iter6.m).
1. π = 4(1 − 31 + 15 − ...) = 4
∞
X
(−1)i−1
i=1
2. π = 6
(2i − 1)
1+ 1 +
3
35
2 2 3 23 2 4 5 25 + 2 4 6 7 27 + ...
=6
∞
X
i=1
(2i − 1)!!
(2i − 2)!!(2i − 1)2 22i−1
Representar los dos vectores p(i) para las dos series en una misma gráfica. Considerar n = 20
términos.
Comprobar qué ocurre para n más grande, por ejemplo n = 30.
P∞
Ayuda: para programar la segunda serie puede ser interesante en la suma
i=1 ai encontrar la
relación entre ai y ai+1 .
Descargar