Modelado y simulación en Ingeniería Química. Manuel … · Unidad 3 Unidad 3 . Modelado y...

57
Modelado y simulación en Ingeniería Química. Manuel Rodríguez 1

Transcript of Modelado y simulación en Ingeniería Química. Manuel … · Unidad 3 Unidad 3 . Modelado y...

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

1

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

2

Grafos

Un grafo G es un conjunto de vértices (V) y un conjunto de arcos que unen los vértices.

1

2

3

4 5

Digrafo: es un grafo en el cual los arcos tienen una dirección. La dirección que marcan indica el flujo de una cantidad.

1

2

3

4 5

3. Estrategia secuencial-modular

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

3

Matriz de adyacencia o estructural 1 2 3 4 5

1 1

2 1

3 1 1

4 1 1 1 1

5 1 1

1

2

3

4 5

1

2

3

4 5

1 2 3 4 5

1 1

2

3 1 1

4 1 1

5

Matriz simétrica

v. o

rige

n

v. destino

a b c d e

1 -1

2 +1

3 -1 -1

4 +1 -1 +1 -1

5 +1 +1

vért

ices

arcos

a

b c

d

e

Matriz signos

vértices

vért

ices

Indica que vértices están unidos

Negativo: salida Positivo: llegada

Son valores lógicos. Booleanos.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

4

Identificación de bucles

Sobre la matriz de adyacencia

1

2

3

4 5

1 2 3 4 5

1 1 1

2 1

3 1 1

4 1

5 1

v. o

rige

n

v. destino

A= A2=

1 2 3 4 5

1 1 1

2 1 1

3 1 1

4 1 1

5 1

A3=

1 2 3 4 5

1 1 1 1

2 1 1

3 1 1 1

4 1 1

5 1 1

A4=

1 2 3 4 5

1 1 1 1

2 1 1 1

3 1 1 1 1

4 1 1 1

5 1 1

conectados en dos pasos

conectados en tres pasos conectados en cuatro pasos

bucles

bucles

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

5

Poner el digrafo correspondiente

1 2 3 4

5 6

7

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

6

Diagrama de flujo

¿Hay bucles en el diagrama?¿Cuántos?¿Se pueden identificar de forma automática? ¿Cuál es el mejor orden para resolverlos? ¿Cómo resolver los subsistemas que forman parte de un bucle?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

7

Particionado (y ordenación)

El particionado consiste en la identificación de los subsistemas que están interrelacionados. Es decir, que constituyen un bucle y que hay que tratar en su conjunto a la hora de resolver el diagrama de flujo.

Algoritmo de Sargent y Westerberg

1)  Seleccionar un vértice (de forma arbitraria)

2)  Trazar un camino desde el vértice siguiendo un arco no explorado (formando un conjunto con los vértices que aparecen) hasta que:

a)  Se encuentra un vértice que no tiene salida (o no va a otra unidad). Borrar el vértice (y sus arcos incidentes) y ponerlo en cabeza de una lista. Continuar desde el vértice anterior.

b)  Se encuentra un vértice que ya está en el conjunto de vértices (bucle). Agrupar todos los vértices del bucle en un único conjunto.

3)  Si queda algún vértice repetir otra vez desde el paso uno hasta que no quede ningún vértice.

Otros algoritmos de particionado que se basan en la matriz de adyacencias: algoritmo de Norman y el algoritmo de Keham y Shacham

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

8

Ejemplo A

B C D

E F G

Empieza por C

C DFG (sin salida) Lista: G

A

B C D

E F

Sigue con F (sin salida) Lista: F G

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

9

A

B C D

E

Sigue con D (sin salida) Lista: D F G

Sigue con CE (sin salida)

A

B C

E

Lista: E D F G

A

B C

Sigue con C (sin salida)

y ya igual A y B

Lista: C E D F G

Lista: A B C E D F G Las listas NO son únicas

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

10

Ejemplo A

B C D

E F

Empieza por C

C DF (sin salida) Lista:F

A

B C D

E

C DABC (agrupo en un BUCLE)

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

11

E

CDAB CDABE (sin salida)

Lista: E F

CDAB (sin salida) Lista: [CDAB ] E F

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

12

Ejercicio: Particionar el siguiente diagrama de flujo.

I

IJKLMNL

IJK[LMN]

IJK[LMN]OPK

IJ[KLMNOP]

I

F

FGCDEABC

FG[CDEAB]

FG[CDEAB]F

[FGCDEAB]

[JKLMNOPSQR]

H

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

13

Ejercicio: Particionar el siguiente diagrama de flujo.

1 2 3 4 5 6 7 8 9 10 11 12

1 2 3 6 912 4 57 81011

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

14

Ejercicio: Particionar el siguiente diagrama de flujo.

React. CloracionColumna Resto

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

15

Procedimiento de resolución secuencial modular

¿Qué ocurre si hay un reciclo?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

16

Selección de variables de corte. (Rasgado)

Para resolver un grupo de unidades que están interconectadas con algún bucle es necesario dar un valor inicial a una corriente desconocida. Esa corriente es la corriente de rasgado y sobre ella es necesario iterar para obtener el valor final.

corriente de rasgado valor estimado valor calculado

¿Cómo seleccionar la mejor corriente de rasgado?

¿Cómo actualizar el valor estimado tras cada iteración para tener una rápida convergencia?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

17

Algoritmo de Barkeley & Motard (número mínimo de corrientes)

1)  Realizar el grafo dual. Las corrientes son nodos y los equipos que las unen son arcos.

2)  Se recorre el grafo. Si una corriente tiene sólo una entrada es eliminada del grafo (y sustituida por la entrada).

3)  Cuando se llega a un autobucle (autociclo) ésta es una corriente de corte. Se elimina del grafo y se vuelve al punto 2) hasta eliminar el grafo.

NOTA: Si se llega a una situación donde el algoritmo no puede avanzar se escoge una variable de corte y se procede.

Criterios para escoger variables de corte:

•  Conocer de forma aproximada el valor que va a tener en la solución.

•  El número de variables que tenga dicha corriente.

•  El número de equipos a los que entra una corriente

•  etc,...

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

18

Ejemplo

2 3 6 9

S1

S2 S6

S3 S4 S5

S1 S2

S3 S4 S5

S6

2 2

3

6

6

6

6

9

9

Grafo dual de corrientes

Las corrientes S1, S4 y S6 sólo tienen una entrada, luego son eliminadas del grafo.

Proceso

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

19

S2

S3 S5

2 2

3

6

6

6

6

9

9

S2

S3 S5

S5 es un autociclo, se elimina, junto con las corrientes que entran y salen de el.

S5 es la primera corriente de rasgado.

S2 S3 Se escoge según algún criterio una de las dos como corriente de corte.

Conjunto final:

{S5,S2}

S2

S2 S2 es la primera corriente de rasgado.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

20

Ejercicio. Seleccionar las corrientes de rasgado.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

21

K O

L M S

1 4

2

6

7

3

5

8 Grafo del proceso

1 8

2 7

3

5 6 4

K

K

S

S

OO

L

L M

ML

L Conjunto final:

{S1,S2}

¿Cuáles son las corrientes de corte?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

22

1)  Identificar los bucles presentes a)  Empezar por una unidad cualquiera hasta que aparezca una repetida b)  Cuando aparezca una repetida anotar las corrientes que conforman el bucle

hallado c)  Seguir por la corriente anterior a la corriente repetida hasta que vuelva a repetirse

otra unidad d)  Continuar hasta que se han recorrido todas las corrientes

2)  Escoger la familia de corrientes de rasgado que rompe los bucles una única vez. a)  Escoger un conjunto de corrientes que rasga todos los bucles una única vez b)  Seleccionar una unidad que tenga todas sus salidas en ese conjunto de corrientes c)  Reemplazar en ese conjunto de corrientes de rasgado las salidas de esa unidad por

sus entradas d)  Repetir hasta que no quedan conjuntos de rasgado nuevos por salir e)  Todos los conjuntos de rasgado que han aparecido son equivalentes. Como opción

definitiva escoger un conjunto con un menor número de corrientes.

Algoritmo de Upadyhe y Grens

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

23

Ejemplo

2 3 6 9

S1

S2 S6

S3 S4 S5

1)  Identificar los bucles presentes

2 3 6 9 2

2

6

S3 S4 S5 S1

2 3 6 9 2 S3 S4 S5 S1

2 3 6 9 2 S3 S4 S5 S1

6 S6

S6

S2

Bucle 1: {S3,S4,S5,S1}

Bucle 2: {S5,S6}

Bucle 3: {S3,S4, S2}

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

24

Corriente Bucle

S1 S2 S3 S4 S5 S6

1 X X X X

2 X X

3 X X X

{S3,S6} 2

{S1,S2,S6} 9

{S2,S5} 6

{S6,S4} 3

{S6,S3}

2) Escoger la familia de corrientes de rasgado que rompe los bucles una única vez.

El objetivo es rasgar todos los bucles para poder integrar, la idea es que si se escoge un conjunto que rasga más de una vez un bucle (ej: {S1,S2,S5}), esto implica que la convergencia va a ser más lenta.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

25

Ejercicio. Seleccionar las corrientes de rasgado.

K O

L M S

1 4

2

6

7

3

5

8

Grafo del proceso

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

26

K O

L M S

1 4

2

6

7

3

5

8

L M S K L 2 7 8 1

O 4

K5

S 6

L 3

Bucle 1: {2,7,8,1} Bucle 2: {1,4,5} Bucle 3: {8,1,4,6} Bucle 4: {2,3}

Corriente Bucle

1 2 3 4 5 6 7 8

1 X X X X

2 X X X

3 X X X X

3 X X

{1,3} {5,8,3} {5,6,7,3} {5,6,2} {4,2} K S M O

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

27

Realizar el particionado y seleccionar las corrientes de corte mediante los algoritmos de Barkeley y de Upadyhe del siguiente digrafo.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

28

Procedimiento de resolución secuencial modular (con reciclo)

¿Qué ocurre si hay un diseño de especificación?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

29

Diseño de especificación Controladores computacionales.

x1

¿x2? Reciclo

¿x1? y1 dado

Diseño de especificación

Unidad 1 Unidad 2 Unidad 3

Unidad 1 Unidad 2 Unidad 3

¿Alguna relación?

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

30

x1

x2,guess Reciclo

¿x1? y1 medido

Diseño de especificación

CC

Set Point

x2,calc

Iteración implícita

Iteración explícita

¿Pueden resolverse por el método de sustitución sucesiva?

Unidad 3

Unidad 3

Unidad 2

Unidad 2

Unidad 1

Unidad 1

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

31

x1

x2,guess

Reciclo

¿x1? y1 dado

Diseño de especificación

CC

Set Point

x2,calc

Iteración implícita

Iteración explícita

Conv

y1-ySP

x2,guess- x2,calc h(x)=0; h(x)=

Se puede iterar sobre cualquier corriente

Hay que iterar sobre una corriente determinada

Unidad 1

Unidad 1

Unidad 2

Unidad 2

Unidad 3

Unidad 3

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

32

“Realizar la simulación del sistema de forma gradual”. “Utilizar resultados de simulaciones anteriores (más sencillas) para las nuevas simulación”

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

33

Matriz de incidencia

Matriz (booleana) que indica qué variables aparecen en qué ecuaciones de un sistema.

Sistema de ecuaciones

Matriz de incidencia

4. Estrategia orientada a ecuaciones

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

34

Grafo bipartito Grafo en el que hay dos conjuntos de vértices y todos los arcos van de un vértice del primer conjunto a un vértice del segundo conjunto.

x2

x3

x1 ec1

ec2

ec3

Se emplea para identificar el conjunto de variables a especificar.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

35

ec1 ec2 ec3

¿Qué implica la presencia de bucles?

Asignación de variables de salida.

Qué variable se va a calcular con qué ecuación.

Dado un sistema cuadrado y un conjunto de salida asignado se puede obtener un grafo dirigido.

Se emplea para realizar el particionado del sistema.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

36

Grados de libertad e identificación de un conjunto de variables a especificar (variables de entrada).

Algoritmo de Christensen-Rudd

1)  Se emparejan las variables que sólo aparecen en una ecuación o las ecuaciones que sólo tienen una variable. Se eliminan los nodos (y sus arcos) del grafo.

2)  Se procede así sucesivamente hasta que quedan nodos sin arcos, estos son los grados de libertad.

3)  Si se llega a una situación donde todos los nodos tienen 2 ó más arcos, es necesario asignar (de forma arbitraria) una variable a una función y proceder a continuación como en el punto uno.

NOTA: Este algoritmo proporciona una secuencia de resolución acíclica, excepto en el caso del punto 3) que indica la presencia de bucles algebraicos. En ese caso las variables asignadas arbitrariamente serían variables de rasgado que permitirían resolver el sistema de forma acíclica. El uso de variables de rasgado en simulaciones orientados a ecuaciones está hoy en desuso (NO en simulación secuencial-modular!)

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

37

x1

x2

x3

x4

x5

x6

x7

x8

f5

f4

f3

f2

f1

La variable 7 sólo aparece en la ec 5

La variable 5 sólo aparece en la ec 4

La variable 3 sólo aparece en la ec 3

Ejemplo

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

38

x1

x2

x4

x6

x8

f2

f1 La variable 8 sólo aparece en la ec 2

La variable 6 sólo aparece en la ec 1

x1 x2 x4

Quedan como grados a especificar:

Nótese que cuando hay varias posibilidades el criterio ha sido arbitrario. Es mejor apoyarse en el conocimiento heurístico del modelo.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

39

Descomposición de Dulmage-Mendelsohn.

En lugar de actuar sobre el grafo bipartito actúa sobre la matriz de incidencia.

Descompone la matriz de incidencia en submatrices: • Una parte sobredeterminada: indica que hay más ecuaciones que incógnitas, puede ser alguna redundante,...

• Una parte cuadrada: tiene forma de matriz triangular inferior. El subsistema está correctamente especificado y por tanto no aporta grados de libertad.

• Una parte infradeterminada: indica que hay más variables que ecuaciones y que por tanto hay un número de grados de libertad que hay que especificar. La forma de proceder es seleccionar uno, volver a realizar la descomposición de D-M y escoger otra. Así hasta que se obtiene únicamente una matriz cuadrada triangular inferior por bloques.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

40

Algoritmo de asignación de variables de salida.

Algoritmo de Steward

• Selecciona la fila (columna) con menor número de incidencia.

• En esa fila (columna) selecciona la variable que pertenece a la columna (fila) con menor número de incidencia.

• Asigna esa variable (fila) a la ecuación (columna) y se eliminan de la matriz de incidencia.

Asigna la variable 2 con la ecuación 1

Asigna la variable 3 con la ecuación 2

Asigna la variable 1 con la ecuación 3

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

41

Algoritmo de Duff (es una implementación más eficiente y que permite detectar singularidad estructural)

• Va permutando las filas en función de que haya o no un cero en la diagonal de la matriz de incidencia.

• Intercambia las filas “sin perder” las asignaciones realizadas.

• En caso de no poder obtener una matriz transversal máxima (todos los elementos de la diagonal distintos de cero) el problema presenta una singularidad estructural.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

42

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

43

Singularidad estructural

Cuando no se puede obtener un conjunto de salida la matriz es estructuralmente singular.

Implica que hay un subconjunto de ecuaciones que tiene menos variables que el número de ecuaciones del subconjunto.

La especificación de las variables de entrada puede hacer que un sistema de ecuaciones sea o no estructuralmente singular.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

44

Particionado del sistema de ecuaciones y orden de resolución.

Algoritmo de Tarjan

ec1 ec2 ec3

Más eficiente que el de Sargent y Westerberg (también aplicable). Obtiene una matriz triangular inferior por bloques.

Cada bloque es un sistema de ecuaciones que hay que resolver de forma simultánea.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

45

f1 f5 f2 f3 f4

Matriz con variables de salida asignadas. Grafo dirigido

Ejemplo del algoritmo de particionado de Tarjan.

path stack lowlink f1 f2 f3 f5 f4

f1 f2 f3

f4 f5 5)

f1 f2 f3 f5 f4

f1 f2 f3

f4 f5 6)

Selecciona f4 y f5

f1 f2 f3

f1 f2 f3 7)

Selecciona f3

f1 f2 f1 f2

f1 f2 f1 f2

f1 f2 f1 f2

8)

9)

10)

Selecciona f1 y f2

f1 f1

f1 f2 f1 f2

f1 f2 f3

f1 f2 f3

f1 f2 f3 f5 f4

f1 f2 f3

f4 f5

1)

2)

3)

4)

Particionado y orden de resolución

[f2 f1] f3 [f4 f5]

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

46

f1 f5 f2 f3 f4 f6

Realizar el particionado del siguiente sistema mediante el algoritmo de Tarjan

x x

x x

x x x

x

x x

x2 x1 x3 x4 x5

f2

f1

f3

f4

f5

Realizar el particionado del siguiente sistema mediante el algoritmo de Tarjan y Duff

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

47

x x

x x x

x

x x

x x

f2

f1

f3

f4

f5

x x

x x x

x

x x

x x

f2

f1

f3

f4

f5

x x

x x

x x x

x

x x

f2

f1

f3

f4

f5

x x

x x x

x x

x

x x

f2

f1

f3

f4

f5

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

48

f1 f5 f2 f3 f4 f6

f4 f5 [f1 f2 f3 f6]

f1 f2 f3 f4 f5

f5 f4 f3 f2 f1

f1 f2 f3 f6

f6 f3 f2 f1

f1 f2 f3 f6 f6 f3 f2 f1

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

49

Ejemplo: cambiador contracorriente.

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

50

Matriz de incidencia

Pasos: 1.  Asignar variables de entrada (alg. Christensen-Rudd) 2.  Asignar conjunto de salida (alg. Duff) 3.  Particionar y definir orden de resolución (alg. Tarjan)

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

51

f1

f2

f3

f4

f5

f6

f7

k

Q

A

U

F1

F2

F3

F4

T1

T2

T3

T4

dT

A,f5 U,f7 F4,f2;F2,f1;dt,f6

f1

f2

f3

f4

f6

f7

k

Q

U

F1

F2

F3

F4

T1

T2

T3

T4

dT

f1

f2

f3

f4

f6

k

Q

F1

F2

F3

F4

T1

T2

T3

T4

dT

1.  Asignar variables de entrada (alg. Christensen-Rudd)

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

52

f3

f4

k

Q

F1

F3

T1

T2

T3

T4

T4,f4

f3

k

Q

F1

F3

T1

T2

T3

Q,f3

k

F1

F3

T1

T2

T3

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

53

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

54

x

x

x

x x

x x x x

x x

x x x x

x

x x x x

x

x x

x

x x

x x x x

x

x x x x

x x x x

x x

x

x x

x

x

x x x x

x x x x

x

x

x x

x x

x

x x x x

x x x x

x

x

x x

x x

f1

f2

f3

f4

f5

f6

f7

f3

f5

f1

f4

f2

f6

f7

f3

f5

f7

f4

f2

f6

f1

f3

f5

f7

f1

f2

f6

f4

f3

f5

f7

f1

f2

f4

f6

Q A U F2 F4 T4 dT

2. Asignar conjunto de salida (alg. Duff)

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

55

x

x x x x

x x x x

x

x

x x

x x

f3

f5

f7

f1

f2

f4

f6

Q A U F2 F4 T4 dT

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

56

3. Particionar y definir orden de resolución (alg. Tarjan)

x

x x x x

x x x x

x

x

x x

x x

f3

f5

f7

f1

f2

f4

f6

f1 f5 f2 f3 f4 f6 f7

f1 f5 f2 f3 f4 f6 f7

Modelado y simulación en Ingeniería Química. Manuel Rodríguez

57

Singularidad funcional Singularidad funcional implica que el Jacobiano es singular para cualquier valor de las variables, x. Ejemplo:

La causa de singularidad funcional suele ser un modelo mal construido o con un conjunto de especificaciones mal seleccionado:

• O es redundante lo que implica un número infinito de soluciones.

• O es inconsistente lo que implica que no existe una solución. En el ejemplo anterior

si k=-9 el sistema es redundante

si k<>-9 el sistema es inconsistente

Singularidad numérica (o local) El Jacobiano es singular sólo para algunos valores de las variables.