14 oct. 2018

Derivada de Lie y transporte de Lie de manera intuitiva

La derivada de Lie es una forma de derivar en variedades diferenciales cualesquiera. Consideremos un campo vectorial $X$ en una variedad $M$. Usando el flujo de dicho campo, que denotaremos $X_t$ para cierto $t$ pequeño, y más concretamente su diferencial $d X_t$ podemos trasladar vectores de otro campo $Y$ entre las fibras tangentes de $p$ y $X_t(p)$. El vector de llegada $d X_t(Y(p))$ y el vector $Y(X_t(p))$ podrán coincidir o no. Si coincinden es que hay ``cierta compatibilidad'' entre ambos campos.

También podemos ``tirar hacia atrás'' con $d X_{-t}$ para comparar el vector $Y(p)$ con el que ha ido y ha vuelto $d X_{-t}(Y(X_t(p)))$. La diferencia entre estos vectores dividido entre $t$ es la tasa de variación del campo $Y$ fijando como referencia el campo $X$. A esa cantidad se le llama derivada de Lie:

$$ \mathcal{L}_X(Y)=\lim_{t \rightarrow 0} \frac{d X_{-t}(Y(X_t(p)))-Y(p)}{t}$$



Se puede demostrar que
$$ \mathcal{L}_X(Y)= \frac{d}{dt}\left( d X_{-t}(Y(X_t(p))) \right)_{t=0}$$

Y también que coincide con el corchete de Lie:

$$ \mathcal{L}_X(Y)=[X,Y]$$

De hecho, se puede demostrar que la anulación del corchete implica la conmutatividad de los flujos de ambos campos para incrementos pequeños, lo cual es una idea muy parecida a la presentada más arriba.


Se puede hablar también de ``transporte de Lie'' de un vector $Y$ a través de un campo $X$. Consistiría en aplicar $d X_t( \cdot )$ al vector $Y$ para llevarlo a distintos sitios. Aunque puede parecer similar al ``transporte paralelo'', hay muchas diferencias:


- El transporte de Lie se puede visualizar, de manera intuitiva, como el transporte de un río. No tiene que conservar el paralelismo real, sino que depende de la ``corriente de ese río particular'', o sea, del campo $X$ seleccionado. De hecho, no tiene por qué haber una idea de paralelismo de fondo, ya que la variedad no tiene por qué contar con un producto escalar o algo para medir ángulos ni distancias...
Siguiendo con la interpretación del río, la derivada de Lie $\mathcal{L}_X(Y)$ nos mide cómo varía el campo $Y$ para un observador que está fluyendo en el río.

-No permite transportar un vector $Y$ en $p\in M$ a un punto arbitrario $q\in M$, sino que sólo lo lleva a puntos de la órbita $\{X_t(p), t \in (a(p), b(p))\}$.

- El transporte de Lie no sólo depende de la curva uniendo los puntos, sino de todo el campo de vectores de alrededor, de todo el flujo. En cambio para el transporte paralelo sólo influye la curva seleccionada para unir los puntos.


9 oct. 2018

Importancia de las matemáticas


13 jun. 2018

Examen de selectividad de Matemáticas II de Andalucía resuelto (2018)

Aquí la solución de la opción A.
Y en este otro enlace la de la opción B.



11 jun. 2018

Derivabilidad de funciones a trozos

Para estudiar la derivabilidad de una función en un punto, sea a trozos o no, hay que usar la definición de derivada. El problema es que para determinadas funciones a trozos, el límite resultante puede ser relativamente complicado. Es por ello que los profesores de bachillerato solemos contar a los alumnos un truco...

El truco consiste, ni más ni menos, que en obtener la función derivada de f usando las reglas de derivación, en cada trozo, pero excluyendo los "bordes" del dominio de cada trozo, es decir, los puntos de cambio de trozo. Después bastará con comprobar que ambas derivadas "pegan bien", es decir, la recién obtenida función es continua.

Llegados aquí, pueden pasar dos cosas.
1. Si resulta que la función f' puede extenderse a continua (porque los trozos derivados pegan bien), pues afirmamos que la función f es derivable.
2. Si los trozos derivados no pegan bien, decimos que f no es derivable en ese punto.

Pues bien, lo afirmado en el punto 2 no es correcto. Imaginemos la función:
Esta función es derivable en 0, se puede comprobar. Pero su derivada es
que no es continua en 0.

Es decir, hay funciones derivables cuya derivada no es una función continua. Se dice que son funciones de clase $C^0$ pero no de clase $C^1$. Más aquí.

Entonces, ¿tenemos que renunciar a este maravilloso truco? ¿Hay que usar siempre la definición de derivada? No todo está perdido. Si los trozos no pegan bien pero los límites existen y son finitos, entonces sí podemos afirmar que la función no es derivable.







30 abr. 2014

Los lenguajes de programación

Esta semana se cumplen los 50 años de la creación del lenguaje de programación BASIC. Su creadores, John George Kemeny y Thomas Eugene Kurtz tenían el objetivo de acercar la programación de computadores a todo el mundo.


Pero, ¿qué es un lenguaje de programación? Pues hablando simplemente, es el “idioma” con el que podemos comunicarnos con nuestro ordenador o móvil para enseñarle a hacer... prácticamente cualquier cosa. En efecto, todos los programas que tenemos en nuestro ordenador, el control automático de la temperatura de un aire acondicionado, todas las increíbles apps que tenemos en nuestro teléfono móvil, todos sin excepción están desarrollados usando un lenguaje de programación.



Ahora bien las máquinas, al contrario de lo que pensamos, son “tontas”: hacen justo justo lo que les pedimos que hagan, ni más ni menos. Por eso un lenguaje de programación consiste en unas instrucciones muy sencillas y muy precisas, para que no haya líos. Y por ello, programar puede llegar a ser algo realmente complicado, pues para que el ordenador nos entienda debemos ceñirnos estrictamente a su “idioma” o le sucederá lo que normalmente llamamos “quedarse colgado”. Un ejemplo de programa muy sencillo para que nos hagamos una idea de lo complejo que puede llegar a ser el asunto:










mostrar(¿Cuántos asteriscos quiere?);
entrada(n);
Para i=1 to n
mostrar(*)
Fin Para;




Estas cinco líneas extrañas se llaman “código”, y reflejan un programa muy simple que pregunta al usuario cuántos asteriscos quiere imprimir por pantalla, y luego guarda su respuesta en la variable “n”. A continuación enseña el carácter asterisco “n” veces, las que le hayamos dicho, con lo cual aparecerán en la pantalla los asteriscos pedidos. Fijaos qué programa tan tonto; y sin embargo cuánta complejidad tiene... Así que imaginaos una app como “whatsapp” o un videojuego como “FIFA” cuán difícil es de desarrollar. No en vano, los programas actuales no son hechos por una persona, sino por un equipo completo, y contienen varios cientos de miles de líneas de código.



Aunque el lenguaje BASIC suponía una revolución por su sencillez, sigue siendo complicado hacer un programa interesante en él. Con interesante me refiero a que tenga efectos visuales y sonidos tal y como estamos acostumbrados. Por suerte, en la actualidad han surgido numerosas alternativas de lenguajes de programación “para niños” para que prácticamente cualquiera pueda hacer sus propias aplicaciones, incluyendo juegos.


Una de ellas es “Scratch”. Sólo tienes que pinchar el enlace y empezar a programar casi directamente. Su principal ventaja es que no tienes que
instalar nada, pues se ejecuta en el navegador, y además prácticamente no hay que escribir código. En lugar de escribir palabras clave, el lenguaje está formado por bloques gráficos que puedes arrastrar para crear el código de tu programa.




Así que ya estás tardando, todo lo que necesitas es Internet y paciencia (esto último es más difícil de encontrar) para empezar a hacer tus propios videojuegos. No olvides que muchos grandes juegos, como el “Comecocos” o el “Tetris” son programas relativamente simples que fueron desarrollados por una persona (generalmente estudiantes).

¡Lo importante es tener una buena idea!