OBJETIVOS
- Entender la sintaxis, tipos de datos, variables, estructuras de control, funciones módulos y paquetes disponibles en Python.
- Aprender a utilizar los paquetes para análisis de datos y cálculo científico del ecosistema Python; especialmente, numpy, pandas, scipy y matplotlib.
- Utilizar Python para analizar datos experimentales, modelar y simular, optimizar y controlar procesos reales de la ingeniería química.
CONTENIDO
Módulo 1: Fundamentos de Python y Herramientas.
Objetivo: Adquirir las bases sólidas en la programación con Python y familiarizarse con las herramientas esenciales para el desarrollo de aplicaciones.
Temario:
Introducción a la programación en Python.
- Conceptos básicos de programación: variables, tipos de datos, operadores, estructuras de control.
- Funciones: definición, tipos, argumentos, ámbito y recursividad.
- Módulos y paquetes: importación, organización y reutilización de código.
- Ejercicios introductorios en Python: práctica de los conceptos básicos.
Miniconda y Jupyter Notebooks.
- Instalación y configuración de Miniconda: gestión de entornos virtuales y paquetes.
- Uso básico de Jupyter Notebooks: creación, edición y ejecución de código.
- Gestión de paquetes y entornos virtuales: instalación, actualización y eliminación de paquetes.
- Ejercicios prácticos de Python: proyectos para reforzar la familiarización con el lenguaje.
Ejercicios prácticos de Python.
- Manipulación de archivos y datos.
- Simulaciones simples.
- Automatización de tareas.
- Introducción a la manipulación de datos con Python.
- Estructuras de datos básicas: listas, tuplas, diccionarios.
- Operaciones con datos: filtrado, ordenamiento, agrupación.
- Aplicaciones sencillas de análisis de datos:
- Visualización básica de datos.
- Cálculo de estadísticas básicas.
Módulo 2: Python Intermedio y Análisis de Datos.
Objetivo: Profundizar en las capacidades de Python para el análisis de datos y la computación científica, incluyendo técnicas avanzadas y aplicaciones en ingeniería química.
Temario:
Estructuras y sintaxis avanzadas en Python.
- Programación orientada a objetos: clases, objetos, herencia y polimorfismo.
- Manejo de errores y excepciones: try/except, raise, assert.
- Funciones avanzadas y técnicas de programación: decoradores, lambda, iteradores.
Análisis de datos con Python.
- Profundización en Pandas: manejo de DataFrames, Series, operaciones avanzadas.
- Visualización avanzada de datos con Matplotlib: gráficos personalizados, subplots, seaborn.
- Técnicas de limpieza y manipulación de datos: tratamiento de valores nulos, fusión de conjuntos de datos.
Introducción a la computación científica.
- Uso de bibliotecas como scipy y numpy: álgebra lineal, integración numérica, optimización.
- Resolución de problemas matemáticos y científicos: ecuaciones diferenciales, métodos numéricos.
- Aplicaciones prácticas en ingeniería química: modelado de procesos, simulación de fenómenos, análisis de datos experimentales.
Módulo 3: Aplicaciones Avanzadas en Ingeniería Química.
Objetivo: Desarrollar la capacidad de aplicar Python a la resolución de problemas complejos en el ámbito de la ingeniería química, utilizando técnicas de modelación matemática y simulación numérica.
Temario:
Modelado y simulación de procesos.
- Desarrollo de modelos matemáticos para procesos químicos: balances de materia y energía.
- Implementación de modelos en Python: uso de bibliotecas específicas.
- Simulación de procesos: análisis de escenarios y optimización de parámetros.
Optimización de procesos químicos.
- Formulación de problemas de optimización: variables de decisión, función objetivo, restricciones.
- Aplicaciones en la optimización de procesos: diseño de reactores, control de calidad.
Proyecto Final y Revisión.
- Desarrollo de un proyecto integral
- Aplicación de conceptos aprendidos a un problema específico
Revisión final y discusiones.