Source: http://docplayer.es/1359426-El-uso-de-python-en-la-ingenieria-quimica.html
Timestamp: 2018-05-21 09:58:22+00:00

Document:
El uso de Python en la ingeniería química - PDF
El uso de Python en la ingeniería química
Download "El uso de Python en la ingeniería química"
Antonio Lucas Luna Martínez
1 El uso de Python en la ingeniería química Computer-aided Chemical Engineering www. 24/11/2013
2 PyConES 24/11/ Esquema Presentación Por qué Python? Resolución de ecuaciones en derivadas parciales Resolución de problemas de optimización Diseño de reactores en la industria de procesos químicos
3 PyConES 24/11/ Presentación Asociación formada por ingenieros químicos (profesionales, docentes y estudiantes) que pretende estimular las posibilidades de software en la ingeniería de procesos. Promueve las ventajas de las nuevas herramientas de software libre disponibles y fomenta su uso en la universidad e industria. Especialización en simulación y programación matemática (optimización).
4 PyConES 24/11/ Quiénes somos?
5 PyConES 24/11/ Actividades Formación Webinars Desarrollo Podcast!
6 PyConES 24/11/ Por qué Python? Python es lenguaje de alto nivel conveniente para un desarrollo rápido de código Su filosofía de diseño enfatiza la simplicidad y legibilidad de código Posee núcleo de lenguaje relativamente pequeño con el apoyo de magníficas librerías (NumPy, SciPy, scikit-learn pandas, matplotlib etc.) Es lenguaje multiparadigma, en el que varios estilos de programación son compatibles (imperativo, orientado a objetos, funcional) Lenguaje de programación interpretado en lugar de compilado. Es multiplataforma (Windows, MacOS y Linux) Software libre
7 PyConES 24/11/ As a simulation engineer in 2013, you really are standing on the shoulders of giants Abhishek Chintagunta CFD and Coffee (blog) Franz Navarro Ingeniero Químico Universidad de Alicante 1. Resolución de EDPs con Python
8 PyConES 24/11/ Resolución de EDP Las ecuaciones en derivadas parciales (EDP) permiten modelar fenómenos físicos como la propagación del sonido o del calor, la electrostática, la electrodinámica, la dinámica de fluidos, etc. Existen numerosos paquetes de software para resolver EDP, usando una variedad de lenguajes y métodos numéricos. Comerciales: COMSOL Multiphysics, ANSYS, Abaqus... Free/Open source: OpenFOAM, FreeFem++, Elmer, FiPy Problema simple de difusión resuelto en Python (FiPy) con menos de 40 líneas de código
9 PyConES 24/11/ CFD with Python: 12 steps to Navier Stokes Modulo interactivo online de CFD con Python impartido por la profesora Lorena A. Barba (Boston University) Diseñado para principiantes en programación y en CFD Resolución numérica mediante el método de las diferencias finitas Videos explicativos de sus clases también online Material y código libre y gratuito Lorena A. Barba lorenabarba.com
10 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes Pasos 1-4 son en una dimensión: Convección lineal Convección no lineal Difusión Ecuación de Burgers Pasos 5-10 pasan a 2D: Convección lineal Convección no lineal Difusión Ecuación de Burgers Ecuación de Laplace Ecuación de Poisson Pasos resuelve la ecuación de Navier-Stokes en 2D: Flujo en una cavidad (a) Flujo en un canal (b) (a) (b) +Introducción a Python, Numpy, SimPy, matplotlib y Numba
11 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes Paso 7: Difusión en 2D Reorganizando la ecuación discretizada:
12 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes Paso 7: Difusión en 2D Reorganizando la ecuación discretizada:
13 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes Paso 7: Difusión en 2D Condición CFL para asegurar la convergencia, se trabaja con ella en el Paso 3.
14 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes Paso 7: Difusión en 2D
15 PyConES 24/11/ CFD with Python: Lorena A. Barba 12 steps to Navier Stokes
16 PyConES 24/11/ FiPy FiPy resuelve EDPs mediante el método de los volúmenes finitos (FVM) con programación orientada a objetos y estando escrito en Python. Mayor grado de abstracción (integradas funciones de mallado de Gmesh) Framework maduro y bien documentado (permite Python 3.x) 100% gratuita y de dominio de público (open source) Utilizado en investigación y academia (especializado en ciencia de los materiales) Desarrollado en centros de investigación norteamiercanos (CTCMS y NIST). ctcms.nist.gov/fipy/
17 PyConES 24/11/ FiPy Resolución de ecuaciones con la siguiente forma: transitorio difusión convección fuente (source) Siendo ρ, u, Γ i los coeficientes de sus respectivos términos Permite acoplar fenómenos multifísicos de forma sencilla. ctcms.nist.gov/fipy/
18 PyConES 24/11/ FiPy: Ejemplo Ejemplo de resolución de un problema de difusión en estado estacionario pero con una geometría circular y FiPy. P3 Mallado C1 C2 P2 P1 P4 C4 C3 P5
19 PyConES 24/11/ FiPy: Ejemplo Representar la malla Usando la malla construimos las variables de las celdas Coeficiente de difusión Condiciones de contorno Resolución Representación (ejecutado en un script)
20 Jorge Bernabé Ingeniero Químico Universidad de Alicante 2. Programación matemática (optimización)
21 Programación matemática Optimización: por qué es importante? Mejorar calidad de un producto Aumentar beneficios Reducir riesgos ambientales Reducir costes de producción Interés empresarial IQ: - selección de equipos y recursos - gestión logística (cc) Sam Derbyshire
22 Optimización con Python en IQ Optimización matemática min f(x) s.a g(x) = 0 h(x) 0 LP, NLP, MILP, MINLP FO (c) Sriram Sankaranarayanan
23 AML (Algebraic modelling languages) Software propietario: AMPL (www.ampl.com) Lenguaje sencillo, pero complicado interactuar GLPK Alternativa libre a AMPL para LP y MILP GAMS (www.gams.com) Se comunica con solvers incluso para resolver MINP AIMMS (www.aiims.com) Diseñado para resolver problemas de optimización a gran escala y programación de actividades.
24 Optimización en Python Free/Open source: CVXOPT M.Andersen, J.Dahl, L.Vandenberghe Notación matricial. Optimización convexa PuLP Trabaja con lenguaje Python. Muy buenos resultados para LP o MIP. No resuelve NLP OpenOpt Más de 30 solvers para solucionar el modelado, incluyendo NLP Pyomo Coopr. (Sandia National Laboratories, USA) Permite la formulación de modelos algebraicos en el lenguaje de programación en Python. COmmon Optimization Python Repository
25 Por qué Pyomo? Se comunica directamente los principales solvers de AMPL, GLPK, Gurobi, CPLEX, CBC y PICO. Programación en Python tipo AMPL/GAMS Open source (COIN-OR) Pyomo (Coopr) es un paquete gratuito con licencia BSD, maduro y bien documentado (en migración a Python 3.x) Fácil instalación pip install coopr Adaptabilidad a modelado de problemas de IQ coin-or.org
26 Problema I: Logística empresarial Problema clásico en optimización LP Se puede resolver con cualquier herramienta Fundamental en el mundo empresarial Minimización de coste en transporte
27 Problema I: Logística empresarial
28 Problema I: Logística empresarial Plantas Mercados producción máxima demanda mínima Coste de transporte por unidad: Alicante Castellón Vitoria Cádiz Cáceres PRODUCCIÓN Madrid Barcelona Almería La Coruña DEMANDA
29 Problema I: Logística empresarial Sentencia para importar pyomo Sentencia para definir el modelo, abstracto o concreto
30 Problema I: Logística empresarial Definición de sets series de datos Definición de parámetros valores de los sets Definición de variables Sus valores en archivo.dat
31 Problema I: Logística empresarial Definición de ecuaciones: def Nombre_Ecuación (modelo y variables de las que depende) return: se escribe la ecuación Modelo.nombre: va a mostrar el valor de la ecuación al ejecutar el programa
32 Problema I: Logística empresarial Definición de restricciones: Constraint (indica que la palabra mercado se refiere a model.mercados)
33 Problema I: Logística empresarial
34 Problema I: Logística empresarial pyomo archivo.py datos.dat
35 Problema I: Logística empresarial
36 Transporte Solución óptima Todas las posibilidades (superestructura)
37 Problema II: Selección de equipos A B Superestructura (incluye todas las posibilidades) C
38 Problema II: Selección de equipos Aumento beneficio Disminución beneficio A B C Coste uso reactor Objetivo: Seleccionar la óptima distribución de reactores y bypass que aumentan el beneficio
39 Problema II: Selección de equipos AS = AE exp( τ ) BS = ( AEτ + BE ) exp( τ Cf + CV1 AE Si Coste = 1 Cf 2 + CV2 AE Si ) 0 AE 7 7 AE 10 τ (h) Cf1 (um/h) Cf2 (um/h) CV1 (um/kmol) CV2 (um/kmol) Reactor Reactor Reactor Reactor Reactor Reactor Reactor Reactor
40 Problema II: Selección de equipos Toma de decisiones MILP Resolución de la parte disyuntiva del problema mediante la reformulación de la envolvente convexa Disgregación de variables YRi YRi Wi,c1 Wi,c2 Ci = Cf i + CVi E i, A C i = Cf i + CVi E i, A C i = 0 S = 0 0 E 7 7 E 10 i, A i, A i, j y i = wi,c1 + wi,c 2
41 Problema II: Selección de equipos Disyunciones para el bypass by b BY 10 b, j by b BY = b, j 0 Balances de materia F j = E1, j + E 2, j + BY1, j y1 + y2 + by1 = 1
42 Problema II: Selección de equipos
43 Problema II: Selección de equipos within = NonNegativeReals Valores reales no negativos within = Binary Valores binarios
44 Problema II: Selección de equipos Por defecto, pyomo, minimiza la FO. Para maximizar, se escribe sense = maximize
45 Problema II: Selección de equipos
46 Problema II: Selección de equipos
47 Problema II: Selección de equipos
48 Problema II: Selección de equipos
49 Problema II: Selección de equipos
50 Problema II: Selección de equipos Solución óptima: Superestructura:
51 Isaías Cuenca Ingeniero Químico Universidad de Alicante 3. Diseño de reactores en la industria de procesos químicos
52 3.1. Reactor Flujo Pistón Craqueo térmico del etano. Tubos horizontales en el interior de un horno de llama. Quemadores a ambos lados de los tubos. Se considera la variación de presión a lo largo del reactor. Sistema ODE, 8 compuestos, T y P
53 3.1. Reactor Flujo Pistón
54 3.1. Reactor Flujo Pistón
55 3.1. Reactor Flujo Pistón
56 3.1. Reactor Flujo Pistón
57 3. 2. Reactor Continuo Tanque Agitado Propilenglicol (IUPAC: propano-1,2-diol) Compuesto orgánico inodoro, incoloro e insípido Líquido aceitoso claro, higroscópico y miscible con agua, acetona, y cloroformo. Utilizado en una amplia gama de productos de consumo, incluidos los alimentos, piensos, cosméticos y productos farmacéuticos, así como las aplicaciones industriales. Producción mundial: t /año (Fuente: Ullmanns s) Producido típicamente en dos calidades Calidad industrial Calidad USP/EP
58 3. 2. Reactor Continuo Tanque Agitado
59 3. 2. Reactor Continuo Tanque Agitado Variable Descripción Valor FA0 Flujo molar de entrada de óxido de propileno (kmol/h) 36.3 FB0 Flujo molar de entrada de agua y ácido sulfúrico (kmol/h) FM0 Flujo molar de entrada de metanol (kmol/h) 45.4 Q0 Caudal volumétrico de entrada (m3/h) 12.5
60 3. 2. Reactor Continuo Tanque Agitado Balance de Materia Balance de Energía Estado estacionario Arranque del reactor
61 3. 2. Reactor Continuo Tanque Agitado
62 La Industria Química en España 13% PIB Industrial 5º Europa y 8º Mundial 2º mayor exportación solo superado por la automoción Fuente: American Institute of Chemical Engineers (AICHE) 2012
63 La Industria Química en España empleo Ocupación especializada y cualificada Una de ellas, técnico en química computacional
64 Conclusiones Python junto a sus librerías permite la resolución de problemas típicos de ingeniería y todo ello en un mismo lenguaje-entorno. Python permite centrarse en el algoritmo y no en la sintaxis del lenguaje. Es la navaja suiza de los lenguajes permitiendo pasar a C en cualquier momento que se necesite. Es multiplataforma, libre y gratuito por lo que su adopción en universidades y empresa es sencilla Si se quiere una herramienta lo más compatible con MATLAB, Octave UPM es otra opción interesante pero mantendrá sus mismas capacidades (y limitaciones) técnicas. Python es posiblemente la mejor opción como primer lenguaje de programación en el ámbito de programación científica.
65 Muchas gracias! CAChemEorg CAChemE mail
Realización de un código de software libre para la simulación numérica en electromagnetismo
Realización de un código de software libre para la simulación numérica en electromagnetismo A. Bermúdez (IP), A. Ferreiro, D. Gómez, M.C. Muñiz, F. Pena, P. Salgado 19 de septiembre de 2011 1 / 26 El punto
Lenguaje GAMS. José María Ferrer Caja Universidad Pontificia Comillas ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INDUSTRIAL DEPARTAMENTO DE ORGANIZACIÓN
Lenguaje GAMS José María Ferrer Caja Universidad Pontificia Comillas Lenguaje GAMS- 0 Alternativas para desarrollar modelos Lenguajes de programación de propósito general C, C++, Java, Visual Basic, FORTRAN
Resumen. Felipe de Jesús Castro Hernández y Ricardo Abdelarrague Serrano
10 Jornadas Internacionales de gvsig Estrategias del Siglo XXI 3 5 de Diciembre del 2014 Complejo Deportivo - Cultural La Petxina Valencia, España Diseño de rutas de distribución de Empresas de productos
Introducción a Modelado con Electromagnetismo Taller de AC/DC. Pablo Vallejos pablo@comsol.com +1-781-273-3322
Introducción a Modelado con Electromagnetismo Taller de AC/DC Pablo Vallejos pablo@comsol.com +1-781-273-3322 Agenda COMSOL Multiphysics Simulación con AC/DC Capacidades Aplicaciones e interfaces Simulación
Prácticas en Empresa Verano 2015
Prácticas en Empresa Verano 2015 EMPRESA: CO2 SMART TECH, S.A. (www.co2st.es) TAREA: Desarrollar los algoritmos matemáticos predictivos y estadísticos para el tratamiento de datos de instalaciones consumidoras
Mejores Prácticas para Interacción Fluido Estructura. Carlos Franco Robledo Grupo SSC carlos.franco@grupossc.com
Mejores Prácticas para Interacción Fluido Estructura Carlos Franco Robledo Grupo SSC carlos.franco@grupossc.com Agenda Introducción FSI Mejores Prácticas para Análisis 1-way Esfuerzos-Térmicos Esfuerzos
Métodos Numéricos UVG-mm2010, mm2022. Laboratorio 8 Semana: del 15 al 19 de Marzo. 1. Introducción
Métodos Numéricos UVG-mm21, mm222 Laboratorio 8 Semana: del 15 al 19 de Marzo Instrucciones: En sus cursos de matemática se le ha recomendado que ataque los problemas desde varios enfoques: analítico,
Máster en Ingeniería de Vehículos de Competición MVC 011 - AERODINÁMICA Y CFD II Asignatura: AERODINÁMICA Y CFD II Créditos: 6 Curso: 1º Semestre: 2º Profesor: Timoteo Briet Blanes / Enrique Scalabroni
GAMS (General Algebraic Modeling System) GAMS Creado en 1987. Entorno de desarrollo GAMSIDE Manual de usuario Help-Docs-gams-gamsusersguide.pdf Manuales de optimizadores Help-Docs-solvers Modelo: nombre_fichero.gms
Estrategia de Refinamientos Automáticos hp Integrada con un Resolvedor de Dos Mallas: Aplicaciones al Electromagnetismo dzubiaur@yahoo.es Supervisores: L. Demkowicz, C. Torres-Verdin, L. Tabarovski Otros
SOFTWARE LIBRE EN LA EDUCACIÓN MATEMÁTICA: LA TECNOLOGÍA AL ALCANCE DE TODOS
SOFTWARE LIBRE EN LA EDUCACIÓN MATEMÁTICA: LA TECNOLOGÍA AL ALCANCE DE TODOS POSTER Andrés Felipe Rubio Rojas Estudiante de séptimo semestre de Licenciatura en Matemáticas y Estadística UPTC Facultad Seccional
Ciencia Abierta y Software Libre
Software Libre en el aprendizaje 19 de noviembre de 2008 Vamos a ver... Software en las aulas 1 Software en las aulas 2 3 Sistemas operativos Aula de informática (sótano) Windows Algunas máquinas con doble
EVALUACIÓN DE HERRAMIENTAS DE SOFTWARE LIBRE PARA CÁLCULO NUMÉRICO
EVALUACIÓN DE HERRAMIENTAS DE SOFTWARE LIBRE PARA CÁLCULO NUMÉRICO C. MEDRANO 1, J.M. VALIENTE 2, I. PLAZA 1 Y P. RAMOS 2 1 EduQTech, Dpto Ingeniería Electrónica y Comunicaciones, EUPT, Universidad de
Sesión 1. Introducción a Elmer
Sesión 1. Introducción a Elmer M. Meis 1,2 y F. Varas 1,3 1 Universidad de Vigo, 2 Vicus Desarrollos Tecnológicos, S.A., 3 Universidad Politécnica de Madrid Introducción a la Simulación Numérica Multifísica
Notas sobre el programa AMPL (Notas 1: dirigidas a los alumnos de 1º)
Notas sobre el programa AMPL (Notas 1: dirigidas a los alumnos de 1º) Índice Parte I: Introducción. 1. Introducción. 2. Elementos fundamentales. 3. Instalación de AMPL. 4. Algunos detalles sobre el editor
REACTORES QUÍMICOS - PROBLEMAS RCTA 36-46
REACTORES QUÍMICOS - PROBLEMAS RCTA 6-46 Curso 011-01 6.- Para llevar a cabo la descomposición del acetaldehído en fase gas, una reacción irreversible y de segundo orden respecto a este compuesto, se emplea
VENTAJAS DE LA SIMULACION CFD: HIDRODINAMICA DE UN HORNO REFORMADOR
UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA QUIMICA VENTAJAS DE LA SIMULACION CFD: HIDRODINAMICA DE UN HORNO REFORMADOR CESAR OSVALDO GOMEZ ALVARADO 2009 UNIVERSIDAD DE
APLICACIÓN DEL PROGRAMA COMSOL MULTIPHYSICS EN LA INGENIERÍA MECÁNICA
APLICACIÓN DEL PROGRAMA COMSOL MULTIPHYSICS EN LA INGENIERÍA MECÁNICA RICHARD JAVIER MONTES ALZATE UNIVERSIDAD TECNOLÓGICA DE PEREIRA FACULTAD DE INGENIERÍA MECÁNICA PEREIRA 2015 APLICACIÓN DEL PROGRAMA

References: Resolución 
 Resolución 
 Resolución 
 Resolución 
 Resolución 
 Resolución 
 resolución 
 Resolución 
 Resolución 
 resolución