Estoy intentando demostrar que la función f(x) = (x^2 – 3) / 2 es
contractiva en el intervalo [-2,-0.5], y por lo tanto, pordemos hallar
por un método iterativo x = (x^2 – 3) / 2 la raiz negativa (x = -1),
empezando por x = -0.5.
Primeramente, decir que el método converge, aunque muy, muy, muy
lentamente.
Se puede demostrar que es contractiva aplicando la definición:
f(x) - f(y) = 1/2 * (x^2 - y^2) = 1/2 (x + y) (x - y)
'f' es contractiva si existe 'k' tal que para todo 'x' 'y'
perteneciente al intervalo en cuestión:
| f(x) - f(y) | = 1/2 |x+y||x-y| <= k * |x-y| <---> |x + y| <= 2k en
el intervalo, que obviamente se cumple para algún k, por ejemplo k =
2, ya que [-2, -0.5] es un intervalo acotado.
Por otro lado, en el libro pone que la condición de contractividad
puede ser sustituida por la siguiente:
" f(x) es contractiva en [a,b] si | f ' (x) | < L < 1 para todo x en
[a,b]"
Intentándolo de esta forma, vemos que:
Como f(-2) = 0,5 > -2 y f(-0.5) = -1.375 < 0.5, por lo que, al menos
hay una raíz, en este intervalo.
Por otro lado, f ' (x) = x y f ''(x) = 1 > 0 por lo que en el
intervalo considerado, f ' (x) es estrictamente creciente, por lo que
alcanza su máximo (en valor absoluto) en x = -2, es decir, en
| f ' (-2) | = 2
Así, tenemos que |max f ' (x) | = 2 > 1.
Por lo que f no es contractiva.
¿Cuál es entonces el error en el razonamiento?.
Gracias y saludos.
PD: gracias también por el tema de la integral. Me ha venido muy bien.
Besos.
Me he equivocado en la definición de contractiva, es decir k tiene que
ser menor que 1,
Por lo tanto, la función no es contractiva en ningún entorno de -1,
¡ pero el método iterativo converge !. Con un programa, se ve
perfectemente que converge a -1, pero ¿alguien puede decirme por qué
converge sin ser contractiva?.
Muchas gracias.
Parece que tienes un caso límite. Para esta función |f'(-1)|=1, así que
te encuentras justo en un "cambio de fase", de tener una raíz a tener un
ciclo.
Las condiciones que has citado son suficientes, pero no necesarias para
la convergencia.
En tu caso, la función converge por x > -1, y diverge (pero menos) en x
< -1.
--
Antonio
Aqui max(|x + y|) en [-2, -0.5] es 2.5, por lo que la mejor k es 1.25 > 1,
y como bien dices no es contractiva en todo ese intervalo.
>> Por otro lado, en el libro pone que la condición de contractividad
>> puede ser sustituida por la siguiente:
>>
>> " f(x) es contractiva en [a,b] si | f ' (x) | < L < 1 para todo x en
>> [a,b]"
>>
>> Intentándolo de esta forma, vemos que:
>>
>> Como f(-2) = 0,5 > -2 y f(-0.5) = -1.375 < 0.5, por lo que, al menos
>> hay una raíz, en este intervalo.
Supongo que quieres decir que
f(-2) = 0.5 > 0
f(-0.5) = -1.375 < 0
Entonces por Bolzano, ya que f es continua, sabemos que tiene que haber al
menos una raíz.
>> Por otro lado, f ' (x) = x y f ''(x) = 1 > 0 por lo que en el
>> intervalo considerado, f ' (x) es estrictamente creciente, por lo que
>> alcanza su máximo (en valor absoluto) en x = -2, es decir, en
>>
>>> f ' (-2) | = 2
>>
>> Así, tenemos que |max f ' (x) | = 2 > 1.
>>
>> Por lo que f no es contractiva.
>>
>> ¿Cuál es entonces el error en el razonamiento?.
Como decía Antonio, en que la contractividad en el intervalo es una
condición suficiente para la convergencia de la iteración, pero no
necesaria.
De hecho, como la derivada en -1 es justamente -1, la convergencia es
extraordinariamente lenta: después de 1000 iteraciones aún eoscila
entre -0.955... y -1.043...
--
Saludos,
Ignacio Larrosa Cañestro
A Coruña (España)
ilarrosaQUIT...@mundo-r.com
El mensaje llega un poco tarde pero espero que sea útil.
> >> Estoy intentando demostrar que la función f(x) = (x^2 – 3) / 2 es
> >> contractiva en el intervalo [-2,-0.5], y por lo tanto, pordemos
> >> hallar por un método iterativo x = (x^2 – 3) / 2 la raiz negativa (x
> >> = -1), empezando por x = -0.5.
> Como decía Antonio, en que la contractividad en el intervalo es una
> condición suficiente para la convergencia de la iteración, pero no
> necesaria.
>
> De hecho, como la derivada en -1 es justamente -1, la convergencia es
> extraordinariamente lenta: después de 1000 iteraciones aún oscila
> entre -0.955... y -1.043...
Se puede demostrar la convergencia observando que
f(f(x)) > x si x < -1,
f(f(x)) < x si x > -1
Las iteraciones impares forman una sucesión decreciente y las pares
una creciente. Ambas están acotadas y convergen al mismo límite que es
-1.
Julián