Publicado el 5 de Abril del 2019
1.369 visualizaciones desde el 5 de Abril del 2019
2,9 MB
22 paginas
Creado hace 14a (15/07/2010)
Dinámica nolineal y sistemas complejos con python
Dinámica nolineal y sistemas complejos con
python
David Gómez-Ullate
Pablo Suárez
15 de julio de 2010
Dinámica nolineal y sistemas complejos con python
Motivación
Preparar un curso de máster atractivo en el Máster en Física
Fundamental de la UCM
Modelización en temas variados de dinámica no lineal y
sistemas complejos
Overlap con otras disciplinas (biología, economía, ciencias
sociales, etc.)
Carácter computacional (“pringarse las manos”)
Valor añadido: al final del curso
1. han tomado contacto con otros campos: investigación
interdisciplinar
2. han aprendido a herramientas de programación potentes y
versátiles
Dinámica nolineal y sistemas complejos con python
Dificultades
Dispersión grande en cuanto a experiencia en programación de
los estudiantes
la mayoría tiene proyecto de tesis ya asignado
escasa experiencia del profesor !
Dinámica nolineal y sistemas complejos con python
Por qué python ?
Ventajas:
software libre !
sintaxis sencilla de alto nivel orientada a objetos
muchas librerías científicas (scipy)
buenas librerías gráficas (matplotlib, mayavi, etc.)
aplicaciones más allá del cálculo científico
Desventajas:
Más lento que C o FORTRAN en cálculo intensivo
Menos user-friendly que Matlab (?)
Dinámica nolineal y sistemas complejos con python
Estructura del curso
Enfoque muy práctico: prácticas específicas al final de las
cuales los estudiantes han aprendido una serie conceptos
nuevos.
Introducción del profesor, trabajo en el aula informática de los
alumnos
Trabajo colaborativo en grupo (presencial y virtual)
Proyecto final en grupos + exposición en clase
Dinámica nolineal y sistemas complejos con python
Práctica 1: Nociones básicas de python
instalación de python, editores de código (kate),
Cadenas, listas, I/O de texto, etc.
Dinámica nolineal y sistemas complejos con python
Práctica 2: Reconocimiento de autores
I/O de ficheros, carpetas
importar modulos en python (import os)
codificación de caracteres, diccionarios
Dinámica nolineal y sistemas complejos con python
Práctica 3: Random walks
Conocimientos de python:
Primer contacto con funciones de scipy: arrays, generación
números aleatorios,
gráficos con matplotlib, histogramas
animaciones con mencoder
Conocimientos de la práctica:
Propiedades de las caminatas aleatorias:
1. invariancia de escala y autosimilaridad
2. universalidad y teorema del límite central
3. límite contínuo y ecuación de difusión
Dinámica nolineal y sistemas complejos con python
Práctica 3: Random walks
Dinámica nolineal y sistemas complejos con python
Práctica 4: Random walks en finanzas
Dinámica nolineal y sistemas complejos con python
Práctica 4: Random walks en finanzas
Conocimientos de python
importar ficheros de datos (e.g. de Yahoo Finance) en
estructuras de python
histogramas, gráficos log-log, semi-log, etc. y ajustes
Conocimientos de la práctica
análisis estadístico de series temporales de cotización de
valores
distribuciones de Lévy y colas gordas, comparación con el TLC
Dinámica nolineal y sistemas complejos con python
Práctica 4: Random walks en finanzas
Dinámica nolineal y sistemas complejos con python
Práctica 5: Estructura de redes complejas
Dinámica nolineal y sistemas complejos con python
Práctica 5: Estructura de redes complejas
Conocimientos de python
paquete networkx
Conocimientos de la práctica
propiedades estadísticas de redes de Erd¨os-Renyi,
Watts-Strogatz y Barábasi-Albert.
percolación, efecto pequeño mundo, enlazado preferencial y
distribuciones libres de escala.
Dinámica nolineal y sistemas complejos con python
Práctica 5: Estructura de redes complejas
Dinámica nolineal y sistemas complejos con python
Práctica 6: Propagación, robustez y ataques a redes
Dinámica nolineal y sistemas complejos con python
Práctica 6: Propagación, robustez y ataques a redes
Conocimientos de la práctica
Procesos dinámicos sobre redes complejas
Propagación de virus informáticos o enfermedades
Robustez frente a ataques dirigidos o fallos aleatorios
Caidas en cascada en redes de transporte
Sobre estos temas los estudiantes realizaron mini-proyectos de
investigación.
Dinámica nolineal y sistemas complejos con python
Práctica 7: Sincronización de osciladores acoplados
Dinámica nolineal y sistemas complejos con python
Práctica 7: Sincronización de osciladores acoplados
Conocimientos de python:
integración numérica de EDOs con
scipy.integrate.odeint
200 EDOs no lineales acopladas sin ningún problema
Conocimientos de la práctica
modelo de Kuramoto, transición de fase, acoplamiento crítico
phase locking, phase drift
extensiones: ruido, acoplamiento sobre redes complejas, etc.
Dinámica nolineal y sistemas complejos con python
Práctica 8: Reacción-difusión y formación de patrones
Dinámica nolineal y sistemas complejos con python
Práctica 8: Reacción-difusión y formación de patrones
Conocimientos de python/numéricos:
Integración numérica de EDPs de reacción difusión
Diferentes condiciones de contorno
esquema de diferencias finitas y algoritmo de Euler explícito
Conocimientos de la práctica:
Inestabilidad de Turing
Selección de patrones
Aplicaciones en biología
Dinámica nolineal y sistemas complejos con python
Práctica 8: Reacción-difusión y formación de patrones
Comentarios de: Dinámica nolineal y sistemas complejos con Python (0)
No hay comentarios