4 votos

Pregunta sobre límite superior de punto fijo de la función

El problema es estimar el valor de $\sqrt[3]{25}$ el uso de iteración de punto fijo. Desde $\sqrt[3]{25} = 2.924017738$, voy a empezar con $p_0 = 2.5$. Un descuidado programa de C++ rendimiento de una aproximación a dentro de $10^{-4}$ $14$ iteraciones.

#include <cmath>
#include <iostream>

using namespace std;

double fx( double x ) {
    return 5.0 / sqrt( x );
}

void fixed_point_algorithm( double p0, double accuracy ) {
    double p1;
    int n = 0;
    do {
        n++;
        p1 = fx( p0 );
        cout << n << ": " << p1 << endl;
        if( abs( p1 - p0 ) <= accuracy ) {
            break;
        }   
        p0 = p1;
    } while( true );
    cout << "n = " << n << ", p_n = " << p1 << endl;
}

int main() {
    fixed_point_algorithm( 2.5, 0.0001 );
} 

Entonces traté de resolver matemáticamente el uso de estos dos teoremas de punto fijo:

Punto fijo Teorema de Deje $g \in C[a,b]$ ser tal que $g(x) \in [a,b]$, para todos los $x$$[a,b]$. Supongamos, además, que el $g'$ existe en $(a,b)$ y una constante de $0 < k < 1$ existe con $$|g'(x)| \leq k, \text{ for all } x \in (a, b)$$ Entonces, para cualquier número $p_0$$[a,b]$, la secuencia definida por $$p_n = g(p_{n-1}), n \geq 1$$ converge a la única de punto fijo en $[a,b]$

Corolario
Si $g$ satisface las hipótesis del Teorema 2.4, los límites para el error involucrado en el uso de $p_n$ a aproximado de $p$ están dadas por $$|p_n - p| \leq k^n \max\{p_0 - a, b - p_0\}$$ y $$|p_n - p| \leq \dfrac{k^n}{1-k}|p_1 - p_0|, \text{ for all } n \geq 1$$

Yo elegí el intervalo de $[2.5, 3.0],$ $$g(x) = \dfrac{5}{\sqrt{x}}$$ $$g'(x) = \dfrac{-5}{2 \cdot x^{3/2}}$$ Conectar varios valores en $(2.5, 3.0)$ me convence $x = 2.5$ de rendimiento el mayor valor de $k$. $$\implies \lim_{x\to\ 2.5} \bigg|\dfrac{-5}{2\cdot x^{3/2}} \bigg| = \dfrac{\sqrt{10}}{5}$$ Así que elegí $k = \dfrac{\sqrt{10}}{5}$ donde $p_1 = g(p_0) = \sqrt{10}$. A continuación, he resuelto para $n$ en la desigualdad de la ecuación: $$ 10^{-4} \leq |p_n - p| \leq \dfrac{k^n}{1-k}|p_1 - p_0|$$ $$\dfrac{\bigg(\dfrac{\sqrt{10}}{5}\bigg)^n}{1-\dfrac{\sqrt{10}}{5}}|\sqrt{10} - 2.5| \geq 10^{-4}$$ Y llegué a $n \approx 18$ cual es extraño :(. Desde mi comprensión de la iteración de punto fijo converge muy rápido, por lo que 4 iteración es significativo. Luego he probado a variar el intervalo para ver si el resultado puede acercarse a 14, pero no pude encontrar cualquier intervalo que satisfecho. Así que supongo que mi límite superior debe estar mal o yo no entiendo completamente el teorema. Puede alguien darme una pista?

Gracias,

2voto

Matt Puntos 11

La discrepancia es causada por tomar la máxima derivada en el intervalo [2.5, 3.0]:

$$k = \max |g'(x)| = |g'(2.5)| = \sqrt{10}/5 = 0.632$$

Así, se asume que la solución de error se reduce por $0.632$ en cada iteración paso, y se necesitan por lo menos 18 años (tengo 21) iteraciones para llevar el error a $0.0001$.

Sin embargo, la derivada es mucho más pequeño en el barrio de la solución:

$$k = |g'(\text{solution})| = |g'(2.924)| = 0.5$$

Si se puede estimar con esto $k$, el error se reduce a la mitad en cada iteración, y sólo tiene 14 iteraciones para disminuir a $0.00008$. Esto es demasiado optimista, porque al comienzo de la iteración debe utilizar $k = 0.623$ y sólo más tarde trasladarse a $k=0.5$. Pero este análisis se debe explicar la discrepancia entre la estimación teórica y del número de la iteración.

1voto

user8269 Puntos 46

Si entiendo que esta a la derecha, $p_n$ converge a un punto fijo de $g$. Tomando $g(x)=\sqrt5/x$ como lo han hecho, el punto fijo de $g$ no es la $\root3\of{25}$ lo que quiere, pero más bien es $\root4\of5$. Así que no es de extrañar que todo va de mal en peor.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X