Mostrando entradas con la etiqueta Cálculo numérico. Mostrar todas las entradas
Mostrando entradas con la etiqueta Cálculo numérico. Mostrar todas las entradas

lunes, 31 de marzo de 2025

(1201) - Problemas varios al derivar

  • Si tenemos una fórmula explícita, podemos escribir utilizando cálculo simbólico una fórmula para la derivada. Para este caso no hace falta que la función original sea cerrada pues se puede dar como un sumatorio, como una serie, etc. Así se tiene una fórmula conocida para la derivada y se puede ver fácilmente cómo se compara dicha fórmula con la función original.


  • Supongamos en cambio que no tenemos una fórmula cerrado, o no para la función original, pero que dado cualquier argumento que le demos (input) nos dice cuánto es la función evaluada en dicho punto (output). Aquí podemos usar el límite de la definición de derivada para poder aproximar numéricamente la derivada en cada punto. A su vez podemos calcular la derivada una vez más donde dado un argumento nos dice cuánto vale en dicho punto. Sin embargo, como tomar el límite muchas veces solo se puede hacer desde un punto de vista simbólico, y no desde un punto de vista numérico, a la hora del cómputo lo que se suele hacer es tomar la función de evaluada de manera inteligente en ciertos nodos tal que con diferencias divididas se puede aproximar la derivada con una de precisión arbitrariamente alta.


  • Sin embargo, muchas veces se tiene que la función está tabulada, o sea, solo sabemos los outputs en terminados inputs, es decir, solo sabemos el valor de la ordenada para ciertas abscisas. Este es un caso muy diferente al anterior ya que si bien en el caso anterior aunque no tuviéramos una fórmula explícita y no pudiéramos sacar una fórmula ni para la función original ni para la derivada, sí que mediante la evaluación de la función y los puntos podíamos acercarnos al valor numérico de la derivada con la precisión quisiéramos. Aquí en cambio la función solo está tabulada para ciertos valores y uno se tiene que apañar con esos valores tabulados de tal forma que la derivada no se va a poder calcular con precisión arbitraria, pues la precisión de la derivada dependerá del número de cifras significativas que tenga y la longitud del intervalo.

    Algunos manuales de análisis numérico lo que sugieren para calcular la derivada en un punto es estimar la derivada en los puntos tabulados e interpolar entre dichos puntos al valor que se quiere. Otros sugieren que a través de los puntos de la tabla construir un polinomio interpolador, derivarlo y evaluar la derivada en dicho punto. El problema este último razonamiento es que el polinomio interpolador cuando se van añadiendo más puntos tiene el problema del fenómeno de Runge (donde hay muchas oscilaciones en torno a los extremos del intervalo). Aun así, incluso si se coge o incluso si los datos están tabulados en los nodos del Chebyshev (de tal forma que el fenómeno de Runge no ocurra y se minimice la norma infinito de error, que es la función menos el polinomio interpolador), el teorema de aproximación polinómica de Weierstrass nos asegura solo la convergencia de los polinomios a una función continua, no necesariamente derivable. De hecho, hay bastantes ejemplos de sucesiones de polinomios (todos ellos infinitamente derivables), cuyo límite es una función continua, pero no-derivable.



Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

lunes, 17 de marzo de 2025

(1187) - Derivada numérica. Cómo calcular la derivada con datos numéricos

Supongamos que tenemos dos variables aleatorias $X,Y$ y queremos medir cómo la variable aleatoria $Y$ varía con respecto a $X$. Tomamos $N$ puntos $\big\{(x_i,y_i)\big\}_{i=1}^N$ donde $\{x_i\}_{i=1}^N$ son muestras de la variable aleatoria $X$, así como $\{y_i\}_{i=1}^N$ de $Y$. En todo esto habría que tener en cuenta que al tomar muestras de cada variable aleatoria no solo hay una incertidumbre en la medida por las limitaciones del aparato con el que medimos, sino que también puede haber un error accidental o incluso sistemático al tomar cada medida. Sin embargo, no nos vamos a preocupar por esto ahora.

Supongamos que existe una funcion $f$ (que no necesariamente conocemos) tal que podamos escribir $Y=f(X)$, es decir, que $X,Y$ estén correlacionadas mediante $f$. La definición de derivada, se da como un límite, que se puede escribir de dos formas equivalentes: $$ f^{(1)}(x) = \lim_{h\to0} \frac{f(x+h)-f(x)}{h} = \lim_{h\to0} \frac{f(x)-f(x-h)}{h} $$ Sin embargo, no podemos tomar ese límite de manera continua, entre otras cosas, porque no tenemos un conjunto continuo, sino simplemente un conjunto discreto de puntos. Supongamos que $f$ es suficientemente derivable en cada punto que queramos calcular su derivada. Tomando un desarrollo de Taylor en torno a $x$ y en serie de potencias de $h$ nos llega a las siguientes. $$ \frac{f(x+h_2)-f(x)}{h_2} = f^{(1)}(x) + \frac{h_2}{2}f^{(2)}(x) + \frac{{h_2}^2}{6}f^{(3)}(x) + \mathcal{O}\big({h_2}^3\big) $$ $$ \frac{f(x)-f(x-h_1)}{h_1} = f^{(1)}(x) - \frac{h_1}{2}f^{(2)}(x) + \frac{{h_1}^2}{6}f^{(3)}(x) + \mathcal{O}\big({h_1}^3\big) $$ Que son las definiciones de derivada progresiva y derivada regresiva respectivamente. Sin embargo, vemos rápidamente que en ambas fórmulas lo estamos o bien infraestimando o sobreestimando. Esto sin contar que si bien $h_1$ o $h_2$ no son lo suficientemente pequeños, o si bien las sucesivas derivadas son grandes, la aproximación es bastante mala. Consideremos esta mejora: $$ \frac{f(x+h_2)-f(x-h_1)}{h_2+h_1} = f^{(1)}(x) + \frac{h_2-h_1}{2}f^{(2)}(x) + \frac{{h_2}^2-h_2h_1+{h_1}^2}{6}f^{(3)}(x)+\cdots $$ Esto es bastante mejor, ya que como $h_1\approx h_2$, los sucesivos términos desaparacen prácticamente y se les da mucha menos importancia. Aunque no lo parezca mucho, así se ha disminuido mucho el error. De hecho, para el caso particular que $h_1=h_2:=h$, se tiene que es realmente bella. $$ \frac{f(x+h)-f(x-h)}{2h} = f^{(1)}(x) + \frac{h^2}{6}f^{(3)}(x) + \mathcal{O}\big(h^4\big) $$ Esto se conoce como la derivada centrada, que como se puede observar tiene un error asociado mucho menos que los dos casos que inicialmente se contemplaron.

Así pues, todo se puede resumir en: $$ {y_i}^\prime \approx \begin{cases} \displaystyle \frac{y_2-y_1}{x_2-x_1} & i=1 \\[9pt] \displaystyle \frac{y_{i+1}-y_{i-1}}{x_{i+1}-x_{i-1}} & i=2,\cdots,N-1 \\[9pt] \displaystyle \frac{y_N-y_{N-1}}{x_N-x_{N-1}} & i=N \end{cases} $$


Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

viernes, 27 de octubre de 2023

(907) - Fórmulas de cuadratura de Newton-Cotes (Integración Numérica)

Las fórmulas de cuadratura de Newton-Cotes son un conjunto de expresiones para aproximar la integral numérica de una función dada.
Consideremos una función $f(x)\in\mathcal{C}\big([a,b]\big)$, es decir, una función continua en un intervalo genérico. Tomemos una sucesión de nodos equiespaciados (para simplificar): $$\Delta: a=x_0\leqslant x_1 \leqslant \cdots \leqslant x_i \leqslant \cdots \leqslant x_N \qquad x_i = a+\frac{b-a}{N}i \quad i=0,1,\cdots,N$$ Construyamos ahora el polinomio interpolador en los nodos ya definidos. El teorema de aproximación de Weierstrass nos afirma que hay una sucesión que polinomios que converge uniformente a cualquier función continua en el intervalo $[a,b]$ (en otros términos el conjunto de polinomios es denso en el conjunto de funciones continuas con la norma infinito). Esto nos permite acotar el error al aproximar una función por un suma ponderada de la función evaluada en los nudos: $$ \left| \int_a^b\! f(x)\;\mathrm{d}x - \int_a^b\! P_N(x)\;\mathrm{d}x \right| = \left| \int_a^b\! \big(f(x)-P_N(x)\big)\;\mathrm{d}x \right| \leqslant \int_a^b\! \big|f(x)-P_N(x)\big|\;\mathrm{d}x \leqslant \int_a^b \|f-P_N\|_\infty \;\mathrm{d}x = \|f-P_N\|_\infty (b-a) \leqslant \varepsilon\,(b-a) $$ El polinomio interpolador de Lagrange se puede escribir de la forma $$ P_N(x) = \sum_{i=0}^N f(x_i) \ell_i(x) \implies \int_a^b\! P_N(x)\;\mathrm{d}x = \int_a^b\! \sum_{i=0}^N f(x_i) \ell_i(x) \;\mathrm{d}x = \sum_{i=0}^N f(x_i) \int_a^b \ell_i(x) \;\mathrm{d}x = \sum_{i=0}^N \omega_i f(x_i) $$ Donde se satisface que: $$ \omega_i = \int_a^b\! \ell_i(x) \;\mathrm{d}x \qquad \sum_{i=0}^N \omega_i = b-a $$ La regla del trapecio ($N=1$), de Simpson $1/3$ ($N=2$), de Simpson $3/8$ ($N=4$), y de Boole ($N=5$) son ejemplos de fórmulas de cuadraturas de Newton-Cotes tomando los extremos del intervalo. Si en cambio no se toman los extremos como nodos de interpolación se tiene la regla del rectángulo/punto medio ($N=2$), la del trapecio ($N=3$) o la de Milne ($N=4$).
De hecho hay una familia de fórmulas de cuadraturas que por su similitud se podrían considerar también de Newton-Cotes como la regla adaptativa de Simpson ($N=4$), la de Hardy ($N=6$), la de Weedle ($N=6$), la de Shovelton ($N=10$), las dos de Woolhouse ($N=10,28$), o la de Durand para un $N$ genérico.


Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

jueves, 19 de mayo de 2022

(769) - Expresiones para soluciones de ecuaciones diferenciales. ¿Existen o se crean?

Poco antes de verano estaba con un amigo del doble grado y redactor de este blog hablando de ecuaciones diferenciales y salieron dos ejemplos en particular: la del péndulo realista, $y^{\prime\prime}+\beta\,y^\prime+{\omega_0}^2\sin(y)=0$ (con amortiguamiento/fricción y sin aproximaciones de ángulo pequeño), y el sistema de Lotka-Volterra: $\displaystyle \begin{cases} x^\prime & = & x(\alpha-\beta y) \\ y^\prime & = & -y(\gamma-\delta x) \end{cases}$ . Él me preguntó que si acaso tenían solución, y yo le dije que sí, que se podían construir. Él realmente no me inquirió en si eran resolubles (ya fueren analítica o numéricamente), sino si existía alguna función conocida, que pudiese ser composición y/o combinación de otras funciones elementales o no (por ejemplo) tal que fuese solución suya, es decir, si se podía expresar su solución en términos de funciones conocidas. Él se quejó de mi respuesta, a lo que yo le dije que realmente eso poco importaba a la hora de resolver ecuaciones diferenciales y al estudiarlas. A veces la propia solución puede ser tan engorrosa analíticamente que es reconfortante pensar que siempre nos quedará el cálculo numérico...

Por ejemplo, tomemos la función error gaussiano, una función no-elemental, que se define como: $\displaystyle \operatorname{erf}(x)\overset{\text{def}}{=}\frac{2}{\sqrt{\pi\;}}\int_0^x e^{-t^2}\;\text{d}t$ . Resolvamos la ecuación diferencial ordinaria de I orden $y^\prime = e^{-x^2}$ . Ahora bien, ¿la solución de esta ecuación diferencial es debida a dicha definición anterior, tal que $\displaystyle y\triangleq\frac{\sqrt{\pi\;}}{2}\operatorname{erf}(x)+y_0$ , o bien la definición anterior se dio para que satisficiere la ecuación diferencial $y^\prime = e^{-x^2}$ ?, es decir, ¿qué vino antes: la definición (y después la ecuación diferencial que resulta ser que la tiene como solución salvo constantes) o la ecuación diferencial (y la definición se dio posteriormente como su solución a este problema)?

Sin la definición de $\operatorname{erf}(x)$, el problema es irresoluble analíticamente, pero con dicha definición es trivial, ya que la propia definición es la solución. Es como si hubiésemos definido que esta función sea su solución. Es equivalente a construir la solución, y darla como definición, por lo que el problema ya está resuelto.

Esto puede parecer una tontería, o un poco enrevesado, pero si se quiere resolver $y^\prime = 3x^2$ , que tiene como solución $y=x^3+y_0$ , no se requiere de ninguna definición previa que no esté contemplada ya.

Uno siempre puede decir: Sea $y\overset{\text{def}}{=}\theta(t)=\theta(t|\beta,\omega_0;y_0,{y_0}^\prime)$ la solución a la ecuación diferencial $y^{\prime\prime}+\beta\,y^\prime+{\omega_0}^2\sin(y)=0$ en la variable $t$ donde $\beta,\omega_0\geqslant 0$ son parámetros que dependen de la ecuación diferencial, con $y_0,{y_0}^\prime$ como condiciones iniciales (hay soluciones analíticas si se linealiza o si al menos uno de los parámetros se anula, aunque con $\beta=0$ es enrevesada). Después mediante cálculo y análisis numéricos, con un conocimiento previo de ecuaciones diferenciales, uno puede estudiar la solución numéricamente, y a veces a lo sumo, hasta cierto punto analíticamente.

Otro ejemplo puede ser el oscilador de Van der Pol: $y^{\prime\prime}-\mu(1-y^2)y^\prime+{\omega_0}^2y=0$ (nótese que el caso $\mu=0$ es el oscilador armónico simple, por lo que sí tiene una solución analítica en este caso), otra vez ahí definir $y\overset{\text{def}}{=}\operatorname{vdp}(t)=\operatorname{vdp}(t|\mu,\omega_0;y_0,{y_0}^\prime)$ como una solución obtenida numéricamente y a partir de ella estudiar la solución "analítica".

Lo que estoy argumentando es equivalente a si un matemático en el $\text{siglo XVI-XVII}$, desconociendo tanto el número $e$ como las funciones exponencial $e^x$ y logaritmo $\ln(x)$ , decidiese analizar la ecuación diferencial ordinaria de primer orden $y^\prime=k\, y$ definiendo su solución como $y\overset{\text{def}}{=}\operatorname{sol}(t) = \operatorname{sol}(t|k;y_0)$ y estudiarla a partir de su solución construida. Hoy sabemos que tiene una forma cerrada, $y=y_0\, e^{k(t-t_0)}$ .

Uno puede incluso argumentar que estos ejemplos están sesgados y que no tienen validez, pero no es así, hay muchas ecuaciones diferenciales que no tienen necesariamente una solución analítica y para entenderlas es necesario su estudio con cálculo numérico y definir sus soluciones. En especial, en física, como dijo Steven Strogatz ($1959-$): "Desde Newton, la humanidad se ha dado cuenta que las leyes de la física siempre se expresan en la lengua de ecuaciones diferenciales." Veamos algunos ejemplos:

El sistema de $2$ ecuaciones diferenciales ordinarias de II orden que rigen el péndulo doble $$ \begin{cases} \ddot{\theta}_1 & = & \displaystyle \frac{-g (2m_1+m_2)\sin(\theta_1)-m_2g\sin(\theta_1-2\theta_2)-2\sin(\theta_1-\theta_2)m_2\big({\dot{\theta_2}}^2 l_2+{\dot{\theta_1}}^2 l_1\cos(\theta_1-\theta_2)\big)} {l_1\big(2m_1+m_2-m_2\cos(2\theta_1-2\theta_2)\big)} \\ \ddot{\theta}_2 & = & \displaystyle \frac{2 \sin(\theta_1-\theta_2) \big({\dot{\theta}_1}^2 l_1 (m_1 + m_2)+ g(m_1 + m_2) \cos(\theta_1) + {\dot{\theta}_2}^2 l_2 m_2 \cos(\theta_1 - \theta_2)\big)} {l_2 \big(2 m_1 + m_2 - m_2 \cos(2 \theta_1 - 2 \theta_2)\big)} \end{cases} $$ El sistema de $2$ ecuaciones diferenciales ordinarias de II orden que rigen el péndulo elástico $$ \begin{cases} \ddot{r} & = & \displaystyle (r+l_0)\dot{\theta}^2 -\frac{k}{m}r + g\cos(\theta) \\ \ddot{\theta} & = & \displaystyle -\frac{g\sin(\theta)+2\dot{r}\dot{\theta}}{r+l_0} \end{cases} $$ La ecuación diferencial ordinaria de II orden que rige el péndulo esférico $$ \ddot{\theta}(t)- \left(\frac{p_\varphi}{ml^2}\right)^2\frac{\cos\big(\theta(t)\big)}{\sin^3\big(\theta(t)\big)}+\frac{g}{l}\sin\big(\theta(t)\big) = 0 $$ El sistema de $6$ ecuaciones diferenciales ordinarias de II orden que rigen el problema de los dos cuerpos $$ \begin{cases} \ddot{\vec{r}}_1 & = &\displaystyle Gm_2 \frac{\vec{r}_2-\vec{r}_1}{{\|\vec{r}_2-\vec{r}_1\|_2}^3}\\ \ddot{\vec{r}}_2 & = &\displaystyle Gm_1 \frac{\vec{r}_1-\vec{r}_2}{{\|\vec{r}_1-\vec{r}_2\|_2}^3} \end{cases} \implies m_1\ddot{\vec{r}}_1 + m_2\ddot{\vec{r}}_2 = \vec{0} $$ El sistema de $3$ ecuaciones diferenciales ordinarias de I orden conocido como el atractor de Lorentz, un ejemplo famoso de la Teoría del Caos: $$ \begin{cases} \dot{x} & = & \sigma (y-x) \\ \dot{y} & = & x (\rho-z)-y \\ \dot{z} & = & xy-\beta z \end{cases} $$
Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

miércoles, 26 de mayo de 2021

(691) - El origen numérico de los logaritmos (con Teoría de Grupos)

Ya vimos en una entrada pasada cómo se propuso la prostaféreis, un algoritmo para agilizar el producto, pero aún así era muy costoso, largo, y tedioso. Por ejemplo, para calcular el producto de cinco números había que aplicarlo por lo menos tres veces con las sucesivas pérdidas de precisión en cada iteración. El matemático escocés John Napier of Merchinston ($1550-1617$) se le ocurrió una forma mejor. En términos modernos se puede imaginar su idea como buscar una aplicación $\psi$ que transformase un producto de elementos $xy$ del dominio en una operación $\star$ de sendas imágenes [de los factores]: un producto se convertía en operación computacionalmente mucho más fácil, $\star$ [luego veremos por cuál se decantó].

La aplicación satisface: $\psi(k\,xy) = \psi(x)\star\psi(y)$ para alguna constante $k$ , que se puede entender como un parámetro de reescala.
Para proceder se usarían los valores tanto $\psi(x)$ como $\psi(y)$ para hacer $\psi(x)\star\psi(y)=\psi(k\,xy)$ , y luego ver el qué argumento da $\psi(k\,xy)$ . Así pues solo hay que tener tabulado los valores $x\overset{\psi}{\mapsto}\psi(x)$ además de $y\overset{\psi}{\mapsto}\psi(y)$ (las búsquedas directas), asimismo como $\psi(k\, xy)\overset{\psi^{[-1]}}{\longmapsto} xy$ (la búsqueda inversa). El lector habitual del blog verá la rápida conexión con la prostaféresis.
 
Ya que el producto es conmutativo, la operación $\star$ también lo es: $$ \psi(k\,xy) = \psi(k\,yx) \implies \psi(x)\star\psi(y)=\psi(y)\star\psi(x) $$ Veamos que a su vez como el producto es asociativo, la operación $\star$ también lo es [usar $k^2$ sigue siendo un parámetro para simplificar resultados]: $$ \psi(k^2\,xyz) = \left\{ \begin{matrix} \psi(k\, (kxy)z) & = & \psi(kxy) \star\psi(z) & = & \big(\psi(x)\star\psi(y)\big)\star\psi(z)\\= & & = & & = \\\psi(k\, x(kyz)) & = & \psi(x) \star\psi(kyz) & = & \psi(x)\star\big(\psi(y)\star\psi(z)\big)\\ \end{matrix} \right.$$ Veamos cómo la operación $\star$ tiene un elemento neutro, $\psi(k^{-1})$ : $$ \psi(k\,tk^{-1})=\psi(t) = \psi(t)\star\psi(k^{-1}) = \psi(k^{-1})\star\psi(t)$$ Veamos ahora cómo todo elemento $\psi(t)$ tiene un elemento inverso $\psi(k^{-2}t^{-1})$ con la operación $\star$ [dada la conmutatividad de antes es tanto el inverso por la izquierda como por la derecha]: $$\psi(k\;t\,k^{-2}t^{-1})=\psi(k^{-1}) = \psi(t)\star\psi(k^{-2}t^{-1}) = \psi(k^{-2}t^{-1})\star\psi(t)$$ Sobre la aplicación $\psi$ queremos que sea inyectiva (elementos distintos tienen imágenes distintas), y además que sea biyectiva para que no haya problemas a la hora de multiplicar (que nos diera un posible producto erróneo). $$\begin{array}{ cccc }
\psi : & \mathbb{K}_1 & \longrightarrow & \mathbb{K}_2\\[2.5ex]
& t & \longmapsto & \psi(t) \\[8pt]
& k\,x_1\cdot x_2 & \longmapsto & \begin{matrix} \psi(x_1) & \star & \psi(x_2) \\ =&&= \\ y_1 & \star & y_2 \end{matrix}
\end{array} \qquad \begin{array}{ cccc }
\psi^{[-1]} : & \mathbb{K}_2 & \longrightarrow & \mathbb{K}_1 \\[2.5ex]
& z & \longmapsto & \psi^{[-1]}(z) \\[8pt]
& y_1 \star y_2 & \longmapsto & \begin{matrix} k & \psi^{[-1]}(y_1) & \cdot & \psi^{[-1]}(y_2)\\ & =&&= \\ k & x_1 & \cdot & x_2 \end{matrix}
\end{array}$$ Donde $\cdot$ es el producto usual en $\mathbb{K}_1$ , mientras que $\star$ es nuestra operación en $\mathbb{K}_2$ . La operación $\star$ realmente puede ser cualquiera que satisfaga las propiedades descritas, por lo que Napier usó $\star$ como la suma usual (según cuál se tome, cambia cómo es $\psi$ , por ejemplo con la suma se tiene que $\psi(k^{-1})=0$ para el neutro y $\psi(k^{-2}t^{-1})=-\psi(t)$ para el inverso). Llamó a su aplicación $\psi$ como logarithmus en latín, del griego antiguo λόγος (lógos) “palabra, razón” y ἀριθμός (arithmós) “número” , muy similar a la construcción número racional (también del latín) pero aquí el apellido racional indicando “razonadamente, con una razón de ser”. Napier definió su logaritmo $\operatorname{logN}$ : $$ n = 10^7\,\big(1-10^{-7}\,\big)^L \overset{\triangle}{\iff} L\overset{\text{def}}{=}\operatorname{logN} n$$ La relación entre el logaritmo de Napier , $\operatorname{logN}$ , y el logaritmo natural, $\ln$ , es: $$ \operatorname{logN} n \triangleq \frac{\displaystyle \ln\left(\frac{n}{10^7}\right)}{\ln\big(1-10^{-7}\,\big)} \iff \ln n \triangleq \ln\big(1-10^{-7}\,\big)\operatorname{logN} n + 7\ln 10$$ Es más, ambos para algún $n$ toman el mismo valor, $\displaystyle \frac{7\ln10}{1-\ln(1-10^{-7}\,)}$ . De esto se deducen las propiedades $$\begin{matrix} \displaystyle \operatorname{logN}\sqrt{x_1x_2\;} & = & \displaystyle \frac{\operatorname{logN}x_1+\operatorname{logN}x_2}{2} \\[3pt] \displaystyle \operatorname{logN}\big(10^{-7}x_1x_2\big) & = & \displaystyle \operatorname{logN}x_1+\operatorname{logN}x_2 \\[5pt] \displaystyle \operatorname{logN}\bigg(10^7\sqrt{\frac{x_1}{x_2}\;}\,\bigg) & = & \displaystyle \frac{\operatorname{logN}x_1-\operatorname{logN}x_2}{2} \\[3pt] \displaystyle\operatorname{logN}\Big(10^7\frac{x_1}{x_2}\Big) & = & \displaystyle \operatorname{logN}x_1-\operatorname{logN}x_2 \end{matrix}$$ Nótese que el logaritmo de Napier no satisface exactamente esas propiedades tan directas de los logaritmos a las que estamos muy habituados, en parte por la presencia de esa constante $10^{-7}$ . Unos pocos años después, Henry Briggs ($1561-1630$) simplifició en gran medida el trabajo de de Napier, creando el logaritmo briggsiano o común [decimal], $\log_{10}$ o también $\lg$ . Con este mero cambio, se popularizó muchísimo más el trabajo de Napier al hacerse más intuitivo, pues el logaritmo decimal de un número se puede entender como el número de cifras que tiene en su representación decimal (y las cifras del número original por cómo está entre dos unidades contiguas en una escala logarítmica decimal).
Ahora el algortimo para multiplicar $xy$ ha pasado a consultar los valores de $\log(x)$ además de $\log(y)$ [independientemente de la base], calcular $\log(x)+\log(y)$ y consultar en una búsqueda inversa el valor de $\operatorname{antilog}\big(\log(x)+\log(y)\big)$ (con respecto a la misma base que antes, siendo $\operatorname{antilog}$ la función antilogaritmo, es decir, la aplicación inversa al logaritmo). $$ xy = x\cdot y \iff xy = \operatorname{antilog}\big(\log(x)+\log(y)\big) $$ Es más, esto no se complica innecesariamente comparado con la prostaféresis, ya que: $$\prod_{k=1}^n x_k = x_1\cdot\ldots\cdot x_n \iff \prod_{k=1}^n x_k = \operatorname{antilog}\left(\sum_{k=1}^n\log(x_n)\right) $$ Que es una forma muy efectiva, útil y rápida para programar la función factorial, $x!$ , en algunos lenguajes como $R$ . Un pequeño esquema de lo que planteamos es: $$ \begin{matrix} \{x,y\} & \longrightarrow & x\cdot y \\ \underset{\text{Logartimo}}{\Downarrow} & & \underset{\text{Antilogaritmo}}{\Uparrow} \\ \big\{\log(x),\log(y)\big\} & \overset{\text{Suma}}{\implies} & \log(x)+\log(y) \end{matrix} $$ Para multiplicar varios números es mucho más efectivo usar logaritmos:
  • Para multiplicar números usando el algoritmo logarítmico, primero se hace una búsqueda directa de los logaritmos de los factores en tablas, se calcula su suma total, y por último con una búsqueda inversa se tiene el producto.
  • Para multiplicar números usando el algoritmo prostaferético, primero hay que hacer parejas y aplicar el algoritmo para cada una de las parejas (si hay un número impar de factores se omite uno y se lo lleva directamente a la próxima etapa), ahora hay que volver a hacer parejas con los productos intermedios y así recursivamente hasta que se llega al producto final.
Para multiplicar dos números en prostaféresis hay que hacer primero dos búsquedas inversas, una suma y una resta, dos búsquedas directas, y por último una suma y dividir entre $2$ , mientras que con logaritmos solo hay que hacer primero dos búsquedas directas, una suma, y por último una búsqueda inversa.


Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

martes, 3 de noviembre de 2020

(613) - Valor principal de Cauchy. Integrando al límite y al infinito

Aclaremos una cosa: esta entrada no trata el problema del valor inicial de Cauchy para ecuaciones diferenciales (en el que se halla la única solución a una ecuación diferencial dada una condición inicial concreta).

Supongamos que tenemos una función $f(x)$ de la que queremos hallar su integral en el intervalo $[a,b]$ (realmente da igual si es abierto o cerrado). Sin embargo, esta función no es continua en todo el intervalo, sino que tiene una discontinuidad en algún punto intermedio $\xi\in[a,b]$ .
  • Si fuera una discontinuidad evitable, es decir, si $\displaystyle \lim_{x\to\xi^{-}} f(x) = \lim_{x\to\xi^{+}} f(x) \not = f(\xi) $, entonces la integral sería: $\displaystyle \int_a^b \hspace{-5pt} f = \int_a^{\to\xi^{-}} \hspace{-8pt} f+ \int_{\to\xi^{+}}^b \hspace{-3.5pt} f $ .
  • Si fuera una discontinuidad inevitable de salto finito ( $\displaystyle \lim_{x\to\xi^{-}} f(x) - \lim_{x\to\xi^{+}} f(x)\lneq\infty$ ), es decir, si $\displaystyle \lim_{x\to\xi^{-}} f(x) \not = \lim_{x\to\xi^{+}} f(x) $, entonces la integral sería: o bien $\displaystyle \int_a^b \hspace{-5pt} f = \int_a^{\to\xi^{-}} \hspace{-8pt} f + \int_\xi^b \hspace{-6pt} f $ (si $\displaystyle \lim_{x\to\xi^{+}} f(x) = f(\xi) $ ), o bien $\displaystyle \int_a^b \hspace{-5pt} f = \int_a^\xi \hspace{-6pt} f + \int_{\to\xi^{+}}^b \hspace{-3.5pt} f $ (si $\displaystyle \lim_{x\to\xi^{-}} f(x) = f(\xi) $ ).
  • Si fuera una discontinuidad inevitable de salto infinito ( $\displaystyle |\lim_{x\to\xi^{-}} f(x) - \lim_{x\to\xi^{+}} f(x)| = \infty$ ) es decir, si $\displaystyle \lim_{x\to\xi^{-}} f(x) = \pm\infty = \lim_{x\to\xi^{+}} f(x) $ [particularizando al caso que queremos estudiar], entonces la integral numérica no tendría del todo sentido siempre: 
    1. Si ambos límites laterales convergen en valor absoluto a infinito y tienen el mismo signo, la integral numérica da $\pm\infty$ . 
    2. Sin embargo, si ambos convergen en valor absoluto a infinito, pero tienen distinto signo, uno podría preguntarse cómo calcular [numéricamente] el valor de la integral. La respuesta es a través de un límite: 
$$\boxed{ ―\hspace{-11.5pt}\int_a^b \hspace{-5pt} f \overset{\text{def}}{=} \lim_{\varepsilon\to 0^{+}} \Bigg( \int_a^{\xi-\varepsilon}\hspace{-5pt} f + \int_{\xi+\varepsilon}^b \hspace{-5pt} f \Bigg) }$$ 
Nótese que se está evaluando la integral en $[a,b]\setminus[\xi-\varepsilon,\xi+\varepsilon] \triangleq [a,\xi-\varepsilon) \cup (\xi+\varepsilon,b] $, y por las propiedades de la integración, la integral en ese subintervalo (bajo ciertas condiciones), $\displaystyle \int_{\xi-\varepsilon}^{\xi+\varepsilon}\hspace{-5pt} f = 2\varepsilon\cdot f(\eta) \!\underset{\varepsilon\to 0}{\longrightarrow}\! 0 $ donde $\eta\in (\xi-\varepsilon,\xi+\varepsilon)$ .
Con la definición del valor principal de Cauchy, uno puede dar un resultado numérico a integrales tipo: $ \displaystyle ―\hspace{-11.5pt}\int_{-1}^2 \frac{1}{x} \text{d}x = \ln 2 $ , o puede incluso definir funciones más difíciles como la integral logarítmica (de la que hablaremos más adelante): $$ \displaystyle \operatorname{li}(x) \overset{\text{def}}{=} ―\hspace{-11.5pt}\int_0^x \frac{1}{\ln(t)} \text{d}t $$
El valor principal de Cauchy es una generalización para ciertas integrales numéricas que sigue abarcando los casos más simples.
En cuanto a notación el valor principal de Cauchy se denota como $\displaystyle ―\hspace{-11.5pt}\int$ que corresponde al comando \fint en LaTeX , y en otras ocasiones $\displaystyle \int_L^\ast$ , $\displaystyle \mathcal{C}\int$ , $\displaystyle (CPV)\int$ , $\displaystyle P\int$ , $\displaystyle PV\int$ , $\displaystyle \operatorname{P.V.}\int$ , $\displaystyle P_v\int$ , $\displaystyle \operatorname{V.P.}\int$ , $\displaystyle \operatorname{p.v.}\int$ .


Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.