Profesor | Renato Leriche Vázquez | lu mi vi | 8 a 9 |
Ayudante | Edgar Alexis Rodríguez Lucio | ma ju | 8 a 9 |
La presentación del curso será vía Zoom los días Lunes 14, Miércoles 16 y Viernes 18 de Febrero a las 8 am. Enlace a Zoom:
https://cuaieed-unam.zoom.us/j/89095633973
(Cualquier problema con el el enlace por favor escribirme a r_lerichev@ciencias.unam.mx.)
Así mismo, las clases serán Lunes, Miércoles y Viernes a las 8 am usando el mismo enlace a Zoom, iniciando el Lunes 21 de Febrero.
El curso es oficialmente en línea, sin embargo se puede discutir el cambio a una modalidad híbrida de acuerdo a las preferencias de los alumnos y a las condiciones que existan. Con híbrida me refiero a clases presenciales en salón de la Facultad de Ciencias con transmisión en vivo por Zoom.
En el seminario se pretende seguir principalmente la exposición del libro Fractals Everywhere, de Michael F. Barnsley (véase [Fractals Everywhere]). El propósito de este libro –y por lo tanto del seminario– es una introducción al estudio de la “Geometría Fractal”, mediante una combinación entre la revisión de su base teórica y la realización de “exploraciones” computacionales para visualizar los diversos conceptos, construcciones y ejemplos. Se complementará el material estudiado con contenidos de diversos libros, como The Fractal Geometry of Nature de B. Mandelbrot ([3]) y The Beauty of Fractals de H.O. Peitgen y P.H. Richter ([6]). Finalmente, para la realización de los experimentos computacionales se utilizará el lenguaje de programación Julia (véase [Julia]), por lo que realizará un taller de programación de este lenguaje dentro del seminario.
En la “geometría fractal”, el concepto central es la autosimilitud. Conjuntos autosimilares pueden obtenerse como atractores de un sistema de funciones iterado. Estos atractores autosimilares pueden ser los conjuntos llamados fractales. Así como en la geometría euclidiana las propiedades de los objetos están determinadas por invariantes bajo congruencias, en la geometría fractal las propiedades de los objetos (fractales) están determinados por transformaciones contractivas (sistema de funciones que determinan la similitudes) en un espacio métrico.
En el seminario se pretende seguir principalmente la exposición del libro Fractals Everywhere, de Michael F. Barnsley (véase [Fractals Everywhere]). El propósito de este libro –y por lo tanto del seminario– es una introducción al estudio de la “Geometría Fractal”, mediante una combinación entre la revisión de su base teórica y la realización de “exploraciones” computacionales para visualizar los diversos conceptos, construcciones y ejemplos.
El libro [Fractals Everywhere] contiene una muy buena revisión de la base teórica (topología, espacios métricos, dimensión fractal, etc) y una exposición muy completa con demostraciones formales y ejemplos sobre el tema. Aun así, se complementará el material estudiado, cuando sea necesario, con contenidos de diversos libros, como The Fractal Geometry of Nature de B. Mandelbrot ([3]) y The Beauty of Fractals de H.O. Peitgen y P.H. Richter ([6]).
Para los ejemplos de implementación de algoritmos en el libro [Fractals Everywhere], se utiliza el lenguaje de programación BASIC, que es relativamente sencillo de entender y útil por su uso de gráficos por computadora, pero actualmente existen mejores opciones en varios sentidos. Para el seminario se utilizará el lenguaje Julia (véase [Julia]), que está diseñado especialmente para cómputo científico y combina simplicidad con eficiencia. Dentro del seminario se realizará un taller para la introducción completa al lenguaje de programación Julia, por lo que no se solicitarán conocimientos de programación al alumno. El objetivo no será que el alumno se convierta en experto programación, sino sólo que aprenda lo suficiente para realizar la implementación de algoritmos relativos al cálculo y visualización de fractales.
Durante el semestre, se verán en paralelo el temario principal de Geometría Fractal, junto con el temario complementario de Programación para realizar las implementaciones de algoritmos.
1. Espacios Métricos / Programación Básica
* Programación
a) Introducción a la programación. Introducción a Julia y Jupyter.
b) Números, variables, constantes, operadores y expresiones. Tipos básicos.
c) Errores: sintácticos, de ejecución y semánticos.
d) Gráficos de píxeles con Images. Colores con Colors.
e) Funciones y sus argumentos.
f) Instrucciones de control condicional. Operador condicional.
g) Tipos colección: rangos y arreglos.
h) Instrucciones de control de repetición. Comprehensiones.
i) Funciones con argumentos opcionales y con argumentos palabra clave.
* Teoría
a) Espacios métricos. Sucesión de Cauchy. Espacios métricos completos.
b) Topología: Conjuntos abiertos, cerrados, frontera, compactos, perfectos, conexos, disconexos.
c) El espacio de compactos. Métrica de Hausdorff.
2. Sistemas de Funciones Iterados (SFIs) y Atractores / Programación Intermedia
* Programación
a) Tipos compuestos. Mutables e inmutables.
b) Funciones con tipos. Métodos y despacho múltiple.
c) Constructores. Objetos función.
d) Implementación del algoritmo determinista para dibujo de fractales.
e) Implementación del algoritmo del juego del caos para dibujo de fractales.
f) Funciones recursivas.
g) Implementación de algoritmos recursivos para dibujo de fractales.
* Teoría
a) Transformaciones en espacios métricos.
b) Sistemas de funciones iterados (SFIs). SFIs hiperbólicos.
c) Atractores. Teorema de Hutchinson.
d) Teorema del collage.
3. Dinámica Caótica en Fractales / Programación avanzada
* Programación
a) Tipos abstractos y subtipos.
* Teoría
a) Direcciones y espacios de códigos.
b) Sistemas dinámicos discretos. Órbitas. Caos.
c) Transformación corrimiento en fractales. Caos en fractales.
d) Teorema del sombreado.
4. Dimensión Fractal
* Programación
a) Implementación de algoritmos para el cálculo de dimensión fractal.
* Teoría
a) Teorema del conteo de cajas. Dimensión fractal de cajas.
b) Dimensión fractal de Hausdorff-Besicovitch.
5. Conjuntos de Julia, de Puntos Atrapados y SFIs
* Programación
a) Mapas de color con ColorSchemes.
b) Implementación del algoritmo de tiempo de escape.
* Teoría
a) Conjuntos de puntos atrapados.
b) Dinámica Holomorfa. Conjuntos de Julia.
c) Conjuntos de Julia como atractores de SFIs.
d) Conjuntos de puntos atrapados de SFIs.
6. Conjuntos de Mandelbrot de SFIs
* Programación
a) Implementación del algoritmo para Mandelbrots de SFIs.
* Teoría
a) El conjunto de Mandelbrot. Conjuntos de Mandelbrot generales.
b) Conjuntos de Mandelbrot de SFIs.
Los cursos antecedentes al seminario:
[Fractals Everywhere] Barnsley, Michael F., Fractals Everywhere, Morgan Kauffman, 2nd Edición, 1993.
[Julia] The Julia Language, julialang.org
[1] Devaney, Robert L., An introduction to chaotic dynamical systems, Addison-Wesley, 1986.
[2] Hutchinson, J., Fractals and Self-Similarity, Indiana University Journal of Mathematics 30: 713-747, 1981.
[3] Mandelbrot, B., The Fractal Geometry of Nature, W.H. Freeman and Co., 1982.
[4] McMullen, C.T., Riemann surfaces, dynamics and geometry, people.math.harvard.edu/~ctm/.../rs/course.pdf, 2018.
[5] Needham, T., Visual Complex Analysis, 1999.
[6] Peitgen, H.-0. & Richter, P. H., The Beauty of Fractals, Springer-Verlag, 1986.
[7] Ramírez-Galarza, A.I. & Seade-Kuri, J., Introducción a la Geometría Avanzada, Facultad de Ciencias, 2002.