¿Por qué calculamos derivadas numéricas con [matemáticas] [/ matemáticas] [matemáticas] \ frac {f (x + \ epsilon) – f (x- \ epsilon)} {2 \ epsilon} [/ matemáticas] en lugar de [matemáticas] \ frac {f (x + \ epsilon) – f (x)} {\ epsilon} [/ math]?

Usamos la fórmula anterior, llamada Diferencia central, porque teóricamente converge más rápido a la derivada verdadera a medida que reduce [matemáticas] \ epsilon [/ matemáticas] en comparación con la última fórmula de Diferencia directa (como explica Kostis).

Estas dos fórmulas son fórmulas de Diferencia Finita y técnicamente puedes crear un número infinito de estas fórmulas dependiendo del tipo de tasa de convergencia que desees, el número de evaluaciones de funciones que estás de acuerdo con el cálculo derivado y las “ubicaciones” en las que muestreas la función a.

Sin embargo, una cosa a tener en cuenta es que la precisión finita en realidad hace que cada esquema de diferencia finita obtenga una precisión máxima en algún valor para [math] \ epsilon [/ math] y en realidad empeora si sigue reduciendo [math] \ epsilon [ /matemáticas]. Entonces, aunque a veces la tasa de convergencia es importante, es importante saber si un esquema puede lograr un error general más bajo debido a que puede usar un valor más pequeño para [math] \ epsilon [/ math].

Por ejemplo, si somos libres de ver [math] f (\ cdot) [/ math] en función de variables complejas, en realidad puede derivar la siguiente fórmula para una derivada en el valor real [math] x [/ math] :

[matemáticas] \ begin {align} f ^ {‘} (x) \ approx \ frac {\ text {Im} [f (x + i \ epsilon)]} {h} + O (\ epsilon ^ 2) \ tag * {} \ end {align} [/ math]

donde realmente damos un paso en la dirección compleja con el tamaño del paso [math] \ epsilon [/ math] para llegar a nuestra aproximación. Esta fórmula, como se muestra, converge a una velocidad que es la misma que la fórmula de Diferencia central, ¡pero no requiere una resta! Debido a la precisión finita, este resultado en realidad hace que esta fórmula sea capaz de usar valores para [math] \ epsilon [/ math] que son mucho más pequeños que los permitidos para un esquema de Diferencia Central, ¡produciendo resultados más precisos! A continuación se muestra una imagen de muestra que demuestra esto:

Tenga en cuenta que la línea azul (Fórmula compleja) sigue convergiendo hasta que realmente deja de mostrar un valor a la izquierda de [math] \ epsilon = 10 ^ {- 7} [/ math]. Esto es en realidad porque esta fórmula obtuvo la derivada correcta para precisión de la máquina y devolvió un error de exactamente [matemáticas] 0 [/ matemáticas]! También tenga en cuenta que, como se mencionó anteriormente, la fórmula de la diferencia central tiene un pico (alrededor de [matemáticas] \ epsilon = 10 ^ {- 5} [/ matemáticas] en este caso) debido a problemas de precisión finita y aumenta el error a medida que uno continúa reducir el tamaño del paso.

Es bastante interesante cómo estas fórmulas realmente pueden hacer una diferencia dependiendo del tipo de precisión que le interese.

Tenga en cuenta que el primer método se llama diferencia central y el segundo se llama diferencia directa.

He aquí por qué la diferencia central es mejor: al expandir [matemáticas] f (x + c) [/ matemáticas] alrededor de [matemáticas] x, [/ matemáticas] obtenemos:

[matemáticas] f (x + c) -f (x) = cf ‘(x) + c ^ 2f’ ‘(x) / 2 + O (c ^ 3). [/ matemáticas]

Sin embargo, para [matemáticas] f (xc), f (x + c) [/ matemáticas], tenemos:

[matemáticas] \ begin {align} f (x + c) -f (xc) & = 2cf ‘(x) + c ^ 2f’ ‘(x) / 2-c ^ 2f’ ‘(x) / 2 + O (c ^ 3) = \\ & = 2cf ‘(x) + O (c ^ 3). \ end {align} [/ math]

Esto significa que si nuestra función es lo suficientemente suave, obtenemos una precisión adicional al usar la diferencia central. En otras palabras, si elegimos una pequeña c, la diferencia central debería darnos dígitos más significativos. Ver también Diferencia finita – Wikipedia.

Por supuesto, ninguna aproximación funciona bien en todos los casos, pero si la función es lo suficientemente suave y no oscilatoria, tiene sentido una diferencia central.

Por supuesto, “teóricamente” épsilon va a cero al igual que la diferencia entre estas dos formas. Pero en los cálculos numéricos, épsilon simplemente se vuelve “bastante pequeño”, y entonces puede ser (?) Ventajoso tener esa pequeña excursión de prueba de la variable independiente x centrada precisamente en el valor nominal, para evitar un posible sesgo en cuanto a la “lateralidad”. ” Pero todo eso es solo mi sesgo de “ingeniería de hardware”.

Tienes más precisión con el primero a medida que te acercas al límite en x desde ambos lados. Una forma de demostrarlo es usar la serie de Taylor para f (x + e) ​​yf (xe) y luego encontrar el límite superior del cociente. Notarás que el primero tiende más rápido a cero.

Puede suponer que f es la función C ^ 4 y hacer el resto. Buena suerte

Ambas expresiones suponen que la tarea es encontrar la derivada, suponiendo que existe. Ningún límite, solo por existir, muestra que hay una derivada en [math] x [/ math].

En realidad no puedo ver que la forma simétrica sea mejor que la forma unilateral; está inmunizado contra una discontinuidad removible solo en [math] x [/ math], pero no estoy seguro de que sea algo bueno. Tal vez solo esté ahí para recordarte, más o menos, que necesitas el límite de ambos lados. De hecho, ahora lo pienso, los casos en los que existe el límite pero no la derivada son quizás peores para la versión simétrica.

Entonces, tal vez la respuesta a su pregunta es “no hay una buena razón, realmente”.