top of page
Curso de Python Creativo: Simulaciones, Física y Algoritmos
En este curso de Python, exploraremos diversas aplicaciones de programación con bibliotecas como PyGame o Matplotlib. Desde simular la Ley de la Gravedad hasta visualizar la propagación de enfermedades con el Modelo SIR, abordaremos la creación de animaciones y simulaciones.
Adentrándonos en mapas y artes visuales, aplicaremos diagramas de Voronoi con la API de Google Maps y en pinturas famosas. Analizaremos la optimización de datos con algoritmos de ordenamiento como Bubble Sort y Selection Sort, y exploraremos algoritmos de búsqueda como Dijkstra para encontrar rutas eficientes.
A lo largo del curso, exploraremos conceptos como fractales con algoritmos Sierpinski y Mandelbrot, y técnicas de búsqueda como Fibonacci y Sentinel. Sumándonos a la geolocalización, aplicaremos la ecuación de Haversine para calcular distancias precisas entre dos puntos con coordenadas de latitud y longitud. Este curso ofrece una experiencia enriquecedora donde exploraremos diversas facetas de la programación y aplicaremos estas habilidades de manera práctica y creativa.
Temario del Curso
Módulo 1 - Instalación e Introducción
-
Introducción a Visual Studio Code.
-
Instalación de librerías necesarias para los proyectos.
-
Como abordaremos los proyectos de programación.
Módulo 2 - Animaciones de Ecuaciones con Python
-
Proyecto 1 - Modelo SIR (Susceptibles-Infectados-Recuperados) es un modelo matemático que describe la propagación de enfermedades infecciosas en una población.
-
Teoría de la ecuación.
-
Desarrollo del código de Python sobre una animación 2D y 3D replicando experimentos de papers.
-
-
Proyecto 2 - Ley de la Gravedad: Este código usa Pygame, simulando órbitas espirales alrededor de una masa central debido a la interacción gravitatoria con elementos , proporcionando una representación visual de la dinámica en 2D.
-
Teoría de la ecuación.
-
Desarrollo del código de Python sobre una animación 2D experimentando distintos parámetros.
-
-
Proyecto 3 - Formula GEO Haversine: Este código en Python usa la fórmula Haversine para calcular y animar la distancia entre dos puntos (Nueva York y Los Ángeles) en la Tierra.
-
Desarrollo del código de Python sobre una animación 2D experimentando distintos parámetros.
-
-
Proyecto 4 - Ley de Coulomb: Este código en Python con Pygame simula la interacción entre electrones en pantalla, demostrando fuerzas eléctricas según la ley de Coulomb. La simulación visualiza dinámicamente la interacción electromagnética entre partículas cargadas.
-
Teoría de la ecuación.
-
Desarrollo del código de Python sobre una animación 2D experimentando distintos parámetros.
-
-
Proyecto 5 - Diagrama de Voronoi: Este código en Python usa Google Maps y SciPy para calcular un diagrama de Voronoi alrededor de ubicaciones de competidores, identificando regiones óptimas cercanas a "Negocio". Utiliza Folium para visualizar estas áreas en un mapa interactivo y en un gráfico.
-
Teoría de el diagrama de Voronoi.
-
Desarrollo del código de Python sobre un mapa interactivo con el diagrama de voronoi para encontrar la ubicación optima de un segundo local.
-
-
Proyecto 6 - Diagrama de Voronoi: Este código en Python, con SciPy y NumPy, crea un diagrama de Voronoi sobre la imagen "El Grito". Utiliza puntos aleatorios para definir regiones distintivas, generando una nueva imagen ("grito_voronoi.jpg") con un efecto visual único.
-
Teoría de el diagrama de Voronoi.
-
Desarrollo del código de Python
-
-
Proyecto 7 - Choque de partículas en cohete: Este código en Python, con Pygame, simula una lluvia de partículas y un cohete interactivo en pantalla. Las partículas caen aleatoriamente y, al colisionar con el cohete, cambian de dirección. La posición del cohete se puede ajustar arrastrándolo con el mouse, creando una simulación visual interactiva.
-
NA
-
Desarrollo del código de Python
-
Módulo 3 - Algoritmos
-
Algoritmo SORT - Bubble Sort : El código anima el algoritmo de ordenación de burbuja usando barras con Matplotlib, mostrando el proceso de ordenación, el número de iteraciones y el tiempo de ejecución.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo SORT - Insertion Sort : Este código genera una animación para ilustrar el algoritmo de ordenación por inserción, mostrando la reorganización de elementos para obtener una lista ordenada, con detalles sobre iteraciones y tiempo de ejecución.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo SORT - Selection Sort- Este código anima el algoritmo de ordenación por selección, ilustrando cómo se seleccionan y ordenan iterativamente los elementos más pequeños. Proporciona detalles sobre el número de iteraciones y el tiempo de ejecución.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo Fractales - Mandelbrot: Este código genera una animación visualizando el conjunto de Mandelbrot usando matplotlib. Los parámetros, como el tamaño de la ventana y el número de iteraciones, son ajustables. La animación se muestra con pyplot.
-
Teoría de Mandelbrot
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo Fractales - Triángulo Sierpinski: Este código utiliza la recursividad para generar y animar el Triángulo de Sierpinski en diferentes niveles de profundidad. El proceso se visualiza utilizando matplotlib.
-
Teoría del triángulo de Sierpinski
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo Búsqueda - Fibonacci: El código realiza una búsqueda de Fibonacci para encontrar un elemento en una lista ordenada. La animación visualiza el proceso y muestra si el elemento está presente o no al final.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo Búsqueda - Sentinel: El código implementa una búsqueda lineal con centinela para encontrar un elemento en una lista. La animación visualiza el proceso, resaltando en rojo el elemento comparado en cada iteración. El resultado muestra si el elemento está presente y, en ese caso, la posición en la lista.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
-
Algoritmo Búsqueda - Ternaria: El código implementa la búsqueda ternaria en una lista ordenada. La animación resalta los elementos comparados, mostrando si el elemento buscado está presente y su posición.
-
Teoría del algoritmo
-
Desarrollo del código de Python sobre la animación de su funcionamiento.
-
bottom of page