DEPARTAMENTO DE INGENIERÍA QUÍMICA Y BIOTECNOLOGÍA FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS UNIVERSIDAD DE CHILE

IQ4101, Métodos Matemáticos para Procesos
Actividad 5: Sistemas No lineales - Semestre Otoño 2013
Profesor: J. Cristian Salgado - jsalgado@ing.uchile.cl Profesores Auxiliares: Ximena Barrios - Guillermo Valenzuela V . Jueves 2 de Mayo 2013

Resultado de aprendizaje: Modalidad: Plazo de entrega: Consultas:

Comprender, implementar y aplicar varios algoritmos para resolver sistemas de ecuaciones no lineales. Grupos de 2 personas. Viernes 10 de Mayo 2012 vía u-cursos. Libres.

1

Resultado de aprendizaje

Los alumnos comprenden, implementan y aplican varios algoritmos para resolver sistemas de ecuaciones no lineales. Mejoran su conocimiento del lenguaje de programación elegido.

2

Descripción de la actividad

Los alumnos deberán implementar computacionalmente el método de Newton con Jacobiano analítico y Jacobiano estimado mediante el método de Broyden. El desempeño del método será estudiado en base al problema que se describe en la sección 2.1.

2.1

Caso de estudio

Considere un CSTR de 1000 L donde se desarrolla la siguiente reacción:

A+B C+B A

C D E

rR1 = k1 CA CB rR2 = k2 CB CC rR3 = k3 CA

k1 (298 K) = 2.1 × 10−2 mol−1 s−1 k2 (298 K) = 1.5 × 10−2 mol−1 s−1 k3 (298 K) = 1.2 × 10−4 s−1

La alimentación presenta un flujo volumétrico de 0.1 L s−1 y contiene A y B disueltos en un solvente, con CA0 = 0.5 M y una relación γ = CB0 /CA0 . Asuma que el reactor opera de manera isotérmica y desprecie cualquier cambio en el volumen debido a la reacción. Conteste las siguientes preguntas: 1

Se recomienda Verbose=1 para mostrar resultados intermedios y Verbose= 0 para modo silencioso. N.3 Salida gráfica Su programa deberá generar. errores. La ejecución completa de la tarea deberá estar controlada por un programa principal que efectúe los cálculos.2 Implementación Su implementación deberá permitir elegir entre la utilización del Jacobiano analítico o la estimación mediante Broyden. P.(a) Obtenga el modelo dinámico del sistema. vector de errores. Gráfico con la trayectoria de la norma de la función a lo largo de las iteraciones. 2. etc) mientras se encuentra en funcionamiento o si prefiere que el método sea silencioso. Algunos parámetros podrían ser los siguientes: % % % % % P. Verbose) P es una estructura que contiene los parámetros de los algoritmos. al menos. características de las trayectorias. lleve a cabo las comparaciones y genere los gráficos. los siguientes gráficos (para un ejemplo) 1. convergencia. 3. Verbose Su función deberá retornar vectores con los valores del vector x[k] . x0. 2 .tol_rel = 1e-4 % Tolerancia relativa P. 0: cero encontrado. 1: proceso detenido por máximo número de iteraciones.e. (e) Discuta el efecto de las condiciones iniciales en el desempeño de sus algoritmos. que Verbose no controla la salida final del método (vector x[k] . E_a_k.g. 2: derivada cercana a cero en iteración k.jacobiano = @jac_de_f % Funcion que devuelve el Jacobiano analitico. y el valor de la función f ( x ) evaluada en x que indique (con un código numérico) el estatus final de la operación. Además. P.g. f_k. etc. (c) Discuta el gráfico obtenido en (b) desde el punto de vista del diseño de la operación. Gráfico con las concentraciones de las especias en función de γ. e_a_k. (b) Grafique la conversión de A en función de γ considerando que el reactor opera en estado estacionario. Gráfico de la conversión de A con respecto a γ. % Ejemplo de llamada % [xk.tol_abs = 1e-6 % Tolerancia absoluta P. 2. 2. número de iteraciones. status] = getCero(@f. Separe su implementación en cuantas funciones estime necesario. deberá entregar un escalar status a . los errores aproximado absolutos Ea y relativos [k] para cada iteración. etc). e. la función y el Jacobiano deben ser un parámetro y NO pueden estar “hardcoded” en el código del método. (d) ¿Qué efecto tiene en el desempeño del algoritmo de Newton la aproximación de Broyden? Considere variables como tiempo de cálculo. Note que todos los métodos deben ser llamados por una función principal la que seleccionará el método en base a sus argumentos.B.broyden = 1 % Si es 1 se utiliza la aproximacion de Broyden. 3: etc.k_max = 1000 % Numero de iteraciones maximas P. e. ¿Qué datos necesita para resolverlo?. cualquier otro caso se ← usa el Jacobiano analitico. Note bien que sus métodos deben ser generales i. es una parámetro de control que permite ajustar si se requiere que el método despliegue información intermedia en cada iteración (iteraciones restantes.

Todos los archivos de la actividad deberán ser entregados almacenados en un archivo comprimido según el esquema tar.g.4 Salida a consola Tal como en las actividades anteriores su programa deberá entregar en consola información relevante a su operación ( Verbose=1 ). (d) Instrucciones detalladas para la ejecución i. Los comentarios son obligatorios. etc. Una vez finalizado el programa deberá informar que criterio de término se cumplió.tar. El código de sus programas deberá ser legible y ordenado según los lineamientos generales vistos en cátedra.2. salida. • Valor del factor de actualización. La utilización de constantes numéricas en el código. (b) Nombre y e-mail de los integrantes del grupo. ejemplo de ejecución (Si el programa no se puede ejecutar equivale a la nota mínima). • Parámetros propios de cada método. 3 Condiciones de entrega La actividad deberá ser entregada vía u-cursos sujeta a las siguientes consideraciones: 1.bz2 y debidamente identificado. 2. versión. Es obligatorio adjuntar un archivo README. • Solución actual. 5. parámetros de entrada. (f) Ejemplo de llamada al programa. • Valor de la función en la solución actual. HEADER en cada función indicando. así como el uso de variables globales está prohibido.g.e. Si se entrega una función se deberá incluir una llamada estándar a la función. 6. 3 . derivada cercana a cero. • Número de iteraciones/número de iteraciones máximas.TXT que contenga: (a) Identificación de la actividad. (g) Limitaciones en la ejecución y límites para los parámetros de entrada. propósito.g. (c) Descripción breve de cada archivo (datos y programas). (e) Ejemplo de la estructura de parámetros. En caso de existir problemas (e.) el programa deberá informar al usuario. 4. Un reporte breve en formato PDF con una extensión máxima de 1 página donde se contesten las preguntas específicas de la actividad. IQ4101_act1_saavedra_canales. máximo número de iteraciones.bz2 3. e. No olvide incluir un autores. e.

salida a consola. (d) Presentación de resultados: tablas. orden. (c) Funcionamiento general: protección contra errores. etc. gráficos. etc. (b) Análisis de los resultados. (e) Calidad del código: legibilidad. (f) Calidad de los comentarios.4 Evaluación Se evaluarán los siguientes aspectos. 2. funciones hardcoded. 1. etc. (b) Cumplimiento de los objetivos específicos indicados en la actividad. constantes ocultas en el código. Reporte escrito (50%) (a) Cumplimento de las actividades planteadas en el enunciado. Programa (50%) (a) Implementación correcta del(os) algoritmo(s). redacción y brevedad. (c) Ortografía. utilización de constantes. 4 .

Sign up to vote on this title
UsefulNot useful