You are on page 1of 529

UNIVERSIDAD NACIONAL DE EDUCACIN A DISTANCIA

FACULTAD DE CIENCIAS


TESIS DOCTORAL



Modelado Orientado a Objetos y Simulacin
de Sistemas Hbridos en el mbito del
Control de Procesos Qumicos











Alfonso Urqua Moraleda
Madrid, 2000


TESIS DOCTORAL



Modelado Orientado a Objetos y Simulacin
de Sistemas Hbridos en el mbito del
Control de Procesos Qumicos






Autor: Alfonso Urqua Moraleda
Licenciado en Ciencias Fsicas por la Universidad
Complutense de Madrid

Director: Sebastin Dormido Bencomo
Catedrtico de Universidad
Dpto. Informtica y Automtica Industrial
Facultad de Ciencias, U.N.E.D.


Presentada en la
FACULTAD DE CIENCIAS
de la
UNIVERSIDAD NACIONAL DE EDUCACIN A DISTANCIA
para la obtencin
del grado de
Doctor en Ciencias Fsicas

Madrid, 2000
















A Silvia.





AGRADECIMIENTOS
Quisiera mostrar mi profunda gratitud a las siguientes personas:
Al profesor Sebastin Dormido Bencomo, por haber accedido a dirigirme la tesis, por
haberme apoyado para la obtencin de la beca predoctoral, por su realismo a la hora de
delimitar el tema y el alcance de la tesis, por su apoyo y tutela durante todos estos aos
de trabajo, por haber potenciado siempre mi formacin, por haber escuchado mis ideas
y respetado mi trabajo y por saber decir la palabra adecuada de nimo en los momentos
precisos.
Al profesor Antonio Hernndez Cachero, por haberme apoyado decisivamente cuando
ms lo necesitaba.
A Hilding Elmqvist y Dag Brck, por sus explicaciones acerca de los fundamentos,
funcionamiento y manejo de Dymola durante mi estancia en la empresa Dynasim AB
(Lund. Suecia) en el mes de Octubre de 1995.
A la profesora Vicenta Muoz Andrs, al profesor Manuel Criado Sancho y al profesor
Santos Galn Casado, por su infinita paciencia y por el tiempo que han dedicado
respondiendo a mis preguntas sobre el balance de energa.
A mi buen amigo el profesor Angel Prez de Madrid, por su apoyo incondicional y
ayuda en todo lo que de l he necesitado.
A mi antiguo compaero del 139, el profesor Jos Ramn lvarez Snchez, por la
inestimable ayuda que me prest durante mis primeros pasos en el Departamento de
Informtica y Automtica de la UNED.
Al profesor Luis Grau, por compartir conmigo su experiencia con ACSL, y a las
profesoras Carolina Maoso y Raquel Dormido, por los paseos que las he hecho dar a la
biblioteca.
A todos los miembros del Departamento de Informtica y Automtica de la Facultad de
Ciencias de la UNED. A la UNED, por haberme concedido la beca predoctoral que
disfrut de Enero de 1994 a Octubre de 1995 y la beca de estancias breves en el
extranjero que disfrut en Octubre de 1995.
Finalmente, quisiera expresar mi amor y gratitud a mis seres ms queridos: a Silvia, y a
mis padres, Marga y Alfonso, amigos con los que siempre he podido contar. A Silvia,
mi "compaera de viaje", por su apoyo incondicional y por su comprensin al
permitirme dedicar el tiempo libre de aos de nuestra vida en comn al desarrollo de la
tesis. Por todas esas excursiones, paseos, tardes de cine y salidas en bicicleta que hemos
pospuesto. Por su nimo da tras da. Por su aliento para que pusiera fin a la tesis. Por
sus valiosos comentarios acerca del formato y por su ayuda decisiva con las (ms de
250) figuras.

i
NDICE
LISTA DE FIGURAS ............................................................................................. VII
LISTA DE TABLAS ............................................................................................... XV
CAPTULO 1 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA
TESIS
1.1 Introduccin ................................................................................................... 1
1.2 El modelado y la simulacin en el mbito del control de procesos qumicos 1
1.3 El modelado orientado a objetos ................................................................... 3
1.4 Objetivos de la tesis ....................................................................................... 5
1.4.1 Diseo y programacin de un conjunto de libreras de procesos fsico-
qumicos bsicos: JARA v. 1.0 . ................................................................ 5
1.4.2 Descripcin orientada a objetos y simulacin de modelos dinmicos
hbridos con algunos de sus parmetros aleatorios .................................... 9
1.5 Estructura de la tesis ..................................................................................... 12
1.6 Conclusiones .................................................................................................. 13
CAPTULO 2 MODELADO ORIENTADO A OBJETOS Y SIMULACIN
DE SISTEMAS HBRIDOS
2.1 Introduccin ................................................................................................... 15
2.2 Conceptos bsicos acerca del modelado de sistemas dinmicos ................... 16
2.2.1 Modelado modular y jerrquico de sistemas dinmicos ............................. 16
2.2.2 Modelado orientado a objetos de sistemas dinmicos ................................ 18
2.2.3 Modularidad y causalidad computacional ................................................. 19
2.3 Algunos entornos de modelado orientado a objetos de propsito general ... 20
2.3.1 Introduccin ............................................................................................. 20
2.3.2 Dymodraw - Dymola - Dymosim - Dymoview .. ....................................... 22
2.3.3 Modelica . ................................................................................................. 27
2.3.4 EcosimPro . ............................................................................................... 30
2.4 Simulacin de modelos hbridos .................................................................... 32
2.4.1 Formalismo de los modelos hbridos de Omola ......................................... 33
2.4.2 El algoritmo de simulacin de modelos hbridos de Omola . ...................... 36
2.4.3 El problema de reinicio ............................................................................. 38
2.5 Tratamiento de los eventos . ........................................................................... 41
2.5.1 Funciones invariantes o de cruce . ............................................................. 41
2.5.2 Determinacin del instante de disparo de los eventos ................................ 43
2.5.3 Prolongacin de las ramas ........................................................................ 44
2.6 Solucin del problema de la asignacin de la causalidad computacional . ... 45
2.7 ndice del problema . ...................................................................................... 50
2.8 Lazos algebraicos. Tearing . ........................................................................... 52
ii NDICE


2.9 Problemas de ndice superior. Algoritmo de Pantelides ............................... 56
2.10 Eleccin de las variables de estado ................................................................ 69
2.11 Modelos de estructura variable ..................................................................... 73
2.12 Solucin de sistemas de ecuaciones algebraico-diferenciales (DAE) ............ 82
2.13 Simulacin de modelos aleatorios en el mbito de la ingeniera qumica .... 85
2.14 Conclusiones .................................................................................................. 87
DISEO Y PROGRAMACIN DE UN CONJUNTO DE LIBRERAS
DE PROCESOS FSICO-QUMICOS BSICOS EN EL ENTORNO
DEL CONTROL AUTOMTICO DE PROCESOS QUMICOS.
JARA v. 1.0
CAPTULO 3 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA
INTERFAZ
3.1 Introduccin ................................................................................................... 91
3.2 Reutilizacin de los modelos . ......................................................................... 91
3.3 La estrategia del modelado de JARA v. 1.0 .................................................. 98
3.4 Variables terminales, tipos de cuts y reglas de conexin de JARA v. 1.0. .. 99
3.4.1 Definicin de los tipos de cuts de JARA v. 1.0 . ........................................ 99
3.4.2 Reglas de conexin de los tipos de cuts de JARA v. 1.0 ............................ 104
3.5 Las interfaces de JARA v. 1.0 . ...................................................................... 110
3.6 Conclusiones .................................................................................................. 115
CAPTULO 4 EL VOLUMEN DE CONTROL
4.1 Introduccin ................................................................................................... 117
4.2 Aproximaciones del modelado de JARA v. 1.0.............................................. 118
4.3 Balances de materia y de energa .................................................................. 118
4.4 Ecuaciones de estado . .................................................................................... 120
4.5 Energa interna y entalpa ............................................................................. 122
4.6 Capacidad calorfica ...................................................................................... 125
4.7 Las ligaduras sobre el volumen . .................................................................... 127
4.8 Modelos de una mezcla homognea de gases semiperfectos de JARA
v. 1.0 ............................................................................................................... 134
4.9 Modelos de una mezcla lquida homognea de JARA v. 1.0 ........................ 136
4.10 Modelos de un slido homogneo de JARA v. 1.0 ........................................ 149
4.11 Conclusiones .................................................................................................. 150
CAPTULO 5 TRANSFERENCIA DE CALOR
5.1 Introduccin ................................................................................................... 151
5.2 Flujo de calor por conveccin en un fluido en contacto con un slido ......... 151
5.3 Flujo de calor por conduccin en slidos ...................................................... 154
NDICE iii


5.4 Condiciones de contorno para el flujo de calor de JARA v. 1.0 ................... 166
5.5 Ejemplo. Conduccin en el estacionario a travs de una pared mltiple
plana ............................................................................................................... 167
5.6 Ejemplo. Conduccin radial en el estacionario con conveccin con el
entorno ............................................................................................................ 175
5.7 Conclusiones .................................................................................................. 178
CAPTULO 6 FLUJO DE FLUIDOS
6.1 Introduccin ................................................................................................... 179
6.2 Condiciones de contorno para el flujo de materia en JARA v. 1.0 .............. 180
6.2.1 Modelos de la fuente de flujo de materia en JARA v. 1.0 .......................... 180
6.2.2 Modelo de la fuente de presin en JARA v. 1.0 . ....................................... 187
6.3 La aproximacin de mezcla agitada aplicada al flujo de fluidos . ................ 188
6.4 Modelo del retardo en el transporte .............................................................. 193
6.5 Modelos de bombas ideales de JARA v. 1.0................................................... 196
6.6 Algunos ejemplos sencillos de flujo de fluidos y de calor ............................. 202
6.7 Balance macroscpico de momento lineal aplicado a una conduccin ........ 223
6.8 Modelos del flujo convectivo de mezclas lquidas en JARA v. 1.0 ............... 226
6.8.1 Balance dinmico de momento lineal ........................................................ 226
6.8.2 Balance de momento lineal en estado estacionario. Vlvulas . ................... 231
6.8.3 Ejemplo. Dinmica de vaciado de un depsito . ......................................... 237
6.8.4 Ejemplo. Dos depsitos conectados mediante una tubera con vlvula ...... 243
6.9 Modelos del flujo convectivo de mezclas gaseosas de JARA v. 1.0. .............. 247
6.10 Modelo de las bifurcaciones en el flujo de JARA v. 1.0................................. 249
6.10.1 Modelo de la unin infinitesimal . ............................................................. 249
6.10.2 Modelo de la unin macroscpica para el flujo de mezclas lquidas .......... 254
6.10.3 Ejemplo. Dinmica de la presin en el punto de unin .............................. 258
6.10.4 Ejemplo. Conexin de tres depsitos de lquido en paralelo ...................... 261
6.10.5 Ejemplo. Control de nivel en un depsito de lquido ................................. 266
6.10.6 Modelo de la unin macroscpica para el flujo de mezclas gaseosas ......... 271
6.11 Condicin de igualdad de presiones de JARA v. 1.0 ..................................... 271
6.11.1 Igualdad de la presin de dos mezclas gaseosas ........................................ 271
6.11.2 Ejemplo. Modelo imponiendo la igualdad de la presin ............................ 277
6.11.3 Ejemplo. Modelo imponiendo la igualdad de la derivada de la presin . .... 280
6.11.4 Ejemplo. Modelo suponiendo que el flujo es proporcional a la diferencia
de presiones .............................................................................................. 284
6.11.5 Igualdad de la presin de dos mezclas lquidas . ........................................ 285
6.11.6 Ejemplo. Depsito con salidas a tres alturas .............................................. 285
6.12 Conclusiones .................................................................................................. 289
iv NDICE


CAPTULO 7 TRANSFERENCIA DE MATERIA
7.1 Introduccin ................................................................................................... 291
7.2 Difusin ordinaria en mezclas binarias de gases semiperfectos ................... 292
7.2.1 Hiptesis de modelado de JARA v. 1.0 ..................................................... 292
7.2.2 Descripcin del modelo de JARA v. 1.0 ................................................... 293
7.2.3 Ejemplo. Difusin de un gas binario en un tubo de Stefan ........................ 295
7.3 Cambios de fase: evaporacin y condensacin ............................................. 301
7.3.1 Modelo del transporte de materia y energa por cambio fase de JARA
v. 1.0 ........................................................................................................ 301
7.3.2 Modelo de la ebullicin de una mezcla lquida de JARA v. 1.0 ................. 303
7.3.3 Ejemplo. Modelo de un evaporador destinado a la generacin de vapor .... 307
7.3.4 Modelo de la condensacin de una mezcla gaseosa de JARA v. 1.0 .......... 310
7.4 Conclusiones .................................................................................................. 313
CAPTULO 8 REACCIONES QUMICAS
8.1 Introduccin ................................................................................................... 315
8.2 Alcance y aproximaciones del modelado de JARA v. 1.0 ............................. 315
8.3 Algunos conceptos bsicos ............................................................................. 316
8.4 Descripcin de los modelos de JARA v. 1.0 .................................................. 318
8.5 Ejemplo. Descomposicin gaseosa en un reactor discontinuo ...................... 319
8.6 Ejemplo. Reaccin en fase lquida en un reactor discontinuo ...................... 321
8.7 Conclusiones .................................................................................................. 326
DESCRIPCIN ORIENTADA A OBJETOS Y SIMULACIN DE
MODELOS DINMICOS HBRIDOS CON ALGUNOS
PARMETROS ALEATORIOS
CAPTULO 9 DESCRIPCIN DE MODELOS HBRIDOS CON
PARMETROS ALEATORIOS
9.1 Introduccin ................................................................................................... 329
9.2 Definicin de los parmetros aleatorios de entrada ..................................... 330
9.2.1 Parmetros aleatorios Booleanos de entrada ............................................. 331
9.2.2 Parmetros aleatorios reales de entrada ..................................................... 331
9.3 Representacin interna de la probabilidad ................................................... 333
9.3.1 Parmetros aleatorios Booleanos de entrada y probabilidad total de las
variables aleatorias Booleanas .................................................................. 334
9.3.2 Parmetros aleatorios reales de entrada ..................................................... 334
9.3.3 Probabilidad total de las variables aleatorias reales ................................... 337
9.3.4 Probabilidad condicionada de las variables aleatorias Booleanas .............. 338
9.3.5 Probabilidad condicionada de las variables aleatorias reales ..................... 341
9.4 Conclusiones .................................................................................................. 344
NDICE v


CAPTULO 10 SIMULACIN DE MODELOS HBRIDOS CON
PARMETROS ALEATORIOS
10.1 Introduccin ................................................................................................... 345
10.2 La simulacin como secuencia de operaciones elementales ......................... 347
10.2.1 Las operaciones elementales ..................................................................... 347
10.2.2 La dependencia estadstica ........................................................................ 349
10.2.3 Orden de las operaciones elementales ....................................................... 357
10.2.4 Condicionamiento de la probabilidad de las variables auxiliares ............ 361
10.2.5 La transformacin del modelo .................................................................. 364
10.3 Reduccin del condicionamiento de la probabilidad .................................... 378
10.3.1 Reduccin del condicionamiento de la probabilidad de una variable
aleatoria real respecto a un parmetro aleatorio real de entrada ................. 378
10.3.2 Reduccin del condicionamiento de la probabilidad de una variable
aleatoria real respecto a un parmetro aleatorio Booleano de entrada ....... 391
10.3.3 Reduccin del condicionamiento de la probabilidad de una variable
aleatoria Booleana .................................................................................... 396
10.4 Operaciones aritmticas sobre variables aleatorias reales ........................... 397
10.4.1 Suma y producto de una variable determinista y una aleatoria .................. 397
10.4.2 Suma de dos variables aleatorias ............................................................... 398
10.4.3 Multiplicacin de dos variables aleatorias ................................................. 414
10.4.4 Inversin de una variable aleatoria real ..................................................... 417
10.5 Funciones elementales de una variable aleatoria real .................................. 419
10.5.1 Logaritmo neperiano y exponencial .......................................................... 419
10.5.2 Seno ......................................................................................................... 420
10.5.3 Coseno, tangente y cotangente .................................................................. 430
10.5.4 Funciones trigonomtricas inversas .......................................................... 431
10.5.5 Coseno hiperblico ................................................................................... 432
10.5.6 Seno y tangente hiperblicas. Funciones hiperblicas inversas ................. 436
10.6 Expresiones Booleanas ................................................................................... 437
10.6.1 Relaciones de desigualdad ........................................................................ 437
10.6.2 Operadores Booleanos (and, or, not) ......................................................... 438
10.7 Expresiones if - then - else ............................................................................. 439
10.7.1 Expresiones if-then-else en que las nicas variables aleatorias son reales... 440
10.7.2 Expresiones if-then-else en que las nicas variables aleatorias son
Booleanas ................................................................................................. 442
10.7.3 Expresiones if-then-else en que intervienen variables aleatorias reales y
Booleanas ................................................................................................. 446
10.8 Conclusiones .................................................................................................. 460

vi NDICE


CAPTULO 11 CONCLUSIONES Y LNEAS DE TRABAJO FUTURAS
11.1 Conclusiones .................................................................................................. 463
11.2 Lneas de trabajo futuras .............................................................................. 464
BIBLIOGRAFA .................................................................................................... 467
ANEXOS
Anexo A Operaciones sobre el modelo en Dymola ............................................. A-1
Anexo B Descripcin matemtica de modelos de estructura variable
compatible con los lenguajes de modelado orientado a objetos .......... B-1
Anexo C Lista de smbolos ................................................................................... C-1

DOCUMENTO ANEXO: JARA v. 1.0. DOCUMENTACIN DE LAS CLASES
Introduccin ................................................................................................ 1
Librera cutsB.lib ......................................................................................... 7
Librera interf.lib ......................................................................................... 11
Librera gas.lib ............................................................................................. 21
Librera liq.lib .............................................................................................. 37
Librera heat.lib ........................................................................................... 55
Librera phase.lib ......................................................................................... 63
Librera chReac.lib ...................................................................................... 69

vii
LISTA DE FIGURAS
Figura 1.1 Libreras de modelos que componen la versin 1.0 de JARA............. 5
Figura 1.2 cutsB.lib............................................................................................ 7
Figura 1.3 interf.lib............................................................................................ 7
Figura 1.4 liq.lib ................................................................................................ 7
Figura 1.5 gas.lib............................................................................................... 7
Figura 1.6 heat.lib.............................................................................................. 7
Figura 1.7 phase.lib ........................................................................................... 7
Figura 1.8 chReac.lib ......................................................................................... 7
Figura 2.1 Interrelacin entre Dymodraw, Dymola, Dymosim y Dymoview....... 22
Figura 2.2 Variables terminales agrupadas en cuts ............................................. 24
Figura 2.3 Cuts jerrquicos y paths .................................................................... 24
Figura 2.4 Regla de conexin para variables across y through............................ 24
Figura 2.5 Secuencia de operaciones sobre el modelo realizadas por Dymola..... 28
Figura 2.6 Ejemplo. Modelo de dos depsitos conectados mediante una vlvula 34
Figura 2.7 Algoritmo de simulacin de modelos hbridos de Omola [Ande94] ... 37
Figura 2.8 Disparo simultneo de todos los eventos activos................................ 41
Figura 2.9 Condicin de disparo del evento........................................................ 42
Figura 2.10 Ejemplo de simulaciones asignando a eveps los valores 1E-10 y 0.5 . 42
Figura 2.11 Relacin constitutiva de la vlvula .................................................... 44
Figura 2.12 Forma de expresar la ecuacin constitutiva de la vlvula que
conduce a error numrico.................................................................. 44
Figura 2.13 Forma de expresar la ecuacin constitutiva de la vlvula que no
conduce a error numrico.................................................................. 45
Figura 2.14 Matriz de incidencia original ............................................................. 46
Figura 2.15 Comprobacin de la no singularidad estructural del sistema .............. 47
Figura 2.16 Ejemplo 1. Obtencin de la matriz de incidencia ordenada ................ 48
Figura 2.17 Ejemplo 2. ndice superior ................................................................ 48
Figura 2.18 Ejemplo. Particin de un problema infradeterminado ........................ 49
Figura 2.19 Ejemplo. Particin de un problema sobredeterminado ....................... 49
Figura 2.20 Ecuacin constitutiva de un tanque atmosfrico y de un condensador
elctrico ............................................................................................ 57
Figura 2.21 Ecuacin constitutiva de una fuente de flujo de volumen................... 57
Figura 2.22 Conexin en paralelo de dos tanques ................................................. 57
Figura 2.23 Causalidad computacional de los problemas directo e inverso ........... 64
Figura 2.24 Modelo del problema directo y reduccin del ndice.......................... 66
Figura 2.25 Modelo del problema inverso y aplicacin del algoritmo de
Pantelides.......................................................................................... 68
Figura 2.26 Modelo original y asignacin de la causalidad computacional ........... 71
Figura 2.27 Modelo modificado, reduccin de su ndice y asignacin de la
causalidad computacional.................................................................. 72
Figura 2.28 Modelo con dos estados de un conmutador de flujo........................... 73
Figura 2.29 Autmata del modelo del conmutador de flujo .................................. 74
Figura 2.30 Esquema del sistema de desage ....................................................... 74
Figura 2.31 Modelo lineal de la tubera................................................................ 75
Figura 2.32 Inercia y resistencia del flujo............................................................. 76
Figura 2.33 Esquema del modelo del circuito de desage..................................... 76
Figura 2.34 Conmutador de flujo cerrado............................................................. 77
viii LISTA DE FIGURAS



Figura 2.35 Conmutador de flujo abierto.............................................................. 77
Figura 2.36 Conmutador abierto........................................................................... 78
Figura 2.37 Conmutador cerrado.......................................................................... 78
Figura 2.38 Modelo del conmutador modificado.................................................. 79
Figura 2.39 Conmutador de flujo abierto.............................................................. 79
Figura 2.40 Conmutador de flujo cerrado............................................................. 80
Figura 2.41 Circuito de flujo: Fuente de presin - R - Conmutador - I - Presin
de referencia...................................................................................... 80
Figura 2.42 Conmutador de flujo abierto.............................................................. 80
Figura 2.43 Conmutador de flujo cerrado............................................................. 81
Figura 2.44 Circuito de flujo: (Fuente de flujo // (Conmutador - C) // C) - Presin
de referencia...................................................................................... 81
Figura 3.1 Interfaces para componentes hidrulicos de uno y dos terminales...... 92
Figura 3.2 Clases de algunos de los componentes hidrulicos bsicos ................ 93
Figura 3.3 La conexin entre los mdulos puede conducir al establecimiento de
lazos algebraicos ............................................................................... 95
Figura 3.4 Representacin esquemtica de los mdulos de MMS [MMS84]....... 96
Figura 3.5 Smbolos de los mdulos de MMS [MMS84].................................... 97
Figura 3.6 Balance del momento lineal en el estado estacionario [MMS84] ....... 97
Figura 3.7 Causalidad computacional de los cuts capacitivos, resistivos y de su
conexin ........................................................................................... 102
Figura 3.8 Causalidad computacional de los cuts emisores y receptores de
informacin y de su conexin............................................................ 103
Figura 3.9 Ecuacin para las variables through a que da lugar la conexin entre
cuts ................................................................................................... 105
Figura 3.10 Causalidad computacional de la conexin interna a un cut capacitivo
de la interfaz ..................................................................................... 109
Figura 3.11 Causalidad computacional de la conexin interna a un cut resistivo
de la interfaz ..................................................................................... 109
Figura 3.12 Clasificacin de las interfaces bsicas ............................................... 110
Figura 3.13 Iconos de las interfaces bsicas del tipo volumen de control .............. 111
Figura 3.14 Interfaz de la resistencia trmica ....................................................... 112
Figura 3.15 Interfaz de la resistencia trmica total................................................ 112
Figura 3.16 Iconos de las interfaces bsicas del tipo fenmeno de transporte con
dos cuts de flujo de materia o de calor............................................... 113
Figura 3.17 Iconos de las interfaces bsicas del tipo fenmeno de transporte con
un nico cut ...................................................................................... 114
Figura 3.18 Iconos de las interfaces bsicas de flujo de informacin .................... 115
Figura 4.1 Eleccin del volumen y de los planos de control................................ 127
Figura 4.2 Volmenes de control para el gas y para el lquido............................ 128
Figura 4.3 Ligadura sobre el volumen aplicada al sistema lquido - gas.............. 132
Figura 4.4 Ecuaciones ordenadas y con la causalidad computacional sealada ... 132
Figura 4.5 Modelado de un tanque del que parten conducciones a diferentes
alturas ............................................................................................... 137
Figura 5.1 Ley de enfriamiento de Newton [Incr96] ........................................... 152
Figura 5.2 Relacin constitutiva de la resistencia trmica................................... 152
Figura 5.3 Conduccin de calor a travs de interfaces [Incr96]........................... 155
Figura 5.4 Nmero adimensional de Biot [Incr96].............................................. 156
Figura 5.5 Discretizacin bidimensional de la ley de Fourier [Incr96] ................ 158
LISTA DE FIGURAS ix



Figura 5.6 Balance en el estacionario ................................................................. 159
Figura 5.7 Balance dinmico.............................................................................. 159
Figura 5.8 Nodo correspondiente a una esquina interna del slido [Incr96] ........ 160
Figura 5.9 Flujo de calor a travs de una interfaz entre dos slidos [Incr96] ....... 160
Figura 5.10 Flujo de calor a travs de una pared plana de espesor uniforme ......... 161
Figura 5.11 Flujo de calor a travs de una pared plana de espesor uniforme ......... 162
Figura 5.12 Balance de energa aplicado a un volumen de control interno............ 162
Figura 5.13 Circuito trmico equivalente de una pared mltiple [Incr96].............. 163
Figura 5.14 Circuitos trmicos equivalentes [Incr96] ........................................... 163
Figura 5.15 Distribucin de temperatura en una pared cilndrica [Incr96]............. 164
Figura 5.16 Balance microscpico ....................................................................... 165
Figura 5.17 Balance macroscpico....................................................................... 165
Figura 5.18 Circuito trmico equivalente ............................................................. 167
Figura 5.19 Modelo de la pared mltiple definiendo en el material B un nico
volumen de control............................................................................ 168
Figura 5.20 Diagrama Dymodraw del modelo de la pared mltiple ...................... 168
Figura 5.21 Temperatura en las interfaces ............................................................ 169
Figura 5.22 Valor de las resistencias trmicas ...................................................... 169
Figura 5.23 Flujo de calor a travs de las resistencias trmicas............................. 170
Figura 5.24 Flujo de calor neto entrante a los volmenes de control. .................... 171
Figura 5.25 Circuito trmico equivalente. El material B se ha dividido en seis
volmenes de control ........................................................................ 171
Figura 5.26 Modelo de la pared mltiple dividiendo el material B en seis
volmenes de control ........................................................................ 172
Figura 5.27 Representacin Dymodraw del modelo. Esta sealado el icono de la
clase compuesta wallB...................................................................... 173
Figura 5.28 Componentes de la clase compuesta wallB........................................ 173
Figura 5.29 Temperatura en las interfaces de los seis volmenes de control de la
pared B ............................................................................................. 174
Figura 5.30 Temperatura de las interfaces englobando la pared B en un nico
volumen de control............................................................................ 174
Figura 5.31 Esquema de la tubera y modelo de la transmisin de calor [Cutl99].. 175
Figura 5.32 Modelo de la transferencia de calor radial a travs de la tubera......... 176
Figura 5.33 Representacin Dymodraw del modelo ............................................. 176
Figura 5.34 Temperatura del vapor, en la superficie interna de la tubera y en la
interfaz entre sta y el aislante........................................................... 177
Figura 5.35 Temperatura en la interfaz entre la tubera y el aislante, en la
superficie externa del aislante y temperatura del aire del entorno....... 177
Figura 5.36 Flujo de calor a travs de las resistencias trmicas............................. 178
Figura 5.37 Flujo de calor neto entrante a los volmenes de control ..................... 178
Figura 6.1 Curva caracterstica de la fuente de flujo de materia .......................... 181
Figura 6.2 Bombas de flujo de gas. Herencia...................................................... 197
Figura 6.3 Bombas de flujo de lquido. Herencia................................................ 197
Figura 6.4 Listado del modelo en Dymola.......................................................... 199
Figura 6.5 Representacin Dymodraw de los iconos de las clases del modelo .... 200
Figura 6.6 Flujo entrante a la fuente. Masa contenida en el primer tanque .......... 201
Figura 6.7 Flujo de la bomba. Masa contenida en el segundo tanque .................. 201
Figura 6.8 Presin en la base y en la superficie del lquido contenido en los
tanques.............................................................................................. 201
x LISTA DE FIGURAS



Figura 6.9 Volumen del lquido contenido en los tanques................................... 202
Figura 6.10 Flujo de calor entrante al segundo tanque. Temperatura del lquido
en los tanques.................................................................................... 202
Figura 6.11 Discretizacin espacial del intercambiador en volmenes de control . 204
Figura 6.12 Modelo del flujo de materia del intercambiador................................. 204
Figura 6.13 Balance de energa en un elemento de volumen del intercambiador... 205
Figura 6.14 Listado del modelo............................................................................ 206
Figura 6.15 Representacin Dymodraw del modelo ............................................. 209
Figura 6.16 Temperatura en los cinco primeros volmenes de control.................. 210
Figura 6.17 Detalle de la evolucin inicial de la temperatura en los cinco
primeros volmenes de control.......................................................... 210
Figura 6.18 Temperatura tras el cambio de sentido del flujo en los cinco
primeros volmenes de control.......................................................... 210
Figura 6.19 Evolucin de la temperatura en los ltimos cinco volmenes de
control............................................................................................... 211
Figura 6.20 Evolucin inicial de la temperatura en los cinco primeros volmenes
de control .......................................................................................... 211
Figura 6.21 Temperatura tras el cambio de sentido del flujo en los ltimos cinco
volmenes de control ........................................................................ 211
Figura 6.22 Flujos de entalpa entrante y saliente y flujo de calor entrante a la
primera bomba .................................................................................. 212
Figura 6.23 Modelo del intercambiador de calor .................................................. 214
Figura 6.24 Representacin Dymodraw del modelo del intercambiador de calor .. 220
Figura 6.25 Temperatura del flujo de lquido y de gas entrante a las fuentes......... 220
Figura 6.26 Temperatura del agua........................................................................ 221
Figura 6.27 Temperatura de la mezcla gaseosa..................................................... 222
Figura 6.28 Temperatura de la pared de la tubera interior.................................... 222
Figura 6.29 Flujo de calor del segundo volumen de control de la pared de la
tubera interna ................................................................................... 223
Figura 6.30 Bucle planteado al producirse el cambio de rgimen ......................... 230
Figura 6.31 Listado del modelo............................................................................ 238
Figura 6.32 Representacin Dymodraw del modelo ............................................. 239
Figura 6.33 Fragmento del fichero dslog.txt ......................................................... 240
Figura 6.34 Factor de friccin de Fanning con histresis respecto al nmero de
Reynolds........................................................................................... 240
Figura 6.35 Clase benzenePipe modificada .......................................................... 241
Figura 6.36 Rgimen del flujo y fuerza de friccin............................................... 241
Figura 6.37 Fuerza de friccin en funcin del nmero de Reynolds...................... 241
Figura 6.38 Clase benzenePipe definida como subclase de
circSmoothPipeDynLiqB................................................................... 242
Figura 6.39 Masa de benceno contenida en el depsito. Momento lineal y
velocidad........................................................................................... 242
Figura 6.40 Fuerzas que actan sobre el fluido en la tubera................................. 242
Figura 6.41 Cambio de rgimen. Fuerza de friccin ............................................. 243
Figura 6.42 Clase benzenePipe definida como subclase de
circSmoothPipeStatLiqB ................................................................... 243
Figura 6.43 Modelo de dos depsitos conectados mediante una vlvula ............... 244
Figura 6.44 Representacin Dymodraw del modelo ............................................. 245
Figura 6.45 Flujo y temperatura del agua entrante a la fuente............................... 245
LISTA DE FIGURAS xi



Figura 6.46 Masa de agua contenida en cada uno de los depsitos........................ 246
Figura 6.47 Temperatura del agua contenida en los depsitos .............................. 246
Figura 6.48 Apertura de la vlvula. Momento lineal del agua en la conduccin.... 246
Figura 6.49 Modelo del sistema fuente - tanque - conduccin - nodo ................... 259
Figura 6.50 Representacin Dymodraw del sistema ............................................. 260
Figura 6.51 Flujo de masa de cada componente entrante a la fuente. Masa de
cada componente en el tanque ........................................................... 260
Figura 6.52 Fuerza sobre la mezcla en la conduccin. Presin en la base del
depsito y de la unin ....................................................................... 260
Figura 6.53 Volumen del lquido y del tanque. Detalle cuando el tanque se
encuentra lleno.................................................................................. 261
Figura 6.54 Modelo de los tres tanques conectados en paralelo ............................ 262
Figura 6.55 Representacin Dymodraw del sistema ............................................. 264
Figura 6.56 Flujo de masa entrante a la fuente del primer componente. Masa
almacenada en los tanques................................................................. 264
Figura 6.57 Flujo de masa entrante a la fuente del segundo componente. Masa
almacenada en los tanques................................................................. 264
Figura 6.58 Flujo de masa entrante a la fuente del tercer componente. Masa
almacenada en los tanques................................................................. 265
Figura 6.59 Temperatura y volumen de la mezcla contenida en cada depsito...... 265
Figura 6.60 Volumen de la mezcla contenida en cada depsito cuando se
encuentran llenos .............................................................................. 265
Figura 6.61 Listado del modelo del depsito con control de nivel......................... 266
Figura 6.62 Representacin Dymodraw del modelo del depsito con control de
nivel.................................................................................................. 268
Figura 6.63 Volumen de la mezcla contenida en cada una de las dos uniones.
Superficie = 10 m2............................................................................ 269
Figura 6.64 Volumen de la mezcla contenida en cada una de las dos uniones.
Superficie = 1E20 m2........................................................................ 269
Figura 6.65 Momento lineal del fluido contenido en los dos tramos de tubera ..... 270
Figura 6.66 Nivel del lquido en el depsito y su consigna. Apertura de la
vlvula .............................................................................................. 270
Figura 6.67 Temperatura del flujo de la fuente y de la mezcla contenida en el
depsito y en las uniones................................................................... 271
Figura 6.68 Modelo de los tres tanques en equilibrio mecnico............................ 278
Figura 6.69 Representacin Dymodraw del sistema ............................................. 279
Figura 6.70 Flujo entrante a las fuentes ................................................................ 279
Figura 6.71 Nmero de moles de hidrgeno......................................................... 280
Figura 6.72 Nmero de moles de nitrgeno.......................................................... 280
Figura 6.73 Listado del modelo............................................................................ 281
Figura 6.74 Representacin Dymodraw del modelo ............................................. 282
Figura 6.75 Flujo entrante a la fuente de cada componente. Temperatura del flujo 282
Figura 6.76 Nmero de moles de metano en cada depsito................................... 282
Figura 6.77 Nmero de moles de eteno en cada depsito...................................... 283
Figura 6.78 Nmero de moles de etino en cada depsito ...................................... 283
Figura 6.79 Presin de la mezcla gaseosa en los depsitos. Temperatura en cada
depsito ............................................................................................ 283
Figura 6.80 Representacin Dymodraw del sistema ............................................. 284
xii LISTA DE FIGURAS



Figura 6.81 Error relativo cometido al suponer que la diferencia de presiones es
cero con 10 Kprop ......................................................................... 284
Figura 6.82 Modelo del depsito del cual parten tres tuberas a diferente altura.... 285
Figura 6.83 Representacin Dymodraw del sistema ............................................. 287
Figura 6.84 Volumen de la mezcla en cada volumen de control............................ 288
Figura 6.85 Momento lineal de la mezcla contenida en las conduccines ............. 288
Figura 6.86 Error relativo cometido al considerar que la diferencia de presiones
es nula............................................................................................... 289
Figura 7.1 Tubo de Stefan. Discretizacin del camino de difusin...................... 295
Figura 7.2 Modelo de la difusin de una mezcla binaria de aire y metanol en un
tubo de Stefan ................................................................................... 298
Figura 7.3 Representacin Dymodraw del modelo ............................................. 300
Figura 7.4 Nmero de moles de aire en cada volumen de control ....................... 300
Figura 7.5 Nmero de moles de metanol en cada volumen de control................. 301
Figura 7.6 Autmata con dos estados: ebullicin y no ebullicin........................ 304
Figura 7.7 Listado del modelo............................................................................ 308
Figura 7.8 Representacin Dymodraw del modelo ............................................. 309
Figura 7.9 Temperatura de ebullicin del lquido y temperaturas del lquido y
del vapor ........................................................................................... 310
Figura 7.10 Flujo molar por ebullicin y flujo de vapor a travs de la vlvula ...... 310
Figura 7.11 Autmata con dos estados: condensacin y no-condensacin ............ 311
Figura 8.1 Listado del modelo. Caso isotermo.................................................... 319
Figura 8.2 Representacin Dymodraw. Caso adiabtico e isotermo
respectivamente ................................................................................ 320
Figura 8.3 Velocidad de reaccin en el caso adiabtico e isotermo
respectivamente ................................................................................ 320
Figura 8.4 Conversin en el caso adiabtico e isotermo respectivamente............ 321
Figura 8.5 Listado del modelo............................................................................ 322
Figura 8.6 Representacin Dymodraw del modelo y de la clase heatExchanger . 324
Figura 8.7 Masa de A y P. Temperatura de la mezcla lquida ............................. 325
Figura 8.8 Conversin. Seales de activacin del intercambiador en modo
calentador y refrigerador ................................................................... 325
Figura 8.9 Velocidad de la reaccin. Consumos de fluido normalizados............. 326
Figura 10.1 Funcin real de variable aleatoria real ............................................... 348
Figura 10.2 Procedimiento para el clculo de los parmetros aleatorios de
entrada de los que depende cada variable aleatoria ............................ 351
Figura 10.3 Regla mnemotcnica sobre el orden de las operaciones elementales
con la misma precedencia.................................................................. 358
Figura 10.4 Orden de las operaciones elementales con el mismo nivel jerrquico. 359
Figura 10.5 Algoritmo para determinar respecto de qu parmetros aleatorios de
entrada debe condicionarse la probabilidad de las variables
auxiliares........................................................................................... 362
Figura 10.6 Esquema del reactor y del lazo de control.......................................... 368
Figura 10.7 Algoritmo para el clculo de los intervalos de valores posibles.......... 380
Figura 10.8 Algoritmo para el clculo del vector x .............................................. 382
Figura 10.9 Algoritmo para el clculo del vector x .............................................. 393
Figura 10.10 Rectngulos equiprobables................................................................ 402
Figura 10.11 Algoritmo para el clculo de un vector cota superior ......................... 404
LISTA DE FIGURAS xiii



Figura 10.12 Algoritmo para el clculo de un vector cota inferior .......................... 405
Figura 10.13 Ejemplo de clculo de un vector cota superior................................... 406
Figura 10.14 Ejemplo de clculo de un vector cota inferior.................................... 407
Figura 10.15 Acotacin de las componentes del vector representacin interna de X 408
Figura 10.16 Algoritmo para ordenar crecientemente los vrtices
2 1
n n
VR ................ 408
Figura 10.17 Formas en que la recta puede cortar el rectngulo.............................. 409
Figura 10.18 Proporcin del rectngulo situado bajo la recta en el caso
( ) d : < a ....................................................................................................... 410
Figura 10.19 Proporcin del rectngulo situado bajo la recta en el caso
( ) b : d < D ................................................................................ 410
Figura 10.20 Proporcin del rectngulo situado bajo la recta en el caso
( ) c : D ...................................................................................................... 410
Figura 10.21 Algoritmo para el clculo del vector representacin interna de X ..... 411
Figura 10.22 Representacin del producto de dos variables aleatorias reales .......... 415
Figura 10.23 Clculo del rea del rectngulo bajo la curva y x x
2 1
..................... 416
Figura 10.24 Procedimiento para calcular el producto de dos variables aleatorias... 417
Figura 10.25 Algoritmo para el clculo de
I
y y de y ............................................ 418
Figura 10.26 Intervalos de X transformados en ( ) ( ) sen sen x Y x
1 2
< .................. 421
Figura 10.27 Algoritmo para calcular
~
x y p
x
~ ....................................................... 427
Figura 10.28 Funcin coseno hiperblico............................................................... 432
Figura 10.29 Clculo de las aportaciones a la probabilidad de X

.......................... 433
Figura 10.30 Clculo de los vectores
~
x y p
x
~ ........................................................ 434
Figura 10.31 Arco coseno hiperblico.................................................................... 436
Figura 10.32 Algoritmo para el clculo de la representacin interna de la
probabilidad condicionada................................................................. 449
Figura B.1 Clasificacin de las variables del sistema en los estados estado_0 y
estado_1............................................................................................ B-4
Figura B.2 Autmata con tres estados: estado_liq, estado_vap y estado_eq......... B-7
Figura B.3 Clasificacin de las incgnitas del sistema ........................................ B-8
Figura B.4 Modelo en cada estado. rdenes para reducir el ndice y escoger las
variables de estado ............................................................................ B-10
Figura B.5 Listado del modelo. rdenes para establecer el estado inicial ............ B-12
Figura B.6 Variables lgicas que determinan el estado del sistema. Flujo de
calor entrante al sistema .................................................................... B-12
Figura B.7 Masa de vapor y de liquido. Temperatura.......................................... B-13

xv
LISTA DE TABLAS
Tabla 1.1 Clasificacin de los modelos basados en los principios fisico-
qumicos [Himm92] ........................................................................... 3
Tabla 2.1 Clasificacin de los modelos en ingeniera qumica............................ 50
Tabla 2.2 Clasificacin de los sistemas algebraicos diferenciales (DAE)............ 50
Tabla 3.1 Grados de libertad.............................................................................. 93
Tabla 3.2 Cuts de flujo de materia ..................................................................... 100
Tabla 3.3 Cuts de flujo de calor ......................................................................... 100
Tabla 3.4 Cuts de flujo de materia y de flujo de calor ........................................ 102
Tabla 3.5 Cuts de flujo de informacin .............................................................. 103
Tabla 3.6 Cut de ligadura sobre el volumen ....................................................... 104
Tabla 3.7 Regla de conexionado de los cuts bsicos del mismo nivel jerrquico 105
Tabla 3.8 Reglas acerca del nmero de conexiones de los cuts bsicos del
mismo nivel jerrquico....................................................................... 106
Tabla 3.9 Cabeceras de las clases que contienen los atributos grficos de
algunos de los cuts bsicos................................................................. 107
Tabla 3.10 Atributos grficos de algunos de los cuts bsicos................................ 108
Tabla 3.11 Reglas de conexin de los cuts bsicos de flujo de materia, de calor y
de informacin................................................................................... 108
Tabla 3.12 Nmero de cuts de las interfaces bsicas del tipo volumen de control. 111
Tabla 3.13 Interfaces del tipo fenmeno de transporte con dos cuts de flujo de
materia o de calor............................................................................... 113
Tabla 3.14 Interfaces bsicas del tipo fenmeno de transporte con un nico cut... 113
Tabla 3.15 Interfaces bsicas de flujo de informacin, su cut y clases bsicas
que complementan ............................................................................. 114
Tabla 3.16 Interfaz bsica del tipo ligadura sobre el volumen .............................. 115
Tabla 4.1 Regla de conexionado de los cuts bsicos de ligadura sobre el
volumen del mismo nivel jerrquico................................................... 133
Tabla 4.2 Regla de conexionado de los cuts bsicos de ligadura sobre el
volumen de diferente nivel jerrquico................................................. 133
Tabla 4.3 Clases en que se definen los atributos grficos de los cuts bsicos de
ligadura sobre el volumen .................................................................. 134
Tabla 4.4 Atributos grficos de los cuts bsicos de ligadura sobre el volumen ... 134
Tabla 5.1 Valores tpicos del coeficiente de transferencia de calor por
conveccin [Incr96] ........................................................................... 152
Tabla 9.1 Ejemplo de la sintaxis para la definicin de algunas funciones de
probabilidad comunes ........................................................................ 332
Tabla 9.2 Memoria ocupada por representacin interna de una variable
aleatoria ............................................................................................. 334
Tabla 10.1 Operaciones elementales en las que intervienen variables aleatorias
reales ................................................................................................. 349
Tabla 10.2 Operaciones elementales en las que intervienen variables aleatorias
Booleanas .......................................................................................... 349
Tabla 10.3 Operaciones elementales en las que intervienen variables aleatorias
Booleanas y reales.............................................................................. 349
Tabla 10.4 Operaciones elementales en que intervienen variables aleatorias
reales ................................................................................................. 354
xvi LISTA DE TABLAS


Tabla 10.5 Operaciones elementales en que intervienen variables aleatorias
Booleanas .......................................................................................... 355
Tabla 10.6 Operaciones elementales en que intervienen variables aleatorias
reales y Booleanas.............................................................................. 356
Tabla 10.7 Planteamientos de la suma de dos variables aleatorias ........................ 399
Tabla 10.8 Aportaciones a la probabilidad en el intervalo


2 2
, .................... 424
Tabla B.1 Ecuaciones del modelo tras el primer paso del algoritmo.................... B-5
Tabla B.2 Ecuaciones del modelo tras el segundo paso del algoritmo ................. B-5
Tabla B.3 Ecuaciones del modelo en cada uno de sus tres estados ...................... B-7
Tabla B.4 Las variables lquido y equilibrio definen el estado del sistema.......... B-8
Tabla B.5 Ecuaciones del modelo agrupando la descripcin en los estados
estado_liq y estado_vap..................................................................... B-8
Tabla B.6 Ecuaciones del modelo tras el primer paso del algoritmo.................... B-9
Tabla B.7 Ecuaciones del modelo tras el segundo paso del algoritmo ................. B-9
Tabla B.8 Ecuaciones aadidas al sistema en cada caso...................................... B-10
Tabla B.9 Modelo de los tres estados del sistema ............................................... B-11
Tabla B.10 Ecuaciones instantneas para inicializar las variables de estado.......... B-11

1
Captulo 1
INTRODUCCIN. OBJETIVOS Y
ESTRUCTURA DE LA TESIS
1.1 INTRODUCCIN
En este captulo se presenta concisamente cul es el papel del modelado orientado a
objetos y de la simulacin de sistemas dinmicos en el mbito del control de procesos
qumicos. Se exponen los objetivos de la tesis y se explica el progreso que sta supone
sobre el estado del conocimiento. Finalmente se indica cmo se ha estructurado la tesis.
1.2 EL MODELADO Y LA SIMULACIN EN EL MBITO DEL
CONTROL DE PROCESOS QUMICOS
Algunas razones para el empleo de modelos matemticos
El modelado y la simulacin son prctica comn a todas las disciplinas de la ingeniera
y de la ciencia. Son usados en el anlisis de los sistemas fsicos, a fin de profundizar en
su comprensin, as como en el diseo de nuevos sistemas para predecir el
comportamiento de los mismos antes de que sean construidos. A excepcin de la
experimentacin con el sistema real, el modelado y la simulacin son las nicas tcnicas
disponibles que permiten analizar sistemas no lineales arbitrarios de forma precisa bajo
diferentes condiciones experimentales. Por ello, en determinadas situaciones, la
simulacin es la tcnica adecuada para el anlisis de los problemas. Este es el caso, por
ejemplo, de las ocasiones en que no se dispone del sistema fsico o bien cuando el
experimento es peligroso, excesivamente costoso o largo [Cell91].
Adems, la simulacin permite modificar variables que en el sistema real o bien no
estn accesibles o bien no pueden ser modificadas en el rango requerido. Con un
modelo matemtico adecuado se pueden ensayar condiciones de operacin extremas que
pueden ser impracticables en una planta real. La simulacin puede contribuir a
profundizar en la comprensin del sistema, al permitir el estudio de su comportamiento
aislando determinados efectos y eliminando o introduciendo perturbaciones [Cell91].
En el terreno de la ingeniera qumica, durante la dcada de los noventa se ha producido
un rpido incremento en el uso del modelado en todos los aspectos del diseo y la
2 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


operacin de procesos. Se ha producido un aumento muy significativo en el detalle y la
precisin de los modelos de los procesos, en la velocidad y capacidad de memoria de
los ordenadores y en la calidad del software de modelado y simulacin [Pant96]. Los
modelos matemticos y la simulacin han demostrado ser tiles tanto en la fase de
investigacin y desarrollo, como al realizar el diseo y durante la operacin de la planta
[Luyb90] [Himm92] [Pant96]:
Durante la investigacin para determinar los mecanismos y los parmetros de la
cintica qumica a partir de los datos obtenidos en el laboratorio o en la planta
piloto. Tambin en los estudios encaminados a la optimizacin y el control, en los
que se exploran los efectos de diferentes condiciones de operacin.
En la fase de diseo, en la determinacin de las dimensiones y la disposicin de los
equipos, en el estudio de las interacciones de las diferentes partes del proceso, en
particular cuando hay recirculacin de material y flujo de calor entre ellas, en la
evaluacin de nuevas alternativas de proceso y de estructuras o estrategias de
control, en la simulacin de los arranques y paradas de los procesos y de las
situaciones y procedimientos de emergencia, etc. La simulacin permite comparar
distintos diseos y procesos e introducir nuevos factores o elementos en un sistema
con objeto de comprobar si estas modificaciones son compatibles. Permite estimar
los parmetros de coste y su sensibilidad para diferentes condiciones de operacin.
Durante la operacin de la planta, para resolver problemas de control o de proceso,
como herramienta de entrenamiento para los operarios, para estudiar los efectos y
los requisitos necesarios para realizar una expansin (eliminacin de los cuellos de
botella), para optimizar la operacin de la planta, etc.
Disponer de modelos matemticos de las plantas es de gran utilidad a la hora de disear
cualquier tipo de estrategia de control y es una condicin necesaria para la implantacin
de tcnicas de control avanzadas como es, por ejemplo, el control predictivo. Por otra
parte, en el mbito de la investigacin en automtica industrial surge la necesidad de
disponer de modelos matemticos realistas de procesos industriales que puedan ser
usados como bancos de pruebas para el desarrollo de nuevas estrategias de control.
Diferentes tipos de modelos matemticos
Pueden realizarse diferentes clasificaciones de los modelos matemticos atendiendo a
diferentes criterios. Algunas de ellas son [Ljun] [Bosc94]:
Estocsticos o deterministas, en funcin de que trabajen o no con variables
aleatorias y procesos estocsticos.
Dinmicos o estticos. Si en el modelo existe una ligadura directa e instantnea
entre las variables, se dice que es esttico. Los sistemas cuyas variables pueden
cambiar sin necesidad de que exista una influencia directa externa, y que, en
consecuencia, dependen de las seales aplicadas anteriormente, se denominan
dinmicos. Los sistemas dinmicos estn descritos por ecuaciones diferenciales y/o
en diferencias.
Modelos de tiempo continuo o de tiempo discreto. Un modelo matemtico que
describe la relacin entre seales continuas en el tiempo se llama de tiempo
continuo (a menudo est descrito mediante ecuaciones diferenciales). Un modelo
EL MODELADO ORIENTADO A OBJETOS 3


que expresa directamente las relaciones entre los valores de las seales en los
instantes de muestreo se llama de tiempo discreto (tpicamente est descrito
mediante ecuaciones en diferencias). Se denominan modelo hbridos aquellos que
tienen parte continua y parte discreta.
Modelos de parmetros agrupados o de parmetros distribuidos. Los modelos de
parmetros agrupados estn expresados mediante ecuaciones diferenciales
ordinarias, y los modelos de parmetros distribuidos estn descritos mediante
ecuaciones diferenciales en derivadas parciales.
En funcin del nivel de detalle en la descripcin, los modelos basados en principios
fsico-qumicos pueden clasificarse en los cinco grupos mostrados en la Tabla 1.1. Al
descender en las columnas de la Tabla 1.1 solamente disminuye el detalle interno del
sistema y no, en cambio, la fidelidad con que el modelo representa el proceso real. Por
ejemplo, un modelo macroscpico puede representar mejor un determinado proceso que
un modelo ms detallado [Himm92].
Estrato de descripcin
fsicoqumica
Utilizacin por los
ingenieros
Designaciones temticas Parmetros tpicos para
anlisis
Atmico y molecular Formacin fundamental Trata entidades discretas;
mecnica cuntica, mecnica
estadstica, teora cintica
Funciones de distribucin;
integrales de colisin
Microscpico Aplicable slo a casos
especiales
Fenmenos de transporte
laminar, teoras estadsticas de
la turbulencia
Coeficientes fenomenolgicos;
coeficientes de viscosidad,
difusin, conduccin calorfica
Gradiente mltiple Aplicable slo a casos
especiales
Fenmenos de transporte
laminar y turbulento;
transporte en medios porosos
Coeficientes de transporte
"efectivo"
Gradiente mximo Utilizado para sistemas de
"flujo de pistn"
Fenmenos de transporte
laminar y turbulento, diseo de
reactores
Coeficientes de transporte de
interfaz, constantes cinticas
Macroscpico Utilizacin muy amplia Ingeniera de procesos,
operaciones bsicas,
termodinmica y cintica
clsicas
Coeficientes de transporte de
interfaz; constantes cinticas
macroscpicas; factores de
friccin
Tabla 1.1 Clasificacin de los modelos basados en los principios fisico-qumicos [Himm92]
1.3 EL MODELADO ORIENTADO A OBJETOS
Introduccin
La metodologa de la ingeniera del software del diseo orientado a objetos [Meye88]
[Pres93] ha mostrado ser un xito cuando se adapta al modelado de sistemas dinmicos,
aumentando la productividad del programador y la calidad del software. Durante la
dcada de los noventa han aparecido un gran nmero de trabajos sealando las ventajas
del modelado orientado a objetos de los sistemas dinmicos hbridos y tambin han
aparecido versiones eficientes y libres de errores de diferentes lenguajes de modelado de
propsito general que trabajan en conjuncin con potentes DAE solvers (por ejemplo
4 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


DASSL [Bren96]). Creemos que es de destacar, entre otras, la aportacin a este tema de
la lnea de trabajo del Departamento de Control Automtico del Instituto de Tecnologa
de Lund (Suecia) [Elmq78] [Nils89] [Nils93] [Ande94] [Matt98].
Algunas ventajas del modelado orientado a objetos
Entre las ventajas del modelado orientado a objetos cabe destacar las siguientes. Supone
una simplificacin en el diseo y realizacin del modelo al facilitar la modularidad, ya
que es ms fcil desarrollar y validar pequeos submodelos que modelos grandes.
Aumenta la productividad del programador y reduce los costes de modelado al facilitar
la reutilizacin de los modelos en diferentes contextos. Agiliza el desarrollo de los
modelos, al permitir que varios programadores trabajen independientemente sobre
diferentes partes del modelo. Facilita el refinamiento, modificacin y mantenimiento de
los modelos, aumentando con todo ello la calidad del software [Stew81] [Nils93]
[Ande94].
El lenguaje de modelado orientado a objetos
Los lenguajes de modelado orientados a objetos posibilitan la reutilizacin de las clases
mediante la definicin de clases moleculares, compuestas por otras clases anteriormente
definidas conectadas entre s, y mediante la especializacin de las clases, por ejemplo,
mediante la herencia.
Los lenguajes de modelado [Ande90] [Elmq96] [Mode97] [EAIn99] generan
automticamente y de forma eficiente las ecuaciones del modelo completo, eliminando
las variables redundantes y las ecuaciones triviales a que dan lugar las ecuaciones de
conexin entre las clases. Realizan automticamente la asignacin de la causalidad
computacional, ordenando las ecuaciones y manipulando simblicamente aquellas de
ellas en que la variable a evaluar aparece de forma lineal. Permiten resolver, mediante
manipulacin simblica o numricamente, los sistemas lineales de ecuaciones. Permiten
resolver lazos no lineales realizando tearing, proponiendo una eleccin de las variables
de tearing y las ecuaciones residuo que el usuario es libre de modificar. Identifican
automticamente los problemas de ndice mayor que uno [Bren96] y tambin
automticamente realizan la reduccin del ndice del sistema a cero o uno [Pant88].
Dymola (Dynamic Modeling Laboratory) [Elmq96] [Elmq98] fue el primer lenguaje de
modelado que apareci en el mercado diseado para facilitar la formulacin orientada a
objetos de modelos hbridos de sistemas complejos [Cell92]. Si bien originalmente su
diseo, concebido para soportar el modelado modular y jerrquico (no incorporando el
concepto de herencia) data de finales de los setenta [Elmq78], hasta el ao 1994 no se
encontr disponible la primera versin comercial de Dymola (incorporando ya los
conceptos de clase y herencia). Con la aparicin de la versin 3.0 de Dymola [Elmq96]
puede considerarse que la versin comercial de la herramienta de modelado se
encuentra prcticamente libre de errores.
OBJETIVOS DE LA TESIS 5


1.4 OBJETIVOS DE LA TESIS
Introduccin
La presente tesis tiene dos objetivos fundamentales. El primero consiste en el diseo y
la programacin de un conjunto de libreras de modelos dinmicos hbridos de algunos
de los principios fsico-qumicos bsicos aplicables al modelado en el mbito del
control de procesos qumicos. El propsito de las libreras es servir de base para la
construccin de modelos de procesos qumicos a emplear como banco de pruebas para
la experimentacin de estrategias de control automtico. El conjunto de libreras, que
recibe el nombre de JARA (conJunto de librerAs de pRocesos fsico-qumicos
bsicos), ha sido diseado y programado aplicando las tcnicas del modelado orientado
a objetos de sistemas dinmicos. En la Figura 1.1 se muestran las libreras que
componen la versin 1.0 de JARA. El entorno de modelado empleado ha sido
Dymodraw-Dymola-Dymosim-Dymoview [Elmq99].
El segundo objetivo de la tesis es iniciar el planteamiento de un mtodo, alternativo al
tradicional, para la descripcin y simulacin de modelos dinmicos hbridos con
algunos parmetros aleatorios y con algunos de sus valores iniciales aleatorios. A
continuacin se discute con cierto detalle cada uno de estos dos objetivos.

















Figura 1.1 Libreras de modelos que componen la versin 1.0 de JARA.
1.4.1 Diseo y programacin de un conjunto de libreras de procesos
fsico-qumicos bsicos: JARA v. 1.0
Como se ha expuesto anteriormente, uno de los objetivos de la tesis consiste en el
diseo y la programacin orientados a objetos de un conjunto de libreras de modelos de
algunos de los principios fsico-qumicos bsicos aplicables al modelado en el entorno
del control de procesos qumicos.
Reglas de diseo
En la fase de diseo se establece el conjunto de reglas que deben satisfacer las clases
que integran las libreras, quedando bien sentadas las bases para la ampliacin de las
cutsB.lib
interf.lib
heat.lib liq.lib phase.lib gas.lib chReac.lib
Dymodraw
Dymodraw y Dymola
6 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


libreras con nuevas clases. Tambin se enuncian las reglas que deben seguirse al
conectar las clases entre s para formar modelos compuestos. La finalidad de estas
reglas es evitar la sobredeterminacin e infradeterminacin del sistema y el que la
conexin de las clases d lugar al establecimiento de lazos algebraicos o a que el
sistema tenga ndice superior.
Principios fsico-qumicos modelados
Los principales objetivos perseguidos con el diseo y la programacin de las libreras de
modelos JARA no ha sido generar un conjunto muy numeroso de clases que cubran un
amplio abanico de situaciones, sino, en primer lugar, establecer un marco coherente y
unificado para la ampliacin de las libreras con nuevos modelos y, en segundo lugar,
proporcionar un conjunto reducido de clases de algunos principios fsico-qumicos,
cuyo modelado y programacin ejemplifique tanto la aplicacin de las reglas de diseo
de las libreras como la metodologa del modelado orientado a objetos.
No obstante, los modelos de los principios fsico-qumicos contenidos en la versin 1.0
de JARA posibilitan, mediante su composicin y especializacin, la construccin de
modelos macroscpicos o de gradiente mximo sencillos de algunas de las unidades de
proceso mencionadas en la literatura de control de procesos qumicos: tanques de
almacenamiento de fluidos, reactores continuos perfectamente agitados o discontinuos,
reactores tubulares, intercambiadores de calor, evaporadores, condensadores,
conducciones de flujo de materia con o sin retardo en el transporte, vlvulas, etc. Tal
como se muestra en algunos de los ejemplos propuestos, la conexin de estas unidades
de proceso entre s permite modelar plantas qumicas que constituyen modelos
dinmicos hbridos adecuados para la experimentacin de estrategias de control.
Organizacin de JARA v. 1.0
La versin 1.0 de JARA est compuesta por siete libreras de modelos (ver Figura 1.1).
En las Figuras 1.2 a 1.8 se muestran las clases que componen las libreras. Se han
sealado en azul las clases que pertenecen a la librera y en negro las superclases que
pertenecen a otras libreras. A grandes rasgos, este es el propsito de cada una de las
siete libreras:
La librera cutsB.lib contiene la definicin Dymodraw de los atributos grficos de
los grupos de variables (cuts) que componen la interfaz de las clases. Los atributos
grficos de los cuts proporcionan informacin que facilita el reconocimiento de las
variables que agrupan y el seguimiento de las reglas de conexin. El color del cut
indica si las variables que agrupa estn relacionadas con el flujo de lquido, de gas,
de calor o de informacin. La forma del cut indica cules son las variables de que
est compuesto. El que se encuentre o no relleno de color informa adems acerca de
la causalidad computacional de las variables.
Desde las otras seis libreras se hace uso de las clases contenidas en cutsB.lib, con lo
cual esta librera debe cargarse la primera desde Dymodraw. Sus clases, al contener
nicamente informacin grfica, son ignoradas por Dymola, por tanto no es preciso
cargar esta librera desde Dymola.
OBJETIVOS DE LA TESIS 7

















CutBase
cutGasR
cutGasC
cutLiquidR
cutLiquidC
cutHeatMR
cutHeatFR
cutHeatMC
cutHeatFC
cutEmitter
cutReceiver
cutVolConstrVessel
cutVolConstrLiq
cutVolConstrGas
vesselI
vesselGasB
gasV1I
semiPerfGasCp6B
gas1I
semiPerfGasCp6VB
sourcePressGasB
gasFlow2qI
convecGasFlowB
pumpGasB
pumpMolGasB
pumpVolGasB
pumpMassGasB
pipeDynGasB
pressEqGasB
gasFlow2I
diffSemiPerfGasBinCp6B
gasFlow1I
sourceGasFB
sourceMolGasFB
sourceVolGasFB
sourceMassGasFB
heat1I
solidB
solidCB
heatFlow1I
resistThermB
resistThermFB
sourceHeatFB
heatFlow2I
RthConstB
RthExpTB
RthAbsTB
solidC6B
sourceTempB
convecSiederTateB
heatFlowF2I
gasFlow1I
phaseChgB
vapPressB
heteroFlow2I
boilingB
condensB
Figura 1.2 CutsB.lib
Figura 1.3 interf.lib
Figura 1.4 liq.lib
Figura 1.5 gas.lib
Figura 1.6 heat.lib
Figura 1.7 phase.lib
Figura 1.8 chReac.lib
vesselI
vesselLiqB
liquidV2I
liquid2I
liquidCp6PrefVB
liquid1I
junctLiqCp6PrefB
sourcePressLiqB
pumpLiqB
pumpMassLiqB
pumpVolLiqB
pumpMolLiqB
pressEqLiqB
pipeDynLiqB
liqFlow1I
sourceLiqFB
sourceMassLiqFB
sourceMolLiqFB
sourceVolLiqFB
liquidCp6B
liquidCp6PrefB
liqFlow2qI
convecLiqFlowB
circSmoothPipeDynLiqB
pipeStatLiqB
circSmoothPipeStatLiqB
Interfaces
de gases

Interfaces
de lquidos

Interfaces
de lquidos
y de gases

heteroFlow2I
heteroProcessFlow2I
Interfaces
trmicas

heat1I
heatFlow1I
heatFlow2I
heatFlowF2I
Interfaces del
tipo ligadura
sobre el volumen

vesselI
Interfaces
de flujo de
informacin

emitter1I
receiver1I
valveSignalI
sourceMassSignalI
sourceMolSignalI
sourceVolLiqSignalI
sourceVolGasSignalI
pumpMassSignalI
pumpMolSignalI
pumpVolSignalI
sourceHeatSignalI
controllerI
gas1I
gasV1I
gasFlow1I
gasFlow2I
gasFlow2qI
liquid1I
liquid2I
liquidV2I
liqFlow1I
liqFlow2I
liqFlow2qI
gasFlow1I
liqFlow1I
chReacLiqB
chReacGasB
8 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


La librera interf.lib contiene las clases que modelan las interfaces. Como se
discutir ms adelante, separar la definicin de la interfaz de la descripcin interna
facilita el diseo de clases reutilizables. Las interfaces se clasifican en cuatro tipos:
volumen de control, fenmeno de transporte, ligadura sobre el volumen y flujo de
informacin.
Las clases de interf.lib heredan los atributos grficos de los cuts definidos en
cutsB.lib. A excepcin de la librera cutsB.lib, las clases de las restantes cinco
libreras tienen como superclase alguna las clases definidas en interf.lib, con lo cual
interf.lib debe ser la segunda librera cargada desde Dymodraw, despus de cutsB.lib
y la primera cargada desde Dymola.
La librera gas.lib contiene varios modelos de un volumen de control conteniendo
una mezcla de gases semiperfectos, del flujo por conveccin y por difusin de
mezclas de gases, de vlvulas y bombas situadas en lneas de gases y de condiciones
de contorno para el flujo: fuentes de flujo de mezclas gaseosas y de presin.
Adems, contiene una clase que modela un flujo de la mezcla gaseosa entre dos
volmenes de control tal que garantiza la igualdad de sus presiones.
La librera liq.lib contiene varios modelos de un volumen de control conteniendo
una mezcla ideal de lquidos incompresibles, del flujo de la misma a travs de
tuberas, bombas, vlvulas, de la unin de un nmero arbitrario de lneas de flujo y
de condiciones de contorno para el flujo de mezcla lquidas: fuentes de flujo y de
presin. Tambin contiene el modelo del flujo entre dos volmenes de control tal
que garantiza que la presin en determinada posicin de los mismos es la misma.
La librera heat.lib contiene diferentes modelos de un volumen de control
conteniendo un slido, modelos de resistencias trmicas y de condiciones de
contorno para el flujo de calor: fuente de temperatura y de flujo de calor.
La librera phase.lib contiene una clase que modela el mantenimiento de la presin
de vapor de un componente de una mezcla lquida en contacto con su vapor y el
cambio de fase lquido-vapor de una mezcla por ebullicin y por condensacin.
La librera chReac.lib contiene clases que modelan conjuntos de reacciones
qumicas en las cuales o bien todos los productos y reactivos estn en fase gaseosa o
bien todos estn en fase lquida. Estas clases pueden describir un amplio rango de
reacciones qumicas.
Puede encontrarse el listado de la documentacin HTML, generada por Dymola, de las
clases que integran las siete libreras en el documento anexo a la tesis, "JARA v. 1.0.
DOCUMENTACIN DE LAS CLASES". EL CD distribuido junto con la tesis
contiene, adems del cdigo fuente de las libreras, los ejemplos de modelado
propuestos a lo largo de la tesis.
OBJETIVOS DE LA TESIS 9


1.4.2 Descripcin orientada a objetos y simulacin de modelos
dinmicos hbridos con algunos de sus parmetros aleatorios
Motivacin
Durante largo tiempo se ha reconocido el comportamiento aleatorio de los procesos
reales de la ingeniera qumica [Nf94]. Algunos simuladores orientados a la ingeniera
qumica (por ejemplo, ASPEN [Diwe91]) proporcionan facilidades para la descripcin
de las distribuciones de probabilidad de parmetros aleatorios del modelo y para el
anlisis grfico y estadstico de las salidas. Igualmente, algunos lenguajes de modelado
de propsito general (por ejemplo, gPROMS [Bart92]) incorporan estructuras que
soportan la simulacin de modelos dinmicos aleatorios [Nf94] [Watz94].
Las aplicaciones de la simulacin de conjuntos de modelos definidos mediante la
incertidumbre en el conocimiento del valor de algunos de sus parmetros y de alguna de
sus condiciones iniciales son mltiples. Por ejemplo, en el mbito del control de
procesos qumicos, cuando se estudia la respuesta a una familia de entradas de una
familia de plantas, o bien cuando se analiza el impacto que tiene la variabilidad de los
parmetros de un proceso de fabricacin sobre las especificaciones del producto, no
slo con el fin de centrar el proceso, sino tambin para identificar "problemas de
valores marginales, etc.
La forma tradicional de abordar la simulacin de modelos dinmicos hbridos con
algunos de sus parmetros aleatorios consiste en obtener, empleando generadores de
nmeros aleatorios, conjuntos de valores para los parmetros aleatorios del modelo y
repetir la simulacin para cada conjunto de valores de los parmetros as obtenido. Las
respuestas son analizadas estadsticamente para obtener informacin acerca de su
distribucin [Nf94] [Watz94] [Diwe91] [Law91] [Brat87]. La metodologa general
para la simulacin de modelos aleatorios requiere bsicamente que el simulador posea
las tres siguientes capacidades [Nf94]:
1. La generacin de nmeros aleatorios.
2. La posibilidad de repetir la simulacin.
3. El anlisis estadstico de las respuestas o el permitir exportar los resultados a
paquetes especializados de anlisis estadstico.
Sin embargo, este procedimiento puede ser extremadamente costoso desde el punto de
vista computacional si se necesita delimitar de forma precisa el conjunto de valores
posibles de la respuesta en cada instante, ya que los valores extremos de la misma
pueden corresponder a determinados valores muy poco probables del conjunto de
parmetros aleatorios.
El enfoque adoptado en esta tesis, alternativo al tradicional, consiste en realizar una
nica simulacin del modelo considerando las variables aleatorias como tales, es decir,
de modo que el resultado de cualquier operacin en la que interviene una o varias
variables aleatorias es, a su vez, una variable aleatoria, cuya probabilidad es evaluada,
de realizar la operacin, a partir de la probabilidad de los operandos aleatorios y del
valor de los operandos deterministas.
10 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


El objetivo no es disear un nuevo lenguaje de modelado, sino complementar los ya
existentes, de modo que se aada, a todas sus capacidades, la posibilidad de describir y
simular modelos con parmetros aleatorios y con condiciones iniciales aleatorias.
Para ello se propone un nuevo procedimiento para definir los parmetros aleatorios del
modelo (reales y Booleanos) que es compatible con la sintaxis de cualquier lenguaje de
modelado orientado a objetos de sistemas dinmicos que soporte la notacin matricial.
Esta definicin se ha realizado de forma que no interfiera en las manipulaciones que el
lenguaje de modelado realiza sobre el modelo (facilidades para la descripcin grfica de
las clases, obtencin del conjunto completo de ecuaciones del modelo, reduccin de
ndice, particin, tearing, etc.). El procedimiento definido para la descripcin de los
parmetros aleatorios posibilita que sta pueda realizarse indistintamente en el modelo o
en el experimento. Un parmetro definido como aleatorio en el modelo puede ser
modificado o redefinido como determinista en el experimento y viceversa. Adems, un
mismo parmetro puede ser determinista en determinadas instanciaciones de la clase y
aleatorio en otras, con una probabilidad diferente en cada una de ellas.
La descripcin del modelo y del experimento obtenidas como salida del lenguaje de
modelado deben ser manipuladas por una interfaz software (dependiente del lenguaje de
modelado) a fin de expresarlas siguiendo una determinada sintaxis estandarizada a tal
fin.
Esta descripcin del modelo y del experimento, independientes del lenguaje de
modelado, sirven como entrada a una herramienta software que transforma las
expresiones del modelo en que intervienen variables aleatorias en secuencias ordenadas
de operaciones elementales de las que se evala la probabilidad de las variables
aleatorias en cada instante de tiempo. Para realizar estas evaluaciones se realizan
llamadas a funciones diseadas a tal fin. De este modo, el modelo queda escrito como
una secuencia ordenada de operaciones entre variables deterministas y de funciones que
operan sobre la probabilidad de unas variables aleatorias para obtener la probabilidad de
otras variables aleatorias.
Para realizar la simulacin de forma ms eficiente se integra el modelo inline. Se
modifica el algoritmo de simulacin, a fin de tratar adecuadamente los eventos
disparados por variables aleatorias Booleanas, se modifica el mtodo de Newton para la
resolucin de lazos algebraicos en los que intervienen variables aleatorias y tambin se
modifica el DAE solver para realizar la integracin de las variables de estado aleatorias.
Finalmente, el conjunto de datos obtenido como resultado de la simulacin es expresado
en formatos vlidos como entrada de los visualizadores grficos de determinados
entornos de modelado seleccionados (por ejemplo, Dymoview, etc.) y determinadas
herramientas de anlisis de datos (por ejemplo, Splus, Matlab, etc.).
El diseo y la programacin del conjunto de herramientas software que permiten
realizar la descripcin orientada a objetos y la simulacin de modelos dinmicos
hbridos con parmetros aleatorios de acuerdo a este enfoque, es una tarea que va
mucho ms all de los objetivos planteados en esta tesis. stos son fundamentalmente
los cuatro siguientes (quedando el resto propuestos como trabajos futuros):
OBJETIVOS DE LA TESIS 11


1. Definir un procedimiento para la descripcin, en el modelo y/o en el
experimento, de la probabilidad de los parmetros aleatorios, que sea compatible
con la sintaxis de los lenguajes de modelado orientado a objetos.
2. Definir un procedimiento, denominado representacin interna, para almacenar
la informacin relativa a la probabilidad, total y condicionada, de los parmetros
y de las variables aleatorias (aquellas que dependen, directa o indirectamente, de
los parmetros aleatorios). Esta forma de almacenar la informacin est
especialmente diseada para realizar la computacin de las operaciones en que
intervienen variables aleatorias.
3. Proponer los algoritmos necesarios para la programacin de una herramienta
software que, partiendo de la representacin estndar del modelo obtenida como
salida del lenguaje de modelado (ordenado y resuelto) y de la descripcin del
experimento, identifique las variables aleatorias del modelo y los parmetros
aleatorios de los que depende cada una de ellas, transforme las expresiones en
que intervienen variables aleatorias en secuencias ordenadas de operaciones
elementales entre variables aleatorias e identifique respecto de qu conjuntos de
parmetros aleatorios deben condicionarse las probabilidades de cada variable
aleatoria y qu reducciones en el condicionamiento deben realizarse. Las salidas
de la herramienta software son el modelo, expresado como una secuencia
ordenada de operaciones de las cuales evaluar en cada instante el valor de las
variables deterministas y la probabilidad de las variables aleatorias, y el
experimento, que contiene la representacin interna de la probabilidad de los
parmetros y las condiciones iniciales aleatorias.
4. Clasificar del conjunto de operaciones elementales en las que intervienen
variables aleatorias y disear los algoritmos para realizar estas operaciones.
Algunas de las ventajas del nuevo enfoque propuesto en esta tesis para la descripcin y
simulacin de modelos dinmicos hbridos con algunos parmetros y condiciones
iniciales aleatorias son las siguientes:
1. Es aplicable a la simulacin de sistemas dinmicos hbridos descritos empleando
cualquier lenguaje de modelado orientado a objetos que soporte la notacin
vectorial.
2. Permite la definicin "de alto nivel", en el modelo o en el experimento, de
parmetros aleatorios reales y Booleanos, compatible con la sintaxis del lenguaje
de modelado para la descripcin orientada a objetos del modelo.
3. Permite la definicin de valores iniciales aleatorios para las variables de estado
del modelo.
4. Proporciona directamente informacin acerca de la distribucin de cada una de
las variables aleatorias en cada instante de comunicacin, con lo cual se evita
tener que realizar el anlisis estadstico de las respuestas.
5. Permite obtener informacin de la distribucin total de probabilidad de cada
variable aleatoria en cada instante de comunicacin y de la misma distribucin
condicionada a cualquier subconjunto del conjunto de parmetros aleatorios del
modelo.
12 INTRODUCCIN. OBJETIVOS Y ESTRUCTURA DE LA TESIS


6. Garantiza que el conjunto verdadero (desconocido) de valores posibles de cada
variable aleatoria, en cada instante de comunicacin, est contenido en su
conjunto estimado de valores posibles en ese instante de comunicacin.
7. Permite controlar de forma sencilla la cantidad de informacin obtenida en la
estimacin de la distribucin de las variables aleatorias respuesta, permitiendo
balancear la cantidad de informacin obtenida y la carga computacional
asociada.
1.5 ESTRUCTURA DE LA TESIS
La tesis consta de:
1. Un documento principal, "MODELADO ORIENTADO A OBJETOS Y
SIMULACIN DE SISTEMAS HBRIDOS EN EL MBITO DEL CONTROL
DE PROCESOS QUMICOS".
2. Un documento anexo, "JARA v 1.0. DOCUMENTACIN DE LAS CLASES".
3. Un CD-ROM. Contiene el cdigo fuente de la versin 1.0 de JARA y los ejemplos
expuestos en el documento principal de la tesis.
El documento principal de la tesis puede considerarse integrado de tres partes:
1. En la primera, que corresponde con el Captulo 2, se discuten algunos de los
conceptos bsicos del modelado y de la simulacin de sistemas dinmicos hbridos.
Consiste fundamentalmente en una recopilacin bibliogrfica cuya finalidad es
definir los conceptos empleados en las dos siguientes partes de la tesis.
2. La segunda parte, que comprende del Captulo 3 al 8, contiene la exposicin de los
fundamentos y el diseo de JARA v. 1.0.
3. En la tercera parte, que corresponde con los Captulos 9 y 10, se aborda la
definicin y la simulacin de modelos dinmicos hbridos con algunos de sus
parmetros aleatorios.
En el propio documento principal de la tesis se han incluido tres anexos:
1. El Anexo A contiene una breve explicacin de la forma de realizar las operaciones
sobre el modelo empleando Dymola.
2. El Anexo B contiene la descripcin de un procedimiento para describir
matemticamente modelos con distintos estados y diferentes variables de estado en
cada uno de ellos.
3. El Anexo C contiene un resumen de la notacin empleada.
El documento principal contiene adems el ndice, las conclusiones y las lneas de
trabajo futuras.
CONCLUSIONES 13


1.6 CONCLUSIONES
En este captulo se ha presentado brevemente el papel actual del modelado orientado a
objetos y de la simulacin de sistemas dinmicos hbridos en el mbito del control de
procesos qumicos. Se han expuesto los objetivos de la tesis y se ha razonado su
motivacin, explicando el progreso que suponen sobre el estado del conocimiento.
Finalmente se ha indicado el modo en que se ha estructurado la tesis.


15
Captulo 2
MODELADO ORIENTADO A
OBJETOS Y SIMULACIN DE
SISTEMAS HBRIDOS
2.1 INTRODUCCIN
En este captulo se discuten algunos de los conceptos bsicos del modelado orientado a
objetos de sistemas dinmicos hbridos y algunas de las caractersticas que deben tener
los entornos de modelado para posibilitar el modelado orientado a objetos y la
simulacin de sistemas dinmicos hbridos. Estas son:
A fin de posibilitar el modelado orientado a objetos, el lenguaje de modelado:
Debe soportar la sintaxis necesaria para la definicin, parametrizacin,
reutilizacin, conexin e instanciacin de las clases y debe facilitar el encapsulado
de la informacin. Estos conceptos son discutidos en los Apartados 2.2 y 2.3.
Debe realizar automticamente ciertas manipulaciones sobre el modelo:
planteamiento de las ecuaciones del modelo completo, asgnacin de la
causalidad computacional, ordenacin de las ecuaciones y manipulacin
simblica, reduccin de ndice, etc. El Apartado 2.6 trata el problema de la
asignacin de la causalidad computacional y el Apartado 2.9 los problemas de
ndice superior. En el Apartado 2.7 se define el ndice de un sistema algebraico
diferencial de ecuaciones.
Para simular sistemas hbridos de ecuaciones algebraico diferenciales (DAE), es
preciso:
Disponer de un algoritmo de simulacin adecuado para sistemas hbridos (en el
Apartado 2.4 se discute el algoritmo de simulacin de Omola [Ande94]).
Realizar un tratamiento adecuado de los eventos discretos, tanto en la deteccin
como en la determinacin del instante de disparo y en la resolucin del problema
de reinicio. El Apartado 2.5 est dedicado al tratamiento de los eventos.
16 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


El lenguaje de modelado debe disponer de algoritmos para resolver mediante
manipulacin simblica los lazos algebraicos lineales y para hacer tearing de los
no lineales. El Apartado 2.8 est dedicado a estos temas.
Dentro de la gama de integradores que ofrezca el entorno de modelado, debe
encontrarse algn DAE solver. En el Apartado 2.12 se trata brevemente la
solucin numrica de DAEs.
En el Apartado 2.10 se indica cmo introduciendo determinado tipo de ecuaciones
mudas, que no modifican el modelo pero hacen que el sistema tenga ndice superior,
puede emplearse el algoritmo de reduccin de ndice del lenguaje de modelado para
escoger un determinado conjunto de variables algebraicas del modelo como variables de
estado [Elmq95]. En el Apartado 2.11 se enuncia el problema de la formulacin
matemtica y simulacin de los modelos de estructura variable y algunas de las
soluciones que se encuentran en la literatura. En el Apartado 2.13 se discute la
descripcin y simulacin de modelos hbridos con algunos parmetros aleatorios.
Finalmente, en el Apartado 2.14 se resumen brevemente las conclusiones.
2.2 CONCEPTOS BSICOS ACERCA DEL MODELADO DE
SISTEMAS DINMICOS
2.2.1 Modelado modular y jerrquico de sistemas dinmicos
Modelado modular
Al modelar un sistema complejo, resulta conveniente hacerlo de forma modular, es decir,
descomponer el sistema en partes y modelar las partes separadamente como submodelos.
El anlisis por reduccin consiste en dividir el sistema en partes, suponiendo que las
partes individuales sern ms fciles de entender que el conjunto y que, entendiendo el
comportamiento de cada parte y cmo interaccionan entre s las partes, se puede inferir,
y por tanto comprender, el comportamiento del conjunto [Stew81].
Las fases bsicas de la tcnica de modelado modular son [Stew81]:
1. Definicin de la estructura del sistema. Identificacin de sus distintas partes.
2. Definicin de la interaccin entre las partes.
3. Definicin del comportamiento interno de cada parte independientemente de las
dems.

La estructuracin del modelo en forma modular facilita su diseo y su realizacin, ya que
es ms fcil desarrollar y validar pequeos submodelos que modelos grandes. Adems
agiliza el desarrollo de los modelos, al permitir que diferentes especialistas trabajen
independientemente en diferentes partes del modelo. Cabe esperar que un modelo
construido modularmente sea ms fcilmente actualizable si vara la realidad fsica que
representa o las hiptesis bajo las cuales se ha realizado. Asimismo, la modularidad
CONCEPTOS BSICOS ACERCA DEL MODELADO DE SISTEMAS DINMICOS 17

facilita la reutilizacin de los modelos en diferentes contextos, reducindose as los
costes del modelado [Stew81] [Nils89].
Para poder realizar modelado modular, es conveniente que el lenguaje de simulacin
posibilite la modularidad, la componibilidad y la abstraccin. Se llama modularidad a la
capacidad de describir cada una de las partes del modelo de forma independiente. La
componibilidad es la capacidad de describir y realizar el ensamblaje entre las partes del
modelo. Se llama abstraccin a la posibilidad de usar cada parte del modelo sin conocer
sus detalles internos. La abstraccin es un modo de afrontar el problema de la
complejidad de los sistemas de grandes proporciones, al posibilitar que varios
especialistas puedan trabajar independientemente en diferentes partes del modelo del
sistema sin tener que conocer todos los detalles del resto del mismo. Una forma de
facilitar la abstraccin consiste en diferenciar, en cada parte del modelo, entre la interfaz
y la descripcin interna.
La interfaz es la parte que describe la interaccin del modelo con su entorno, a la vez
que asla ste de la descripcin interna del modelo, de modo que pueden ser
considerados separadamente. La descripcin interna del modelo contiene la informacin
acerca de la estructura y el comportamiento.
La abstraccin y la modularidad estn ntimamente relacionadas con el encapsulado de la
informacin, consistente en que slo las variables pertenecientes a la interfaz sean
accesibles desde el exterior del mdulo por otros mdulos (si bien todas las variables
pueden ser observadas en la simulacin del modelo). La ocultacin de la informacin
como criterio de diseo de los sistemas modulares facilita las modificaciones, las pruebas
y el mantenimiento de los modelos [Nils93] [Ande94].
Modelado jerrquico
A fin de facilitar su diseo y comprensin, el modelo puede, adems de modularmente,
realizarse de forma jerrquica, es decir, progresando de menor a mayor nivel de detalle
en su descripcin: el modelo se divide en submodelos, que a su vez pueden dividirse en
sub-submodelos y as sucesivamente. Esta descripcin del modelo en diferentes niveles
de detalle facilita adems su mantenimiento y reutilizacin.
La descripcin modular y jerrquica del modelo conduce a dos tipos de submodelos: los
primitivos y los compuestos. Los submodelos primitivos o atmicos no estn
compuestos por otros submodelos y describen mediante ecuaciones el comportamiento
de los componentes del proceso. Los submodelos compuestos o moleculares estn
constituidos por otros submodelos, primitivos o compuestos, y las conexiones entre
ellos. En [Nils89] puede encontrarse un buen ejemplo de descomposicin jerrquica de
un proceso qumico continuo.
Una descripcin natural de un modelo compuesto es una representacin grfica. Los
procesos qumicos continuos con frecuencia se representan mediante esquemas de flujo
de proceso (process flow sheet), consistentes en una descripcin grfica simplificada de
la organizacin del proceso que muestra de qu unidades consta y cmo estn
conectadas entre s. Cada una de estas unidades puede ser un modelo primitivo o
compuesto. En este ltimo caso, est representado a su vez mediante otro esquema de
flujo de proceso. Esta organizacin de la informacin en distintos niveles de profundidad,
18 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


ocultando en cada nivel la informacin correspondiente a los niveles de detalle superior,
facilita su comprensin. Esto no supone una limitacin si desde cualquier nivel de
descripcin del modelo puede accederse o bien al nivel superior de detalle de cualquiera
de sus submodelos o bien al nivel inferior de detalle. A esta propiedad se la llama zoom
de la informacin [Nils89].
2.2.2 Modelado orientado a objetos de sistemas dinmicos
El diseo orientado a objetos es un mtodo de la ingeniera del software, consistente en
analizar el sistema como un conjunto de objetos interactuantes. Este mtodo de diseo se
basa, entre otros, en los tres elementos conceptuales expuestos anteriormente: la
abstraccin, la ocultacin de la informacin y la modularidad [Pres93].
El diseo orientado a objetos tambin se aplica al modelado de sistema dinmicos: un
submodelo encapsula datos, estructura y comportamiento del mismo modo que en la
programacin orientada a objetos se encapsulan los datos y los procedimientos. Los
principales objetivos del modelado orientado a objetos de sistemas dinmicos son
[Nils89]:
Aumentar la productividad del programador al facilitar la modularidad y
reutilizacin del cdigo y al permitir que varios programadores trabajen
independientemente sobre diferentes partes del modelo.
Aumentar la calidad del cdigo.
Facilitar el refinamiento, modificacin y mantenimiento de los modelos.

Al igual que en el modelado modular y jerrquico, al realizar el diseo se define la
estructura del sistema a modelar y la interaccin entre sus partes antes de considerar la
representacin del comportamiento de sus componentes bsicos.
Conceptos importantes en el modelado orientado a objetos son los de clase e
instanciacin de una clase. Una clase es una descripcin de un grupo de objetos con
propiedades similares. Los modelos se representan como clases ms que como instancias,
ya que un modelo normalmente es una descripcin de un tipo de sistema ms que una
representacin de un sistema en particular. La simulacin se realiza sobre una
instanciacin del modelo. Los dos modos fundamentales de reutilizacin de las clases son
la composicin y la especializacin. La composicin es la capacidad de definir nuevos
modelos formados por submodelos, anteriormente definidos, conectados entre s. La
especializacin es la capacidad de definir nuevos modelos especializando otros ya
existentes.
La parametrizacin es un concepto clave en la reutilizacin. Los parmetros de un
modelo son todas aquellas propiedades que pueden cambiarse para adaptar el modelo a
sus diferentes aplicaciones. Un parmetro puede ser, en sentido amplio, desde una simple
variable hasta una estructura completa de submodelos.
La herencia es un mecanismo de comparticin de informacin entre clases mediante
especializacin. Una clase A puede definirse como una subclase de la clase B, dicindose
CONCEPTOS BSICOS ACERCA DEL MODELADO DE SISTEMAS DINMICOS 19

entonces que B es la superclase de A. Cuando una clase slo puede tener una nica
superclase se dice que hay herencia simple y en caso contrario que hay herencia
mltiple. La subclase hereda todos los atributos definidos en su superclase, con lo cual
puede considerarse como un refinamiento o especializacin del concepto general definido
en su superclase, al cual se aaden nuevos componentes o ecuaciones propios de la
subclase. Si los valores de atributos locales de una clase estn en contradiccin con los
heredados de su superclase, prevalecen en la clase los valores locales. Esta propiedad es
una forma de parametrizacin, ya que supone la modificacin de algunas de las
propiedades para adaptar el modelo a sus diferentes aplicaciones.
El polimorfismo es un concepto estrechamente relacionado con la reutilizacin de los
modelos. Modelos polimrficos son aquellos que tienen interfaces con estructuras
equivalentes y que adems tienen los mismos grados de libertad (diferencia entre el
nmero de variables, locales y terminales, y el nmero de ecuaciones del modelo). El
polimorfismo es una primera condicin para que varios modelos puedan ser usados en el
mismo contexto e intercambiados sin necesidad de alterar el resto del sistema.
Frecuentemente los modelos polimrficos poseen una misma superclase en comn, que
es aquella en la cual se define la interfaz.
2.2.3 Modularidad y causalidad computacional
Dado un conjunto de relaciones matemticas, la asignacin de la causalidad
computacional es la decisin de qu relacin debe emplearse para calcular cada
incgnita. El obstculo fundamental en el camino hacia la modularidad y la
componibilidad de modelos matemticos es la causalidad computacional, ya que es una
propiedad global del sistema completo: la causalidad computacional de cada parte en que
se ha dividido el sistema depende de las dems partes del mismo, de cmo se realice la
conexin entre las partes y de las condiciones de contorno del sistema [Cell91] [Cell93].
Las condiciones de contorno del sistema estn relacionadas con su finalidad, es decir,
con sus "causas" (variables de su interfaz que son manipuladas, comnmente llamadas
entradas) y con sus "efectos" (variables de su interfaz que cambian debido a esta
manipulacin, comnmente llamadas salidas). As pues, la causalidad computacional no
puede decidirse localmente en un subsistema sin considerar el sistema completo en
conjunto, con lo cual, entra en conflicto con el concepto de modularidad [Cell93].
Algunas de las herramientas comerciales de simulacin de propsito general actuales,
entre las que se encuentran ACSL y Simulink, imposibilitan el modelado modular al
imponer que el modelo contenga explcitamente informacin acerca de su causalidad
computacional. Son lenguajes de simulacin, en los cuales el cdigo es monoltico
respecto a la estructura del proceso fsico a modelar y estructurado en lo referente a la
utilizacin de algoritmos numricos [Hube94].
El modo de resolver este problema es no incluir informacin acerca de causalidad
computacional en la descripcin matemtica del modelo [Elmq93a]. ste es el enfoque
empleado por los entornos de modelado con lenguajes de modelado acausales, como son
Dymola [Elmq78] [Elmq96], Omola [Ande90] [Ande93] [Ande94], Camas [Cell91]
20 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


[Hoga95], Modelica [Mode97] [Mode99], EcosimPro [EAIn99], etc., en los cuales se
asigna automticamente la causalidad computacional del modelo completo, a partir de la
descripcin matemtica de las partes, del modo de conectarlas y de las condiciones de
contorno. Estas herramientas, adems de poseer todas las ventajas del modelado
modular, liberan al usuario de la tediosa tarea de establecer por s mismo la causalidad
computacional.
Al contrario de lo que sucede en los lenguajes de simulacin con causalidad
computacional explcita, en los cuales escribir una ecuacin del tipo variable=expresin
implica que de esa ecuacin debe evaluarse la variable situada al lado izquierdo de la
igualdad, en los lenguajes de modelado acausales el modo de escribir una ecuacin (en
la parte continua del modelo) no informa acerca de la variable que debe calcularse en
ella. Los modelos son declarativos, al definir relaciones ms que constituir
procedimientos para el clculo de los datos [Hube94]. Adems del algoritmo para
realizar automticamente la asignacin de causalidad computacional, estos lenguajes
estn dotados de potentes manipuladores simblicos de frmulas para despejar
automticamente la variable a calcular de cada ecuacin, resolver lazos algebraicos
lineales, diferenciar simblicamente, etc.
2.3 ALGUNOS ENTORNOS DE MODELADO ORIENTADO A
OBJETOS DE PROPSITO GENERAL
2.3.1 INTRODUCCIN
En la actualidad existe un gran nmero de lenguajes de modelado orientados a objetos de
propsito general que permiten una descripcin acausal de modelos dinmicos. Algunos
ejemplos son ABACUSS II, ASCEND, Dymola, EcosimPro, gPROMS, NMF,
ObjectMath, Omola, Smile, U.L.M.-Allan, etc. Adems, existen programas de simulacin
de propsito especfico para procesos qumicos, por ejemplo, ASPEN Plus, SpeedUp,
etc., que poseen GUI especializadas y amplias libreras de modelos.
No existe, sin embargo, un estndar establecido para la descripcin externa orientada a
objetos y acausal de modelos hbridos. Modelica constituye un intento de establecer este
estndar [Mode99], para lo cual se ha basado, entre otras aportaciones, en la experiencia
adquirida con ASCEND, Dymola, gPROMS, MOSES, NMF, ObjectMath, Omola,
SIDOPS+, Smile, U.L.M.-ALLAN y VHDL-AMS. Algunos de los diseadores de estos
lenguajes (Dymola, MOSES, NMF, ObjectMath, Omola, SIDOPS+, Smile y U.L.M.-
Allan) han integrado el equipo de trabajo de Modelica. Todos estos lenguajes permiten
describir la parte continua del modelo de forma acausal, la descomposicin jerrquica y
soportan el concepto de clase de modelo. Tambin permiten describir las conexiones
entre submodelos agrupando conjuntos de variables en algn tipo de puerto, que puede
ser conectado sin tener que hacer mencin a sus variables individuales [Mode99].
ABACUSS II [Bart99] es un lenguaje de modelado orientado a objetos de propsito
general desarrollado en el MIT para la simulacin de sistemas dinmicos hbridos y para
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 21

la resolucin de problemas en el estacionario. ABACUSS II trabaja en conexin con
DAEPACK [Bart99a], una librera software para el anlisis simblico y el clculo
numrico. ABACUSS se aplica fundamentalmente a la simulacin de procesos qumicos.
ASCEND (Advanced System for Computation in ENgineering Design) fue desarrollado
en la Universidad de Carnegie Mellon [Piel89] y est concebido para la construccin de
modelos con grandes sistemas de ecuaciones algebraicas no lineales. Soporta herencia
mltiple y descomposicin jerrquica. El dominio de aplicacin es el modelado de
procesos qumicos. Versiones posteriores soportan el modelado de sistemas dinmicos
de tiempo continuo [Mode99].
gPROMS (general PROcess Modelling System) fue desarrollado en el Centre for Process
Systems Engineering en el Imperial College de Londres [Bart92] [Bart94] y desde 1997
es un producto comercial. El lenguaje es un desarrollo de SpeedUp. Soporta el modelado
de sistemas DAE hbridos y algunos tipos de ecuaciones en derivadas parciales. Su
mayor campo de aplicacin es el modelado de procesos qumicos [Pant96].
NMF (Neutral Model Format) [Sahl96] es un lenguaje de la escuela de Omola y Dymola
[Mode99]. ObjectMath (Object Oriented Mathematical Modeling Language) [Frit95] es
un lenguaje de modelado diseado como una extensin de Mathematica. El lenguaje
integra las construcciones orientadas a objetos, tales como las clases y la herencia
mltiple, con las capacidades de Mathematica [Mode99].
Omola [Matt93] [Ande94] es un lenguaje de modelado orientado a objetos de sistemas
dinmicos hbridos. Los modelos pueden ser descompuestos jerrquicamente con
interfaces bien definidos que describen su interaccin. Todos los componentes del
modelo son representados como clases. Soporta la descripcin de la parte continua del
modelo como un DAE. Un entorno interactivo, denominado OmSim, soporta el
modelado y la simulacin [Mode99].
Smile es un lenguaje de modelado orientado a objetos aplicado tradicionalmente a la
simulacin en el mbito de la obtencin de energa solar y de las plantas generadoras de
energa [Tumm97], si bien es aplicable a otros tipos de sistemas complejos. A
continuacin se discuten brevemente los lenguajes de modelado Dymola, Modelica y
EcosimPro.
22 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.3.2 Dymodraw - Dymola - Dymosim - Dymoview
Descripcin del entorno de modelado
En el esquema de la Figura 2.1 se muestra la interrelacin de las cuatro herramientas que
integran el entorno de modelado: el editor grfico de modelos, Dymodraw, el
manipulador simblico y traductor, Dymola, el simulador, Dymosim, y el visualizador del
resultado de la simulacin, Dymoview.
El editor grfico de modelos, Dymodraw, permite definir clases nuevas o modificar las ya
existentes. Dispone de una paleta grfica para la construccin de iconos que representen
a las clases. De este modo, las conexiones entre clases pueden describirse mediante
conexiones grficas entre sus iconos. Se soporta la creacin de libreras de clases, cuyos
elementos pueden conectarse entre s de forma grfica para formar clases compuestas a
las que a su vez puede asociarse un icono y que, a su vez, pueden ser conectadas con
otras clases para formar modelos jerrquicos estructurados con niveles crecientes de
complejidad [Elmq96].
Una vez definido el modelo, con o sin ayuda de Dymodraw, debe ser cargado en
Dymola. Dymola realiza la manipulacin simblica del modelo a fin de expresarlo de
forma admisible como entrada a una determinada herramienta de simulacin, a eleccin
del usuario, de entre un conjunto determinado de ellas. Puede generar cdigo de
simulacin escrito en diferentes lenguajes de simulacin (ACSL [Mitc93], Desire
[Korn89], Simnon [SSPA90], Simulink) o en cdigo C (siguiendo el formato Dsblock
[Otte92] para Dymosim [Elmq96] o siguiendo la especificacin SimStruct para
SimStruct).























Figura 2.1 Interrelacin entre Dymodraw, Dymola, Dymosim y Dymoview.

Dymodraw
Modelo escrito
en Dymola
Fichero de
rdenes
Dymola
Cdigo C
SimStruct
Cdigo C
DSBLOCK
ACSL
Desire
Simnon
Simulink
Modelo escrito en el
lenguaje de
simulacin escogido
Herramienta
de simulacin
SimStruct
Dymosim
ACSL
Desire
Simnon
Simulink
Resultado
simulacin
Dymoview
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 23

La herramienta de simulacin distribuida con el entorno de modelado Dymodraw-
Dymola-Dymosim-Dymoview es Dymosim, que proporciona diez mtodos de
integracin, soportando modelos de tipo ODE (Ordinary Differential Equations), DAE
(Differential Algebraic Equations) y ODAE (Overdetermined Differential Algebraic
Equations). En [Elmq96] puede encontrarse una descripcin de las caractersticas de
estos mtodos y algunas recomendaciones acerca de su uso.
Si el lenguaje de simulacin elegido es Dymosim, desde la ventana de Dymola puede
generarse y compilarse la descripcin del modelo propia del lenguaje Dymosim (en
lenguaje C), obtenindose un ejecutable (dymosim.exe). La definicin del experimento
puede realizarse desde la ventana de Dymola. Como resultado de la simulacin,
Dymosim genera un fichero (dres.txt) conteniendo los valores en cada instante de
comunicacin de las variables del modelo.
Dymoview puede ejecutarse independientemente (dymoview.exe) y permite representar
grficamente la respuesta temporal de las variables y la evolucin de una variable frente a
otra [Elmq96]. Admite como entrada los ficheros de salida de ACSL, Dymosim, Matlab
y Simnon.
Descripcin del modelo
Dymola soporta el modelado orientado a objetos, posibilitando la reutilizacin de las
clases mediante composicin (definicin de submodelos y de sus conexiones) y herencia
simple (en [Elmq95a] se expone el proyecto de dotar a Dymola con herencia mltiple), si
bien ni impone el encapsulado de la informacin (puede accederse a las variables de la
descripcin interna de las clases usando la notacin punto) ni tampoco permite modificar
una definicin heredada [Elmq96].
Dymola facilita la abstraccin al permitir al programador diferenciar entre la descripcin
interna (ecuaciones, submodelos y sus conexiones) y la interfaz (variables terminales y
variables de tipo parmetro) de las clases, si bien no proporciona una sintaxis que las
diferencie en secciones claramente separadas. La nica forma de parametrizacin de las
clases consiste en la modificacin del valor de las variables de tipo parmetro al reutilizar
la clase mediante composicin o en la definicin del experimento [Elmq96]. En
[Elmq95a] se propone la posibilidad de modificar la clase de los submodelos de una clase
al reutilizarla, si bien hasta la fecha (versin 4.0) esta capacidad no ha sido
implementada.
A fin de facilitar su conexin, las variables terminales (aquellas que describen la
interaccin con el entorno) pueden agruparse en cuts de variables (ver Figura 2.2) y los
cuts de variables pueden agruparse en cuts jerrquicos y paths (ver Figura 2.3)
[Elmq96]. Las variables terminales en Dymola se clasifican, para un determinado cut,
dependiendo de cmo se relacionan en el punto de conexin, en across (aquellas que
valen lo mismo en el punto de conexin) o through (aquellas cuya suma vale cero en el
punto de conexin) (ver Figura 2.4). Diferentes operadores de conexin (at, to, from,
par, loop y reversed) permiten definir las conexiones entre los cuts y entre los paths de
los submodelos [Elmq96].
24 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Sintaxis de cut de variables: cut nombre_cut_var ( variables_across / variables_through )

Ejemplo:
cut Ta ( pA / FvA )
cut Tb ( pB / FvB )

pA, pB: presiones.
FvA, FvB: flujos.

Figura 2.2 Variables terminales agrupadas en cuts.
Sintaxis de cut jerrquico:
cut nombre_cut_jer [ cut_var, cut_var, ... ]

Ejemplo:









Sintaxis de path:
path nombre_path < cut_var - cut_var >

Ejemplo:



Figura 2.3 Cuts jerrquicos y paths.
Regla: Variables across: valen lo mismo en el punto de conexin.
Variables through: su suma vale cero en el punto de conexin.

Ejemplo:

Ecuaciones de la conexin:

V1.pB = V2.pA = V3.pA
V1.FvB + R2.FvA + R3.FvA = 0

Figura 2.4 Regla de conexin para variables across y through.
Las variables en Dymola pueden clasificarse atendiendo a diferentes criterios. Segn el
tipo de dato que almacenen pueden clasificarse en reales y en Booleanas. Segn su
dimensin, en escalares, vectores o matrices. Segn pertenezcan a la interfaz (variables
terminales y parmetros) o a la descripcin interna (variables locales y constantes).
Segn sean independientes (parmetros y constantes) o dependientes del tiempo
(variables locales y terminales) y en este ltimo caso, pueden clasificarse en continuas y
discretas, segn dependan de forma continua o discreta del tiempo.
Todas las variables deben ser declaradas una nica vez, indicando si forman parte de la
interfaz o de la parte interna de la clase, si bien no es preciso especificar el tipo de
variable (continua, discreta o lgica), ya que Dymola diferencia el tipo de una variable a
partir de su uso en el modelo [Elmq96]. La finalidad de obligar al programador a
declarar todas las variables es facilitar la deteccin de errores tipogrficos. Este tipo de
requerimiento, como tambin, por ejemplo, obligar a definir la dimensin de las variables
vectoriales al declararlas, se denomina redundancia y contribuye a robustecer la
programacin [Cell79].
Tb(pB/FvB) Ta(pA/FvA)
pA
FvA FvB
pB
pA
FvA FvB
pB
pA
FvA FvB
pB
pA
FvA FvB
pB
V1
V2
V3
pA1
FvA1 FvB1
V1
pB1
pA2
FvA2 FvB2
V2
pB2
Tb2(pB2/FvB2)
Tb1(pB1/FvB1)
Ta1(pA1/FvA1)
Ta2(pA2/FvA2)
Ta[Ta1,Ta2 ] Tb[Tb1,Tb2 ]
Tb(pB/FvB) Ta(pA/FvA)
pA
FvA FvB
pB
Path T <Ta - Tb>
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 25

Dymola es un lenguaje de modelado acausal en la descripcin de la parte continua del
modelo y permite la definicin de ecuaciones escalares, vectoriales y matriciales. Sin
embargo, en las ecuaciones Booleanas el operador igualdad (=) es un operador de
asignacin: la ecuacin se emplea para evaluar la variable que aparece a la izquierda de
la igualdad [Elmq96]. Las ecuaciones Booleanas son de la forma siguiente:
< variable Booleana > = < expresin Booleana >
Las expresiones Booleanas pueden contener relaciones de desigualdad (<, >), variables
Booleanas, operadores Booleanos (and, or, not), parntesis y expresiones if-then-else.
Las expresiones Booleanas se usan para evaluar variables Booleanas o como condicin
en las expresiones if-then-else y en las ecuaciones when [Elmq96].
Dymola permite la descripcin de algunos tipos de modelos de estructura variable
mediante la construccin if-then-else:
<variable> = if <condicin> then <expresin> else <expresin>
No se admite la construccin "then if", pero s la "else if". Adems todo then debe ir
asociado a un else, de este modo se asegura que siempre existe una expresin de la cual
evaluar la variable, ya que si todas las condiciones valen false la variable se evala de la
expresin del ltimo else, y adems, al no permitirse la construccin then if, se asegura
que no hay ms que una rama para el caso en que todas las condiciones valgan false. Las
expresiones de todas las ramas then y else deben ser o todas reales o todas Booleanas.
Dymola es capaz de resolver expresiones if-then-else si tanto la rama then como la else
son lineales respecto a la variable desconocida y si la condicin if es independiente de
ella [Elmq96].
Dymola permite la definicin de ecuaciones instantneas que son vlidas (se satisfacen)
slo en el instante en que la condicin pasa de false a true. Se definen de la forma
siguiente:
when <condicin> then <ecuaciones instantneas> endwhen
La traduccin de las ecuaciones instantneas se realiza con un algoritmo similar al que se
emplea para las expresiones if-then-else. Las relaciones de la condicin de la sentencia
when se traducen a funciones de cruce [Elmq96]. Las variables evaluadas en las
ecuaciones instantneas pueden ser o bien estados continuos o bien variables discretas.
Las ecuaciones when pueden ser usadas para modificar el valor de variables de estado
continuas. Dado que en la parte continua del modelo existir una ecuacin para evaluar
la derivada de la variable de estado y la variable de estado se evaluar por integracin de
su derivada, para que la ecuacin instantnea que modifica el valor de la variable de
estado no viole la regla de asignacin nica, se define el operador especial init( ), que
debe aplicarse sobre la variable de estado en la ecuacin instantnea.
La regla de asignacin nica impone que todos los cambios instantneos que deba sufrir
una determinada variable de estado deben quedar recogidos en una nica ecuacin
instantnea, es decir, una misma variable de estado no puede ser modificada en dos
ecuaciones instantneas correspondientes a dos condiciones de evento diferentes
[Elmq96]. Esto, si bien elimina el riesgo potencial de que pudieran dispararse
26 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


simultneamente varios eventos diferentes que asignen valores diferentes al estado (con
el consiguiente problema de decidir qu accin tomar), supone una limitacin en cuanto
a la modularidad de la parte discreta del modelo.
Para diferenciar en las ecuaciones instantneas y en las ecuaciones Booleanas el valor
que toma la variable (de estado) discreta antes del evento del que toma despus del
mismo, se define el operador new( ). Se emplea, por ejemplo, en aquellas ecuaciones en
diferencias en las que el valor de una variable en el instante inmediatamente posterior al
evento es evaluado a partir de su valor en el instante anterior al evento. Por ejemplo, la
ecuacin en diferencias:
( ) ( ) ( ) ( )
x t f x t u t t
i i i i +

1
, ,
puede escribirse de la forma siguiente:
new(x) = f(x,u,t)
donde new(x) representa el valor de la variable de estado discreta x despus del
evento y x el valor de la misma variable antes de producirse el evento.
Descripcin del experimento cuando se emplea Dymosim
La forma en que debe ser descrito el experimento depende del lenguaje de simulacin
que vaya a emplearse para simular el cdigo generado por Dymola. En el caso de
Dymosim, el fichero de descripcin del experimento (dsin.txt) es generado desde Dymola
y contiene la siguiente informacin: los valores iniciales de las variables de estado y de
las variables que van a ser iteradas en los lazos algebraicos, el valor de los parmetros del
modelo, el instante inicial y final de la simulacin, informacin para definir los instantes
de comunicacin y el tipo de variables cuyo valor debe almacenarse en ellos, el algoritmo
de integracin a emplear y su tolerancia numrica, parmetros para la gestin de los
eventos y otros parmetros empleados por los algoritmos numricos.
Manipulaciones sobre el modelo realizadas por Dymola
Dymola dispone de las herramientas de manipulacin simblica necesarias para, a partir
de la descripcin orientada a objetos del modelo, generar el sistema de ecuaciones que
constituye el modelo completo. Las variables alias y las ecuaciones triviales a que dan
lugar las ecuaciones de conexin de las variables de tipo across pueden ser eliminadas
automticamente del modelo si el usuario as lo especifica.
Dymola realiza automticamente la asignacin de la causalidad computacional,
ordenando las ecuaciones y manipulndolas simblicamente cuando la variable a evaluar
aparece en forma lineal.
La reduccin de ndice (reduccin de los lazos algebraicos entre variables de estado a
lazos algebraicos entre variables auxiliares) se realiza tambin de forma automtica. Para
ello se aplica el algoritmo de Pantelides [Pant88], diferenciando simblicamente y
aadiendo las ecuaciones diferenciadas al modelo. Dymola escoge entonces
automticamente (a partir de la versin 3.1) qu conjunto de las variables que aparecen
derivadas debe ser consideradas variables de estado. El usuario es libre de modificar esta
eleccin si lo desea.
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 27

Los lazos algebraicos son identificados al realizar la asignacin de la causalidad
computacional. Los lazos lineales pueden ser resueltos o todos simblicamente o todos
numricamente y es soportado el tearing de los lazos no lineales. La versin 3.1 de
Dymola ofrece la posibilidad de que, si el usuario lo desea, la seleccin de las variables
de tearing y de las ecuaciones residuo se realice de forma automtica. En algunos casos
esta eleccin es nica. Cuando no lo es, y puesto que es preciso proporcionar valores
iniciales a las variables de tearing para la iteracin del lazo, el usuario puede estar
interesado en cortar el lazo algebraico de forma que el conjunto de variables de tearing
sea uno determinado de entre los posibles. Asimismo, puede resultar ms conveniente,
desde el punto de vista numrico, seleccionar un determinado conjunto de ecuaciones
residuo.
En la Figura 2.5 se muestran las operaciones para transformar el modelo escrito en
Dymola en un modelo que pueda servir como entrada a la herramienta de simulacin
Dymosim. Se han sealado las ordenes para que Dymola realice las operaciones y
aquellas en las cuales se precisa la toma de decisiones por parte o bien de Dymola o bien
del usuario. En el Anexo A se describe el procedimiento y la secuencia de comandos que
debe emplear el usuario para que Dymola realice las manipulaciones sobre el modelo. En
los Apartados 2.6 a 2.9 se discuten los fundamentos tericos sobre los que se basan estas
manipulaciones.
2.3.3 Modelica
Introduccin
El grupo de trabajo de Modelica est integrado por diseadores y programadores de
lenguajes de simulacin y por usuarios de diferentes dominios de aplicacin y su objetivo
es unificar los conceptos e introducir un lenguaje de modelado comn [Mode99]. Se
pretende que tanto las herramientas de simulacin de propsito general como las
especializadas en cierto formalismo (ODE, DAE, PDE, bond graphs, autmatas de
estado finito, redes de Petri, etc.) y/o dominio de aplicacin (circuitos elctricos,
mecnica y robtica, termodinmica, procesos qumicos, etc.) almacenen los modelos en
el formato de Modelica a fin de permitir el intercambio de modelos entre herramientas y
entre usuarios [Mode99]. En la actualidad Dymola [Emlq99] y Smile [Erns97] ya prevn
soportar Modelica.
El primer objetivo del grupo fue el diseo de un lenguaje de modelado de sistemas DAE
que permitiera la descripcin de eventos para representar discontinuidades y sistemas de
tiempo discreto. A continuacin se describen algunas de las caractersticas de la versin
1.1 de Modelica. Este diseo pretende ser extendido en el futuro para obtener un
lenguaje de propsito general multi-formalismo y multi-dominio [Matt98] [Mode99].
28 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS




















































Figura 2.5 Secuencia de operaciones sobre el modelo realizadas por Dymola.
Asignacin de la causalidad computacional
Modelo escrito
en Dymola
Resolucin de las conexiones
ndice
superior
Eleccin de las variables de estado
Reduccin de ndice
Asignacin de la causalidad computacional
Lazos
algebraicos
lineales
Solucin
simblica
Lazos
algebraicos
no lineales
Modelo escrito
en Dymosim
Generar modelo
Tearing
del lazo
Eleccin variables de tearing y ecuaciones residuo
Si
No
variable
tear
No
Si
Solucin simblica de todos los lazos lineales
variable
unknown
rdenes que
implican toma
de decision
differentiate
partition
partition
enter model
rdenes
set solveSymbolic on
output model
compile
No
Si
Si
No
No
Si
Leyenda
Particular para
cada lazo no lineal
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 29

El lenguaje de modelado
El elemento bsico del lenguaje es la clase. Los modelos son clases de tipo model o
partial model dependiendo de que describan un modelo completo o nicamente ciertas
propiedades de l. Las clases pueden agruparse en clases especiales, denominadas
package, que contienen nicamente declaraciones de constantes y de clases. Se puede
acceder a las clases internas del package usando la notacin punto. Modelica soporta
herencia mltiple.
Modelica permite modificar las clases de las dos siguientes formas:
Al reutilizarlas mediante composicin. Asignando nuevos valores a sus variables de
tipo parmetro. Se define un tipo de clase (record) cuya finalidad es agrupar
conjuntos de parmetros. Instanciaciones de esta clase pueden ser usados para
modificar conjuntos de parmetros de una clase al reutilizarla.
Al reutilizarlas mediante herencia. Si no se ha prohibido expresamente, al heredar una
clase compuesta es posible modificar la clase y el valor de los parmetros de cada
uno de los submodelos que componen la clase heredada (sentencia redeclare). Para
ello, la nueva clase del submodelo debe ser un subtipo de la antigua (se dice que la
clase A es un subtipo de la clase B si la clase A contiene todos los componentes
pblicos de B). Tambin es posible especificar que la clase de algunos de los
submodelos (replaceable model) y/o de algunos de los conectores (replaceable
connector) que componen una clase son parmetros que pueden ser redefinidos al
reutilizar la clase.
Durante el modelado Modelica oculta la informacin contenida en la seccin protected
de una clase cuando sta se reutiliza como un submodelo. El resto de las variables son
accesibles usando la notacin punto. Las variables de la seccin protected de una clase s
son accesibles desde cualquier otra clase que la extienda mediante herencia.
Las variables de la interfaz se clasifican en across y through (igual que en Dymola) y se
declaran agrupadas en clases especiales denominadas connector. Las clases que
describen el modelo heredan la descripcin de su interfaz. La conexin entre los
submodelos se define aplicando la funcin connect( ) a parejas de clases del tipo
connector. Es posible hacer que Modelica compruebe que la causalidad computacional
de las variables terminales es la deseada (usando los prefijos input y output). Se define un
tipo especfico de clase (block) para describir diagramas de bloque, en los cuales est
fijada la causalidad computacional de todas sus variables terminales.
Modelica proporciona la sintaxis para definir conjuntos de ecuaciones, de submodelos y
de conexiones mediante bucles for. Las ecuaciones que describen la parte continua del
modelo son acausales, sin embargo, pueden usarse secuencias ordenadas de asignaciones
en una clase incluyndolas dentro de una seccin especial (algorithm). En la seccin
algorithm pueden emplearse sentencias de asignacin del tipo <variable>:=<expresin>,
estructuras for y estructuras while. Se define un tipo especial de clase, denominado
function, que contiene nicamente variables pblicas, definidas como entradas o salidas
computacionales, y una seccin algorithm. Las clases de tipo function tambin pueden
contener llamadas a funciones definidas en otros lenguajes.
30 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


La funcin assert permite mostrar un mensaje de error cuando la expresin Booleana
asociada vale false. Modelica incorpora funciones especiales. Por ejemplo, size( )
devuelve la dimensin de la matriz sobre la que se aplica, cardinality( ) devuelve el
nmero de conexiones realizadas al conector sobre el que se aplica, direction( ) devuelve
1 -1 en funcin de la direccin de una conexin, etc.
Modelica proporciona la estructura if-then-else para describir modelos discontinuos.
Puede indicarse que no se desea que cuando se detecte el evento se detenga la
simulacin y se itere para localizar el instante de disparo, es decir, que se desea
"suavizar" la discontinuidad, aplicando la funcin noEvent( ) a la condicin de la
expresin if-then-else. Se permite la descripcin de algunos tipos de modelos
condicionales al ser posible activar o desactivar en tiempo de simulacin un componente
de una clase compuesta (parmetro enable). Las ecuaciones instantneas se modelan
empleando la estructura when.
Modelica tiene un lenguaje para la construccin grfica de modelos, es decir, para la
representacin de iconos, de la estructura de modelos compuestos y de la conexin entre
submodelos. Tambin facilita la sintaxis para la documentacin de los modelos.
2.3.4 EcosimPro
Introduccin
Ecosim comenz a desarrollarse en 1989 producto de un contrato de EA International
con la Agencia Espacial Europea (ESA). En 1993 se complet la primera versin de
Ecosim y en 1996 la segunda (ambas bajo UNIX). Con el desarrollo de la versin 3.0
(bajo PC Windows) se cambi el nombre de la herramienta de Ecosim a EcosimPro. La
primera versin comercial apareci a finales de 1999 [EAIn99].
Descripcin del modelo
EcosimPro es una herramienta de simulacin multidisciplinar, con un lenguaje de
modelado, EL (EcosimPro Language), orientado a objetos que genera cdigo C++
siguiendo un estndar desarrollado por la ESA [ESA99]. La descripcin del modelo
puede hacerse usando EL o usando el editor grfico SmartSketch (es una marca
registrada de Intergraph) [EAIn99] [Pere99] .
El lenguaje de modelado impone el encapsulado de la informacin. Los nicos
elementos visibles de una clase (denominada componente en EcosimPro) en la fase de
modelado son los de su interfaz pblica: los puertos, los parmetros y los datos. Permite
la composicin y la especializacin mediante herencia mltiple [EAIn99]
Se diferencian al declararlos dos tipos de componentes: los abstractos y los concretos.
Los componentes abstractos son aquellos que por s mismos no representan ningn
componente real y slo pueden ser usados como superclase de otros componentes (por
ejemplo, la definicin de las interfaces). Los componentes concretos son aquellos que
representan por s mismos una realidad fsica. En la declaracin de los componentes se
organiza en diferentes secciones la definicin de los parmetros y de las constantes
ALGUNOS ENTORNOS DE MODELADO ORIENTADO A OBJETOS DE PROPSITO GENERAL 31

(seccin DATA), la declaracin de las variables (seccin DECLS) y de los puertos
(seccin PORTS), la parte continua (seccin CONTINUOUS), de la discreta (seccin
DISCRETE), los submodelos y las ecuaciones de conexin (seccin TOPOLOGY), las
sentencias de inicializacin a ejecutar secuencialmente antes del comienzo de la
simulacin (seccin INIT) [EAIn99].
La conexin de los componentes se realiza mediante la conexin de sus puertos. La
definicin de los puertos incluye la declaracin de sus variables, donde se especifica el
tipo (REAL, BOOLEAN, etc.), la forma en que debe ser conectada (EQUAL, SUM) y si
para un determinado sentido del puerto (IN, OUT) no debe conectarse la variable. Los
puertos de clasifican en IN y OUT, determinndose de esta forma el sentido de sus
variables de tipo SUM. Al definir el puerto pueden especificarse cierto tipo de
restricciones acerca de la forma en que puede ser conectado (por ejemplo, el nmero de
puertos a los que puede conectarse) [EAIn99].
En EL se definen tres tipos diferentes de sentencias: secuenciales, continuas y discretas.
Las sentencias secuenciales son ejecutadas sin modificar su orden. Se emplean en las
inicializaciones, en funciones y en las acciones de eventos discretos, en aquellos casos en
que se requiere un orden estricto de ejecucin. Las sentencias secuenciales son las
habituales en los lenguajes de programacin: asignaciones, llamadas a funciones, if-then-
else, while, for, etc. [EAIn99].
Las sentencias continuas se emplean para expresar las ecuaciones algebraico
diferenciales de forma acausal y son ordenadas por los algoritmos internos de
EcosimPro. Se permite la descripcin de ecuaciones escalares, vectoriales y matriciales
(sentencia EXPAND) y se soporta la descripcin (en la seccin CONTINUOUS) de
determinados tipos de sistemas de estructura variable usando una estructura del tipo if-
then-else: <variable>=ZONE <condicin> <expresin1> OTHERS <condicin2>. Se
posibilita al programador del modelo escribir una determinada expresin de formas
diferentes en funcin de la incgnita que la particin del sistema determine que deba ser
evaluada de ella (sentencia INVERSE) [EAIn99].
Las sentencias discretas se usan para expresar eventos. La forma de expresar ecuaciones
instantneas es mediante la sentencia WHEN <condicin> THEN <acciones> END
WHEN (en la seccin DISCRETE). EL permite realizar en tiempo de simulacin
chequeos de integridad: es posible incluir, en la parte secuencial o discreta, sentencias
que generen avisos o mensajes de error cuando deja de satisfacerse determinada
condicin (sentencia ASSERT) [EAIn99].
La herencia mltiple debe utilizarse respetando la siguiente regla: no puede declararse en
dos de las superclases una variable con el mismo nombre [EAIn99].
Descripcin del experimento
EL dispone de un lenguaje para la descripcin de experimentos que permite especificar el
estado inicial del sistema y las condiciones de contorno que representan el estado del
entorno, integrar el modelo entre un instante inicial y uno final, calcular el estado
estacionario a partir de las condiciones en un determinado instante, optimizar
parmetros, especificar el tipo de informe que se desea obtener como resultado de la
simulacin, etc. [EAIn99]. El GUI de EcosimPro proporciona un Monitor del
32 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Experimento (Experiment Monitor) que permite conocer y cambiar el valor de las
variables durante la simulacin [Pere99].
Operaciones sobre el modelo
EcosimPro genera automticamente las ecuaciones del modelo completo, detectando
automticamente las variables equivalentes y las ecuaciones triviales. Detecta
automticamente los problemas de ndice superior. Si el problema de ndice superior es
debido a ligaduras lineales triviales entre las variables que aparecen derivadas, lo resuelve
eliminando del modelo estas ligaduras y las variables alias que aparecen derivadas. En
caso contrario aplica el algoritmo de Pantelides y muestra qu variables pueden ser
seleccionadas como variables de estado, indica cuntas deben escogerse y propone una
seleccin [EAIn99].
Una vez que el sistema no tiene ndice superior, EcosimPro compara el nmero de
ecuaciones y de incgnitas del sistema. Si el nmero de ecuaciones es mayor que el de
incgnitas muestra un mensaje de error indicando el conjunto de ecuaciones redundantes.
Si hay ms incgnitas que ecuaciones es preciso especificar condiciones de contorno
adicionales. EcosimPro muestra una posible eleccin de variables sobre las que imponer
las condiciones de contorno [EAIn99].
EcosimPro realiza automticamente la particin del sistema, ordenando las ecuaciones,
resolviendo simblicamente las incgnitas que aparecen de forma lineal, los lazos
algebraicos lineales y hace tearing de los lazos no lineales, proponiendo un conjunto
posible de ecuaciones residuo y variables de tearing. La integracin se realiza empleando
DASSL [EAIn99].
2.4 SIMULACIN DE MODELOS HBRIDOS
Los modelos hbridos, que contienen variables continuas y eventos discretos, son muy
difciles de analizar si no es por medio de simulaciones. Un sistema hbrido general
consiste en un proceso continuo interactuando con un autmata de estado finito. El
estado de un sistema hbrido evoluciona mediante el cambio continuo de sus estados
continuos o mediante cambios instantneos en su estado total, continuo y discreto,
llamados eventos [Cell79]. El algoritmo de simulacin de sistemas hbridos debe estar
especialmente diseado para conmutar entre la resolucin del problema continuo y la
ejecucin de los eventos. Un ejemplo de este tipo de algoritmos es el que emplea Omola
[Ande94]. A continuacin, previamente a la exposicin del algoritmo de simulacin de
modelos hbridos de Omola, se discute el formalismo de los modelos hbridos en que se
basa [Ande94].
SIMULACIN DE MODELOS HBRIDOS 33

2.4.1 Formalismo de los modelos hbridos de Omola
De acuerdo con el formalismo OHM (Omola Hybrid Model) [Ande94], un modelo
hbrido puede representarse mediante la tupla M Q X E g h , , , , , , , donde sus
componentes estn definidos de la forma:
( )
q
n
q q Q ,...,
1
Es un vector de variables representando el estado discreto del sistema.
Las variables pueden ser reales, enteras o lgicas.
( )
x
n
x x X ,...,
1
Es un vector de variables reales representando el estado continuo del
sistema.
{ }
e
n
e e E ,...,
1
Es el conjunto de los posibles tipos de eventos.
{ }
g
n
g g g ,...,
1
Es el conjunto de funciones que definen el comportamiento continuo
del sistema ( ) ( ) ( ) g Q t X t X g
t i

i
g , 0 , ,
&
, donde la notacin
t
Q indica
que el estado discreto Q es actualizado en los instantes de los eventos,
siendo constante entre ellos. A efectos del integrador de la parte
continua del modelo, los estados discretos son considerados como
parmetros de valor constante conocido.
{ }
h
n
h h h ,...,
1
Es un conjunto de funciones Booleanas tales que
( ) ( ) ( ) true Q t X t X h
t i
, ,
&
, con h
i
h , definen los invariantes del
modelo. Las funciones invariantes dividen el espacio de estados en dos
partes: el conjunto de estados admisibles, donde todos los
i
h son true,
y los restantes estados, donde al menos una de ellas es false. Cuando el
sistema cruza la frontera definida por las funciones invariantes, saliendo
del conjunto de estados admisibles se dispara un evento. Son funciones
"chivatas" que indican, al pasar de true a false, que las condiciones de
disparo de su evento asociado se satisfacen. Los complementos
Booleanos de los invariantes { }
h
n
h h h ,...,
1
se llaman condiciones de
evento. Una condicin de evento que depende de al menos una variable
continua se llama condicin continua. Si slo depende de variables
discretas, se llama condicin discreta. Los eventos en el tiempo tienen
invariantes del tipo
i i
t t h < , donde t es el tiempo actual y
i
t es la
variable discreta representando el instante futuro en que el evento debe
ser disparado.
Es la aplicacin E h , que asocia cada funcin invariante con un tipo
de evento. Relaciona cada funcin "chivata" de disparo de evento con
su evento: cuando
i
h pasa de true a false se dispara el evento
( )
i
h e .
34 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


{ }
e
n
,...,
1
Son un conjunto de funciones vectoriales, cada una de ellas asociada
con un tipo de evento
i
e , de modo que la ecuacin
( ) 0 , , , , ,
b b b a a a i
Q X X Q X X
& &
se satisface cuando se dispara el evento
i
e .
a
X y
a
Q notan el estado inmediatamente despus de producirse el
evento, mientras que
b
X y
b
Q notan el estado justamente anterior.
Describen el modo en que cambia el estado del sistema con cada tipo
de evento.
Como ejemplo, a fin de identificar los diferentes elementos de la M-tupla, se considera
un modelo muy sencillo del sistema compuesto por dos depsitos de agua conectados
mediante una vlvula (ver Figura 2.6). La variable representa el tanto por ciento de
apertura de la vlvula y Time el tiempo. Se supone que la capacidad calorfica del agua,
p
C , es constante. Otros parmetros del modelo son: la aceleracin gravitatoria, g , la
seccin de los depsitos,
1
S y
2
S , el coeficiente de la vlvula,
v
K , su instante de
apertura,
0
t , y el valor de apertura,
0
.
Modelo de la vlvula.

endwhen

then when
contrario caso en
si
contrario caso en
si
0
0
1 2
2 1 2 1
2
2 1 1

>

'


>

'
>

t Time
p p K
p p p p K
F
T
p p T
T
v
v
m
f

Modelo del primer depsito. Modelo del segundo depsito.
( )
1
1
1
1
1
1
1
S
g m
p
T T C F
dt
dT
C m
F
dt
dm
f p
m
p
m



( )
2
2
2
2
2
2
2
S
g m
p
T T C F
dt
dT
C m
F
dt
dm
f p
m
p
m


Figura 2.6 Ejemplo. Modelo de dos depsitos conectados mediante una vlvula.
Debe asignarse un valor, en el instante inicial de la simulacin, a la apertura de la vlvula,
. La variable es evaluada nicamente cuando se produce el evento planificado en el
tiempo, es decir, cuando la condicin
0
t Time > pasa de ser False a ser True. Hasta ese
momento toma el valor que se le ha asignado en el instante inicial. Forma parte del
estado discreto del sistema, ( ) Q , y es, por tanto, considerada como un parmetro de
valor constante por el integrador de la parte continua del modelo.
m
F
2
p
1
p
1 1
,T m
2 2
,T m

SIMULACIN DE MODELOS HBRIDOS 35

Las variables ( )
f
m
T F p p T T m m X , , , , , , ,
2 1 2 1 2 1
definen el estado continuo del sistema.
Son evaluadas en los instantes que fija el integrador de la parte continua del modelo y en
los instantes en los que se producen los eventos.
Hay nicamente dos tipos de eventos, { }
2 1
, e e E : el evento planificado en el tiempo,
1
e ,
que determina el instante de evaluacin de la variable y el evento en el estado,
2
e , que
indica el cambio en el sentido de flujo del agua a travs de la vlvula.
El comportamiento de la parte continua del modelo est definido mediante el siguiente
conjunto de funciones:
( )
( )

'

'

+
>

'


>

+ +

contrario caso en 0
si 0
,
contrario caso en 0
si 0
0 , 0 , 0
0 , 0 , 0
1 2
2 1 2 1
2
2 1 1
2
2
2 2
2
2
2
1
1
1 1
1
1
1
p p K F
p p p p K F
T T
p p T T
S
g m
p T T C F
dt
dT
C m F
dt
dm
S
g m
p T T C F
dt
dT
C m F
dt
dm
g
v
m
v
m
f
f
f p
m
p
m
f p
m
p
m


Al realizar la compilacin del modelo, la funcin Booleana que representa la condicin
de disparo del evento es sustituida por una funcin, de modo que el evento se dispara
cuando la funcin pasa de tomar un valor distinto de cero a valer cero o cuando cruza
por cero. Por ejemplo, la condicin de evento
0
t Time > (invariante
0 1
t Time h < ), es
sustituida por la funcin
0 1
t Time z y la condicin de evento
2 1
p p > o
2 1
p p < es
sustituida por
2 1 2
p p z . Cuando el sistema se encuentra en el estado
2 1
p p > , el
invariante es
2 1 2
p p h > , mientras que cuando se encuentra en el estado
2 1
p p < el
invariante es
2 1 2
p p h < . En ambos casos la funcin detectora de cruce por cero es la
misma:
2 1 2
p p z .
Como se discutir ms adelante, el uso de una nica funcin detectora de cruce por cero
para cada condicin de evento acarrea problemas que se resuelven empleando dos
detectores de cruce.
Las aplicaciones relacionando los dos tipos de eventos del ejemplo con sus invariantes
son:
1 1 1
: e h y
2 2 2
: e h .
En el instante de tiempo en que se produce un evento, debe calcularse el estado del
sistema despus del suceso a partir del estado del sistema antes de producirse el suceso.
El lenguaje de modelado debe proporcionar la sintaxis para describir la forma en que
debe realizarse este clculo, permitiendo distinguir la variable evaluada despus del
suceso de la variable evaluada antes del suceso.
En el ejemplo de los dos depsitos, el valor de la apertura de la vlvula, , despus del
suceso es independiente del valor de sta antes del mismo: vale
0
sea cual sea el valor
inicial de la variable. El evento no modifica el estado continuo del sistema, si bien la
variacin en el valor de obliga a reevaluar el clculo de las variables algebraicas y de
36 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


las derivadas de los estados: la variacin en produce una modificacin en
m
F y, por
consiguiente, en la derivada de los estados. El evento
2
e tampoco altera el estado
continuo del sistema: modifica la forma en que deben ser evaluadas las variables
algebraicas
f
T y
m
F , a partir de las cuales se calculan las derivadas de los estados del
sistema.
El lenguaje de modelado debe permitir describir cambios instantneos en el estado
continuo del sistema producidos en el instante del evento. Supngase que en el modelo
de la vlvula se desea considerar la inercia del fluido de la forma siguiente:
Modelo de la vlvula.
( )
( )
endwhen
0 init
then 0 not when
endwhen

then when
contrario caso en
0 si
0
0
2 1
2 *
2
1

>

>

'
>

P
t Time
L F P
p p K
dt
dP
T
P T
T
m
v
f



P representa el momento lineal del agua contenida en la conduccin entre los dos
depsitos y el parmetro L la longitud efectiva de la misma. Cuando la apertura de la
vlvula se hace cero, es preciso asignar a la variable de estado momento lineal, P , el
valor cero, forzndose un cambio instantneo en el estado continuo del sistema.
2.4.2 El algoritmo de simulacin de modelos hbridos de Omola
Durante la ejecucin de la simulacin de un sistema hbrido se realiza, o bien una
simulacin enteramente de eventos discretos o bien una simulacin enteramente
continua, ya que la ejecucin de una simulacin simultneamente continua y discreta no
existe. Por ello, la herramienta de simulacin de modelos hbridos debe estar compuesta
de una herramienta de simulacin de eventos discretos, una herramienta de simulacin de
sistemas continuos y algoritmos describiendo las actividades a realizar cuando se pasa de
la simulacin de eventos discretos a la de sistemas continuos y viceversa [Cell79].
SIMULACIN DE MODELOS HBRIDOS 37

Dado un modelo hbrido y un conjunto de condiciones iniciales consistentes, es decir,
que permiten determinar los valores iniciales de todas las variables del modelo, el
algoritmo de simulacin de modelos hbridos de Omola, mostrado en la Figura 2.7,
reduce el problema de simulacin a tres subproblemas [Ande94]:
1. La solucin del problema continuo, lo cual implica resolver sistemas de ecuaciones
no lineales e integrar numricamente. Las variables discretas son consideradas
parmetros de valor conocido.
2. La deteccin de eventos, para lo cual se examinan los invariantes durante la
resolucin del problema continuo para ver si alguno toma el valor false. Cuando un
invariante pasa de true a false se suspende la solucin del problema continuo
ejecutndose el evento correspondiente.
3. La ejecucin de los eventos, es decir, la determinacin de las variables afectadas por
el evento y el clculo de sus nuevos valores. Los nuevos valores deben ser
consistentes con las ecuaciones que describen el comportamiento continuo del
sistema, ya que actan como nuevos valores iniciales para el problema continuo. La
ejecucin de un evento suele llamarse por ello "el problema del reinicio". Consiste
en la resolucin del siguiente sistema de ecuaciones para obtener un nuevo estado
inicial:
( ) ( ) ( )
( )
g X t X t Q
X X Q X X Q
i t
i a a a b b b
,
&
,
,
&
, , ,
&
,

'

0
0


























Figura 2.7 Algoritmo de simulacin de modelos hbridos de Omola [Ande94].
Empezar
Eventos
Ejecucin de los eventos y
encontrar valores de reinicio
consistentes
Resolver el problema continuo
hasta el siguiente instante de
evaluacin
Terminar
Si No
No
Si
Final de la simulacin
Comprobar invariantes
Encontrar valores iniciales consistentes
38 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


El problema de reinicio, expresado de esta manera, es difcil de resolver, ya que contiene
incgnitas discretas y continuas. Si puede ser manipulado simblicamente, antes de la
simulacin, a la forma:
( )
( )
( )
Q X X Q
X Q X X Q
X f X Q
a i b b b
a i a b b b
a

'

1
2
,
,
,
&
,
, ,
&
,
&
,

entonces es sencillo de resolver, ya que el nuevo estado discreto Q
a
puede ser calculado
a partir del estado inmediatamente anterior al evento. Conocido Q
a
puede calcularse el
nuevo estado continuo, X
a
. Finalmente, como el problema de tiempo continuo est
escrito en la forma explcita del espacio de estados, el nuevo estado inicial es trivialmente
consistente y puede reanudarse la integracin numrica del problema continuo. Las
variables discretas vuelven a considerarse parmetros, con sus nuevos valores, al
reanudar la resolucin del problema continuo.
2.4.3 El problema de reinicio
En ocasiones la solucin del problema de reinicio puede no satisfacer (hacer true) uno de
los invariantes, con lo cual se disparara el evento correspondiente. De esta manera, se
van disparando eventos en secuencia hasta que todos los invariantes son satisfechos,
reinicindose entonces la solucin del problema continuo.
Si en esta secuencia de eventos slo uno de los invariantes no es satisfecho en cada caso,
esto provoca el disparo de un evento que, a su vez, puede producir el disparo de otro
evento y as sucesivamente hasta que todos los invariantes son satisfechos. Sin embargo,
pueden no satisfacerse simultneamente varios invariantes, lo cual implica tener que
decidir en qu orden se disparan estos eventos activados simultneamente. En algunos
casos, el orden en que se disparan los eventos simultneos puede ser irrelevante, ya que
afectan a partes del modelo diferentes sin ninguna interaccin entre ellas. Sin embargo,
en ocasiones el orden de disparo es importante y afecta a la evolucin de la simulacin.
Considrese, por ejemplo, el siguiente modelo:
( )
( )
endwhen
10 init
then 5 . 0 when
endwhen
0 init
then 5 . 0 when
, 1 , 1
2
2
1
1
2 1
2 1

<

>
+
x
y x
x
y x
y x x
dt
dx
dt
dx


SIMULACIN DE MODELOS HBRIDOS 39

Si se asignan a las variables de estado los valores iniciales: ( ) 0 0
1
Time x y
( ) 10 0
2
Time x , en el instante 5 Time se activan simultneamente los dos eventos,
ya que ( ) 5 5
1
Time x , ( ) 5 5
2
Time x e ( ) 10 5 Time y .
Si se dispara en primer lugar el evento definido por la funcin de cruce y x z 5 . 0
1 1
,
se obtiene:
Estado en el instante del evento, antes del
suceso.
Estado en el instante del evento, despus del
suceso.
0 5 . 0
0 5 . 0
10
5
5
2 2
1 1
2
1

y x z
y x z
y
x
x

5 . 2 5 . 0
5 . 2 5 . 0
5
5
0
2 2
1 1
2
1

y x z
y x z
y
x
x


En el instante del evento, despus del suceso, la funcin de cruce y x z 5 . 0
2 2
toma
un valor positivo, con lo cual su evento asociado no se dispara. Por el contrario, si se
dispara en primer lugar el definido por la funcin de cruce y x z 5 . 0
2 2
:
Estado en el instante del evento, antes del
suceso.
Estado en el instante del evento, despus del
suceso.
0 5 . 0
0 5 . 0
10
5
5
2 2
1 1
2
1

y x z
y x z
y
x
x

5 . 2 5 . 0
5 . 2 5 . 0
15
10
5
2 2
1 1
2
1

y x z
y x z
y
x
x


En el instante del evento, despus del suceso, la funcin de cruce y x z 5 . 0
1 1
toma
un valor negativo, con lo cual su evento asociado no se dispara. Como se ve, el estado
del sistema tras el suceso depende de la eleccin de cul de los eventos activos se
dispara.
Existen varios mtodos de decisin del orden de disparo, algunos deterministas y otros
no deterministas. Uno de ellos consiste en dispararlos de acuerdo al orden en que han
sido definidos [Ande94]. Los eventos planificados en el tiempo pueden ser ordenados
desde un principio, establecindose una cola.
Supngase, por ejemplo, que se satisfacen simultneamente las condiciones de disparo de
los eventos
1
e y
2
e , con lo cual ambos son habilitados. Se dispara primero el evento
1
e ,
40 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


ya que se ha definido antes que el
2
e , producto de lo cual puede darse uno de los
siguientes tres casos:
1. Todos los eventos del modelo son deshabilitados, con lo cual puede reiniciarse la
solucin del problema continuo.
2. Se activa un solo evento, el cual es disparado.
3. Se activa ms de un evento, en cuyo caso se dispara el de menor orden de
definicin.
El algoritmo empleado es [Ande94]:
1. Disparar el evento de menor orden de definicin de entre los habilitados.
2. Comprobar si se han habilitado eventos producto del disparo, en cuyo caso ir al
paso 1. En caso contrario reanudar la solucin del problema continuo.
Otro algoritmo diferente sera [Ande94]:
1. Determinar y ordenar, de acuerdo con el orden de definicin, el conjunto de
eventos habilitados, ' E .
2. Si el conjunto ' E es vaco, reanudar la solucin del problema continuo,
finalizando el presente algoritmo.
3. Disparar el primer evento del conjunto ' E .
4. Examinar el siguiente evento del conjunto ordenado ' E . Si aun no ha sido
disparado y contina habilitado, se dispara.
5. Si han sido examinados todos los eventos de ' E , ir a 1. En caso contrario, ir a 4.
Es posible formular modelos en los cuales el algoritmo de disparo de eventos nunca
finalice. No hay modo de detectar este problema analticamente, sin ejecutar la
simulacin, excepto en caso muy sencillos.
El esquema anterior de ejecucin de secuencias de eventos supone que es posible
encontrar un estado consistente despus del disparo de cada evento. Es posible relajar
esta condicin y permitir el disparo de una secuencia de eventos donde slo el ltimo de
ellos debe resultar en un estado de reinicio consistente.
Otra posibilidad consiste en disparar todos los eventos activos y obtener el estado
resultante del sistema tras el suceso para el nuevo conjunto de valores de los estados. La
regla de asignacin nica impone que todos los cambios instantneos que debe sufrir un
estado continuo o discreto deben estar recogidos en una nica ecuacin instantnea, con
ello se garantiza que un mismo estado (continuo o discreto) no puede ser modificado en
dos ecuaciones instantneas correspondientes a dos condiciones de evento diferentes, lo
cual elimina el riesgo potencial de que puedan activarse simultneamente varios eventos
diferentes que asignen valores diferentes a un mismo estado. sta es la aproximacin
escogida, por ejemplo, por Dymola (ver Figura 2.8) [Elmq95].
TRATAMIENTO DE LOS EVENTOS 41

Estado en el instante del evento, antes del
suceso.
Estado en el instante del evento, despus del
suceso.
0 5 . 0
0 5 . 0
10
5
5
2 2
1 1
2
1

y x z
y x z
y
x
x

5 5 . 0
5 5 . 0
10
10
0
2 2
1 1
2
1

y x z
y x z
y
x
x



model dispEvent

local x1, x2, y

der(x1) = 1
der(x2) = -1
x1 + x2 = y

when x1 > 0.5 * y then
init(x1) = 0
endwhen

when x2 < 0.5 * y then
init(x2) = 10
endwhen

end



Figura 2.8 Disparo simultneo de todos los eventos activos.
2.5 TRATAMIENTO DE LOS EVENTOS
2.5.1 Funciones invariantes o de cruce
Supngase que la variable y viene descrita mediante la siguiente funcin con dos ramas.
Mientras la variable x sea mayor que un determinado valor constante, xLimite, la
variable y toma el mismo valor que la variable y1, en caso contrario, toma el mismo
valor que la variable y2: y = if x > xLimite then y1 else y2.
Puede definirse una variable Booleana que cambie de valor cuando se produzca el
evento, es decir, cuando la funcin de cruce z = x - xLimite pase de ser mayor que
cero a ser igual o menor que cero o viceversa. En ACSL, as como en otros lenguajes de
simulacin, se dispara el evento cuando la funcin de cruce o bien cruza el cero o vale
exactamente cero [Elmq93a].
Supngase, por ejemplo, que x decrece hasta que vale exactamente xLimite. Entonces
se dispara el evento y se escoge la rama else para reiniciar la integracin. Supngase que
la funcin de cruce evaluada en el instante del evento, tras el suceso, sigue valiendo cero
(si no vale cero, no se presenta ninguna dificultad). Dependiendo del modelo pueden
darse tres posibilidades: que la funcin de cruce permanezca con valor cero durante
42 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


cierto tiempo, que se haga positiva, o que se haga negativa (ver Figura 2.9). En
cualquiera de los tres casos, no se dispara un segundo evento cuando la funcin de cruce
deja de valer cero ya que no se produce cruce por el cero [Elmq93a]. Esto lleva a un
resultado errneo tanto si la funcin de cruce permanece valiendo cero cierto tiempo y
luego se hace positiva como si, despus de valer cero en el instante del evento (antes y
despus del mismo), en el siguiente instante de evaluacin vuelve a hacerse positiva. En
ambos casos la funcin de cruce es positiva y se mantiene asignada a la variable y la
funcin de la rama else, y2 [Elmq93a].
















Figura 2.9 Condicin de disparo del evento.
Dymola resuelve esta situacin definiendo un intervalo ( ) eveps eveps, entorno al cero,
de modo que la condicin de disparo del evento en lugar de ser el cruce por cero de la
funcin de cruce es o bien el cruce de la funcin de cruce por eveps con pendiente
negativa o bien por eveps con pendiente positiva. Si debido a las condiciones iniciales la
funcin de cruce permanece en un principio dentro del intervalo ( ) eveps eveps, ,
durante ese tiempo se considera que el valor de la funcin de cruce es igual a cero y se
usa la rama correspondiente de la expresin if. El valor de eveps es muy pequeo (por
defecto 1E-10) y puede ser modificado si se edita el fichero del experimento generado
por Dymola, dsin.txt, una vez generado el experimento y antes de realizar la simulacin.
El ejemplo de la Figura 2.10 pretende servir de ilustracin de cmo Dymola realiza la
deteccin de eventos. Para ello se ha asignado a eveps el valor 0.5.

model ejemEveps

local y, x

y = if x > 0 ->
then 1 ->
else -1

x = sin(Time)

end










eveps = 1E-10 (por defecto) eveps = 0.5
Figura 2.10 Ejemplo de simulaciones asignando a eveps los valores 1E-10 y 0.5.
x - xLimite
y = y1
y = y2
evento
t
x - xLimite
y = y1
y = y2
evento
t
x - xLimite
y = y1
y = y2
evento
t
Situacin errnea Situacin correcta
TRATAMIENTO DE LOS EVENTOS 43

2.5.2 Determinacin del instante de disparo de los eventos
Dependiendo de su condicin de disparo, los eventos pueden clasificarse en eventos en el
tiempo y eventos en el estado. Los eventos en el tiempo pueden clasificarse en exgenos
o endgenos: si el instante en que ha de dispararse el evento se especifica en el modelo
se dice que el evento es exgeno, mientras que si el instante de disparo se calcula durante
la ejecucin de la simulacin, como resultado de la ejecucin de un evento en el estado o
de un evento planificado en el tiempo previos, se dice que el evento en el tiempo es
endgeno [Cell79].
Una vez detectado que el evento en el tiempo ms prximo se produce dentro del
siguiente paso de integracin, el tamao del paso se modifica de modo que el instante de
evaluacin coincida con el evento en el tiempo. Una vez ejecutado el evento, el
algoritmo de integracin es reiniciado, empleando su mtodo propio para establecer el
tamao del paso de integracin [Cell79].
Los eventos en el estado se disparan cuando el estado del sistema satisface ciertas
condiciones. Su instante de disparo no es conocido con antelacin y debe calcularse
mediante iteracin. En [Cell79] [Cell93a] [Elmq93a] puede encontrarse una descripcin
de los problemas numricos que puede conllevar localizar los eventos en el estado, en
lugar de mediante iteracin, mediante la reduccin en el tamao del paso de integracin,
as como los problemas asociados al difuminado de las discontinuidades. En [Cell79] se
discute la aplicacin de algunos mtodos numricos de bsqueda de races a la
determinacin del instante en que se produce el evento en el estado.
A fin de ilustrar el mtodo de clculo por iteracin del instante en que se produce el
evento [Cell79], considrese una funcin definida mediante diferentes ramas, cada una de
las cuales es vlida en un determinado dominio del espacio de estados. Supngase que
eventos en el estado sealan el fin del dominio de validez de una rama y el comienzo del
dominio de validez de otra. Se definen funciones "chivato" de deteccin de los eventos,
que sealan el cruce de la trayectoria en el espacio de estados de un dominio a otro.
Cuando se detecta que se ha producido un evento en el estado se suspende la integracin
y se activa un proceso iterativo cuya finalidad es determinar el instante temporal en que
se ha producido el evento. Este proceso iterativo conlleva la evaluacin de la funcin y
para ello se emplea la rama "antigua", extendindola ms all de su dominio de validez.
Una vez determinado el instante en que se ha producido el evento en el estado, se
conmuta, para la evaluacin de la funcin, de la rama "antigua" a la "nueva" y una vez
que el evento ha sido tratado, se reinicia el algoritmo de integracin comenzando en el
instante del evento [Elmq94a].
44 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.5.3 Prolongacin de las ramas
A la hora de realizar el modelo debe tenerse en cuenta que las ramas de las funciones
deben poder ser extendidas ms all de su dominio de definicin, ya que en caso
contrario se producir un error numrico en tiempo de simulacin cuando la trayectoria
en el espacio de estados salga de un dominio para entrar en otro.
A continuacin se muestra un ejemplo que pretende ilustrar este problema. Supngase
que el flujo de materia a travs de una vlvula, F , est relacionado con la cada de
presin entre los extremos de la misma, p , mediante la expresin indicada en la Figura
2.11, donde la funcin ( ) sgn , aplicada a la cada de presin, toma el valor uno cuando
sta es positiva y menos uno cuando es negativa. K es una constante dependiente de la
geometra de la vlvula, del factor de friccin y de la densidad del fluido.

( ) p K p F sgn

Figura 2.11 Relacin constitutiva de la vlvula.
Si esta ecuacin se escribe como se indica en la Figura 2.12 (se usa la sintaxis de
Dymola), se producir un error numrico al cambiar difPresion de signo, ya que el
algoritmo de simulacin detecta si se han producido eventos (en este caso el paso de
flujoEsPositivo de true a false o viceversa) una vez que se han evaluado todas las
variables algebraicas en el instante de evaluacin (una vez que ya se ha intentado calcular
la raz cuadrada de un real negativo, producindose el consiguiente error).

new( flujoEsPositivo ) = not difPresion < 0
F = if flujoEsPositivo ->
then K * sqrt( difPresion) ->
else -K * sqrt(-difPresion)

Figura 2.12 Forma de expresar la ecuacin constitutiva de la vlvula que conduce a error numrico.
Para que expresiones de este tipo funcionaran sera preciso que el algoritmo de
simulacin comprobara en cada instante de evaluacin si se ha producido el evento de
cambio de signo de difPresion despus de calcular difPresion y antes de calcular F,
lo cual no sucede: es despus de evaluar F cuando se comprueba si difPresion ha
cambiado de signo. Algunos lenguajes de modelado, por ejemplo Dymola, proporcionan
la funcin valor absoluto, abs( ), que puede ser usada sin que se produzcan este tipo de
errores.
Sin embargo, escribir la ecuacin como se muestra en la Figura 2.13 (se emplea la
sintaxis de Dymola), si bien evita que se produzca un error numrico en tiempo de
simulacin al cruzar la trayectoria la condicin del evento, no aporta ninguna
pA
F
pB
SOLUCIN DEL PROBLEMA DE LA ASIGNACIN DE LA CAUSALIDAD COMPUTACIONAL 45

informacin acerca del signo de difPresion, con lo cual esta forma de escribir la
ecuacin es vlida slo en el caso en que vaya a evaluarse F a partir de difPresion y no
es vlida cuando deba evaluarse difPresion de F. Esto puede suponer una limitacin a
la hora de reutilizar la clase. Este problema surgir ms adelante, al modelar el balance
del momento lineal en estado estacionario y se propondr una solucin.

new( flujoEsPositivo ) = not difPresion < 0
F = if flujoEsPositivo ->
then K * sqrt( abs( difPresion ) ) ->
else -K * sqrt( abs( difPresion ) )

Figura 2.13 Forma de expresar la ecuacin constitutiva de la vlvula que no conduce a error numrico.
2.6 SOLUCIN DEL PROBLEMA DE LA ASIGNACIN DE LA
CAUSALIDAD COMPUTACIONAL
Previamente a la asignacin de la causalidad computacional, tambin denominada
particin, deben clasificarse las variables del modelo en conocidas y desconocidas, segn
sean conocidas o desconocidas en el instante de evaluacin [Elmq78]. Son consideradas
conocidas, adems de la variable tiempo:
Las constantes y parmetros del modelo, ya que sus valores no cambian durante el
curso de la simulacin y son conocidos al comienzo de sta.
Las entradas globales al modelo, es decir, aquellas variables cuyo valor se especifica,
independientemente del de las dems variables, para cada instante de la simulacin.
Las variables que aparecen derivadas en el modelo, ya que son consideradas variables
de estado, es decir, se asume que se calculan mediante la integracin numrica de su
derivada. El motivo es evitar tener que derivar numricamente en tiempo de
simulacin.
Por tanto, toda variable que aparece derivada en el modelo se clasifica como una variable
de estado y se sustituye su derivada, all donde aparezca, por una variable auxiliar (por
ejemplo, de nombre igual al de la variable de estado, pero anteponiendo el prefijo "der").
Estas variables auxiliares se clasifican como desconocidas y se aade al modelo la
condicin de que cada variable de estado se calcula por integracin numrica de su
correspondiente variable auxiliar.
A efectos de la asignacin de la causalidad computacional, se considera que son variables
desconocidas, las siguientes:
Las variables auxiliares introducidas, de la forma descrita anteriormente, sustituyendo
a las derivadas de las variables de estado.
Las restantes variables del modelo, es decir, aquellas que, no apareciendo derivadas,
dependen para su clculo en el instante de evaluacin del valor de otras variables.
46 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Atendiendo a esta clasificacin de las variables del modelo en conocidas y desconocidas,
puede representarse el conjunto de las ecuaciones del modelo en la forma ( ) 0 , y x F ,
donde el vector x representa el conjunto de las variables conocidas e y el de las
variables desconocidas del modelo.
Para ilustrar el mtodo de asignacin de la causalidad computacional es til introducir el
concepto de la matriz de incidencia. La matriz de incidencia o matriz Jacobiana
estructural es una matriz de elementos Booleanos que indica qu incgnitas aparecen en
cada ecuacin. Se define a partir de la matriz Jacobiana de la siguiente manera [Elmq78]:
El elemento ( ) j i, de la matriz de incidencia es cero si el mismo elemento de la
matriz Jacobiana es cero,

F
y
i
j
0, es decir, si en la ecuacin i-sima del modelo
no est presente la j-sima variable desconocida. En caso contrario, el elemento
de la matriz de incidencia vale 1 y se representa mediante un aspa.
En cada ecuacin del modelo slo estn presentes unas pocas variables desconocidas,
con lo cual la matriz Jacobiana de las ecuaciones respecto de las variables desconocidas
tiene generalmente muchos elementos nulos. La matriz de incidencia representando esta
informacin estructural y que todava no ha sufrido ninguna manipulacin recibe el
nombre de matriz de incidencia original [Elmq78]. En la Figura 2.14 se muestran dos
ejemplos de construccin de la matriz de incidencia original.
EJEMPLO 1 EJEMPLO 2










Figura 2.14 Matriz de incidencia original.
Antes de realizar la particin se comprueba la no singularidad estructural del sistema, es
decir, se comprueba que el nmero de ecuaciones y de incgnitas (obtenido siguiendo el
criterio anterior de clasificacin de las variables en conocidas y desconocidas) es el
mismo y que cada incgnita puede emparejarse con una ecuacin en que aparezca y con
la cual no se haya emparejado ya otra incgnita. Para ello se buscan permutaciones de las
variables (columnas) de la matriz de incidencia de modo que la matriz resultante, con las
variables permutadas de orden, tenga todos sus elementos diagonales distintos de cero
(ver Figura 2.15). Si no se consigue, se dice que el problema es singular [Elmq78].
Una vez analizado si el problema es singular, se realiza la asignacin de causalidad
computacional siguiendo las siguientes tres reglas:
1. Las variables que aparecen derivadas se consideran variables de estado y se suponen
conocidas, ya que se calculan por integracin a partir de sus derivadas. Las derivadas
0 X X
X 0 X
0 X 0

_
,

f
1
f
2
f
3
derx z y
y
z x
u
( )
( )
f x y z u
f x x y
f x z u
1
2
3
0
0
0
, , ,
( , &, )
, ,

'

( )
( )
f x z u
f x x y
f x u
1
2
3
0
0
0
, ,
( , &, )
,

'

y
z x
u
0 X 0
X 0 X
0 0 0

_
,

f
1
f
2
f
3
derx z y
SOLUCIN DEL PROBLEMA DE LA ASIGNACIN DE LA CAUSALIDAD COMPUTACIONAL 47

de las variables de estado son desconocidas y deben calcularse de las ecuaciones en
que aparezcan.
2. Las ecuaciones que poseen una nica incgnita deben emplearse para calcularla.
3. Aquellas variables que aparecen en una nica ecuacin deben ser calculadas de ella.
EJEMPLO 1 EJEMPLO 2













Figura 2.15 Comprobacin de la no singularidad estructural del sistema.
Si el problema es no singular, el algoritmo de particin pretende, siguiendo las 3 reglas
anteriores, encontrar las permutaciones de las filas (ecuaciones) de la matriz y las
permutaciones de las columnas (variables) de modo que la matriz de incidencia original
quede convertida en una matriz triangular inferior por bloques (Block Lower
Triangular), esto es, en una matriz con elementos distintos de cero formando bloques
cuadrados, del menor tamao posible, en la diagonal y con todos los elementos situados
por encima de la diagonal y no pertenecientes a los bloques diagonales, iguales a cero. La
forma BLT significa que las ecuaciones se han ordenado de tal manera que las incgnitas
de las ecuaciones de cada bloque son, o bien calculadas en bloques anteriores, o bien
resolubles en el bloque. Se denomina a esta matriz BLT la matriz de incidencia
ordenada.
Aplicando las tres reglas del algoritmo a sistemas no singulares pueden darse dos
situaciones [Elmq78]:
1. Se obtiene una solucin que permite calcular todas las incgnitas usando para ello
todas las ecuaciones. Corresponde al caso en que todos los bloques diagonales de
la matriz de incidencia ordenada BLT son escalares, lo cual significa que las
variables pueden ser resueltas, una tras otra, en secuencia. En este caso, el
algoritmo proporciona una ordenacin de las ecuaciones tal que en cada ecuacin
hay una y slo una incgnita que no haya sido previamente calculada (ver Figura
2.16). La forma en que se realice este clculo (mediante manipulacin simblica o
numricamente) no es de la incumbencia del mtodo de particin.
2. Se llega a un punto en que todas las ecuaciones tienen al menos dos incgnitas y
todas las incgnitas aparecen al menos en dos ecuaciones. Corresponde al caso
en que hay bloques diagonales no escalares en la matriz de incidencia ordenada
BLT. Cada bloque diagonal no escalar representa un sistema de ecuaciones que
deber resolverse numrica o, en caso de que sea posible, simblicamente. El
0 X X
X 0 X
0 X 0

_
,

f
1
f
2
f
3
derx
z y
X 0 X
X X 0
0 0 X

_
,

f
1
f
2
f
3
derx
z y
0 X 0
X 0 X
0 0 0

_
,

f
1
f
2
f
3
derx z y
Singular
48 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


algoritmo de particin asegura que la dimensin de los sistemas de ecuaciones
obtenidos es mnima.
A menudo, la particin conduce a una matriz de incidencia ordenada con un gran bloque
diagonal, debido a las realimentaciones, y a cierto nmero de pequeos bloques
diagonales que calculan las entradas, situados encima del gran bloque, y otros que
calculan las salidas, tras el gran bloque [Cell91].













Figura 2.16 Ejemplo1. Obtencin de la matriz de incidencia ordenada.
Si el sistema es singular, pueden darse dos situaciones [Elmq78]:
1. El nmero de ecuaciones y el de incgnitas es el mismo, pero al aplicar el
algoritmo de particin se llega a un punto en que no se dispone de ecuacin para
calcular una incgnita y en el cual una ecuacin es redundante, es decir, todava
no ha sido utilizada y todas sus variables son ya conocidas (ver Figura 2.17). Esto
puede deberse o bien a un error en el modelo o bien a que el sistema tiene ms
variables de estado que grados de libertad al suponerse, errneamente, que todas
las variables que aparecen derivadas son variables de estado. Se dice en este
ltimo caso que el problema es estructuralmente singular o que tiene ndice
superior. Como se ver ms adelante, existen algoritmos para reducir el orden de
los sistemas de ndice superior (mayor que uno) a ndice uno o cero [Pant88].
Figura 2.17 Ejemplo 2. ndice superior.
2. Si el nmero de ecuaciones difiere del nmero de incgnitas pueden darse dos
situaciones: que el nmero de ecuaciones sea mayor o que sea menor que el
nmero de variables desconocidas. Si el nmero de ecuaciones es mayor que el
de incgnitas, ( ) ( ) y F dim dim > , se dice que el sistema est sobredeterminado,
en caso contrario, ( ) ( ) y F dim dim < se dice que el sistema est infradeterminado.
( )
( )
f x y z u
f x x y
f x z u
1
2
3
0
0
0
, , ,
( , &, )
, ,

'

0 X X
X 0 X
0 X 0

_
,

f
1
f
2
f
3
derx z y
X 0 0
X X 0
0 X X

_
,

derx z y
f
1
f
2
f
3
[ ] ( )
[ ] ( )
[ ]
f x z u
f x y z u
f x de r x y
3
1
2
0
0
0
, ,
, , ,
( , , )

'

Matriz de incidencia original BLT



[ ] ( )
( )
f x z u
f x x y
f x u
1
2
3
0
0
0
, ,
( , &, )
,

'

slo una ecuacin para calcular derx, y


ecuacin redundante: x variable de estado.
SOLUCIN DEL PROBLEMA DE LA ASIGNACIN DE LA CAUSALIDAD COMPUTACIONAL 49

Si el sistema est infradeterminado es conveniente distinguir entre aquellas variables que
pueden resolverse y aquellas que no. Para ello, se aade al conjunto de ecuaciones del
sistema tantas ecuaciones ficticias, conteniendo cada una todas las variables del sistema,
como exceso de variables. Esto equivale a aadir tantas filas de unos a la matriz de
incidencia como sean necesarias para hacerla cuadrada. A continuacin se realiza la
particin de todas las ecuaciones, las originales y las aadidas. Como todas las
ecuaciones aadidas dependen de todas las variables, al realizar la particin todas estas
ecuaciones ficticias aparecern formando parte del ltimo bloque de la matriz de
incidencia, el cual tendr la dimensin menor posible. Los restantes bloques definen el
conjunto mximo de variables calculables y la secuencia de clculo que produce sistemas
de ecuaciones de menor dimensin [Elmq78]. En la Figura 2.18 se muestra un ejemplo.

( )
( )

'

0 ,
0 , , ,
2
1
y x f
z y x x f &














Figura 2.18 Ejemplo. Particin de un problema infradeterminado.
El problema de la sobredeterminacin, en que aparecen ecuaciones redundantes, es el
dual del anterior: se aaden tantas variables ficticias a todas las ecuaciones como exceso
de ecuaciones hay. Esto es equivalente a aadir tantas columnas de unos a la matriz de
incidencia como sean necesarias para hacerla cuadrada. Realizando la particin se
obtendr que el primer bloque de la matriz de incidencia es el sistema de ecuaciones del
cual se calculan, adems de algunas ecuaciones del modelo, todas las variables ficticias.
Todas las variables ficticias se calculan en el primer bloque, ya que por aparecer en todas
las ecuaciones su conocimiento es necesario para poder resolver las dems variables. Las
ecuaciones del primer bloque son necesarias para calcular las variables ficticias y las
variables del modelo que aparecen en las ecuaciones redundantes, con lo cual las
ecuaciones redundantes (tantas como variables ficticias) se encuentran entre las del
primer bloque [Elmq78]. En la Figura 2.19 se muestra un ejemplo.


( )
( )
( )
( )

'

0 , ,
0 , ,
0 ,
0
4
3
2
1
z x x f
z y x f
z y f
y f
&








Figura 2.19 Ejemplo. Particin de un problema sobredeterminado.
Matriz de incidencia original

,
_

X X X
0 X

0
X X X
1
f
2
f
ficticia ec.
derx z y

,
_

X X
X X
0 X
derx
y z
1
f
2
f
X
X
0
ficticia ec.
Falta una ecuacin para evaluar
una de estas dos incgnitas.
Matriz BLT
Matriz de incidencia original

X X 0
X X

0
0 X 0
1
f
2 f
z y
Una de estas tres ecuaciones
es redundante.
Matriz BLT
X
X
X

3 f
,
X 0 X X
4 f

X X X
X X X
X 0 X
1 f
2 f
z
0
0
0
derx
3 f
,
X X 0 X
4 f

y derx
50 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.7 NDICE DEL PROBLEMA
La definicin de ndice de un sistema es [Bren96]:
Sea el sistema algebraico diferencial (DAE), ( ) 0 , , x x t F & . Se define como ndice
el nmero mnimo de veces que debe ser diferenciado todo o parte de l con
respecto al tiempo, t , para obtener x& como una funcin continua de x y de t .
De acuerdo con esta definicin, un sistema implcito de ecuaciones diferenciales
ordinarias (ODE implcito) puede considerarse un DAE de ndice cero. En la Tabla 2.1
se muestra una posible clasificacin de los modelos empleados en el mbito de la
ingeniera qumica [Luyb92], [Bren96]. La Tabla 2.2 contiene una clasificacin de los
sistemas algebraico diferenciales (DAE) [Bren96].
Tipo de modelo Caractersticas
Algebraico Lineal / No lineal
Diferencial ordinario (ODE) Lineal / No lineal
Explcito / Implcito
Stiff / No stiff
Algebraico - diferencial (DAE) Lineal / No lineal
Semi-explcito / Implcito
ndice = 0 / ndice = 1 / ndice > 1
Derivadas parciales Parablico
Hiperblico
Elptico
Tabla 2.1 Clasificacin de los modelos empleados en ingeniera qumica.
Semi explcito Implcito
Lineal
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )

'

+
+ +
t f t x t B t x t B
t f t x t B t x t B x
2 2 22 1 21
1 2 12 1 11 1

&

( ) ( ) ( ) ( ) ( ) t f t x t B t x t A + &
No lineal
( ) ( ) ( ) ( )
( ) ( ) ( )

'

t x t x t f
t x t x t f t x
2 1 2
2 1 1 1
, , 0
, , &

( ) ( ) ( ) 0 , , t y t y t F &
Tabla 2.2 Clasificacin de los sistemas algebraicos diferenciales (DAE).
Supngase, a modo de ejemplo, que se desea calcular el ndice del siguiente DAE no
lineal semi-explcito [Bren96]:
( ) ( ) ( ) ( )
( ) ( ) ( )

'

t x t x t f
t x t x t f t x
2 1 2
2 1 1 1
, , 0
, , &

NDICE DEL PROBLEMA 51

Si se diferencian respecto al tiempo las ligaduras algebraicas, ( ) ( ) ( ) 0 , ,
2 1 2
t x t x t f , se
obtiene:
( ) ( ) ( ) ( )
( ) ( ) ( )
( )
( ) ( ) ( )
( )
( ) ( ) ( )

'

t
t x t x t f
t x
x
t x t x t f
t x
x
t x t x t f
t x t x t f t x
2 1 2
2
2
2 1 2
1
1
2 1 2
2 1 1 1
, , , , , ,
, ,
& &
&

Si
( ) ( ) ( )
2
2 1 2
, ,
x
t x t x t f

es no singular, el sistema obtenido es un ODE implcito y, por tanto,


se dice que el DAE tiene ndice uno. Si ste no es el caso, supngase que manipulando
algebraicamente el sistema obtenido y mediante cambios de variables se puede reescribir
el sistema obtenido de nuevo en la forma de un DAE semi-explcito. De nuevo se
diferencian respecto al tiempo las ligaduras algebraicas. Si se obtiene un ODE implcito,
se dir que el problema original tiene ndice dos. Si el nuevo sistema no es un ODE
implcito, se repite el proceso. El nmero de pasos de diferenciacin necesarios en este
procedimiento es el ndice del problema [Bren96].
El resultado de la asignacin de la causalidad computacional da lugar a una posible
clasificacin de los problemas en conexin con el concepto de ndice del sistema
[Elmq93a] [Cell93]:
Los problemas de ndice cero estn caracterizados por el hecho de que el
problema de asignacin de la causalidad computacional puede ser resuelto de
manera nica. Lo inverso es tambin cierto. Cualquier modelo, cuyo problema de
asignacin de la causalidad computacional puede ser resuelto de manera nica, es
de ndice cero.
Por el contrario, los problemas de ndice uno son problemas no singulares que
contienen lazos algebraicos, esto es, conjuntos de ecuaciones y variables donde
cada ecuacin contiene al menos dos de las variables no asignadas y cada una de
las variables no asignadas aparece al menos en dos ecuaciones. Estos lazos
algebraicos deben ser resueltos o bien numricamente en tiempo de simulacin o
bien simblicamente mediante manipulacin automtica de frmulas.
Los problemas de ndice superior (mayor que uno) se caracterizan por el hecho
de que el problema de asignacin de la causalidad computacional no tiene
ninguna solucin que permita mantener todas las variables que aparecen
derivadas en el modelo como variables de estado. Estos problemas aparecen, por
ejemplo, cuando mediante una conexin se reduce el nmero de grados de
libertad del sistema, es decir, cuando el nmero de grados de libertad del sistema
completo es menor que la suma del nmero de grados de libertad de las partes
por separado.
52 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.8 LAZOS ALGEBRAICOS. TEARING
Los lazos algebraicos como aproximacin en el modelado
Los sistemas que contienen lazos algebraicos son aquellos problemas no singulares en
los cuales la matriz de incidencia ordenada BLT tiene, al menos, un bloque diagonal no
escalar. Los lazos algebraicos se deben frecuentemente a aproximaciones en el modelado
consistentes en considerar "instantneas" aquellas dinmicas que son muy rpidas
comparadas con las dinmicas del sistema relevantes para el propsito de la simulacin
[Elmq94].
Los sistemas de ecuaciones diferenciales tales que algunos de sus autovalores son
rdenes de magnitud mayores que otros se denominan sistemas stiff. Si el autovalor
mayor lo es en tres rdenes de magnitud respecto al menor se dice que el sistema es
moderadamente stiff. Cuando la diferencia entre el autovalor mayor y el menor son seis
rdenes de magnitud se considera que el sistema es fuertemente stiff [Sile92].
La dificultad en integrar sistemas stiff se debe a que, mientras el menor de los
autovalores del sistema define la escala de tiempo de la respuesta del sistema, el mayor
de los autovalores condiciona el tamao mximo del paso de integracin que puede
usarse en los mtodos explcitos tal que se mantenga la estabilidad. Esto hace que los
mtodos de integracin explcitos no sean eficientes para sistemas stiff, debindose
emplear mtodos implcitos que, por ser incondicionalmente estables, permiten emplear
tamaos mayores del paso de integracin [Sile92].
Estas dificultades asociadas a la integracin de sistemas stiff hacen que en ocasiones sea
preferible despreciar las dinmicas muy rpidas del modelo (a las que estn asociados
autovalores muy grandes) para evitar que el sistema sea stiff, aun al coste del
establecimiento de lazos algebraicos. Por el contrario, en otras ocasiones, por ejemplo,
cuando la existencia de discontinuidades haga que en determinados instantes de la
simulacin no se disponga de valores iniciales adecuados para la iteracin del lazo, puede
ser preferible modelar la dinmica en lugar de considerarla instantnea. Puede obtenerse
una solucin a la ecuacin algebraica escalar ( ) x f 0 resolviendo la ecuacin
diferencial ( ) x f
dt
dx
, donde toma un valor pequeo y tiene el signo que hace que
la ecuacin tenga una solucin estable [Elmq94]. Hay abundantes ejemplos de aplicacin
de esta tcnica en los modelos que integran JARA.
Manipulacin simblica de los lazos
Los lazos algebraicos en los que todas las incgnitas aparecen de forma lineal pueden
resolverse mediante manipulacin simblica de forma automtica. Sin embargo, cuando
el nmero de ecuaciones del lazo es grande, puede resultar ms eficiente en trminos de
tiempo de ejecucin resolverlo de forma numrica que mediante la evaluacin de las
expresiones obtenidas de la manipulacin simblica. La herramienta de modelado puede
permitir que sea el usuario quien decida, para cada problema en concreto, qu mtodo ha
de usarse para resolver el lazo.
LAZOS ALGEBRAICOS. TEARING 53

Los lazos algebraicos (bloques diagonales no escalares) o las ecuaciones (bloques
diagonales escalares) en las cuales las incgnitas no aparecen de forma lineal, deben
resolverse empleando mtodos numricos. En algunos casos sencillos sera posible
programar reglas de transformacin para manipular ecuaciones donde la incgnita a
despejar aparece de forma no lineal. Sin embargo, el problema es que la mayora de las
ecuaciones no lineales no proporcionan soluciones nicas [Cell91]. Por ejemplo, si debe
despejarse la incgnita y de la ecuacin:
x y
2 2
1 + se obtiene:
y x
y x

'

1
1
2
2

y el manipulador simblico no sabra cul de las dos ecuaciones emplear para evaluar y .
Un problema similar surge cuando pretende resolverse numricamente una ecuacin no
lineal que admite varias soluciones: dependiendo del algoritmo empleado, del valor inicial
escogido para la iteracin y del modo en que se formule el problema, el mtodo puede
converger a una solucin, a otra o diverger. No existe un algoritmo general para la
solucin automtica de ecuaciones no lineales [Cell91].
Solucin de los lazos algebraicos en el instante inicial de la simulacin
Al iniciar la simulacin es conocido el valor de los estados y de las entradas y deben
calcularse los valores iniciales de las incgnitas algebraicas y de las derivadas de los
estados. Si para ello hay que resolver lazos algebraicos, es fundamental que se
proporcionen valores iniciales para la iteracin lo ms prximos posible a la solucin
para que el algoritmo converja rpidamente a la solucin apropiada. Una vez resuelto el
sistema en el instante inicial de la simulacin, se toma la solucin obtenida en cada
instante de simulacin como valor inicial de la iteracin para el clculo de la solucin en
el siguiente instante de simulacin.
La solucin del sistema en el instante inicial de la simulacin resulta, en ocasiones,
problemtica. Es por ello que algunas herramientas de simulacin de propsito especfico
(por ejemplo, SPICE) emplean tcnicas especiales para intentar resolver este problema
[Cell91].
SPICE es una herramienta muy potente para la simulacin de circuitos elctricos. La
determinacin del punto inicial de operacin es uno de los grandes problemas del anlisis
de circuitos, ya que no existen garantas de que los algoritmos numricos, que resuelven
los lazos, converjan si no se escogen adecuadamente los valores iniciales para la
iteracin.
El mtodo empleado por SPICE consiste en simular primero un experimento en el cual
todas las fuentes independientes de corriente y de tensin estn inicialmente a cero y
todos los dispositivos activos estn en corte. Con esta configuracin el punto de
operacin es trivial: la tensin es cero en todos los nodos. A continuacin, se realiza el
anlisis transitorio, en el cual se aplica una rampa a todas las fuentes. El valor final de
cada rampa es el valor inicial de la simulacin real, el cual se mantiene constante durante
algn tiempo para permitir que el circuito alcance el estado estacionario. El valor final de
54 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


los voltajes de los nodos se guarda como valor inicial para resolver el problema real
[Cell91].
La filosofa del mtodo es de carcter general: si el clculo de la solucin del sistema en
el estado inicial es problemtico, pero se conoce algn estado del sistema donde sea
conocido, entonces el problema puede resolverse mediante simulacin. Se simula la
evolucin del sistema desde el estado conocido hasta el estado inicial del problema de
inters y se deja que el sistema alcance el estacionario, obtenindose as la solucin del
sistema para el estado inicial. A partir de l, se realiza la simulacin deseada.
Tearing de los lazos algebraicos no lineales
El tearing es una tcnica aplicable a lazos algebraicos no lineales tales que alguna de sus
incgnitas aparezca en alguna ecuacin de forma lineal. El objeto de la tcnica es,
sacando partido del hecho anterior, reducir el nmero de variables a iterar para la
resolucin numrica del lazo [Elmq94].
Considrese un sistema algebraico de ecuaciones ( ) 0 y G . Realizar el tearing de este
sistema consiste en escribirlo de la forma
( )
( )

'

0 ,
0 ,
2 1 2
2 1 1
y y G
y y G
de modo que se satisfaga que:
1. La matriz Jacobiana
1
1
y
G

sea triangular inferior o triangular inferior por


bloques, donde todos los bloques diagonales, escalares o no escalares, deben
representar ecuaciones o sistemas de ecuaciones lineales respecto de las
incgnitas que van a ser evaluadas de ellas.
2. La dimensin de
2
y sea lo menor posible.
Una vez escrito el lazo de esta forma, las ecuaciones se resuelven iterando sobre
2
y .
Conocido un valor inicial de
2
y , puede obtenerse
1
y de resolver ( ) 0 ,
2 1 1
y y G
empleando las tcnicas de resolucin de ecuaciones lineales. Con el valor de
1
y
calculado se obtiene un nuevo valor de
2
y de ( ) 0 ,
2 1 2
y y G y as sucesivamente.
Las incgnitas
2
y reciben el nombre de variables de tearing, ya que su seleccin supone
"cortar" el lazo algebraico y comenzar la resolucin del mismo a partir de los valores
iniciales de aquellas. Las ecuaciones ( ) 0 ,
2 1 2
y y G que se emplean para evaluar las
variables de tearing reciben el nombre de ecuaciones residuo.
Existe una forma ms restrictiva de realizar el tearing, que es la siguiente (es la que
emplea, por ejemplo, Dymola) [Elmq94] [Elmq96a]. Considrese de nuevo un sistema
algebraico de ecuaciones ( ) 0 y G . Realizar el tearing de este sistema consiste en
escribirlo de la forma
( )
( )

'

0 ,
0 ,
2 1 2
2 1 1
y y G
y y G
de modo que se satisfaga que:
PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 55

1. La matriz Jacobiana
1
1
y
G

sea triangular inferior, donde todos sus elementos


diagonales, deben representar ecuaciones lineales respecto a su incgnita. Es
decir, conocido
2
y , pueden calcularse secuencialmente las incgnitas
1
y de las
ecuaciones ( ) 0 ,
2 1 1
y y G , donde cada incgnita aparece linealmente en la
ecuacin que va a usarse para evaluarla
2. La dimensin de
2
y sea lo menor posible.
Es comn que en un lazo haya ms de una posible eleccin de ecuaciones residuo y de
variables de tearing. En este caso, conviene escoger como variables de tearing aquellas
para las cuales se pueda especificar el valor inicial con mayor precisin. La eleccin de
las ecuaciones residuo debe basarse en su buen comportamiento, a fin de facilitar la
convergencia numrica. Algunos lenguajes de modelado (por ejemplo, Dymola
[Elmq98]) permiten incluir la informacin acerca del tearing en las clases (ver Anexo A).
En la actualidad no existe un algoritmo eficiente que automatice la seleccin ptima de
las variables de tearing y de las ecuaciones residuo. Los algoritmos exhaustivos de
bsqueda para determinar la estructura ptima de tearing son de complejidad
exponencial [Elmq96a]. Pese a ello, algunas herramientas de modelado (por ejemplo,
Dymola [Elmq98] y EcosimPro [EAIn99]) poseen algoritmos que proponen al usuario
una posible forma de cortar el lazo, que el usuario puede aceptar o modificar si desea.
56 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.9 PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE
PANTELIDES
El ndice del sistema no es una caracterstica intrnseca del modelo, sino de la forma de
expresar sus ecuaciones. Derivando algunas de las ecuaciones del modelo un
determinado nmero de veces, n , puede reducirse el ndice del problema de 1 + n a cero
o a uno. El algoritmo que determina qu ecuaciones deben ser derivadas y cuntas veces
se debe a Constantinos C. Pantelides y data de 1988 [Pant88].
La razn por la cual debe realizarse la reduccin de ndice es que los algoritmos
numricos para la solucin numrica de sistemas algebraico diferenciales (DAEs), que
son muy eficaces en la resolucin de problemas de ndice cero y uno, en ocasiones
funcionan para problemas de ndice dos, pero fallan para problemas de ndice mayor que
dos. Los problemas de ndice superior son difciles de resolver directamente porque, en
principio, implican derivar adems de integrar. En general, la dificultad numrica
aumenta con el ndice del problema [Bosc94] [Matt92]. Considrese el siguiente
problema, que consiste en una ODE ligada por una ecuacin algebraica y su resolucin
usando el mtodo de Euler implcito [Chun90]:

2
2
1
2 1
+ +

t t x
x x&

( ) ( ) ( ) ( ) [ ] ( )
( ) 2
2
1
2
1 1 1
2
2 1 2 1 1 1
+ +
+ + +
+ + +
+ +
k k k
k k k k
t t t x
h t x t x
h
t x t x

Se puede emplear la segunda ecuacin para obtener ( )
1 1 + k
t x y entonces emplear la
primera ecuacin para calcular ( )
1 2 + k
t x . Despejando, se observa que ( )
1 2 + k
t x se calcula
por diferenciacin y que el trmino de error no es ( )
2
h sino ( ) h :
( ) ( ) ( ) [ ] ( ) ( ) h t x t x t x
h
t x
k k k k
+
+ + 2 1 1 1 1 2
2

El problema que existe para la resolucin numrica es ms evidente si se usa el mtodo
de Euler explcito. La primera ecuacin toma la forma ( ) ( ) ( )
k k k
t hx t x t x
2 1 1 1
+
+
y la
segunda es la misma que en el caso implcito, ( ) 2
1
2
1 1 1
+ +
+ + + k k k
t t t x . Como se ve,
ninguna de las dos ecuaciones contiene ( )
1 2 + k
t x . No es posible resolver el sistema usando
el mtodo de Euler explcito ni, por la misma razn, usando ningn otro mtodo
explcito de integracin. Este sistema tiene adems un problema con la inicializacin. De
acuerdo con los mtodos tradicionales para ODE sera posible asignar un valor inicial
( ) 0
1
x arbitrario a la variable
1
x en el instante inicial 0 t . Sin embargo, este valor inicial
debe satisfacer la segunda ecuacin, y por tanto ( ) 0
1
x debe valer dos. El nmero de
valores iniciales que pueden asignarse arbitrariamente en este problema no es el mismo
que el nmero de ecuaciones diferenciadas, una propiedad comn en los problemas de
ndice [Chun90].
En [Cell93] [Hube94] se discuten algunas formas de abordar la reduccin de ndice de
los problemas de ndice superior. A continuacin se expone un ejemplo que pretende
ilustrarlas. Considrese un depsito en el que se almacena un volumen V de un lquido
PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 57

de densidad constante, , que entra y sale del depsito a travs de una tubera situada
en su base. El modelo realizado del depsito es muy sencillo. Relaciona la variacin en la
presin del lquido en la base del depsito con el flujo volumtrico de fluido,
V
F . S
representa la seccin de la base del tanque,
atm
p la presin atmosfrica, p la presin en
la base del tanque y g la aceleracin gravitatoria. Estableciendo una analoga entre el
flujo de volumen del fluido y la corriente elctrica y entre la presin del fluido y la
tensin elctrica, puede definirse la capacidad del tanque,
g
S
C

(ver Figura 2.20).


Asimismo, puede establecerse una analoga entre el modelo de una bomba de fluido, cuya
consigna sea el flujo de volumen del fluido deseado, y el modelo de una fuente de
corriente elctrica (ver Figura 2.21).







( )
V atm atm
F p p
dt
d
g
S
V
S
g
p p










( ) I V V
dt
d
C
C
Q
V V
2 1 2 1

Figura 2.20 Ecuacin constitutiva de un tanque atmosfrico y de un condensador elctrico.





( ) t f F
V






( ) t f I
Figura 2.21 Ecuacin constitutiva de una fuente de flujo de volumen.













( ) t f F
F F F
p p
p p
F
dt
dp
C
F
dt
dp
C
V
V V V
S
V
V

2 , 1 ,
2 1
1
2 ,
2
2
1 ,
1
1

Figura 2.22 Conexin en paralelo de dos tanques.
Sea un sistema formado por dos tanques conectados en paralelo con una bomba de flujo
de lquido (ver Figura 2.22). Se supone que en las conexiones no se produce prdida de
V
F

atm
p
p
I
C
V

2
V
V
F
p
I
1
V
2
V
1 , V
F


2 , V
F
1
p
2
p
S
p
( ) t f F
V

58 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


carga y que la presin atmosfrica es constante. Para realizar la particin se supone que
las presiones en los tanques,
1
p y
2
p , al aparecer derivadas en el modelo, son variables
de estado y, por ello, se calculan por integracin de sus derivadas. Se sustituyen sus
derivadas por las variables auxiliares
1
derp y
2
derp . El sistema algebraico resultante
tiene seis ecuaciones y seis incgnitas:
1
derp ,
2
derp ,
V
F ,
1 , V
F ,
2 , V
F y
S
p .
Al considerarse que
1
p y
2
p son estados, se supone al realizar la particin que son
conocidas. Dado que
1
derp ,
2
derp ,
S
p aparecen cada una en una nica ecuacin, deben
calcularse de ella: [ ]
1 , 1 1 V
F derp C , [ ]
2 , 2 2 V
F derp C , [ ]
1
p p
S
. Puesto que la nica
incgnita que aparece en la ecuacin ( ) t f F
V
es
V
F , debe calcularse de ella. La
ligadura de igualdad de presiones en la base de los tanques,
2 1
p p , introducida al
conectarlos, no contiene ninguna incgnita si se considera que ambas presiones son
estados. Se dispone de una sola ecuacin,
2 , 1 , V V V
F F F + , para calcular
1 , V
F y
2 , V
F .
Falta una ecuacin y a la vez una ecuacin es redundante, ya que relaciona variables
clasificadas como conocidas. El problema es debido a que se ha supuesto que el sistema
tiene dos variables de estado, es decir, dos grados de libertad, cuando en realidad slo
tiene uno. Si bien cada modelo del tanque por separado posee un grado de libertad, el
sistema de los dos tanques no posee dos grados de libertad, ya que al conectarlos se
impone que la presin en sus bases sea la misma, es decir, se introduce una ligadura que
elimina un grado de libertad.
Como resultado de la asignacin de la causalidad computacional se deduce que el
problema no tiene ni ndice cero ni uno. Para calcular el ndice del sistema se diferencian
las ecuaciones algebraicas y se realiza la asignacin de la causalidad computacional para
comprobar si el sistema obtenido es un ODE explcito. Puesto que en el ODE todas las
incgnitas aparecen derivadas y se calculan mediante integracin de su derivada, pueden
introducirse variables auxiliares sustituyendo a las derivadas. Las incgnitas del sistema
algebraico obtenido son las variables auxiliares que sustituyen a las derivadas. El sistema
resultante de realizar la sustitucin es el siguiente:
( )

'

dt
t df
dt
dF
dt
dF
dt
dF dF
dt
dp
dt
dp
dt
dp
dt
dp
F
dt
dp
C
F
dt
dp
C
V
V V V
S
V
V
2 , 1 ,
2 1
1
2 ,
2
2
1 ,
1
1
dt


[ ]
[ ]
[ ]
[ ]
( )

'

dt
t df
derF
derF derF derF
derp derp
derp derp
F derp C
F derp C
V
V V V
S
V
V
incognitas dos
redundante
2 , 1 ,
2 1
1
2 , 2 2
1 , 1 1

PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 59

Puesto que el sistema obtenido no es un ODE bien definido se diferencia una vez ms. Se
diferencia la primera, segunda y cuarta ecuacin y se introducen las variables auxiliares
*
1
p y
*
2
p , definidas como
dt
dp
p
1 *
1
y
dt
dp
p
2 *
2
, de modo que no aparezcan en el
sistema derivadas de orden mayor que uno. La tercera ecuacin es la nica en la que
interviene la variable
S
derp y, por ello, debe emplearse para evaluar esta variable. Si se
deriva esta ecuacin se introduce una nueva variable,
S
derderp , que debe evaluarse de la
ecuacin. Dado que derivar esta ecuacin no introduce ligaduras adicionales sobre las
incgnitas del sistema, no tiene sentido hacerlo. Lo mismo sucede con la quinta y la sexta
ecuacin, cuya derivacin respecto al tiempo introduce las nuevas incgnitas
V
derderF ,
1 , V
derderF y
2 , V
derderF . Sustituyendo las derivadas de orden uno respecto al tiempo
por variables auxiliares, se obtiene un sistema algebraico cuyas incgnitas son las
variables auxiliares introducidas sustituyendo a las derivadas respecto al tiempo.
[ ]
[ ]
[ ]
[ ]
( )

'

2 , 1 ,
*
2
*
1
2 ,
*
2 2
1 ,
*
1 1
*
2 2
1
*
1 1
algebraico Lazo
V V V
V
V
V
S
derF derF derF
derp derp
derF derp C
derF derp C
dt
t df
derF
p derp
derp derp
p derp

Manipulando este sistema puede escribirse en la forma de un ODE explcito, esto es,
( ) ( ) t t x f x , & , con lo cual, el sistema original tiene ndice dos. Que el sistema tenga
ndice superior implica que, en la forma en que est formulado, aparecen ms variables
derivadas de las que pueden considerarse estados. Tomando como estado la presin en
uno de los tanques, la presin en el otro puede calcularse de la ligadura
2 1
p p y
obtenerse de su ecuacin constitutiva el flujo de volumen. Sin embargo, esto implica
realizar derivacin numrica y por tanto no parece un buen mtodo. La derivacin
numrica debe evitarse siempre que sea posible, ya que la forma irregular de su error
hace complicada la determinacin del tamao ptimo del paso en el tiempo.
[ ] ( )
[ ]
[ ]
[ ]
[ ]
[ ]
1 , 1 1
2 , 1 ,
2 ,
2
2
2 1
1
1
numrica derivacin
estado de variable
V
V V V
V
S
V
F derp C
F F F
F
dt
dp
C
p p
p p
t f F
p


60 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Otra posible alternativa es derivar respecto al tiempo la ecuacin que relaciona las
supuestas variables de estado,
2 1
p p , y sustituir la ecuacin por su derivada,
dt
dp
dt
dp
2 1
. De este modo, todas las variables que aparecen derivadas se calculan por
integracin, pero a partir de unos valores iniciales que deben satisfacer la ligadura
original,
2 1
p p . Esto supone una relajacin de la ligadura: se supone que si las
condiciones iniciales satisfacen las ligaduras entre las variables derivadas, entonces el
imponer la derivada de la ligadura es equivalente a imponer la ligadura. Sin embargo,
esto no es del todo correcto, ya que al integrar separadamente
1
derp y
2
derp pueden
producirse pequeas derivas numricas que hagan que
1
p y
2
p difieran ligeramente, lo
cual, dependiendo del problema en concreto, puede ser despreciable o no [Matt92]
[Hube94].
[ ] ( )
[ ]

'

ligadura la de derivada
algebraico Lazo
estado de s variable ,
2 1
2 , 1 ,
2 , 2 2
1 , 1 1
1
2 1
derp derp
F F F
F derp C
F derp C
p p
t f F
p p
V V V
V
V
S
V

Obsrvese que el problema as planteado tiene ndice uno: diferenciando una vez todas la
ecuaciones se obtiene un ODE que, mediante manipulacin, puede escribirse en forma
explcita (el mismo ODE que se obtuvo anteriormente tras diferenciar dos veces el
sistema de ndice dos).
Otro mtodo de abordar el problema, consiste en aadir al sistema (en vez de sustituir) la
derivada de la ligadura que reduce el nmero de grados de libertad del sistema. Slo se
calculan mediante integracin tantas variables de estado como grados de libertad tenga el
sistema [Matt92]. Procediendo de esta forma y sustituyendo las derivadas por variables
auxiliares, el sistema resultante es:

( )
[ ]
[ ]

'

2 , 1 ,
2 1
2 , 2 2
1 , 1 1
2 1
1
1
ligadura la de derivada
algebraico Lazo
ligadura
estado de variable
V V V
V
V
S
V
F F F
derp derp
F derp C
F derp C
p p
p p
t f F
p

PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 61

El algoritmo de Pantelides
Cabe preguntarse si existe un criterio general para determinar qu ecuaciones del sistema
deben ser derivadas y cuntas veces deben serlo. Esencialmente, la contestacin a esa
pregunta es: debe derivarse siempre que con ello se obtenga informacin adicional til. A
continuacin se explica esta idea.
Los sistemas de ecuaciones algebraico-diferenciales (DAE) tienen la siguiente forma
general [Pant88], [Bren96]:
( ) 0 , , , t y x x F & (1)
donde:
n
x x & , Incgnitas que aparecen derivadas y sus
derivadas.
m
y Incgnitas algebraicas, es decir, aquellas que
no aparecen derivadas.
m n m n n
G F
+
: m n + funciones reales, en general, no
lineales respecto de x& .
Para que el conjunto de condiciones iniciales ( )
0 0 0
, , y x x & sea consistente, es condicin
necesaria que satisfagan el sistema (1) en el instante inicial t
0
:
( ) 0 , , ,
0 0 0 0
t y x x F &
Sin embargo, en ocasiones esta condicin no es suficiente para asegurar la consistencia
del sistema. ste es el caso cuando diferenciando algunas de las ecuaciones originales un
determinado nmero de veces, se obtienen ecuaciones que imponen nuevas ligaduras que
deben ser satisfechas por las condiciones iniciales ( )
0 0 0
, , y x x & .
Esto no siempre ocurre. En ocasiones, al diferenciar se introducen nuevas variables
(derivadas de x& o y ), de modo que las nuevas ecuaciones son satisfechas por todos los
posibles valores de las condiciones iniciales ( )
0 0 0
, , y x x & y un conjunto apropiado de
valores de las nuevas variables. En este caso, la derivacin no genera informacin til al
no introducir ninguna ligadura adicional para los valores iniciales ( )
0 0 0
, , y x x & .
Por ejemplo, considrese el siguiente sistema DAE, donde ( ) t a es una funcin del
tiempo continua y diferenciable [Pant88]:
&
( )
x x y
x y a t
+
+ +

'

0 2

Derivando las ecuaciones del sistema respecto al tiempo no se obtiene informacin
adicional:
62 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS

'

+ +
+
) ( 2 0 t a y x
y x x
& & &
& & & &

Estas ecuaciones contienen dos nuevas variables ( & , && y x ) y son satisfechas por todos los
valores iniciales ( ) x x y
0 0 0
, , & de las variables originales ( ) x x y , &, si se seleccionan como
valores iniciales para las nuevas variables:

'

+
+

0 0 0
0 0
0
2
) (
y x x
t a x
y
& & & &
& &
&

Las derivadas sucesivas respecto del tiempo de las ecuaciones no suponen ninguna
ligadura adicional sobre las variables originales ( ) x x y , &, , ya que introducen nuevas
variables (las derivadas sucesivas de & x e y ). Es suficiente, por tanto, con que el vector
de condiciones iniciales ( ) x x y
0 0 0
, , & satisfaga el sistema original. El sistema tiene ndice
cero, ya que mediante manipulacin, sin realizar ninguna diferenciacin, puede escribirse
como un ODE:
( )
2

) ( 2 0
t a x
x
t a y x
y x x

'

+ +
+
&
&

Considrese otro ejemplo. Sea el siguiente sistema DAE, donde ( ) t a y ( ) t b son
funciones del tiempo continuas y diferenciables:
& & ( )
( )
x x a t
x x b t
1 2
1 2
2
+
+

'

(1)
(2)

Para examinar si las condiciones iniciales
( )
x x x x
1 2 1 2
0 0 0 0
, , & , & deben satisfacer, adems del
sistema original, alguna ligadura adicional, se deriva el sistema respecto al tiempo,
obtenindose:

'

+
+
(2a) ) ( 2
(1a) ) (
2 2 1
2 1
t b x x x
t a x x
&
& &
& & & & &

La primera ecuacin no contiene ninguna de las incgnitas originales ( ) x x x x
1 2 1 2
, , & , & , e
introduce dos nuevas variables ( )
&& , && x x
1 2
. La segunda ecuacin s supone una ligadura
adicional: las condiciones iniciales
( )
x x x x
1 2 1 2
0 0 0 0
, , & , & deben satisfacer (1), (2) y (2a).
& & ( )
( )
& &
&
( )
x x a t
x x b t
x x x b t
1 2
1 2
2
1 2 2
2
+
+
+

'

(1)
(2)
(2a)

Derivando por segunda vez el sistema original respecto del tiempo se obtiene:
PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 63

'

+ +
+
(2b) ) ( 2 2
(1b) ) (
2 2
2
2 1
2 1
t b x x x x
t a x x
& &
& & & & &
& & & & & & & &

La primera ecuacin introduce dos nuevas variables (&&& ,&&& ) x x
1 2
. La segunda ecuacin
contiene & x
2
y x
2
, pero no supone una ligadura adicional si para cualquier valor inicial de
& x
2
y x
2
pueden encontrarse unos valores iniciales de && , && x x
1 2
que satisfagan el sistema:

'

+ +
+
) ( 2 2
) (
2 2
2
2 1
2 1
t b x x x x
t a x x
& &
& & & & &
& & & & &

&& && &( )
&& &&
&&
( ) &
x x a t
x x x b t x
1 2
1 2 2 2
2
2 2
+
+

'

(1a)
(2b)

Puesto que el determinante del sistema es ( ) 2 1
2
x , es posible encontrar unos valores
iniciales de && , && x x
1 2
que satisfagan el sistema siempre que el valor inicial de x
2
sea
diferente de 0.5. Obsrvese que si x
2
0
05 . , los trminos a la izquierda de la igualdad de
las ecuaciones (1) y (2a) son idnticos.
Derivando por tercera vez el sistema original se obtiene:

'

+ + +
+
(2c) ) ( 2 2 4
(1c) ) (
2 2 2 2 2 2 1
' ' ' '
2
' ' ' '
1
t b x x x x x x x
t a x x
& & &
& & & & & & & & & & & &
& & &

La primera ecuacin introduce dos nuevas variables
( )
x x
1 2
'' '' ''''
, . La segunda ecuacin
contiene & x
2
y && x
2
, pero no supone una ligadura adicional, ya que para cualquier valor
inicial de & x
2
y && x
2
pueden encontrarse (siempre que el valor inicial de x
2
sea diferente de
0.5) unos valores iniciales de &&& ,&&& x x
1 2
que hagan que se satisfaga el sistema:

'

+ +
+
) ( 2 6
) (
2 2 2 2 1
2 1
t b x x x x x
t a x x
& & &
& & & & & & & & &
& & & & & & & &

'

+
+
(2c) 6 ) ( 2
(1b) ) (
2 2 2 2 1
2 1
x x t b x x x
t a x x
& & &
& & &
& & & & & &
& & & & & & & &

Y as sucesivamente. Por tanto, las ecuaciones (1), (2) y (2a) constituyen el sistema que
deben satisfacer las condiciones iniciales.
Si para la resolucin del sistema DAE:
& & ( )
( )
x x a t
x x b t
1 2
1 2
2
+
+

'

(1)
(2)

se consideran estados todas las variables que aparecen derivadas, es decir,
1
x y
2
x , la
segunda ecuacin es redundante y falta una ecuacin para poder determinar las dos
derivadas. Slo una de las variables que aparecen derivadas puede considerarse como
estado. Sustituyendo las derivadas por variables auxiliares y considerando
1
x variable de
estado, puede realizarse la asignacin de la causalidad computacional. El problema es de
ndice dos: derivando la segunda ecuacin y aadindola al sistema se obtiene un
problema de ndice uno.
64 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS

'

+
+
+
(2a) ) ( 2
(2) ) (
(1) ) (
2 2 1
2
2 1
2 1
t b x x x
t b x x
t a x x
&
& &
& &
[ ]

'

+
+
+
dt
t db
derx x derx
t a derx derx
t b x x
x
) (
2
) (
algebraico Lazo
) (
estado de variable
2 2 1
2 1
2
2 1
1

El algoritmo de Pantelides proporciona un mtodo para analizar la estructura del sistema
de ecuaciones y determinar el subconjunto mnimo de ellas cuya derivacin impone
ligaduras adicionales al vector de condiciones iniciales. Estas ligaduras, junto con las
ecuaciones originales, deben ser satisfechas por el vector de condiciones iniciales para
que la inicializacin sea consistente. El algoritmo, que hace uso de la teora de grafos
para representar la estructura del sistema, no requiere la realizacin de ninguna
operacin aritmtica ni la derivacin simblica de las ecuaciones. El algoritmo converge
siempre que el sistema DAE est bien planteado. A continuacin se muestra un ejemplo
de un sistema DAE mal planteado [Pant88]. Supngase un sistema dinmico modelado
mediante las siguientes ecuaciones:
( )
( )
( )
0
0
0
1 1 2
2 1
3 2

'

f x u u
f x x y
f x y
, ,
, &,
,

donde, u u
1 2
, son las variables manipuladas del sistema (entradas), y y
1 2
, son las
variables observadas (salidas) y x es una variable interna, que aparece derivada en el
modelo. Estudiemos primero el problema directo (conocidas las entradas, calcular las
salidas) y despus el problema inverso (calcular qu entradas proporcionan las salidas
deseadas). En la Figura 2.23 el sentido de las flechas seala la causalidad computacional
de ambos problemas: la flecha entrante al elemento indica que la variable es una entrada
computacional y la flecha saliente indica que se trata de una salida computacional.
Problema directo

( )
( )
( )

'

2 3
1 2
2 1 1
, 0
, , 0
, , 0
y x f
y x x f
u u x f
&


Problema inverso

( )
( )
( )

'

2 3
1 2
2 1 1
, 0
, , 0
, , 0
y x f
y x x f
u u x f
&


Figura 2.23 Causalidad computacional de los problemas directo e inverso.
A continuacin se considera el problema directo ( u u
1 2
, conocidas, y y
1 2
, incgnitas). Se
analiza si derivando alguna de las ecuaciones se obtienen ligaduras adicionales que deban
satisfacer los valores iniciales de x x y y , &, ,
1 2
. Derivando respecto del tiempo se obtiene:
1
u
1
u
2
u
2
u
1
y
1
y
2
y
2
y
PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 65

0
0
0
1 1
1
1
1
2
2
2 2 2
1
1
3 3
2
2
+ +
+ +
+

'

f
x
x
f
u
u t
f
u
u t
f
x
x
f
x
x
f
y
y
f
x
x
f
y
y
& & ( ) & ( )
&
&
&& &
& &
(1a)
(2a)
(3a)

La primera ecuacin constituye una nueva ligadura. La segunda ecuacin introduce dos
nuevas variables, y x & & & , , y la tercera ecuacin, una,
2
y& . Volviendo a derivar la primera
ecuacin se introduce la nueva variable, x& & , cuyo valor inicial puede escogerse de modo
que se satisfaga la ecuacin para los valores iniciales de x x y y , &, ,
1 2
dados. Determinados
los valores iniciales de x x x y y , &, &&, ,
1 2
, puede escogerse el de & y
1
y de & y
2
de modo que se
satisfagan las ecuaciones (2a) y (3a) respectivamente. Derivando de nuevo las ecuaciones
no se obtienen ms ligaduras, ya que se introducen las nuevas variables &&&, && , && x y y
1 2
.
Si para resolver el sistema se considera que x es una variable de estado:
( )
( )
[ ] ( )

'



2 3
1 1 2
2 1 1
, 0
: incognitas , , 0
redundante ecuacion , , 0
estado de variable
y x f
derx, y y derx x f
u u x f
x

Si se aade la derivada de la primera ecuacin al sistema y se realiza la asignacin de la
causalidad computacional, de sta se deduce que el sistema ha pasado de tener ndice dos
a tener ndice cero y ningn grado de libertad:
[ ] ( )
[ ]
[ ] ( )
[ ] ( )
0
0
0
0
1 1 2
1 1
1
1
1
2
2
2 1
3 2

+ +

'

f x u u
f
x
derx
f
u
u t
f
u
u t
f x derx y
f x y
, ,
& ( ) & ( )
, ,
,
(1)
(1a)
(2)
(3)


Como se ve, el problema directo est bien planteado.
En la Figura 2.24 se muestra cmo puede realizarse la reduccin de ndice del problema
directo empleando Dymola.
66 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Modelo en Dymola del problema directo

model ProbDirecto
local x, y1, y2
0 = f1(x, u1(Time), u2(Time))
0 = f2(x, der(x), y1)
0 = f3(x, y2)
end
Operaciones sobre el modelo

Enter model directo.dym
Output equations
ProbDirecto.
0 = f1(x, u1(Time), u2(Time))
0 = f2(x, derx, y1)
0 = f3(x, y2)
partition
--- The problem is singular.
--- Unassigned variables:
ProbDirecto.y1
--- Additional constraint equations:
ProbDirecto.
0 = f1(x, u1(Time), u2(Time))
set LogDeriv on
differentiate
Equation needs to be differentiated:
ProbDirecto.
0 = f1(x, u1(Time), u2(Time))
Derivative:
0 = f1DER1(x, u1(Time), u2(Time))*derx +
f1DER2(x, u1(Time), u2(Time))*u1DER(Time) +
f1DER3(x, u1(Time), u2(Time))*u2DER(Time)
Checking if differentiated equations need to be differentiated.
Variable unknown x
Partition
output sorted equations
ProbDirecto.
0 = f1([x], u1(Time), u2(Time))
0 = f1DER1(x, u1(Time), u2(Time))*[derx] +
f1DER2(x, u1(Time), u2(Time))*u1DER(Time) +
f1DER3(x, u1(Time), u2(Time))*u2DER(Time)
0 = f2(x, derx, [y1])
0 = f3(x, [y2])
Figura 2.24 Modelo del problema directo y reduccin del ndice.
Considrese el problema inverso, en el que son conocidas las salidas que se desea que
tenga el sistema { y y
1 2
, } y debe calcularse qu entradas {u u
1 2
, } son precisas para
obtenerlas.
( )
( )
( )
0
0
0
1 1 2
2 1
3 2

'

f x u u
f x x y
f x y
, ,
, &,
,
(1)
(2)
(3)

El hecho de que las incgnitas u u
1 2
, slo aparezcan en la primera ecuacin, indica que
no existe la suficiente informacin para su clculo, es decir, que el sistema no est bien
planteado. El sistema DAE es incontrolable: no es posible calcular las entradas necesarias
para obtener la salida deseada. Supngase que se aplica el algoritmo de Pantelides a este
PROBLEMAS DE NDICE SUPERIOR. ALGORITMO DE PANTELIDES 67

sistema, buscando ligaduras adicionales para las condiciones iniciales de x x u u , &, ,
1 2
. Para
ello se deriva respecto al tiempo:
0
0
0
1 1
1
1
1
2
2
2 2 2
1
1
3 3
2
2
+ +
+ +
+

'

f
x
x
f
u
u t
f
u
u t
f
x
x
f
x
x
f
y
y
f
x
x
f
y
y
& & ( ) & ( )
&
&
&& &
& &
(1a)
(2a)
(3a)

La primera ecuacin, (1a), introduce dos incgnitas nuevas ( )
& , & u u
1 2
que no aparecen en
ninguna otra ecuacin. No introduce, por tanto, ninguna ligadura adicional. Cada una de
las sucesivas derivadas de la primera ecuacin introduce dos nuevas variables que slo
aparecen en ella: las sucesivas derivadas de u u
1 2
, . Es posible, por tanto, descartar la
primera ecuacin a la hora de buscar nuevas ligaduras.
La tercera ecuacin, (3a), introduce una nueva ligadura que debe ser satisfecha por los
valores iniciales de x x , & . Si se vuelve a derivar la ecuacin (3a), se obtiene una ecuacin,
que se representa como (3b), que, en general, tendr tres incgnitas: x x x , &, &&. Dado que
tanto la ecuacin (2a) como la (3b) tienen como incgnitas x x x , &, &&, suponen entre las dos
una nueva ligadura para los valores iniciales de x x , & .
Derivando la ecuacin (2a), se obtiene una ecuacin, que se representa como (2b), que,
en general, depende de x x x x , &, &&,&&&. Derivando la ecuacin (3b), que en general depende de
x x x , &, &&, se obtiene una ecuacin que se representa como (3c) y que, en general, depende
de x x x x , &, &&,&&&. Las ecuaciones (2b) y (3c), dependientes de x x x x , &, &&,&&&, constituyen entre las
dos una nueva ligadura para x x , & . Podra seguirse razonando de esta manera
indefinidamente, por ello, el algoritmo de Pantelides no converge para este sistema. En la
Figura 2.25 se muestra el modelo del problema inverso en Dymola y el resultado de la
aplicacin al mismo del algoritmo de Pantelides.
68 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Modelo en Dymola del problema inverso

model ProbInverso
local x, u1, u2
0 = f1(x, u1, u2)
0 = f2(x, der(x), y1(Time))
0 = f3(x, y2(Time))
end
Operaciones sobre el modelo

enter model inverso.dym
output equations
ProbInverso.
0 = f1(x, u1, u2)
0 = f2(x, derx, y1(Time))
0 = f3(x, y2(Time))
partition
--- The problem is singular.
--- Unassigned variables:
ProbInverso.u2
--- Additional constraint equations:
ProbInverso.
0 = f3(x, y2(Time))
set LogDeriv on
differentiate
/* Equation needs to be differentiated: */
/* */
/* ProbInverso. */
/* 0 = f3(x, y2(Time)); */
/* Derivative: */
/* 0 = f3DER1(x, y2(Time))*derx + f3DER2(x, y2(Time))*y2DER(Time) */
/* ; */
/* */
/* Checking if differentiated equations need to be differentiated. */
/* Equation needs to be differentiated: */
/* 0 = f2(x, derx, y1(Time)); */
/* Derivative: */
/* 0 = f2DER1(x, derx, y1(Time))*derx + f2DER2(x, derx, y1(Time)) */
/* *derderx + f2DER3(x, derx, y1(Time))*y1DER(Time); */
/* */
/* Equation needs to be differentiated: */
/* 0 = f3DER1(x, y2(Time))*derx + f3DER2(x, y2(Time))*y2DER(Time) */
/* ; */
/* Derivative: */
/* 0 = (f3DER1DER1(x, y2(Time))*derx + f3DER1DER2(x, y2(Time))* */
/* y2DER(Time))*derx + f3DER1(x, y2(Time))*derderx + ( */
/* f3DER2DER1(x, y2(Time))*derx + f3DER2DER2(x, y2(Time))*y2DER */
/* (Time))*y2DER(Time) + f3DER2(x, y2(Time))*y2DERDER(Time); */
/* */
/* Checking if differentiated equations need to be differentiated. */
...

Dymola sigue diferenciando hasta que muestra el siguiente mensaje de error

Too Many variables in an equation.

differentiate
=
Figura. 2.25 Modelo del problema inverso y aplicacin del algoritmo de Pantelides.
ELECCIN DE LAS VARIABLES DE ESTADO 69

2.10 ELECCIN DE LAS VARIABLES DE ESTADO
Hasta el momento se ha visto que cuando el nmero de variables que aparecen derivadas
excede al nmero de grados de libertad del sistema, puede seleccionarse cules de estas
variables (tantas como grados de libertad) desean emplearse como estados. Supngase
ahora que se desea que algunas de las variables algebraicas (aquellas que no aparecen
derivadas) del modelo sean variables de estado, ya que es ms fcil establecer sus valores
iniciales que los de las correspondientes variables que aparecen derivadas.
Una solucin consiste en que el programador del modelo reescriba las ecuaciones de
ste. Para ello, en primer lugar debe derivar las ecuaciones apropiadas y aadirlas al
modelo, de modo que de estas ecuaciones sea posible calcular la derivada de las nuevas
variables de estado. A continuacin, debe sustituir las derivadas de las antiguas variables
de estado por variables algebraicas.
Otra alternativa consiste en permitir que sea el lenguaje de modelado quien realice estas
operaciones [Elmq95]. Para ello se aaden al modelo original tantas ecuaciones mudas
como variables algebraicas se desee que sean variables de estado. En cada una de estas
ecuaciones mudas aparece la derivada de la variable igualada a una variable muda. Estas
ecuaciones, si bien no modifican la solucin de las variables originales del sistema, hacen
que ste tenga ndice superior. A continuacin se aplica el algoritmo de Pantelides, con
lo cual es el lenguaje de modelado quien selecciona las ecuaciones que deben ser
derivadas, las deriva simblicamente y las aade al sistema. El programador puede
entonces especificar cules de las variables que aparecen derivadas deben ser
consideradas variables de estado.
A continuacin se muestra un ejemplo. Considrese el siguiente sistema:
( ) ( ) ( ) ( )
( )
& *
*
x u t u t y u t
x y y
y f y

'

1 2 1 3
1 2
2 1

) (
1
t u , ) (
2
t u y ) (
3
t u son funciones conocidas del tiempo. Deben evaluarse x ,
1
y e
2
y .
Para realizar la particin del sistema, la herramienta de modelado considera que x es la
variable de estado y sustituye su derivada por una variable algebraica auxiliar, derx . Del
lazo algebraico no lineal que forman la segunda y la tercera ecuacin se obtienen y y
1 2
, .
A continuacin, de la primera ecuacin, se obtiene la derivada de x , derx :
( )
[ ] ( ) ( ) ( ) ( )

'

t u y t u t u derx
y f y
y y x
x
3 1 2 1
1 2
2 1
*
algebraico lazo
*
estado

70 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Si se desea que la variable algebraica y
1
sea la variable de estado del sistema, puede
aadirse al mismo una ecuacin muda, en la que aparezca y
1
derivada y que no altere la
solucin del sistema. Por ejemplo:

dt
dy
1

Esta ecuacin es la nica en la que interviene la variable muda y, por ello, se emplear
para evaluarla. No modifica, por tanto, la solucin del sistema de ecuaciones. Esta
ecuacin hace que el nuevo problema sea de ndice superior, ya que aparecen dos
variables derivadas x e
1
y en un sistema con un solo grado de libertad.
( ) ( ) ( ) ( )
( )
& *
*
&
x u t u t y u t
x y y
y f y
y

'

1 2 1 3
1 2
2 1
1
(1)
(2)
(3)
(4)

El algoritmo de Pantelides determina qu manipulaciones deben realizarse sobre el
sistema para reducir su ndice. Al realizar la particin del sistema aumentado con las
ecuaciones derivadas debe escogerse cul de las dos variables que aparecen derivadas se
toma como estado. Se escoge y
1
.
Derivando para analizar si las derivadas de las ecuaciones imponen nuevas ligaduras a los
valores iniciales de
1 1
, , , y y x x & & e
2
y se obtiene:
( ) ( )
&& & ( ) & ( ) ( ) ( ) & & ( )
& & * * &
& &
&& &
x u t u t y u t u t y u t
x y y y y
y
f
y
y
y

+

'

1 2 1 3 2 1 3
1 2 1 2
2
1
1
1
(1a)
(2a)
(3a)
(4a)


Las ecuaciones (2a) y (3a), conjuntamente, imponen una nueva ligadura a los valores
iniciales de
1 1
, , , y y x x & & e
2
y . La ecuacin (2a) tiene las incgnitas
1 1
, , y y x & & e
2
y . La
ecuacin (3a) tiene las incgnitas
1 1
, y y & e
2
y& . Las ecuaciones (1a) y (4a) no imponen
nuevas ligaduras, ya que introducen nuevas variables & & & , x e
1
y& & cuyos valores iniciales,
seleccionados adecuadamente, hacen que se satisfagan las ecuaciones para cualquier
conjunto de valores iniciales de
1 1
, , , y y x x & & e
2
y . Volviendo a derivar se introducen las
nuevas variables
2 1
, , y y x & & & & & & & y & & , no imponindose nuevas ligaduras. Aadiendo las dos
ecuaciones, (2a) y (3a), al sistema, el problema resultante es de ndice uno:
ELECCIN DE LAS VARIABLES DE ESTADO 71

( ) ( ) ( ) ( )
( )
& *
*
&
& & * * &
& &
x u t u t y u t
x y y
y f y
y
x y y y y
y
f
y
y

'

1 2 1 3
1 2
2 1
1
1 2 1 2
2
1
1
(1)
(2)
(3)
(4)
(2a)
(3a)


En la Figura 2.26 se muestra el modelo original y la asignacin de la causalidad
computacional que realiza Dymola.
Modelo en Dymola del problema original

model EleccionVE
local x, y1, y2
der(x) = u1(Time) - u2(Time) * ( y1 - u3(Time) )
x = y1 * y2
y2 = f(y1)
end
Operaciones sobre el modelo

enter model elec_ve1.dym
partition
output variables
x x known state
y1 y1 local
y2 y2 local
derx derx der
Time Time known independent
output solved equations
/* SORTED AND SOLVED EQUATIONS */

/* SYSTEM OF 2 SIMULTANEOUS EQUATIONS */
/* UNKNOWN VARIABLES */
/* y2 */
/* y1 */
/* EQUATIONS */
/* EleccionVE. */
/* [y2] = f(y1); */
/* x = [y1]*y2; */
/* --- System of simultaneous equations is nonlinear. */
/* END OF SYSTEM OF SIMULTANEOUS EQUATIONS */
EleccionVE.
[derx] = u1(Time) - u2(Time)*(y1 - u3(Time));
/* END OF SORTED AND SOLVED EQUATIONS */
Figura 2.26 Modelo original y asignacin de la causalidad computacional.
En la Figura 2.27 se muestra el modelo modificado, a fin de seleccionar la variable
1
y
como variable de estado, la reduccin de ndice y la asignacin de la causalidad
computacional.
72 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS



Modelo en Dymola del problema modificado

model EleccionVE
local x, y1, y2
local alfa { variable muda }
der(x) = u1(Time) - u2(Time) * (y1 - u3(Time))
x = y1 * y2
y2 = f(y1)
der(y1) = alfa { ecuacion muda }
end
Operaciones sobre el modelo

set Eliminate off
enter model elec_ve2.dym
output equations
EleccionVE.
derx = u1(Time) - u2(Time)*(y1 - u3(Time))
x = y1*y2
y2 = f(y1)
dery1 = alfa
partition
--- The problem is singular.
--- Unassigned variables:
EleccionVE.alfa
--- Additional constraint equations:
EleccionVE.
y2=f(y1)
output equations
EleccionVE.
[derx] = u1(Time) - u2(Time)*(y1 - u3(Time))
x = y1*[y2]
y2 = f(y1)
[dery1] = alfa
set LogDeriv on
differentiate
Equation needs to be differentiated:
EleccionVE.
x = y1*y2
Derivative:
derx = dery1*y2 + y1*dery2
Equation needs to be differentiated:
y2 = f(y1)
Derivative:
dery2 = fDER(y1)*dery1
Checking if differentiated equations need to be differentiated.
variable unknown x
partition
output equations
EleccionVE.
[derx] = u1(Time) - u2(Time)*(y1 - u3(Time))
[x] = y1*y2
[y2] = f(y1)
dery1 = [alfa]
derx = [dery1]*y2 + y1*dery2
[dery2] = fDER(y1)*dery1
output solved equations
/* SORTED AND SOLVED EQUATIONS */
EleccionVE.
[y2] = f(y1);
[x] = y1*y2;
[derx] = u1(Time) - u2(Time)*(y1 - u3(Time));
/* SYSTEM OF 2 SIMULTANEOUS EQUATIONS */
/* UNKNOWN VARIABLES */
/* dery2 */
/* dery1 */
/* EQUATIONS */
/* EleccionVE. */
MODELOS DE ESTRUCTURA VARIABLE 73

/* [dery2] = fDER(y1)*dery1; */
/* derx = [dery1]*y2 + y1*dery2; */
/* SOLVED SYSTEM OF EQUATIONS */
Q101 = fDER(y1);
Q102 = y2 + Q101*y1;
Q103 = Q101*derx;
dery2 = Q103/Q102;
dery1 = derx/Q102;
/* END OF SYSTEM OF SIMULTANEOUS EQUATIONS */
EleccionVE.
[alfa] = dery1;
/* END OF SORTED AND SOLVED EQUATIONS */
Figura 2.27 Modelo modificado, reduccin de su ndice y asignacin de la causalidad computacional.
2.11 MODELOS DE ESTRUCTURA VARIABLE
Se denominan modelos de estructura variable a aquellos cuya descripcin matemtica
vara en tiempo de simulacin. Son sistemas en los que se definen varios estados, cada
uno de los cuales est descrito por un determinado conjunto de ecuaciones. En tiempo de
simulacin, de acuerdo a unas condiciones bien establecidas, se produce la conmutacin
entre sus estados, y, en consecuencia, entre los distintos modelos matemticos que
describen el sistema en sus distintos estados. En el Anexo B se propone un algoritmo
original para la descripcin matemtica de modelos de estructura variable compatible
con los lenguajes de modelado orientado a objetos.
Un ejemplo tpico de sistema con dos estados es un conmutador de flujo. El estado del
conmutador de flujo viene determinado por el valor de una variable lgica (OpenSw en el
ejemplo de la Figura 2.28). Cuando el conmutador est cerrado, la cada de presin entre
sus extremos es cero y el flujo que circula a su travs depende del resto del circuito de
conduccin. Cuando el conmutador est abierto no circula flujo a su travs y la cada de
presin entre sus extremos viene impuesta por el resto del circuito.
Conmutador de flujo abierto
(OpenSw=True)










Conmutador de flujo cerrado
(OpenSw=False)

Figura 2.28 Modelo con dos estados de un conmutador de flujo.
La causalidad computacional del conmutador no viene impuesta por la forma en que se
realiza su conexin con el entorno, sino que es funcin del valor numrico de su variable
terminal OpenSw: si OpenSw vale True, de la ecuacin del conmutador debe evaluarse el
flujo y si vale False debe evaluarse la presin en uno de sus terminales (ver Figura 2.29).
A
p
pA
0
V
F
B
p
pA
V
F
pA
A
p
pA
B
p
pA
V
F
pA
B A
p p
74 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS













Figura 2.29 Autmata del modelo del conmutador de flujo.
Dado que la causalidad computacional no queda determinada al conectar el conmutador
al entorno (ya que depende de OpenSw), el problema es de ndice uno: el modelo del
conmutador debe conducir a un lazo algebraico [Elmq93] [Cell95]. Las expresiones if-
then-else de los lenguajes de modelado plantean automticamente el problema de ndice
uno, permitiendo que el usuario realice una descripcin de alto nivel del sistema de
estructura variable [Elmq96] [Ande94] [Cell91] [Mode99] [EAIn99].
Para ilustrarlo se considera como ejemplo un sistema de desage formado por la tubera
principal y su sistema de seguridad, compuesto por un conmutador de flujo y una
segunda tubera dispuesta en paralelo tal como se muestra en la Figura 2.30. Cuando el
caudal de la tubera principal excede determinado lmite de seguridad se cierra el
conmutador de flujo, derivndose parte del caudal por la tubera secundaria de seguridad.
En condiciones normales de funcionamiento el conmutador se encuentra abierto y todo el
fluido circula por la tubera principal.













Figura 2.30 Esquema del sistema de desage.
Si el fluido puede considerarse incompresible, la cada de presin debida a la friccin en
una tubera comercial viene dada por [Goul69], p Sc F
desc V
, donde S es la seccin
de la tubera y
L
D
c
Fanning
desc
2
el coeficiente de descarga. Se considera que, en un
entorno del punto normal de operacin, puede suponerse que el flujo que circula por una
tubera es proporcional a la cada de presin entre sus extremos. En la Figura 2.31 se
Abierto
Cerrado
OpenSw = True
OpenSw = False
0
V
F
B A
p p
principal
secundaria OpenSw
Controlador
de flujo
S V
F
,
2 , V
F
1 , V
F
2
p
1
p
atm
p
atm
p
MODELOS DE ESTRUCTURA VARIABLE 75

muestra el modelo linealizado, donde ( )
0 0 ,
, p F
V
representa el punto normal de trabajo
(que, en general, es diferente para cada tubera).


( )
0
0
0 ,
2
p p
p
Sc
F F
desc
V V

+



Figura 2.31 Modelo lineal de la tubera.
Las ecuaciones del circuito de flujo son:

( )( )
( )
( )
S V
S V
V V S V
V
V atm
V atm
F f OpenSw
t f F
F F F
OpenSw p p OpenSw F
F R R p p
F R R p p
,
,
2 , 1 , ,
2 1 2 ,
2 , 2
*
2 2
1 , 1
*
1 1
) ( new
1 0

+
+
+
+

La presin atmosfrica,
atm
p , se considera constante y la variable lgica OpenSw un
estado. El sistema de ecuaciones obtenido es lineal. Resolvindolo se obtiene:
[ ] ( )
[ ]
( )( )
( )( )
[ ]
[ ]
[ ]
[ ] ( )
S V
atm V
atm V
V S V V
S V
V
S V
F f OpenSw
p F R R p
p F R R p
F F F
OpenSw OpenSw R R
OpenSw F R R R
F
t f F
,
2 , 2
*
2 2
1 , 1
*
1 1
2 , , 1 ,
2 1
, 1
*
2
*
1
2 ,
,
) ( new
1
1

+ +
+ +

+
+


El denominador ( )( ) R R OpenSw OpenSw
1 2
1 + no es cero en ningn caso, con lo cual
el modelo es vlido para cualquiera de los dos estados del conmutador de flujo. Si el
circuito de flujo contuviera N conmutadores, se estableceran los lazos algebraicos de
modo que se obtendra un nico modelo vlido para sus
N
2 posibles estados [Cell95].
En este ejemplo el ndice del sistema es independiente del estado del conmutador, sin
embargo, puede ocurrir que al producirse la conmutacin se introduzcan ligaduras
adicionales que hagan variar los grados de libertad del sistema. Dicho de otra manera, al
producirse la conmutacin puede variarse la causalidad computacional de uno o ms
elementos almacenadores, de integral a derivativa o viceversa, modificndose el ndice
V
F
B
p
A
p
V B A
RF R p p +
*
76 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


del sistema. A continuacin se consideran algunos ejemplos sencillos de sistemas de
ndice variable.
Se supone que la caracterstica de la tubera que desea modelarse no es la prdida de
carga del fluido por friccin con las paredes de la conduccin, como en el ejemplo
anterior, sino la dinmica del fluido inducida por la diferencia de presin entre los
extremos de la conduccin.
El momento lineal del fluido, de densidad constante , contenido en una tubera de
seccin S y longitud L , por cuyo interior circula con velocidad v , es
( )
V
LF v SL P . Se supone que la nica fuerza que se ejerce sobre el fluido
contenido en la tubera es igual al producto de la seccin de sta por la diferencia de
presiones entre sus extremos. Dado que la derivada del momento lineal del fluido es igual
a la fuerza que se ejerce sobre l, se obtiene el modelo de la inercia del fluido
representado en la Figura 2.32, donde, por analoga con el caso elctrico, se denomina
inductancia al coeficiente
S
L
I

[Goul69]. En la Figura 2.32 tambin se muestra el
modelo no lineal de la cada de presin en la tubera debida a la friccin.







B A
V
p p
dt
dF
S
L









2
2
1
V
desc
B A
F
Sc
p p

,
_



Figura 2.32 Inercia y resistencia del flujo.
Se considera el circuito de flujo de la Figura 2.33, en el cual el desage del lquido
contenido en un tanque se produce a travs de dos tramos de conduccin separados por
un conmutador de flujo. En una de las conducciones la caracterstica modelada es la
prdida de presin debida a la friccin y en la otra la dinmica asociada a la inercia del
fluido.









Figura 2.33 Esquema del modelo del circuito de desage.
V
F
B
p
A
p
A
p
B
p
V
F
OpenSw
1
p
atm
p
2
p
3
p
V
F
atm
p
MODELOS DE ESTRUCTURA VARIABLE 77

Como en el ejemplo anterior, cuando el conmutador de flujo est cerrado (ver Figura
2.34), la cada de presin entre sus puntos de conexin es cero, mientras que cuando est
abierto no se produce flujo de desage (ver Figura 2.35). Se supone que en las
condiciones normales de funcionamiento las variaciones en la presin en la base del
depsito debido al desage son tan pequeas que pueden ser despreciadas, con lo cual se
considera
1
p una funcin del tiempo. La presin atmosfrica se considera constante.
Como se ve, cuando el conmutador est abierto el problema tiene ndice dos y ningn
grado de libertad, mientras que cuando est cerrado el ndice es cero y posee un grado de
libertad. Para reducir el orden del modelo cuando el conmutador est abierto basta con
diferenciar la ligadura sobre la variable que aparece derivada, es decir, la ecuacin
0
V
F , y aadir la ecuacin diferenciada, 0
dt
dF
V
, al sistema. El ndice del sistema as
ampliado cuando el conmutador est abierto es cero. Las herramientas de modelado no
tratan adecuadamente los sistemas cuyo ndice vara en tiempo de simulacin (ver
Anexo B), por ello debe modificarse el modelo.
( )

'

,
_

atm
V
V
desc
p p
dt
dF
I
p p
F
Sc
p p
t f p
3
3 2
2
2
2 1
1
0
1

Figura 2.34 Conmutador de flujo cerrado.
( )

'

,
_

atm
V
V
V
desc
p p
dt
dF
I
F
F
Sc
p p
t f p
3
2
2
2 1
1
0
1

Figura 2.35 Conmutador de flujo abierto.
Un modo de hacerlo es cambiar las hiptesis de modelado del conmutador, de modo que
su ecuacin constitutiva contenga, en cualquiera de sus dos estados (abierto y cerrado),
tanto la presin en sus puntos de conexin como el flujo de volumen. De esta forma se
evita el problema que se plantea cuando en un determinado estado del conmutador todas
las variables de su ecuacin constitutiva aparecen derivadas en otros componentes del
sistema. En el ejemplo anterior el problema de ndice superior se plantea debido a que la
ecuacin constitutiva del conmutador abierto slo contiene el flujo de volumen, 0
V
F
(siendo, por tanto, obligado su clculo de esta ecuacin), y el flujo de volumen aparece
derivado en la ecuacin constitutiva de la inercia del fluido.
atm
p
OpenSw = 0
3
p
2
p
1
p
V
F
atm
p
3
p
2
p
1
p
V
F
OpenSw = 1
78 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


El problema dual se plantea, por ejemplo, si se conectan en paralelo dos tanques a una
bomba, de tal modo que entre uno de ellos y la bomba se disponga un conmutador de
flujo. En las Figuras 2.36 y 2.37 se muestran los dos estados del sistema. La relacin
constitutiva del conmutador cerrado slo contiene las presiones de sus puntos de
conexin, con lo cual debe emplearse para evaluar una de ellas. Puesto que ambas
variables aparecen derivadas en las ecuaciones constitutivas de los tanques, el problema
tiene ndice superior.


( ) t f F
F F F
F
F
dt
dp
g
S
F
dt
dp
g
S
S V
V V S V
V
V
V

,
2 , 1 , ,
2 ,
2 ,
2 2
1 ,
1 1
0




Figura 2.36 Conmutador abierto.


( ) t f F
F F F
p p
F
dt
dp
g
S
F
dt
dp
g
S
S V
V V S V
V
V

,
2 , 1 , ,
2 1
2 ,
2 2
1 ,
1 1





Figura 2.37 Conmutador cerrado.
Debido a las dificultades asociadas con los conmutadores ideales, muchos investigadores
prefieren reemplazar los conmutadores ideales por elementos no ideales, en los cuales el
conmutador cuando est cerrado tiene una resistencia muy pequea y cuando est
abierto tiene una conductancia muy pequea [Cell95]. En la Figura 2.38 se muestra una
modificacin del modelo del conmutador de flujo de modo que en las relaciones
constitutivas de sus dos estados aparecen tanto la presin en sus dos puntos de conexin
como el flujo de volumen.
OpenSw = 1
atm
p
atm
p
1
p
2
p
1 , V
F
2 , V
F
S V
F
,
atm
p
atm
p
1
p
2
p
1 , V
F
2 , V
F
S V
F
,
OpenSw = 0
MODELOS DE ESTRUCTURA VARIABLE 79

Conmutador abierto






( ) 0 , +
B A V
p p F
Conmutador cerrado






( ) 0 +
V B A
F p p
Figura 2.38 Modelo del conmutador modificado.
( ) representa cualquier funcin monovaluada cuyo valor sea lo suficientemente
pequeo como para ser despreciable. Una posible eleccin es:

'



1 si
1
0 si
OpenSw F p p
OpenSw F p p
V B A
V B A


donde es un nmero lo suficientemente pequeo como para que pueda considerarse
despreciable el trmino al cual multiplica. Como se ve en las Figuras 2.39, 2.40, 2.42 y
2.43, este modelo para el conmutador de flujo no da lugar a sistemas con estados con
diferente ndice. En las Figuras 2.41 y 2.44 se muestran los modelos escritos en Dymola
y el resultado de las simulaciones.
[ ] ( )
[ ]
[ ]
atm
V
V
V
desc
V
p p
dt
dF
I
F p p
F
Sc
p p
t f p
F

1
]
1

,
_

3
3 2
2
2
2 1
1
1
1
estado de variable


Figura 2.39 Conmutador de flujo abierto.
Obsrvese que cuando el conmutador se encuentra abierto el flujo,
V
F , tiende a cero
aproximadamente de forma exponencial con una constante de tiempo I .
( )
I
t
Vo V V atm V V
desc
V
e F F F p F F
Sc
t f
dt
dF
I

2
2
1 1 1

,
_


OpenSw = 1
V
F
A
p
B
p
OpenSw = 0
V
F
A
p
B
p
OpenSw = 1
V
F
1
p 2
p
3
p
atm
p
80 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


[ ] ( )
[ ]
[ ]
atm
V
V
V
desc
V
p p
dt
dF
I
F p p
F
Sc
p p
t f p
F

1
]
1

,
_

3
3 2
2
2
2 1
1
1
estado de variable


Figura 2.40 Conmutador de flujo cerrado.
model circFlow1

local p1, p2, p3 ->
Fv ->
OpenSw = False

parameter patm = 0 ->
eps = 1E-5 ->
R = 10 ->
I = 1

OpenSw = if Time > 2 ->
then False ->
else if Time > 1 ->
then True ->
else False

p1 = 10

p1 - p2 = R * Fv**2

p2 - p3 = if OpenSw ->
then Fv / eps ->
else eps * Fv

I * der(Fv) = p3 - patm

end


Figura 2.41 Circuito de flujo: Fuente de presin - R - Conmutador - I - Presin de referencia.
[ ] ( )
[ ]
[ ]
2 ,
2 2
1 ,
1 1
2 , 1 , ,
2 , 2 1
,
2 1
1
estado de variables ,
V
V
V V S V
V
S V
F
dt
dp
g
S
F
dt
dp
g
S
F F F
F p p
t f F
p p

1
]
1

1
]
1



Figura. 2.42 Conmutador de flujo abierto.
OpenSw = 1
atm
p
atm
p
1
p
2
p
1 , V
F
2 , V
F
S V
F
,
OpenSw = 0
V
F
1
p 2
p
3
p
atm
p
MODELOS DE ESTRUCTURA VARIABLE 81

[ ] ( )
[ ]
[ ]
2 ,
2 2
1 ,
1 1
2 , 1 , ,
2 , 2 1
,
2 1
estado de variables ,
V
V
V V S V
V
S V
F
dt
dp
g
S
F
dt
dp
g
S
F F F
F p p
t f F
p p

1
]
1

1
]
1




Figura 2.43 Conmutador de flujo cerrado.
model circFlow2

local p1, p2 ->
FvS, Fv1, Fv2 ->
OpenSw = False

parameter C1 = 1 ->
C2 = 1 ->
eps = 1E-5

OpenSw = if Time > 2 ->
then False ->
else if Time > 1 ->
then True ->
else False

FvS = 10

p1 - p2 = if OpenSw ->
then Fv2 / eps ->
else eps * Fv2

FvS = Fv1 + Fv2

C1 * der(p1) = Fv1

C2 * der(p2) = Fv2

end

Figura 2.44 Circuito de flujo: ( Fuente de flujo // ( Conmutador - C ) // C ) - Presin de referencia.
Durante el desarrollo del conjunto de libreras que componen la versin 1.0 de JARA se
volver sobre el problema de los modelos de ndice variable y se propondr una solucin
alternativa a sta.
atm
p
atm
p
1
p
2
p
1 , V
F
2 , V
F
S V
F
,

OpenSw = 0
82 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


2.12 SOLUCIN DE SISTEMAS DE ECUACIONES
ALGEBRAICO-DIFERENCIALES (DAE)
La discretizacin de DAEs
El algoritmo para la solucin numrica de DAEs de DASSL [Bren96] es reconocido
como uno de los ms robustos existentes y es el ms ampliamente usado [Ande94]
[Elmq96a] [EAIn99]. Considrese la siguiente representacin general de un DAE:

( )
( )
0 0
, , 0
y y
y y f

t
t &

( ) t y es un vector de incgnitas. DASSL emplea el mtodo BDF (Backward Difference
Formulae) de discretizacin [Gear71] [Sile92]. El orden de la aproximacin y el tamao
del paso de integracin son escogidos automticamente por DASSL en cada paso en
funcin del comportamiento de la solucin. DASSL emplea el mtodo de iteracin de
Newton para resolver el sistema no lineal de ecuaciones algebraicas obtenido.
Considrese, por ejemplo, el siguiente esquema de discretizacin, que es la usada por
una gran cantidad de algoritmos de integracin implcitos (por ejemplo, BDF)
[Elmq96a]:
( ) y y y old + & h
Los vectores y e y& representan los valores en el nuevo instante de tiempo. El escalar h
es conocido. La forma en que h depende del tamao del paso de integracin vara de un
algoritmo de integracin a otro. ( ) y old es una funcin de los valores conocidos de y en
los instantes anteriores de tiempo. Por ejemplo, la discretizacin BDF de tercer orden
cae dentro de esta categora:

,
_

+ +
+ + 2 1 1 1
11
2
11
9
11
18
11
6
n n n n n
h y y y y y & , donde h es
el tamao del paso de integracin [Elmq96a]. Realizando la discretizacin del DAE, se
obtiene:

( )

,
_


t
h
, ,
old
0 y
y y
f
El mtodo estndar de iteracin de Newton que utiliza DASSL para resolver y del
sistema de ecuaciones algebraicas no lineales anterior est dado por las siguientes
ecuaciones (el mtodo de Newton itera sobre el ndice k ) [Bosh94]:

( )

,
_



+
t
h
k
k
k k
, ,
old

1 1
y
y y
f J y y
1
J representa la inversa de la matriz Jacobiana. La matriz Jacobiana de f se define
como:
y
f
y
f
y
f
J
&


h d
d 1
. La inversa de la matriz Jacobiana es evaluada en un paso en
el tiempo y es mantenida constante tanto tiempo como sea posible [Elmq96a]. El valor
SOLUCIN DE SISTEMAS DE ECUACIONES ALGEBRAICO-DIFERENCIALES (DAE) 83

de la matriz Jacobiana puede calcularse empleando tcnicas de manipulacin simblica o
numricamente. Por ejemplo, EcosimPro lo calcula numricamente usando diferencias
finitas [EAIn99].
Integracin I nlinede DAEs
En [Elmq96a] se presenta una metodologa, aplicada por Dymola, cuya finalidad es
incrementar la eficiencia de la simulacin. Consiste en utilizar la informacin estructural
acerca del sistema para, en lugar de aplicar el algoritmo de Newton al sistema completo,
aplicarlo nicamente a los lazos algebraicos no lineales identificados de realizar la
particin y el tearing al modelo ampliado con las ecuaciones de discretizacin de las
variables de estado, resolviendo secuencialmente las dems ecuaciones (en las que las
incgnitas aparecen de forma lineal).
Para ello debe modificarse la interfaz del lenguaje de modelado con el algoritmo de
resolucin de DAEs (por ejemplo, DASSL). La interfaz es generada automticamente
por Dymola, a partir de la descripcin orientada a objetos de alto nivel del modelo
(fichero dsmodel.c) y del experimento (fichero dsin.txt), siguiendo la definicin DSblock
[Elmq96] [Otte92] [Otte98].
La herramienta de modelado establece el sistema no lineal de ecuaciones discretizadas y
lo resuelve utilizando la estructura conocida de las ecuaciones, llamando a una funcin
para realizar la iteracin de Newton sobre un conjunto mnimo de ecuaciones algebraicas
no lineales. La funcin o bien devuelve los valores de las variables de estado en el nuevo
instante o bien informa de que la iteracin no converge una vez superado el nmero de
iteraciones definido por el integrador. Slo la discretizacin de las ecuaciones de estado
y la solucin del sistema algebraico de ecuaciones discretizadas (normalmente no lineal)
se trasladan al dominio del modelo. La estimacin del error, el control del tamao del
paso y los detalles de la discretizacin de la frmula (clculo de h a partir del tamao del
paso, clculo de ( ) x old a partir de los valores de x en los instantes previos, etc.) estn
en el dominio del integrador. El integrador tambin proporciona una estimacin para el
valor de las variables de estado en el nuevo instante de tiempo.
El algoritmo de integracin inline hace uso del operador residue. En Dymola se emplea
el operador residue para especificar en el modelo las variables de tearing y las ecuaciones
residuo (ver Anexo A) [Elmq94]. Considrese, por ejemplo, el sistema de ecuaciones
algebraicas ( ) z h 0 del que deben evaluarse las incgnitas z . Un subconjunto del
vector z , llamado
1
z , se escoge como variables de tearing y un subconjunto de h,
denominado
1
h , se escoge como ecuaciones residuo. Esto implica que el resto de z ,
llamado
2
z , puede calcularse secuencialmente utilizando el resto de las ecuaciones,
2
h ,
supuesto que se conoce
1
z :
( )
( )
( )

'


2 1 1
1 2 2
, 0 z z h
z h z
z h 0
tearing
. Se representa:
( )
( ) ( )

'

2 1 1 1
1 2 2
, residue z z h z
z h z

El operador residue aplicado sobre un conjunto de variables, en un sistema de
ecuaciones no lineal, indica que esas variables deben calcularse de ese conjunto de
ecuaciones empleando el mtodo de iteracin de Newton. En el algoritmo de integracin
84 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


inline expuesto en [Elmq96a] se emplea el operador residue de la misma forma en las
ecuaciones obtenidas de discretizar la derivada de las variables de estado y que deben ser
iteradas.
El algoritmo de integracin inline descrito en [Elmq96a] se ejecuta siguiendo los pasos
expuestos a continuacin. Para ello se distingue explcitamente en la formulacin del
DAE entre las variables que aparecen derivadas, x , y las que no, w (con
( ) ( ) ( ) w x f dim dim dim + ):

( )
( )
0 0
, , , 0
x x
w x x f

t
t &

1. Se realiza la particin del sistema asumiendo que x es conocido y que w y x& son
desconocidos. Se determinan los sistemas de ecuaciones que no pueden ser resueltos
de forma explcita y stos tienen dimensin mnima.
2. Para cada
i
x tal que
i
x& puede ser resulta explcitamente (corresponde a un bloque
diagonal de dimensin uno en la matriz BLT de incidencia ordenada), se aade la
ecuacin ( ) ( )
i i i i
x x x h x residue old + + & . Para todas las dems
j
x se aade la
ecuacin ( )
j j j
x x h x old + & . Obsrvese que, a fin de evitar problemas numricos que
aparecen al tender h a cero [Elmq96a], en lugar de realizarse la discretizacin:
( )

,
_


t
h
f , , ,
old
w x
x x
0 , se realiza: ( ) ( ) t h f , , , old , w x x x x 0 + & & .
3. Si la ecuacin asignada para el clculo de
j
x& o de
j
w forma parte de un lazo
algebraico (bloque diagonal de dimensin mayor que uno en la matriz BLT de
incidencia ordenada), aadir el trmino ( )
j
x& residue o ( )
j
w residue a la
correspondiente ecuacin del modelo.
4. Si se ha indicado en el cdigo del modelo que o bien no deben usarse como variables
de tearing
i
x ,
j
x& o
j
w , o bien aparecen en el cdigo del modelo trminos
( )
i
x residue , ( )
j
x& residue o ( )
j
w residue , eliminar los correspondientes operadores
residue introducidos en los pasos 2 y 3. Esta regla permite al diseador de la librera
sustituir los criterios que tiene por defecto el lenguaje de modelado para establecer
las variables de tearing por los suyos propios.
5. Realizar la particin del sistema de ecuaciones aumentado con las ecuaciones de
discretizacin de la derivada de las variables de estado. Se supone para ello que x ,
w y x& son desconocidos. Se obtiene el modelo discretizado en forma BLT.
Cabe sealar los dos siguientes casos extremos de aplicacin del algoritmo [Elmq96a]. El
primero es aquel en el cual el DAE consiste en un nico lazo algebraico en el cual estn
involucradas todas las derivadas de las variables de estado y todas las variables
algebraicas. El segundo es aquel en el cual la matriz de incidencia ordenada es triangular
inferior, con lo cual no existen lazos algebraicos.
SIMULACIN DE MODELOS ALEATORIOS EN EL MBITO DE LA INGENIERA QUMICA 85

Ejemplo 1 Ejemplo 2
( )
( )

,
_

1
]
1

+
+
w
x
w x x
x x x
&
&
&
residue , , , f 0
old
t
h

( ) ( )
( ) t
h
, f
residue old
x x
x x x x

+ +
&
&


Como se ve, en el peor de los casos (ejemplo 1), el algoritmo produce la misma
discretizacin que producira directamente el integrador. Sin embargo, en la mayora de
los casos prcticos o bien la dimensin del sistema no lineal a iterar se reduce o bien ste
es partido en lazos de menor dimensin que pueden ser iterados separadamente.
2.13 SIMULACIN DE MODELOS ALEATORIOS EN EL
MBITO DE LA INGENIERA QUMICA
Bsicamente, puede considerarse que en la descripcin de los procesos qumicos reales
surgen los tres siguientes tipos de aleatoriedad [Nf94] [Watz94]:
Tipo A. La incertidumbre respecto al valor de los parmetros del modelo, por ejemplo,
constantes de la cintica de la reaccin, capacidades calorficas, etc. Estos
parmetros son de naturaleza determinista, ya que poseen valores tericos
nicos. La aleatoriedad de su valor surge de los errores cometidos en su
medida o de la imposibilidad de modelar adecuadamente el comportamiento
fsico del sistema.
Tipo B. La incertidumbre en el valor de las variables de entrada al sistema, por
ejemplo, composicin y temperatura del flujo de alimentacin, frecuencia de
fallos en el equipo, ruido en las medidas usadas para monitorizar y controlar el
proceso, etc. Este tipo de impredecibilidad surge de la naturaleza aleatoria de
ciertas entradas al sistema.
Tipo C. La incertidumbre en el conocimiento de las condiciones iniciales de operacin,
por ejemplo, del valor de la masa contenida inicialmente en un reactor, etc. El
valor de los valores iniciales puede variar aleatoriamente.
La representacin de la incertidumbre en los tres casos anteriores se realiza por medio de
la distribucin de probabilidad de las variables aleatorias del modelo. En [Law91]
[Brat87] [Neel87] [Ross91] y [Bank96], entre otros textos, se discute cmo estimar la
distribucin de probabilidad de una variable aleatoria a partir de datos experimentales y
tambin en ausencia de datos, a partir de consideraciones tericas.
Bsicamente pueden distinguirse tres tipos de simulacin de modelos aleatorios [Nf94]:
1. Simulacin de modelos estticos. Se repite la simulacin empleando nuevos
valores de los parmetros aleatorios en cada rplica. Es adecuada para
incertidumbres del Tipo A. Puede tambin emplearse para incertidumbres del
86 MODELADO ORIENTADO A OBJETOS Y SIMULACIN DE SISTEMAS HBRIDOS


Tipo B cuando la variacin de las entradas aleatorias es muy lenta comparada con
las constantes de tiempo del sistema.
2. Repeticin de las simulaciones de modelos dinmicos. Permite simular
incertidumbres del Tipo A, B y C. A y C varan cada vez que se inicia la
simulacin y se permite que B flucte continuamente durante el curso de cada
simulacin.
3. Una nica simulacin de larga duracin de los modelos dinmicos. Permite
establecer la influencia de las incertidumbres del Tipo B.
El anlisis de los resultados de la simulacin est basado en mtodos estadsticos.
Dependiendo del tipo de simulacin, pueden distinguirse dos casos [Brat87] [Nf94]:
1. Simulacin del transitorio o de horizonte finito. Considera variables aleatorias de
un modelo dinmico que dependen de las condiciones iniciales y que estn
relacionadas con un nico instante en el tiempo (por ejemplo, la variable aleatoria
que describe el tiempo necesario para completar un determinado proceso qumico
discontinuo) o variables aleatorias de un modelo esttico. Cada rplica de la
simulacin conduce a la obtencin de una nica observacin de la variable
aleatoria. Las observaciones obtenidas son estadsticamente independientes entre
s y, por tanto, pueden emplearse los mtodos estndar de anlisis estadstico.
2. Simulacin de un modelo dinmico hasta alcanzar el estado (quasi) estacionario.
Los resultados se obtienen de una nica simulacin lo suficientemente larga en el
tiempo. Un ejemplo es la salida de una planta continua, transcurrido un tiempo
suficientemente largo desde su arranque, cuyas fluctuaciones son debidas a las
variaciones aleatorias en una variable de entrada. Las observaciones obtenidas no
son independientes estadsticamente entre s, debindose emplear tcnicas
adecuadas para su anlisis (ver, por ejemplo, [Law91]).
Algunos lenguajes de modelado soportan la generacin de nmeros aleatorios. Por
ejemplo, desde las ecuaciones instantneas de Dymola (when-endwhen) puede invocarse
a las funciones de Dymosim RandomUniform y RandomNormal para obtener un nmero
aleatorio distribuido U(0,1) y N(0,1) respectivamente [Elmq96]. En [Nf94] se describe
la sintaxis de gPROMS para la generacin de nmeros aleatorios durante la simulacin.
El resultado de la simulacin puede exportarse a herramientas software adecuadas para
realizar el anlisis estadstico de las salidas (por ejemplo, Splus [Beck88] [Vena97],
MATLAB, etc.).
CONCLUSIONES 87

2.14 CONCLUSIONES
El Capitulo 2 consiste fundamentalmente en una recopilacin bibliogrfica en la que se
exponen de manera concisa los fundamentos del modelado orientado a objetos y de la
simulacin de sistemas dinmicos hbridos. Su objetivo es servir de introduccin a los
conceptos empleados en los siguientes captulos, en los que se exponen los trabajos
originales desarrollados en la presente tesis.


89


DISEO Y PROGRAMACIN
DE UN CONJUNTO DE
LIBRERAS DE PROCESOS
FSICO-QUMICOS BSICOS
EN EL ENTORNO DEL
CONTROL AUTOMTICO DE
PROCESOS QUMICOS
JARA versin 1.0


91

Captulo 3
LA ESTRATEGIA DE MODELADO.
DEFINICIN DE LA INTERFAZ
3.1 INTRODUCCIN
Los Captulos 3 a 8 contienen la exposicin de los fundamentos y del diseo de la
versin 1.0 de JARA, as como algunos ejemplos sencillos de aplicacin. En el Captulo
3 se identifica el conjunto de aproximaciones de modelado, se definen las clases de cuts
y de interfaces y se enuncian las reglas de diseo. De este modo, queda establecido todo
lo relativo a la interfaz de las clases, a la conexin entre ellas y a la ampliacin de las
libreras de JARA con nuevas clases. En los Captulos 4 a 8 se aborda la descripcin
interna de las clases.
Para realizar el planteamiento de las reglas de diseo de la versin 1.0 de JARA se ha
tomado como referencia MMS [MMS84] y el formalismo de los grafos de ligadura
(bondgraphs) [Cell91] [Karn90] [Thom90] [Hoga95], por este motivo se hace mencin
a ambos en el captulo.
3.2 REUTILIZACIN DE LOS MODELOS
Realizar modelos que puedan ser utilizados en diferentes contextos presenta ventajas
evidentes. Un primer paso para ello consiste en diferenciar entre la interfaz del modelo
y su descripcin interna e imponer el encapsulado de la informacin. De este modo se
facilita su uso sin necesidad de conocer sus detalles internos. El concepto de modelos
polimrficos es clave, ya que supone una primera condicin necesaria (no suficiente) a
satisfacer por aquellos modelos que aspiren a ser "intercambiables" entre s. Sin
embargo, el problema de la identificacin del contexto en el cual puede ser utilizado un
modelo (al margen del establecimiento del marco de validez de las aproximaciones en
que se basa) es mucho ms amplio y debe ser resuelto antes de poder decir que una
clase es reutilizable.
Para ilustrar este tema se considera primeramente un ejemplo muy sencillo. Supngase
que se desea construir una librera para el modelado de sistemas hidrulicos compuesta
por los siguientes cinco elementos: una fuente de presin, una fuente de flujo, una
resistencia, un depsito y la presin de referencia. La ecuacin constitutiva de la
92 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

resistencia es una ecuacin algebraica que relaciona la cada de presin entre sus
terminales con el flujo de volumen. La ecuacin constitutiva del depsito es una
ecuacin algebraica que relaciona la presin en el punto de conexin del elemento con
el volumen que contiene.
El anlisis por reduccin consiste en, una vez identificados los elementos a modelar,
examinar en primer lugar la interaccin entre ellos y posteriormente describir
independientemente el comportamiento interno de cada uno. Del anlisis de la
interaccin entre los elementos se obtienen las caractersticas que deben tener sus
interfaces, ya que la interfaz de cada elemento debe contener todas las variables que
influencian o son influenciadas por el entorno. Una de las caractersticas de las clases
que pueden ser usadas indistintamente en el mismo contexto es que poseen interfaces
con estructuras equivalentes. Resulta conveniente definir la interfaz como una clase, de
tal modo que sta sea la superclase de todos los componentes con esa determinada
estructura de la interfaz (ste ha sido el enfoque empleado en JARA). Esta forma de
proceder facilita la comprensin de la estructura del modelo, haciendo aun si cabe ms
explcita la separacin entre la interfaz y la descripcin interna de las clases.
En el ejemplo de los componentes hidrulicos, la interaccin del elemento con el
entorno puede quedar completamente descrita mediante la presin en cada terminal del
elemento y el flujo de volumen que entra a travs de cada terminal. As pues, las
variables de la interfaz de cada elemento son la presin y el flujo de volumen en cada
uno de los terminales. Dado que desean modelarse elementos con uno y con dos
terminales, debern definirse dos tipos distintos de interfaz. En la Figura 3.1 se muestra
la definicin usando Dymola. En la Figura 3.2 se completa la definicin de la interfaz,
declarando los parmetros de la clase, y se modela el comportamiento interno.
La Tabla 3.1 muestra el nmero de grados de libertad de las cinco clases de la Figura
3.2. Las clases con dos terminales poseen interfaces con estructuras equivalentes y
adems son polimrficas. Sin embargo, esto no es suficiente para que sean
intercambiables: la conexin de los componentes para formar un circuito hidrulico
debe hacerse respetando ciertas reglas dictadas por la lgica interna de las hiptesis de
modelado. Por ejemplo: (1) deben conectarse todos los terminales de los elementos, no
pudiendo quedar ninguno "flotante"; (2) no pueden existir dos ramas paralelas del
circuito tales que ambas posean nicamente una fuente de presin; (3) no pueden
disponerse dos fuentes de flujo en serie en una misma rama del circuito; (4) al menos un
nodo del circuito debe estar conectado a la presin de referencia; etc.

model class UnTerminal
cut Terminal1 ( p1 / F )
end



model class (UnTerminal) DosTerminales
cut Terminal2 ( p2 / -F )
main path Terminales ->
< Terminal1 - Terminal2 >
end


Figura 3.1 Interfaces para componentes hidrulicos de uno y dos terminales.
F
p1
F
p1
F
p2
REUTILIZACIN DE LOS MODELOS 93


model class (UnTerminal) presRef
p1 = 0
end

model class (DosTerminales) resistencia
parameter R
p1 - p2 = F * R
end

model class (DosTerminales) deposito
parameter C
local pInc
pInc = p1 - p2
C * der(pInc) = F
end

model class (DosTerminales) fuentePresion
p2 - p1 = f(Time)
end


model class (DosTerminales) fuenteFlujo
F = g(Time)
end


Figura 3.2 Clases de algunos de los componentes hidrulicos bsicos.
Elemento Variables Ecuaciones Nmero de
terminales
Grados de
libertad
presRef p1, F p1=0 1 1
resistencia p1, p2, F p1 - p2 = F * R 2 2
deposito p1, p2, F,
pInc
pInc = p1 - p2
C * der(pInc) = F
2 2
fuentePresion p1, p2, F p2 - p1 = f(Time) 2 2
fuenteFlujo p1, V2, F F = g(Time) 2 2
Tabla 3.1 Grados de libertad.
Como se ve, la utilizacin de las clases debe hacerse siguiendo un conjunto de reglas
que debe quedar bien establecido y que surge de manera implcita de las
aproximaciones realizadas en el modelado. El objeto de este conjunto de reglas es
garantizar que el conjunto completo de ecuaciones resultante de conectar las clases sea
compatible, es decir, no est ni infradeterminado ni sobredeterminado. Otras
consideraciones adicionales surgen del estudio de la estructura matemtica de las clases,
cuya finalidad es determinar qu conexiones entre clases conducen al establecimiento
de lazos algebraicos o a que el problema tenga ndice superior. Esta informacin puede
en ocasiones aconsejar rehacer el modelo.
Los lazos algebraicos establecidos debido a la conexin entre las clases son
particularmente indeseables si el nmero de ecuaciones que intervienen en el lazo
aumenta con el nmero de clases conectadas, ya que pueden llegar a hacer inmanejable
la simulacin de sistemas de grandes proporciones. Pese a que algunas herramientas de
F
p1
F
p2
C
F
p1
R
F
p1
F
p2
p

+
F
p1
F
p2
F
F
p1
F
p2
94 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

modelado poseen algoritmos que proponen al usuario una eleccin (de las posibles) para
las variables de tearing y las ecuaciones residuo, en la actualidad no existe un algoritmo
eficiente que automatice la seleccin ptima [Elmq96a]. Es comn que en un lazo haya
ms de una posible eleccin de ecuaciones residuo y de variables de tearing. En este
caso, conviene escoger como variables de tearing aquellas para las cuales se pueda
especificar el valor inicial con mayor precisin. La eleccin de las ecuaciones residuo
debe basarse en su buen comportamiento, a fin de facilitar la convergencia numrica.
Por tanto, es el programador del modelo quien, en ltima instancia, debe comprobar que
la forma en que se ha cortado el lazo algebraico es la adecuada (algunas herramientas,
por ejemplo, Dymola, permiten incluir la informacin acerca del tearing en las clases
del modelo [Elmq98]). Por otra parte, la solucin numrica de lazos algebraicos durante
la simulacin de sistemas hbridos puede verse dificultada por las discontinuidades en
tiempo de simulacin en el estado del sistema, por ello debe evitarse en la medida de lo
posible.
Pese a que las herramientas de modelado posean la capacidad de reducir
automticamente el ndice del sistema, el establecimiento de problemas de ndice debido
a la conexin de las clases es algo indeseado, ya que es contrario al principio de
encapsulado de la informacin. La reduccin de ndice se realiza aplicando el algoritmo
de Pantelides [Pant88], que identifica las ecuaciones cuya derivada debe ser aadida al
modelo [Matt92]. Puesto que alguna de las ecuaciones de conexin entre las clases ha
generado la ligadura, entre las variables que aparecen derivadas, que ha dado lugar al
problema de ndice superior, esta ligadura (entre otras ecuaciones) es derivada y aadida
al modelo. Esto supone que las entradas computacionales a la clase no sean slo las
variables de su interfaz, sino adems la derivada de algunas de stas, lo cual es
incompatible con el encapsulado de la informacin, que exige que la interfaz describa
completamente la interaccin de la clase con el entorno y que slo las variables
pertenecientes a la interfaz sean accesibles desde el exterior de la clase por otras clases.
Esta prdida de control del programador sobre el acceso a la descripcin interna de la
clase puede traducirse en el establecimiento de lazos algebraicos con malas propiedades
numricas.
La forma de conseguir que la conexin entre las clases no d lugar a problemas de
infradeterminacin o sobredeterminacin o a problemas de ndice es establecer reglas
acerca de la causalidad computacional de las variables de la interfaz de las clases y su
conexin. Al definir las interfaces de las clases se definen los tipos de cuts
(agrupaciones) de variables que las integran. Para cada tipo de cut se definen las
diferentes causalidades computacionales de sus variables, de modo que los cuts se
clasifican no slo por las variables que los integran sino tambin por la causalidad de
stas. De este modo, al definir la interfaz de una clase no slo se definen sus variables
sino tambin se fija la causalidad computacional de las mismas.
La regla de conexin surge de forma natural: slo pueden conectarse entre s dos cuts si
tienen estructuras equivalentes y causalidad computacional complementaria. De esta
forma, si bien se garantiza que la conexin no hace que el problema sea singular, no se
garantiza que no d lugar al establecimiento de lazos algebraicos (ver Figura 3.3).
REUTILIZACIN DE LOS MODELOS 95








Figura 3.3 La conexin entre los mdulos puede conducir al establecimiento de lazos algebraicos.
Para entender por qu la conexin no hace que el sistema tenga ndice superior basta
con considerar que los problemas de ndice surgen debido a ecuaciones en las que
intervienen variables que aparecen derivadas en el modelo y, posiblemente, variables
algebraicas cuya evaluacin se realiza a partir de otras ecuaciones del modelo. Para que
este tipo de ligaduras surja debido a la conexin de dos clases es preciso que todas las
variables que intervienen en la ecuacin de la conexin sean evaluadas en sus
respectivas clases, cosa que no es posible si se siguen las reglas de conexin.
La forma de evitar el establecimiento de lazos algebraicos es la inclusin de
integradores que los corten. La forma de hacerlo depende de las aproximaciones de
modelado, sin embargo, si se pretende que la conexin de las clases no d lugar a
sistemas de ecuaciones y adems que las libreras puedan ampliarse con nuevas clases,
es preciso tambin establecer un conjunto de reglas acerca de la forma en que deben ser
cortados los lazos de causalidad computacional.
Un buen ejemplo de la clasificacin de los componentes segn la estructura de su
interfaz y de acuerdo a la causalidad computacional preferente de las variables de ste,
del establecimiento de un conjunto de reglas de conexin entre los componentes y del
desarrollo de tcnicas para obtener de forma sencilla informacin acerca de la
causalidad computacional del sistema compuesto, lo constituye el formalismo de los
grafos de ligadura (bondgraphs). Este formalismo de modelado, basado en la
conservacin de la energa, fue ideado por H. M. Paynter con la idea de que quedara
reflejada simultneamente la estructura computacional y topolgica del sistema y que
fuera aplicable a cualquier tipo de sistema fsico. De acuerdo con este formalismo se
clasifican los elementos segn la forma matemtica de su relacin constitutiva y se
definen reglas para realizar su conexin y un procedimiento sencillo para realizar la
asignacin de la causalidad computacional detectando los lazos algebraicos o la
presencia de un nmero mayor de integradores que orden tiene el sistema. Magnficas
referencias acerca del formalismo de los bondgraphs son [Cell91] [Karn90] [Thom90] y
[Hoga95].
Otro ejemplo es la clasificacin de los mdulos segn la causalidad computacional de
su interfaz y las reglas para su conexin que propone Modular Modeling System
(MMS) [MMS84] [MMS93]. El MMS comenz a ser desarrollado por el Electric Power
Research Institute (EPRI) en 1978, estando en 1983 disponible la primera versin,
MMS-01, y en 1984 la segunda, MMS-02. Su objetivo es la simulacin de la dinmica
de plantas nucleares y de produccin de energa mediante la combustin de
combustibles fsiles. La librera contiene mdulos preprogramados (en ACSL o
EASY5, segn la versin) y MMS permite al usuario modificar el valor de los
parmetros de los mdulos y describir su conexin. La herramienta genera
automticamente las ecuaciones de conexin entre los mdulos. El programa de
simulacin (ACSL o EASY5) ordena las ecuaciones del modelo completo (sin
mdulo A
b = f(a)
a
b
mdulo B
a = g(b)
a
b
mdulo B

a
b
mdulo A

b = f(a)
a = g(b)
96 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

manipularlas simblicamente) en una secuencia ejecutable y traduce el programa a
FORTRAN, que es entonces compilado para crear un ejecutable.
La conexin de los mdulos preprogramados debe hacerse siguiendo unas reglas que
garantizan que en dos mdulos adyacentes no se evalen las mismas variables de la
interfaz y queden otras sin evaluar. Para facilitar el seguimiento de las reglas de
conexin, MMS clasifica los mdulos, en funcin de la causalidad computacional de las
variables de su interfaz, en cuatro tipos: resistivo, almacenador, resistivo-almacenador
y almacenador-resistivo (ver Figura 3.4).
Los mdulos que contienen el clculo del flujo en funcin de la cada de presin y no
contienen la ecuacin dinmica de continuidad (no hay almacenamiento de masa), se
consideran puramente resistivos ya que es la resistencia opuesta al flujo lo que produce
la cada de presin. Los mdulos cuyo efecto dominante sobre el sistema es el
almacenamiento de masa o energa, ms que la cada de presin, se consideran mdulos
almacenadores [MMS84].
Los elementos que modelan a la vez cadas en la presin y almacenamiento de masa o
energa se clasifican en resistivos-almacenadores o almacenadores-resistivos
dependiendo de la causalidad de las variables en los planos de entrada y salida de flujo
segn se indica en la Figura 3.4. Si la causalidad de las variables en el plano de entrada
es igual a la del plano de entrada del elemento resistivo y la causalidad de las variables
en el plano de salida es igual a la del plano de salida del elemento almacenador, el
elemento se dice resistivo-almacenador. Por el contrario, si la causalidad de las
variables en el plano de entrada es igual a la del plano de entrada del elemento
almacenador y la causalidad de las variables en el plano de salida es igual a la del plano
de salida del elemento resistivo, el elemento se dice almacenador-resistivo.














Figura 3.4 Representacin esquemtica de los mdulos de MMS [MMS84].
Tanto de las ecuaciones como de la representacin esquemtica es evidente que no
pueden conectarse en serie dos mdulos resistivos ya que trataran de calcular ambos el
flujo de masa, mientras que la presin entre ambos quedara indeterminada. Igualmente,
dos elementos almacenadores conectados en serie trataran de calcular la misma presin
mientras que el flujo entre ellos quedara indeterminado. Sin embargo, si se alternan a lo
largo del camino del flujo elementos resistivos y almacenadores se obtiene un conjunto
compatible de ecuaciones.
Con el fin de simplificar la aplicacin de la regla de conexin, MMS asocia un smbolo
a cada tipo de mdulo segn se indica en la Figura 3.5. La regla de conexin puede
Mdulo
resistivo
p
e

h
e

<
e

T
e

F
e

p
s

h
s

<
s

T
s

F
s

Mdulo
almacenador
p
e

h
e

<
e

T
e

F
e

p
s

h
s

<
s

T
s

F
s

Mdulo
resistivo -
almacenador
p
e

h
e

<
e

T
e

F
e

p
s

h
s

<
s

T
s

F
s

Mdulo
almacenador
- resistivo
p
e

h
e

<
e

T
e

F
e

p
s

h
s

<
s

T
s

F
s

REUTILIZACIN DE LOS MODELOS 97

entonces formularse como: los mdulos deben ser conectados en una secuencia que
alterne los smbolos resistivo y almacenador.
Resistivo Almacenador Resistivo-almacenador Almacenador-resistivo




Figura 3.5 Smbolos de los mdulos de MMS [MMS84].
Dado que para modelar algn sistema en particular puede ser necesario conectar varios
elementos resistivos en serie, MMS proporciona un componente almacenador, que hace
las funciones de nodo de conexin entre componentes resistivos en serie y del cual
puede evaluarse la presin entre ellos. Este nodo permite que se satisfagan las reglas de
conexin sin afectar al resultado de la simulacin. Una forma alternativa que
proporciona MMS de abordar este problema es agrupar los componentes resistivos en
uno equivalente. Conocido cmo obtener el elemento resistivo equivalente a un
conjunto de elementos resistivos en serie y cmo obtener el equivalente a un conjunto
en paralelo, es posible transformar cualquier red de elementos resistivos en uno
equivalente. A modo de ejemplo, en la Figura 3.6 se muestra el modo de establecer la
equivalencia en el caso del balance de momento en estado estacionario (se considera
que la seccin transversal de los volmenes de control es constante y que el fluido es
incompresible). Anlogamente puede establecerse la equivalencia en el caso del balance
dinmico de momento [MMS84].
( ) ( )
( ) ( )
( ) ( ) ( )
s e e s e e T
s e e s e e
s e e s e e
T
z z g p p C C F
z z g p p C F
z z g p p C F
F F F
+ +

'

+
+
+
2
2 1
2
2 2
2
1 1
2 1











N
i
i eq
C C
1 :

( ) ( )
( ) ( )
( ) ( )
s e s e
s o s o
o e o e
z z g p p
C C
F
z z g p p
C
F
z z g p p
C
F
F F F
+
+

'

,
_

,
_


2
2
2
2
1
2
2
2
2
2
2
1
1
2 1
1 1
1













N
i i
eq
C
C
1 :
2
1
1

Figura 3.6 Balance del momento lineal en el estado estacionario [MMS84].
C
1

F
1

C
2

F
2

P
s
, Z
s
P
e
, Z
e
P
0
, Z
0
C
1

F
1

C
2

F
2

P
s
, Z
s
P
e
, Z
e
98 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

En los prximos apartados se describe la estrategia de modelado seguida en JARA, la
forma en que se han seleccionado las variables terminales y cmo se ha definido la
estructura y la causalidad computacional de los cuts, as como sus reglas de conexin.
3.3 LA ESTRATEGIA DEL MODELADO DE JARA v. 1.0
La forma habitual en que se enuncian los balances de masa, energa y momento es
mediante la definicin de un volumen de control, en cuyo interior el medio se considera
un continuo de propiedades uniformes. La dimensin del volumen de control depende
de las aproximaciones de modelado: mientras en el modelado microscpico se utilizan
volmenes de control de dimensiones infinitesimales, denominados elementos de
volumen, en el modelado macroscpico se emplean volmenes de control de
dimensiones finitas. La forma del elemento de control se escoge dependiendo de la
simetra del problema. El volumen del volumen de control puede considerarse constante
o variable, dependiendo de las aproximaciones de modelado. Puede considerarse fijo en
el espacio, obtenindose entonces los balances en forma conservativa, o en movimiento
junto con el fluido, de modo que siempre contengan las mismas partculas de ste
(adaptando su forma y volumen para ello), con lo que se obtienen los balances en forma
no conservativa [Wend92].
En el modelado orientado al control de procesos qumicos es muy frecuente considerar
elementos de control de dimensiones constantes finitas, fijos en el espacio e
intercambiando materia y energa con el entorno a travs de determinados planos de
referencia tambin fijos en el espacio. En la mayora de las aplicaciones en que debe
modelarse la dependencia de las propiedades del medio con las coordenadas espaciales
el mtodo empleado (mtodo de las lneas) consiste en dividir en segmentos las
coordenadas espaciales en que se produce esta variacin, definiendo de esta forma un
conjunto de volmenes de control de dimensiones finitas. Se consideran uniformes las
propiedades del medio interior a cada uno de ellos y se describe el flujo entre elementos
de control adyacentes en funcin de la diferencia en el valor de sus propiedades. La
determinacin del nmero de volmenes de control a emplear es el resultado de un
balance entre la precisin requerida y la carga computacional.
Las propiedades de transporte establecen la relacin de los flujos de materia, momento y
energa entre elementos de control adyacentes con el gradiente de las propiedades entre
ellos. Todos los modelos de flujo se han realizado de forma que sean totalmente
reversibles, es decir, que su sentido vare en tiempo de simulacin de acuerdo con lo
dictado por sus condiciones de contorno. Los fenmenos de transporte modelados
pueden dividirse bsicamente en dos: aquellos cuyo resultado es el transporte de
materia (y energa asociado a ste) debido al gradiente de presin o concentracin, a la
aceleracin gravitatoria, a reacciones qumicas o cambios de fase y aquellos cuyo
resultado es el flujo de calor debido al gradiente de temperatura. La agrupacin de las
variables de la interfaz en cuts se realiza de acuerdo con este criterio, de modo que
permita describir independientemente el transporte de materia y el transporte de calor.
De forma natural surge la diferenciacin entre las clases que modelan el volumen de
control y las que modelan los fenmenos de transporte entre volmenes de control
adyacentes. Las clases que modelan los volmenes de control deben contener las
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 99

ecuaciones para evaluar las propiedades del medio interno al volumen de control en
funcin del transporte a travs de sus planos de control, mientras que las clases que
modelan los fenmenos de transporte deben contener las ecuaciones para evaluar la
magnitud y sentido del flujo de materia y energa entre dos elementos de control
conocidas las propiedades en el interior de stos. Las variables de la interfaz de ambos
tipos de clases deben ser tanto aquellas que describen el estado del medio interior al
volumen de control, que son necesarias para calcular el transporte de energa y materia,
como aquellas que describen el transporte, que son necesarias para calcular la variacin
de las propiedades del medio interior al volumen de control.
En el Apartado 3.4 se discute la eleccin de las variables terminales y de las clases de
cuts bsicos de JARA. Cada clase de cut est definida mediante un conjunto de
variables terminales y unas reglas para la causalidad computacional de las mismas.
Cada clase de cut tiene asociados atributos grficos que facilitan el seguimiento de sus
reglas de conexin. Siguiendo un procedimiento anlogo puede ampliarse JARA con
nuevas clases de cuts. En el Apartado 3.5 se describen las clases de interfaces incluidas
en la versin 1.0 de JARA. Pueden definirse nuevas clases de interfaces compuestas por
un nmero arbitrario de clases de cuts bsicos. La forma en que debe conectarse la
interfaz queda definida por las reglas de conexin de sus cuts.
3.4 VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS
DE CONEXIN DE JARA v. 1.0
3.4.1 Definicin de los tipos de cuts de JARA v. 1.0
El criterio seguido para agrupar un conjunto de variables terminales bajo un mismo cut
ha sido que la conexin de todas ellas responda a un mismo contexto de aplicacin de la
clase. De este modo, se han diferenciado en la versin 1.0 de JARA cuatro contextos
diferentes de aplicacin: modelado del flujo de materia, del flujo de calor, de la
transmisin de informacin y del establecimiento de la ligadura sobre el volumen.
Cuts de flujo de materia
Se han definido en JARA v. 1.0 dos tipos de cuts para el modelado del flujo de materia,
uno vlido para el flujo de mezclas gaseosas y otro vlido para el flujo de mezclas
lquidas (ver Tabla 3.2). La cantidad de materia en las clases que modelan mezclas
gaseosas se representa mediante el nmero de moles de cada componente, por ser la
variable que interviene en la ecuacin de estado. En las mezclas lquidas la cantidad de
materia se representa mediante la masa de cada componente. Esta eleccin diferente
para gases y lquidos evita en determinadas situaciones tener que especificar el peso
molecular de los componentes de la mezcla. Adems de la cantidad y el flujo de
materia, los cuts contienen variables representando la temperatura y presin en el punto
de conexin y el flujo de energa asociado al flujo de materia.
100 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

Cut Variables across Variables through
Flujo de gas nmero de moles (vector)
temperatura
presin
flujo de moles (vector)
flujo de energa
Flujo de lquido masa (vector)
temperatura
presin
flujo de masa (vector)
flujo de energa
Tabla 3.2 Cuts de flujo de materia.
Cuts de flujo de calor
Los cuts de flujo de calor de JARA v. 1.0 permiten modelar el flujo de calor por
conduccin o por conveccin (ver Tabla 3.3). El motivo por el cual se incluye la
cantidad de materia de cada uno de los componentes en el cut flujo de calor - M
(Materia) es doble. Por un lado, la clase que modela el flujo de calor, conectada entre
las dos clases que modelan el receptor y el emisor del flujo, deber imponer que el flujo
de calor entre ellas sea cero cuando la cantidad de materia del emisor o del receptor no
sea mayor que cero. Por otro lado, el flujo de calor depende de la superficie de contacto,
as, por ejemplo, el flujo de calor entre un lquido y la pared slida del recipiente que lo
contiene depende de la superficie de contacto entre el lquido y el slido. La forma de
realizar el clculo del valor que en cada instante tiene la superficie de contacto depende
del problema en concreto, pero para llevarlo a cabo es preciso conocer el volumen del
lquido, que es calculable a partir de la masa de sus componentes.
El cut flujo de calor - F (Flujo de materia) no contiene la cantidad de materia, sino el
flujo de materia. Cuando el flujo de calor se produce por conveccin puede ser
necesario incluir en el cut la magnitud del flujo de materia, ya que es frecuente
considerar que el coeficiente de transmisin de calor depende de l [Incr96]. Se volver
sobre este punto ms adelante, al modelar el flujo de calor.
Cut Variables across Variables through
Flujo de calor - M materia (vector)
temperatura
flujo de calor
Flujo de calor - F flujo de materia (vector)
temperatura
flujo de calor
Tabla 3.3 Cuts de flujo de calor.
Clasificacin de los cuts de flujo de materia y de flujo de calor: cuts capacitivos y
resistivos
A continuacin se establecen unas reglas en cuanto a la causalidad computacional de las
variables terminales de los cuts de flujo de materia y de flujo de calor de JARA v. 1.0.
Su objetivo es garantizar que el modelo resultante de la conexin de las clases sea un
sistema bien planteado, es decir, no est ni sobredeterminado ni infradeterminado, y
adems que el sistema ni adquiera ndice superior ni se establezcan lazos algebraicos al
realizar las conexiones entre las clases.
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 101

Para garantizar que el sistema tenga el mismo nmero de ecuaciones que de incgnitas,
se impone que los cuts de flujo de materia y de flujo de calor sean, en funcin de la
causalidad computacional de sus variables terminales, de uno de estos dos tipos:
1 Todas sus variables through son entradas computacionales y todas sus variables
across son salidas computacionales.
2 Todas sus variables across son entradas computacionales y todas sus variables
through son salidas computacionales.
En general, el primer tipo de cut forma parte de clases que describen las propiedades del
medio en un volumen de control en funcin de los flujos de materia y energa que
intercambia con su entorno. El segundo tipo de cut normalmente forma parte de clases
que describen el flujo de materia y de energa que se establece entre dos volmenes de
control producto de la diferencia en las propiedades de los medios que contienen.
Para garantizar adems que no se establezcan lazos algebraicos producto de la conexin
entre las clases, es preciso establecer la forma en que los integradores deben cortar los
lazos de causalidad. Con este fin se ampla la clasificacin anterior de los cuts de JARA,
introduciendo los conceptos de cut capacitivo y resistivo.
Un cut de flujo de materia o un cut de flujo de calor, en una determinada clase, es un
cut capacitivo cuando se cumplen las dos condiciones siguientes:
1. Sus variables terminales de tipo across son salidas computacionales que
satisfacen que, o son variables de estado o pueden calcularse en funcin del
tiempo y de variables de estado.
2. Las variables terminales de tipo through son entradas computacionales.
Un cut de flujo de materia o un cut de flujo de calor, en una determinada clase, es un
cut resistivo cuando se cumplen las siguientes dos condiciones:
1. Sus variables terminales de tipo across son entradas computacionales.
2. Sus variables through son salidas computacionales.
Puede darse el caso de que en un cut resistivo todas sus variables through sean funcin
de variables de estado o del tiempo, en cuyo caso podra hablarse de un cut inductivo.
Puesto que sta es una situacin muy infrecuente (por ejemplo, normalmente el flujo de
entalpa y el flujo de calor se consideran una funcin algebraica de la temperatura) se ha
realizado la simplificacin de englobar este tipo de cuts dentro de los resistivos.
En la Figura 3.7 se representa esquemticamente la causalidad computacional de las
variables de los cuts capacitivos y resistivos, de modo que cuando la flecha apunta hacia
el elemento representa entradas computacionales y cuando sale, salidas. La lnea
vertical en la base de la flecha representa (adoptando la notacin de los bond graphs) la
ruptura del lazo de causalidad mediante integradores.
Obsrvese que, pese a que se han escogido nombres que pudieran indicar una analoga
con la causalidad computacional preferente de las relaciones constitutivas de los
componentes elctricos ideales resistencia y condensador, la analoga con el caso
elctrico no es completa. La causalidad del cut capacitivo s corresponde con la
102 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

causalidad preferente del condensador elctrico ideal, pero la del cut resistivo
corresponde tanto con una de las posibles causalidades de la resistencia elctrica (no
tiene una causalidad computacional preferente) como con la causalidad preferente de la
induccin elctrica.
















Figura 3.7 Causalidad computacional de los cuts capacitivos, resistivos y de su conexin.
En la Tabla 3.4 se muestran los distintos tipos de cuts de flujo de materia y de flujo de
calor. Se representan con una C los cuts capacitivos y con una R los cuts resistivos.
Estn sealadas con (I) las entradas computacionales y con (O) las salidas.
Cut Variables across Variables through
Flujo de gas - R nmero de moles (vector)
temperatura
presin
(I)
flujo de moles (vector)
flujo de energa
(O)
Flujo de gas - C nmero de moles (vector)
temperatura
presin
(O)
flujo de moles (vector)
flujo de energa
(I)
Flujo de lquido - R masa (vector)
temperatura
presin
(I)
flujo de masa (vector)
flujo de energa
(O)
Flujo de lquido - C masa (vector)
temperatura
presin
(O)
flujo de masa (vector)
flujo de energa
(I)
Flujo de calor - M - R materia (vector)
temperatura
(I)
flujo de calor
(O)
Flujo de calor - F - R flujo de materia (vector)
temperatura
(I)
flujo de calor
(O)
Flujo de calor - M - C materia (vector)
temperatura
(O)
flujo de calor
(I)
Flujo de calor - F - C flujo de materia (vector)
temperatura
(O)
flujo de calor
(I)
Tabla 3.4 Cuts de flujo de materia y de flujo de calor.
through
Cut
capacitivo
across
Cut
resistivo
across
through
Cut
capacitivo
across
through
=
=0
across
through
across
through
Cut
resistivo
Cut
resistivo
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 103

Cuts de flujo de informacin
En ocasiones, con el fin de establecer lazos de control, se realiza la medida de ciertas
variables controladas del sistema, se procesa la informacin, y se asignan valores a
determinado nmero de variables manipuladas. Todo este flujo de informacin puede
modelarse con ayuda de los cuts del tipo flujo de informacin de JARA v. 1.0 (ver
Tabla 3.5). Se considera que todas las variables que representan seales son de tipo
across. La analoga fsica de la conexin entre dos cuts del tipo flujo de informacin
sera el trazar un cable de comunicaciones, con tantos canales como variables, por el
cual la seal elctrica transmite la informacin entre los dos puntos. El significado y
nmero de estas variables depende de la aplicacin.
Cut Variables across Variables through
Emisor de informacin seal (vector) (O)
Receptor de informacin seal (vector) (I)
Tabla 3.5 Cuts de flujo de informacin.
Los cuts emisor y receptor de informacin son formalmente el mismo. La nica
diferencia entre ellos es su causalidad computacional: las variables del cut emisor de
informacin son salidas computacionales y la del cut receptor de informacin son
entradas computacionales.
Considrense N cuts de flujo de informacin compuestos cada uno de ellos por una
nica variable. Cuando se conectan entre s estos N cuts, dado que son variables de
tipo across, se establecen 1 N ecuaciones igualando las N variables entre s. De estas
N variables, una debe ser evaluada en otra ecuacin del modelo y las 1 N restantes
deben evaluarse de las ecuaciones de la conexin (ver Figura 3.8). Es decir, de los N
cuts de variables, uno debe ser el emisor de la informacin y los restantes los receptores.










Figura 3.8 Causalidad computacional de los cuts emisores y receptores de informacin y de su conexin.
Se obliga a definir cuts de flujo de informacin o bien completamente emisores o bien
completamente receptores de informacin. Es decir, cuts en los cuales o bien todas sus
variables son evaluadas de las ecuaciones de la clase o bien cuts en los cuales todas sus
variables son evaluadas de las ecuaciones de la conexin. Esto no supone ninguna
limitacin, ya que en una misma clase pueden definirse tantos cuts de flujo de
informacin, emisores y/o receptores, como se desee. Para facilitar la comprobacin de
la regla de que en cada conexin entre cuts de transmisin de informacin hay uno y
across
=
across
across
Cut emisor de
informacin
Cut receptor
de informacin
Cut receptor
de informacin
across Cut emisor de
informacin
Cut receptor
de informacin
across
104 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

slo uno emisor de informacin, se han asignado atributos grficos diferentes a los
emisores y a los receptores.
Al contrario de los que sucede con los cuts de flujo de materia o de flujo de calor, en los
que est perfectamente definido cules son las variables de estos cuts, y por ello, se
pueden establecer reglas acerca de la forma en que los integradores deben cortar los
lazos de causalidad, en general, cualquier variable fsica del modelo puede formar parte
de un cut de flujo de informacin, por lo cual no resulta prctico establecer una regla
que obligue a que los cuts emisores de informacin corten mediante integradores los
lazos de causalidad computacional. Una regla de este tipo hara que la inclusin en una
clase de un cut emisor de informacin pudiera obligar a reescribir el modelo de la
misma, lo cual no parece razonable. A cambio, el precio que hay que pagar es que no
hay forma de garantizar, a priori, que la conexin de los cuts emisores y receptores de
informacin de las clases no den lugar al establecimiento de lazos algebraicos.
Cut de ligadura sobre el volumen
El cuarto tipo de cut de JARA v. 1.0, de ligadura sobre el volumen (ver Tabla 3.6),
surge de la necesidad de imponer la ligadura sobre el valor del volumen que ocupan los
fluidos: el volumen de un gas es igual al del recipiente que lo contiene y el volumen de
un lquido no puede exceder el volumen del recipiente que lo contiene. La condicin se
impone al realizar la conexin del cut ligadura sobre el volumen de la clase que modela
el recipiente del fluido con el cut ligadura sobre el volumen de la clase que modela el
fluido.
Cut Variables across Variables through
Ligadura sobre el volumen tres variables una variable
Tabla 3.6 Cut de ligadura sobre el volumen.
El significado fsico de las variables terminales asociadas al cut de ligadura sobre el
volumen depende de la clase a la que se asocie el cut. Se volver sobre este tema en el
Apartado 4.7 y se especificar la regla que debe seguirse a la hora de conectar entre s
cuts de este tipo.
3.4.2 Reglas de conexin de los tipos de cuts de JARA v. 1.0
Para que dos cuts puedan conectarse entre s deben tener la misma estructura, es decir,
el mismo nmero de variables across y el mismo nmero de variables through y adems
las variables vectoriales de uno y otro cut deben tener las mismas dimensiones. Las
siguientes reglas de conexin de los cuts bsicos responden adems a criterios basados
en la lgica del modelado y en la causalidad computacional de sus variables terminales.
La ecuacin para las variables through a que da lugar la conexin entre cuts depende de
si stos pertenecen o no a clases del mismo nivel jerrquico (ver Figura 3.9) [Urqu96].
En este contexto se dice que dos clases, y en consecuencia sus cuts, son de distinto nivel
jerrquico cuando una de ellas es una clase compuesta que contiene a la otra como uno
de sus modelos. En el ejemplo de la Figura 3.9, las clases 1 S y 2 S se encuentran a
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 105

distinto nivel jerrquico y las clases 2 S y 3 S al mismo. La conexin entre las clases
1 S y 2 S es interna a la clase 2 S , mientras que la conexin entre las clases 2 S y 3 S es
externa a ambas. Para establecer las reglas de conexin entre los cuts bsicos es preciso
distinguir si la conexin se establece o no entre cuts del mismo nivel jerrquico.












Figura 3.9 Ecuacin para las variables through a que da lugar la conexin entre cuts.
Reglas de conexin entre cuts del mismo nivel jerrquico
En la Tabla 3.7 se resume la regla de conexionado de los cuts de JARA v. 1.0. Se nota
(SI) el caso en que dos cuts sean conectables entre s y (NO) el caso contrario.
lq.-R lq.-
C
gas-
R
gas-
C
calor
M-R
calor
M-C
calor
F-R
calor
F-C
emisor receptor ligadura
lq.-R NO
lq.-C SI NO
gas-R NO NO NO
gas-C NO NO SI NO
calor-M-R NO NO NO NO NO
calor-M-C NO NO NO NO SI NO
calor-F-R NO NO NO NO NO NO NO
calor-F-C NO NO NO NO NO NO SI NO
emisor NO NO NO NO NO NO NO NO NO
receptor NO NO NO NO NO NO NO NO SI NO
ligadura NO NO NO NO NO NO NO NO NO NO SI
Tabla 3.7 Regla de conexionado de los cuts bsicos del mismo nivel jerrquico.
En la Tabla 3.8 se establecen las reglas de JARA v. 1.0 acerca del nmero de
conexiones que admite cada tipo de cut. La regla referente a los cuts de ligadura sobre el
volumen se enunciar ms adelante.
S1
S2
S3
A(/-F) A(/-F) A(/F)
connect S2:A at S3:A
S2.F-S3.F=0
connect S1:A at S2:A
S1.F-S2.F=0
106 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

Regla sobre del nmero de conexiones
Un cut capacitivo puede dejarse sin conectar (poniendo el parmetro de Dymola
DefaultConnect a on) o conectarse a un nmero arbitrario de cuts resistivos de su
mismo tipo.
Todo cut resistivo debe conectarse a uno y slo a un cut capacitivo de su mismo
tipo. No puede dejarse sin conectar o ser conectado a otros cuts resistivos.
Un cut emisor de informacin puede dejarse sin conectar o conectarse a un nmero
arbitrario de cuts receptores de informacin.
Un cut receptor de informacin debe conectarse a uno y slo a un cut emisor de
imformacin. No puede dejarse sin conectar o conectarse a otros cuts receptores de
informacin.
Tabla 3.8 Reglas acerca del nmero de conexiones de los cuts bsicos del mismo nivel jerrquico.
Cabe preguntarse si prohibir la conexin de dos cuts resistivos de un mismo tipo entre
s, o de dos cuts receptores entre s no supone una arbitrariedad que resta flexibilidad
innecesariamente. En efecto, por ejemplo, es equivalente conectar dos cuts resistivos a
un mismo cut capacitivo (R1-C-R2) a conectar uno de los dos cuts resistivos y el cut
capacitivo al otro cut resistivo (C-R1-R2).
Debe tenerse en cuenta que si se levanta la restriccin sobre la conexin de cuts
resistivos del mismo tipo entre s y de cuts receptores entre s, habra que sustituirla por
una regla del tipo: en toda cadena de conexiones entre cuts del mismo tipo, de flujo de
materia o de flujo de calor, debe haber uno y slo uno de ellos que sea un cut capacitivo,
el resto deben ser cuts resistivos. Equivalentemente, para cuts de transmisin de
informacin: en toda cadena de conexiones entre cuts de flujo de informacin debe
haber uno y slo uno de ellos que sea emisor, los dems deben ser receptores.
Obsrvese adems que si se permite el establecimiento de cadenas de conexiones de
forma libre, debe imponerse de forma explcita la siguiente regla: las cadenas de
conexiones no pueden tener caminos cerrados, es decir, no pueden existir caminos de
conexiones que, partiendo de un cut conduzcan al mismo cut (por ejemplo, R1-R2-C-
R1). Considrese un camino cerrado de conexiones entre N cuts, con una variable
across y una through cada uno. Las conexiones impondran N ecuaciones de igualdad
entre las N variables across: una ecuacin de igualdad sera combinacin lineal de las
1 N restantes. Asimismo, una de las variables through intervendra por duplicado en
la ecuacin que impone que la suma de todas ellas sea cero: la ecuacin, en lugar de ser
la suma de N variables igualada a cero sera la suma de 1 + N variables igualada a
cero.
La posibilidad de formar cadenas de conexiones con caminos cerrados desaparece si se
impone que las cadenas tengan siempre una forma establecida, en este caso: un cut
capacitivo o emisor de la informacin al que se conectan directamente todos los dems
cuts, resistivos o receptores de la informacin respectivamente. Por este motivo y por
simplicidad a la hora de comprobar el cumplimiento de las reglas de conexin, se ha
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 107

optado por prohibir la conexin entre cuts resistivos y entre cuts receptores de
informacin.
Para facilitar la aplicacin de las reglas de conexin de los cuts se ha asociado, segn se
muestra en la Tabla 3.9, a cada uno de los tipos de cuts bsicos una clase conteniendo
sus atributos grficos (en el Apartado 4.7 se describen los atributos grficos de los cuts
del tipo ligadura sobre el volumen). Estas clases se encuentran en la librera cutsB.lib.
cut resistivo de flujo de gas
model class (CutBase) cutGasR
cut capacitivo de flujo de gas
model class (CutBase) cutGasC
cut resistivo de flujo de lquido
model class (CutBase) cutLiquidR
cut capacitivo de flujo de lquido
model class (CutBase) cutLiquidC
cut resistivo de flujo de calor - M
model class (CutBase) cutHeatMR
cut resistivo de flujo de calor - F
model class (CutBase) cutHeatFR
cut capacitivo de flujo de calor - M
model class (CutBase) cutHeatMC
cut capacitivo de flujo de calor - F
model class (CutBase) cutHeatFC
cut emisor de informacin
model class (CutBase) cutEmitter
cut receptor de informacin
model class (CutBase) cutReceiver
Tabla 3.9 Cabeceras de las clases que contienen los atributos grficos de algunos de los cuts bsicos.
En la Tabla 3.10 se muestran los atributos grficos que se ha asignado a los cuts
bsicos. La orientacin (apuntando hacia el elemento o hacia fuera de l) de los cuts de
flujo de materia y de flujo de calor en las interfaces indica grficamente el criterio de
signos empleado para las variables del tipo through de los cuts. Los cuts de flujo de
informacin no posee variables de tipo through y sobre la variable de tipo through del
cut de ligadura sobre el volumen no es preciso establecer ningn criterio de signo. Por
ello se han escogido figuras geomtricas para representarlos que no indican sentido.
Debe tenerse en cuenta que la asignacin de un sentido a los flujos responde
nicamente al establecimiento de un criterio de signos, no suponiendo una ligadura
acerca del sentido que deber tener el flujo en tiempo de simulacin. Todos los modelos
de flujo se han realizado de forma que sean totalmente reversibles, es decir, que su
sentido vare en tiempo de simulacin de acuerdo con lo dictado por sus condiciones de
contorno.
Las reglas de conexin de los cuts de flujo de materia, de flujo de calor y de flujo de
informacin de JARA v. 1.0 pueden reescribirse en base a sus atributos grficos de la
forma indicada en la Tabla 3.11.

108 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

cutGasR cutGasC
Cuts de flujo de gas



cutLiquidR cutLiquidC
Cuts de flujo de lquido



cutHeatMR cutHeatMC
Cuts de flujo de calor - M



cutHeatFR cutHeatFC
Cuts de flujo de calor - F



cutReceiver cutEmitter
Cuts de flujo de informacin



Tabla 3.10 Atributos grficos de algunos de los cuts bsicos.
Reglas de conexin
Slo es posible conectar dos cuts si tienen la misma forma y el mismo color.
Un cut relleno puede, o bien dejarse sin conectar, o bien conectarse a un nmero
arbitrario de cuts no rellenos. No pueden conectarse entre s dos cuts rellenos.
Los cuts no rellenos deben siempre estar conectados a uno y slo un cut relleno. No
pueden conectarse cuts no rellenos entre s.
Tabla 3.11 Reglas de conexin de los cuts bsicos de flujo de materia, de calor y de informacin.
Reglas de conexin para cuts de diferente nivel jerrquico
Considrese un cut que forma parte de la interfaz de una clase compuesta. El cut se
encuentra conectado a N cuts de otros tantos submodelos de la clase. La lgica del
modelado impone que el cut slo pueda conectarse a cuts de su mismo tipo de flujo
(gas, lquido, calor o informacin). Las variables terminales del cut de la clase
compuesta que deban ser salidas computacionales (determinadas por definicin para
cada tipo de cut), deben calcularse de las ecuaciones de la conexin del cut con los N
cuts de los submodelos de la clase. Asimismo, deben satisfacerse las reglas de la
causalidad computacional de los N cuts de los submodelos. Para ello debe satisfacerse:
El cut de la clase compuesta slo puede conectarse a aquellos cuts de sus
submodelos que sean de su mismo tipo de flujo (lquido, gas, calor o informacin).
VARIABLES TERMINALES, TIPOS DE CUTS Y REGLAS DE CONEXIN DE JARA v. 1.0 109

Si el cut de la clase compuesta es un cut capacitivo, debe conectarse a uno y solo un
cut capacitivo de los submodelos, pudiendo adems conectarse a un nmero
arbitrario de cuts resistivos de los submodelos (ver Figura 3.10). Obsrvese que las
variables across del cut capacitivo de la clase compuesta y de los cuts resistivos de
los submodelos se calculan de las variables across del cut capacitivo del submodelo.
Las variables through del cut capacitivo del submodelo se evalan, de las
ecuaciones de conexin, a partir de las variables through del cut capacitivo de la
clase compuesta y de las variables through de los cuts resistivos de los submodelos.
Si el cut de la clase compuesta es un cut resistivo, puede conectarse a un nmero
arbitrario de cuts resistivos de sus submodelos, no pudindose conectar a ningn cut
capacitivo de sus submodelos (ver Figura 3.11). Obsrvese que las variables through
del cut resistivo de la clase compuesta se evalan, de las ecuaciones de conexin, a
partir de las variables through de los cuts resistivos de los cuts de los submodelos.
Si el cut de la clase compuesta es un emisor de informacin debe conectarse a uno y
slo un cut emisor de informacin de un submodelo y a un nmero arbitrario de cut
receptores de informacin de sus submodelos.
Si el cut de la clase compuesta es un receptor de informacin puede conectarse a un
nmero arbitrario de cuts receptores de informacin de los submodelos de la clase.













Figura 3.10 Causalidad computacional de la conexin interna a un cut capacitivo de la interfaz.










Figura 3.11 Causalidad computacional de la conexin interna a un cut resistivo de la interfaz.
Cut
capacitivo
across
through
=
=0
Cut
resistivo
Cut
resistivo
Cut
capacitivo
across
across
across
through
through
through
across
through
across
through
=
=0
Cut
resistivo
Cut
resistivo
across
across
through
through
across
through
Cut
resistivo
110 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

3.5 LAS INTERFACES DE JARA v. 1.0
De la forma de establecer los balances de materia, momento y energa surge de forma
natural la clasificacin de las interfaces en dos grupos: aquellas cuyas clases modelan el
volumen de control y aquellas que modelan los fenmenos de transporte entre
volmenes de control adyacentes. Adems, se definen en JARA v. 1.0 otros dos tipos de
interfaz que contemplan aspectos diferentes del modelo: las interfaces del tipo flujo de
informacin y las del tipo ligadura sobre el volumen (ver Figura 3.12).





Figura 3.12 Clasificacin de las interfaces bsicas.
Interfaces bsicas del tipo volumen de control de JARA v. 1.0
Son las interfaces de clases bsicas que modelan la variacin de las propiedades del
medio contenido en un volumen de control debido a los flujos de materia y energa que
intercambia el volumen de control con el entorno. Por ello, son interfaces compuestas
de cuts capacitivos: el balance de materia contiene la derivada del nmero de moles o de
la masa de cada componente y el balance de energa contiene la derivada de la
temperatura. La presin es funcin de la masa en el caso de las mezclas lquidas y del
nmero de moles y de la temperatura en el caso de las mezclas gaseosas.
Tambin son las interfaces de las clases bsicas que representan las condiciones de
contorno para el flujo aplicadas sobre las variables across, por ejemplo, en las fuentes de
presin y de temperatura. Estas clases deben modelarse de modo que las variables
across de sus cuts capacitivos sean funcin del tiempo o de las variables de estado de la
clase.
Se adopta en JARA v. 1.0 el criterio de signos de considerar las variables de tipo
through de los cuts de flujo de materia y de flujo de calor de la interfaz positivas cuando
tienen sentido entrante al volumen de control. En consecuencia, en la representacin
Dymodraw de estas interfaces, todos los cuts apuntan en sentido entrante al elemento
(ver Figura 3.13). En las interfaces bsicas del tipo volumen de control (ver Tabla 3.12)
no se incluye ningn cut de intercambio de informacin, si bien es frecuente que se
definan en sus subclases.
Volumen
de
control
Fenmeno
de
transporte
Ligadura
sobre el
volumen
Flujo
de
informacin
Tipos de interfaz bsica
LAS INTERFACES DE JARA v. 1.0 111

Cuts de flujo
de gas
Cuts de flujo
de lquido
Cuts de flujo de calor Cuts de ligadura
sobre el volumen
R C R C M-R M-C F-R F-C
gas1I
0 1 0 0 0 1 0 0 0
gasV1I
0 1 0 0 0 1 0 0 1
liquid1I
0 0 0 1 0 0 0 0 0
liquid2I
0 0 0 2 0 1 0 0 0
liquidV2I
0 0 0 2 0 1 0 0 1
heat1I
0 0 0 0 0 1 0 0 0
Tabla 3.12 Nmero de cuts de las interfaces bsicas del tipo volumen de control.
gas1I gasV1I liquid1I liquid2I liquidV2I heat1I




Figura 3.13 Iconos de las interfaces bsicas del tipo volumen de control.
Interfaces bsicas del tipo fenmeno de transporte de JARA v. 1.0
Son las interfaces de clases que modelan el flujo de materia y energa, bien de un
volumen de control consigo mismo, como en el caso de las reacciones qumicas, como
entre dos volmenes de control, como en el caso del flujo convectivo de fluidos, del
flujo de materia por difusin, de la conduccin y conveccin de calor, de los cambios de
fase, etc. Tambin son las interfaces de las clases que representan las condiciones de
contorno para el flujo aplicadas a las variables through (por ejemplo, los modelos de las
fuentes de flujo de materia o las fuentes de calor). Son interfaces compuestas
fundamentalmente de cuts resistivos.
Al igual que en las interfaces del tipo volumen de control, en estas interfaces bsicas no
se incluye ningn cut de intercambio de informacin, si bien es frecuente que se definan
en sus subclases. Para facilitar la identificacin de las interfaces de tipo fenmeno de
transporte, se ha incluido en el nombre de la clase que define la interfaz la palabra
"Flow".
Las clases bsicas con interfaz del tipo fenmeno de transporte en las que hay ms de un
cut de flujo de materia o ms de un cut de flujo de calor, que modelan el transporte de
materia o de calor entre dos volmenes de control, se ha realizado la hiptesis de que
los flujos totales de materia y de energa entrantes al elemento son iguales en todo
momento a los salientes, es decir, que no hay acumulacin ni de materia ni de energa.
Cabe plantearse la conveniencia de introducir esta condicin explcitamente en la
definicin de las interfaces. Sin embargo resulta desaconsejable, ya que restringe
innecesariamente la aplicabilidad de la interfaz para el modelado de clases compuestas
aun bajo las hiptesis de modelado anteriores.
112 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

Para ilustrarlo considrese una pared plana de espesor L tal que una de sus superficies
se encuentra a la temperatura
A
T y la otra a la temperatura
B
T . En el estacionario puede
modelarse el flujo de calor a travs de la pared suponiendo que es proporcional a la
diferencia de temperaturas,
B A th B A
Q R T T

. El factor de proporcionalidad,
th
R , es la
resistencia trmica de la pared. En la Figura 3.14 se muestra la interfaz de la resistencia
trmica conteniendo explcitamente la condicin de que el flujo de calor entrante por un
cut es igual en todo momento al saliente por el otro.




Figura 3.14 Interfaz de la resistencia trmica.
Si se desea modelar con mayor precisin el flujo de calor a travs de pared, puede
dividirse sta en N elementos de espesor N L/ , de modo que quede representada
mediante la conexin en serie de N resistencias trmicas. El conjunto de resistencias
trmicas conectadas se agrupa en una clase compuesta que modela la pared (en la Figura
3.15 se muestra el caso 2 N ). Obsrvese, sin embargo, que si la interfaz de esta clase
es la misma que la de las resistencias trmicas individuales, como en principio sera
lgico, se obtiene una ecuacin redundante al imponer tanto en las interfaces de las
resistencias trmicas individuales, como en la interfaz de su conexin en serie, que el
flujo de calor entrante es igual al saliente. Por este motivo no es recomendable ligar
entre s las variables de los cuts en la definicin de la interfaz. Es preferible establecer
estas ligaduras en las subclases de la interfaz.
Ecuaciones a que da lugar la
conexin de las variables
through:
B A B A
B A B A
B A B A
Q R Q
Q R Q R
Q R Q


.
. .
.
2
2 1
1

Una ecuacin es redundante.






Figura 3.15 Interfaz de la resistencia trmica total.
En algunas interfaces del tipo fenmeno de transporte con dos cuts de flujo de materia o
de flujo de calor se establece un criterio de signos para el sentido del flujo, de modo que
las variables through de uno de los cuts tienen signo positivo cuando tienen sentido
entrante y las del otro cuando tienen sentido saliente (ver Tabla 3.13 y Figura 3.16).
( )
B A A
Q T

( )
B A B
Q T

( )
B A A
Q T

( )
B A B
Q T

( )
B A A
Q T

( )
B A B
Q T

( )
B A A
Q T

( )
B A B
Q T

1
R
2
R
LAS INTERFACES DE JARA v. 1.0 113

Cuts de flujo
de gas
Cuts de flujo
de lquido
Cuts de flujo de calor Cuts de ligadura
sobre el volumen
R C R C M-R M-C F-R F-C
gasFlow2I
2 0 0 0 0 0 0 0 0
gasFlow2qI
2 0 0 0 0 0 0 1 0
liqFlow2I
0 0 2 0 0 0 0 0 0
liqFlow2qI
0 0 2 0 0 0 0 1 0
heteroFlow2I
1 0 1 0 0 0 0 0 0
heteroProcessFlow2I
1 0 1 0 0 0 0 0 0
heatFlow2I
0 0 0 0 2 0 0 0 0
heatFlowF2I
0 0 0 0 1 0 1 0 0
Tabla 3.13 Interfaces del tipo fenmeno de transporte con dos cuts de flujo de materia o de calor.
gasFlow2I gasFlow2qI liqFlow2I liqFlow2qI




heteroFlow2I heteroProcessFlow2I heatFlow2I heatFlowF2I




Figura 3.16 Iconos de las interfaces bsicas del tipo fenmeno de transporte con dos cuts de flujo de
materia o de calor.
En las interfaces bsicas del tipo fenmeno de transporte con un nico cut de flujo de
materia o de calor (ver Tabla 3.14) se adopta el criterio de signos de considerar las
variables tipo through del cut positivas cuando tienen sentido entrante al elemento. Por
consiguiente, en la representacin Dymodraw de estas interfaces, todos los cuts apuntan
en sentido entrante al elemento (ver Figura 3.17).
Cuts de flujo
de gas
Cuts de flujo
de lquido
Cuts de flujo de calor Cuts de ligadura
sobre el volumen
R C R C M-R M-C F-R F-C
gasFlow1I
1 0 0 0 0 0 0 0 0
liqFlow1I
0 0 1 0 0 0 0 0 0
heatFlow1I
0 0 0 0 1 0 0 0 0
Tabla 3.14 Interfaces bsicas del tipo fenmeno de transporte con un nico cut.
114 LA ESTRATEGIA DE MODELADO. DEFINICIN DE LA INTERFAZ

gasFlow1I liqFlow1I heatFlow1I




Figura 3.17 Iconos de las interfaces bsicas del tipo fenmeno de transporte con un nico cut.
Interfaces bsicas del tipo flujo de informacin de JARA v. 1.0
A las clases bsicas que modelan las fuentes de flujo de materia o de calor, las bombas,
las vlvulas, etc. es preciso suministrarles el valor de consigna de determinadas
variables. Estas variables consigna se han agrupado en cuts receptores de informacin
definidos en las clases bsicas. Las interfaces bsicas estn constituidas por estos
mismos cuts, pero emisores de informacin, de modo que pueden servir como las
superclases de las clases en las cuales se evalen estas seales de consigna. En la Tabla
3.15 se muestran las interfaces bsicas constituidas por cuts emisores de informacin
que agrupan seales de consigna, las variables de que componen el cut y las clases
bsicas que poseen un cut idntico pero receptor de informacin. Se ha asignado a todos
estos cuts que transmiten informacin acerca de los valores de consigna de
determinadas variables un mismo nombre: setPointSignal. En la Figura 3.18 se muestra
el icono Dymodraw de dos clases bsicas de flujo de informacin.
Interfaces bsicas
(cut emisor)
Variables del cut setPointSignal Clases bsicas
(cut receptor)
valveSignalI (valveOpeningSP) pipeDynGasB
pipeDynLiqB
pipeStatLiqB
sourceMassSignalI (totalMassFSP,massFractSP,tempFSP) sourceMassGasFB
sourceMassLiqFB
sourceMolSignalI (totalMolFSP,molFractSP,tempFSP) sourceMolGasFB
sourceMolLiqFB
sourceVolLiqSignalI (totalVolFSP,volFractSP,tempFSP) sourceVolLiqFB
sourceVolGasSignalI (totalVolFSP,molFractSP,tempFSP,pressFSP) sourceVolGasFB
pumpMassSignalI (totalMassFSP) pumpMassGasB
pumpMassLiqB
pumpMolSignalI (totalMolFSP) pumpMolGasB
pumpMolLiqB
pumpVolSignalI (totalVolFSP) pumpVolGasB
pumpVolLiqB
sourceHeatSignalI (heatFSP) sourceHeatFB
Tabla 3.15 Interfaces bsicas de flujo de informacin, su cut y clases bsicas que complementan.
CONCLUSIONES 115

emitter1I receiver1I




Figura 3.18 Iconos de las interfaces bsicas de flujo de informacin.
Tal y como se ha indicado al definir los cuts emisores y receptores de informacin, la
definicin de cualquier clase que posea cuts emisores de informacin debe hacerse
considerando que las variables incluidas en estos cuts deben ser salidas
computacionales, es decir, deben ser evaluables de las ecuaciones de la clase como
funcin explcita de sus entradas computacionales. Igualmente, las variables contenidas
en cuts receptores de informacin deben ser consideradas entradas computacionales de
su conexin.
Interfaz bsica del tipo ligadura sobre el volumen de JARA v. 1.0
Se ha definido una interfaz bsica compuesta por un cut de ligadura sobre el volumen
(ver Tabla 3.16) y que sirve de superclase a la clase que modela los recipientes, vesselB.
Clase Nmero de cuts de ligadura sobre el volumen Icono

vesselI

1




Tabla 3.16 Interfaz bsica del tipo ligadura sobre el volumen.
3.6 CONCLUSIONES
En este captulo se han identificado las hiptesis de modelado sobre las que se basa la
versin 1.0 de JARA. Se han clasificado y definido las clases de cuts, se han enunciado
sus reglas de conexin y se han clasificado y definido las interfaces de las clases. Con
ello se ha completado la definicin de la interfaz de las clases (salvo lo referente a la
ligadura sobre el volumen, que se discutir en el Captulo 4) y de las reglas que
permiten ampliar las libreras de JARA con nuevas clases de modelos.
La ampliacin de JARA con nuevas clases de cuts debe hacerse de forma anloga al
procedimiento seguido en la Captulo 3. Debe identificarse no slo qu variables
integran el cut, sino adems su causalidad computacional y cules de ellas cortan los
lazos de causalidad. Deben ampliarse las reglas de conexin, de modo que quede bien
establecido el modo de conectar los nuevos tipos de cuts. Deben asociarse atributos
grficos a los nuevos tipos de cuts, de modo que aquellos permitan identificar de qu
variables est compuesto el cut, su causalidad computacional y adems faciliten el
cumplimiento de las reglas de conexin.

117

Captulo 4
EL VOLUMEN DE CONTROL
4.1 INTRODUCCIN
De forma natural surge la diferenciacin entre las clases que modelan el volumen de
control y las que modelan los fenmenos de transporte entre volmenes de control (ver
Apartado 3.3). En el Captulo 4 se aborda el modelado del volumen de control y en los
Captulos 5 a 8 el modelado de los fenmenos de transporte: transferencia de calor, flujo
de fluidos, transferencia de materia y reacciones qumicas.
El Captulo 4 est estructurado de la forma siguiente:
En el Apartado 4.2 se exponen las aproximaciones realizadas en JARA v. 1.0 en el
modelado del volumen de control y se establece el contexto en el cual pueden
emplearse las clases.
En los Apartados 4.3 a 4.6 se discuten de forma concisa algunos de los fundamentos
tericos empleados en el modelado de los volmenes de control. El contenido de
estos cuatro apartados es una recopilacin bibliogrfica.
Los modelos de volmenes de control empleados en la versin 1.0 de JARA estn
compuestos bsicamente de los balances de materia y energa, de la ecuacin de
estado del compuesto (homogneo) contenido en el volumen de control y de la
ligadura sobre el volumen. En el Apartado 4.7 se plantean las ligaduras sobre el
volumen, se discute la estructura de los cuts de ligadura sobre el volumen, se
describen sus atributos grficos y se plantean sus reglas de conexin. Con ello se
completa la descripcin de las interfaces de las clases realizada en el Captulo 3.
En los Apartados 4.8 a 4.10 se discute la descripcin interna de las clases que
modelan los volmenes de control en la versin 1.0 de JARA. En los captulos
dedicados al modelado de los fenmenos de transporte pueden encontrarse
abundantes ejemplos de aplicacin de estas clases.
En el Apartado 4.11 se exponen las conclusiones.
118 EL VOLUMEN DE CONTROL

4.2 APROXIMACIONES DEL MODELADO DE JARA v. 1.0
Las propiedades del medio que contiene el volumen de control se consideran
dependientes del tiempo, pero independientes de las coordenadas espaciales (con la
nica excepcin de la presin en el seno de las mezclas lquidas). Los planos de control
se encuentran fijos en el espacio. Al modelar el volumen de control slo se han
contemplado las siguientes tres situaciones:
1. El volumen de control contiene una mezcla lquida ideal homognea. Se considera
un sistema abierto (puede intercambiar materia y calor con el entorno) y en su
interior pueden producirse reacciones qumicas.
2. El volumen de control contiene una mezcla ideal homognea de gases
semiperfectos. Se considera un sistema abierto y en su interior pueden producirse
reacciones qumicas.
3. El volumen de control contiene un slido homogneo. Se considera un sistema
cerrado, de modo que intercambia slo energa (no materia) con el entorno. El
nico aspecto de los slidos que se ha modelado es su capacidad de conducir calor,
no contemplndose la posibilidad de que intervengan en reacciones qumicas,
cambien de fase, etc. La aplicacin es el modelado de paredes de reactores, tuberas,
etc.
4.3 BALANCES DE MATERIA Y DE ENERGA
Formulacin extensiva e intensiva de los balances
Los balances de materia, energa y momento pueden enunciarse en trminos de las
propiedades extensivas (masa o nmero de moles, energa interna y momento lineal) o
de las propiedades intensivas (densidad, definida como la masa de fluido por unidad de
volumen del volumen de control, la temperatura y la velocidad). La dificultad asociada
con la formulacin intensiva es que las variables intensivas carecen de significado
cuando la cantidad de materia es cero (valen cero dividido entre cero).
Una forma de extender la definicin de las variables intensivas al caso en que la masa
sea igual a cero consiste en sustituir la relacin habitual entre una variable intensiva, y ,
y una extensiva, Y ,
m
Y
y , por otra en la que se suma a la masa en el denominador
una constante positiva de valor muy pequeo (por ejemplo, 1.E-10), , de modo que no
modifique el clculo de la variable intensiva mas que en un entorno muy pequeo del
origen:
+

m
Y
y . De este modo la singularidad
0
0
se transforma en 0
0
0

+
, no
existiendo el peligro de divisin entre cero por ser la masa siempre no negativa. El
mtodo es aplicable siempre que la variable que aparece dividiendo a la magnitud
extensiva tome nicamente valores o no negativos o no positivos.
BALANCES DE MATERIA Y DE ENERGA 119

Balance de materia
Los balances de materia, siguiendo la notacin descrita en el Anexo C, son:
n n
G F
dt
n d
+
Balance molar aplicado a un volumen de control que
contiene una mezcla gaseosa.
m m
G F
dt
m d
+
Balance de masa aplicado a un volumen de control que
contiene una mezcla lquida.
0
dt
dm

Balance de masa aplicado a un volumen de control que
contiene un slido.

Balance de energa
Para formular el balance de energa de volmenes de control que contienen mezclas
homogneas ideales de lquidos o de gases se realizan las dos siguientes aproximaciones
(muy comunes en el mbito del modelado orientado al control de procesos) [Rami89]
[From79] [Luyb90]:
1. La energa total de un sistema puede considerarse compuesta de energa interna,
energa potencial y energa cintica. Se consideran despreciables los cambios en
la energa cintica y potencial frente a los cambios en la energa interna.
2. El sistema no realiza trabajo sobre su entorno.
De acuerdo con estas aproximaciones, la variacin por unidad de tiempo en la energa
interna total del fluido contenido en un volumen de control es igual al flujo total de
entalpa entrante menos el saliente, ms el flujo total de calor entrante menos el saliente
[Bird75].
Q F
dt
dU
H
+
Balance de energa aplicado a un volumen de control que
contiene una mezcla homognea gaseosa o lquida.

La variacin en la energa interna de un slido contenido en un volumen de control se
supone debida nicamente al flujo de calor que intercambia con el entorno por
conduccin o por conveccin.
Q
dt
dU

Balance de energa aplicado a un volumen de control que
contiene un slido.

120 EL VOLUMEN DE CONTROL

4.4 ECUACIONES DE ESTADO
Ecuacin de estado de gases y mezclas gaseosas
Se asume que los conceptos de la termodinmica clsica, vlida para los estados de
equilibrio termodinmico, pueden aplicarse al estudio del comportamiento de un
sistema que evoluciona en el tiempo, supuesto que la velocidad de evolucin del
fenmeno observado sea lo suficientemente lenta comparada con la velocidad con que
se alcanza el equilibrio termodinmico como para que pueda considerarse que las
transformaciones pueden representarse por una serie continua de estados de equilibrio
[Goul69].
Los sistemas pVT (como una mezcla gaseosa) satisfacen una ecuacin de estado que
relaciona, en el equilibrio termodinmico, su volumen especfico,
n
V
V

, su presin,
p , y su temperatura, T . Existen varias formulaciones para la ecuacin de estado. Al
seleccionar una de ellas debe considerarse que la ecuacin de estado es la nica
expresin, de las que componen el modelo utilizado de la mezcla gaseosa, en la que
interviene la presin, y en consecuencia sta debe evaluarse de ella. Es, por tanto,
recomendable usar ecuaciones de estado en las cuales la presin pueda evaluarse de
forma explcita. Esto no supone ninguna restriccin en la prctica, ya que sta es la
forma ms habitual de formular la ecuacin de estado.
La ecuacin de estado de los gases ideales, aplicable a componentes puros y a mezclas,
es razonablemente precisa hasta una presin de dos atmsferas para la mayora de los
compuestos y hasta presiones mayores para gases cuyas molculas sean pequeas
[Perr84].
nRT pV Ecuacin de estado de los gases ideales.

Para presiones ms elevadas o cuando se desea una mayor precisin se han desarrollado
correlaciones ms complejas, las cuales, excepto alguna excepcin, pueden agruparse
dentro de cuatro categoras [Perr84] [Himm96] [Wark95]: estados correspondientes,
ecuacin del virial, ecuaciones de estado con dos parmetros y ecuacin de Benedict-
Webb-Rubin.
ZnRT pV Ecuacin de estado basada en la ley de los
estados correspondientes.
c
c
c
c
p
RT
b
p
T R
a
V
a n
nb V
nRT
p
8
64
27
2 2
2
2


Ecuacin de estado de dos parmetros.
Ecuacin de van der Waals [Wark95].
ECUACIONES DE ESTADO 121

( )
( )
c
c
c
c
p
RT
b
p
T R
a
nb V V T
a n
nb V
nRT
p
3
1 2
1 2 9
1
3 / 1
5 . 2 2
3 / 1
5 . 0
2

+
+


Ecuacin de estado de dos parmetros.
Ecuacin de Redlich-Kwong [Perr84].

La ecuacin de estado de Benedict-Webb-Rubin (BWR) consta de 8 parmetros
(constantes para un determinado gas) y en ella aparece la presin de forma explcita
[Perr84]. Jacobsen y Steward propusieron en 1973 una modificacin a la ecuacin
BWR. La ecuacin de Benedict-Webb-Rubin modificada (MBWR) consta de 32
coeficientes dependientes de la temperatura [Wark95]. En ella la presin tambin
aparece de forma explcita.
Existen diferentes mtodos para estimar la ecuacin de estado de las mezclas de gases.
Uno de ellos consiste en obtener la presin parcial de cada uno de los componentes de la
mezcla a partir de su ecuacin de estado para despus sumar las presiones parciales
individuales de acuerdo con la ley de Dalton y obtener la presin total. Otro mtodo
consiste en emplear constantes promedio en la ecuacin de estado [Himm96] [Perr84].

comp
N
i
i
p p
1 :

Ley de Dalton.

Ecuacin de estado de lquidos y de mezclas lquidas
La ecuacin de estado de un lquido es la relacin entre su densidad (masa del lquido
por unidad de volumen del mismo), su presin y su temperatura. Se realiza la
aproximacin de considerar que los lquidos puros son incompresibles, es decir, su
densidad es constante.
constante
puro
i

Ecuacin de estado de los lquidos puros
incompresibles.

Se asume que el volumen ocupado por una mezcla de lquidos se calcula a partir de las
densidades de sus componentes puros empleando la ley de Amagat: el volumen ocupado
por la mezcla lquida es la suma de los volmenes que ocuparan la misma masa
existente en la mezcla de sus componentes cuando estos se encuentran puros. Esta ley es
vlida para mezclas de componentes similares a presiones moderadas [Perr84].

comp
N
i
puro
i
i
m
V
1 :


Ley de Amagat
122 EL VOLUMEN DE CONTROL

Ecuacin de estado de los slidos
Los slidos se consideran incompresibles (de densidad constante). Puesto que no se
modela ningn mecanismo que haga variar la masa de los slidos, sus dimensiones son
constantes.
constante
solido

Los slidos son considerados incompresibles.

4.5 ENERGA INTERNA Y ENTALPA
Energa interna y entalpa de gases puros
La energa interna molar, u , es una variable de estado que para un componente puro
puede expresarse en funcin de la temperatura y del volumen por mol. La entalpa
molar, h

, es una funcin de estado que para una sustancia pura puede expresarse en
funcin de la temperatura y de la presin [Rami89] [Himm96].
( )
V d
V
u
dT
T
u
u d
V T u u
T V


,
_

,
_


( )
dp
p
h
dT
T
h
h d
p T h h
T p

,
_

,
_

,



Las capacidades calorficas molares a volumen constante y a presin constante se
definen de la forma siguiente [Rami89] [Himm96]:
V
V
T
u
C


,
_

,
p
p
T
h
C

,
_

.
Generalmente
T
V
u

,
_

es muy pequeo, con lo cual puede despreciarse. A bajas


presiones
T
p
h

,
_

es tambin despreciable (en procesos a altas presiones no siempre es


despreciable y entonces hay que evaluarlo a partir de datos experimentales) [Wark95]
[Himm96]. Despreciando los trminos
T
V
u

,
_

y
T
p
h

,
_

, se obtienen las siguientes


expresiones aproximadas:
dT C u d
V

dT C h d
p



ENERGA INTERNA Y ENTALPA 123

Las dos expresiones anteriores son exactas para los gases ideales. La ley de Joule,
establece que la energa interna molar y la entalpa molar de un gas ideal es funcin
exclusiva de su temperatura (y no de la presin ni del volumen especfico) [Agui81].
Energa interna y entalpa de lquidos puros y de slidos
Al modelar los lquidos puros suele suponerse que su entalpa por unidad de masa, h , es
igual a su energa interna por unidad de masa, u [Luyb90]. Se realiza la aproximacin
de considerar constante la densidad de los lquidos puros y los slidos. Las derivadas de
la energa interna por unidad de masa y de la entalpa por unidad de masa se aproximan
de la forma siguiente, donde C representa la capacidad calorfica por unidad de masa:
CdT dh du
Lquidos puros y slidos.

El estado de referencia
La termodinmica no determina valores absolutos de la entalpa, ya que no es capaz de
hallar valores absolutos de la energa interna. Realmente en los anlisis trmicos slo
interesa el incremento en la entalpa o en la energa interna. Por ello se define
arbitrariamente un estado de referencia, respecto del cual se mide el incremento en la
entalpa. El estado estndar de una sustancia es su forma ms estable a la presin de una
atmsfera y a la temperatura de 25 C. En este estado de referencia se acepta que la
entalpa de los elementos qumicos es nula. Por ejemplo, el calor de formacin del
hidrgeno molecular (
2
H ) o del oxgeno molecular (
2
O ) son nulos [Agui81] [Morc87].
A todos los compuestos se les asignan entalpas molares de formacin, que representan
la variacin de entalpa que corresponde a la formacin de un mol de compuesto en
condiciones normales (25 C y 1 atm) a partir de los elementos componentes en sus
formas ms estables [Agui81]. La entalpa molar de un compuesto a la temperatura
0
T
puede calcularse, siempre que no haya cambio de fase, de la forma siguiente [Himm96]:
( ) ( ) ( ) dT T C T h T h
T
T
p ref
ref


0
0

+
Variacin en la entalpa molar en ausencia de
cambio de fase.

La capacidad calorfica es continua slo en la regin comprendida entre las transiciones
de fase, ya que en los cambios de fase existen cambios de "calor latente" [Himm96]. Si
cf
h

representa el calor molar de cambio de fase,


1 ,

fase p
C la capacidad calorfica molar
a presin constante de la fase entre
ref
T y
cf
T y
2 ,

fase p
C de la fase entre
cf
T y
0
T ,
entonces la entalpa molar a la temperatura
0
T de un compuesto que sufre un cambio de
fase a la temperatura
cf
T es [Himm96]:
( ) ( ) ( ) ( ) dT T C h dT T C T h T h
T
T
fase p cf
T
T
fase p ref
cf
cf
ref


0
2 , 1 , 0

+ + +
Variacin en la entalpa molar
con cambio de fase.
124 EL VOLUMEN DE CONTROL

Mezclas homogneas ideales
Considrese un sistema formado por varios componentes en una sola fase a la presin
p y a la temperatura T . Cualquier propiedad extensiva J (volumen, energa interna,
entalpa, etc.) depender de p , T y de los nmeros de moles
comp
N
n n ,...,
1
de sus
componentes: ( )
comp
N
n n p T J J ,..., , ,
1
. Puesto que J es una funcin homognea de
grado uno respecto a los nmeros de moles de cada componente, aplicando el teorema
de Euler resulta:

,
_

comp
j
N
i
n p T
i
i
n
J
n J
1 :
, ,
[Agui84] [Wark95]. La magnitud
j
n p T
i
n
J
, ,

,
_

se
denomina magnitud molar parcial y se representa
i
J . La energa interna y entalpa de
una mezcla homognea de
comp
N componentes se calculan, en virtud del teorema de
Euler, de la forma siguiente [Wark95]:

,
_

comp comp
j
N
i
i i
N
i
n p T
i
i
u n
n
U
n U
1 : 1 :
, ,

Energa interna total de una mezcla homognea.

,
_

comp comp
j
N
i
i i
N
i
n p T
i
i
h n
n
H
n H
1 : 1 :
, ,

Entalpa total de una mezcla homognea.

La energa interna molar (energa interna por mol) del componente puro i se representa
i
u y su entalpa molar (entalpa por mol)
i
h

. En general la magnitud molar y la


magnitud molar parcial no tienen por qu coincidir. El cambio en la magnitud
extensiva J debido al proceso de mezclado a temperatura y presin constantes es
[Wark95]: ( )


comp
N
i
i i i
J J n J
1 :

. La aproximacin de mezcla ideal consiste en despreciar


el cambio en el volumen y la entalpa de mezclado, es decir, supone que
i i
V V

y que
i i
h h

[Wark95]. En el caso particular de los gases ideales, la energa interna de una


mezcla es igual a la suma de las energas internas iniciales de los gases,

comp
N
i
i i
u n U
1 :
, y
la entalpa total de la mezcla vale

comp
N
i
i i
h n H
1 :

, siendo
i
h

la entalpa molar del gas i en


las condiciones p , T de la mezcla [Agui84].
CAPACIDAD CALORFICA 125

4.6 CAPACIDAD CALORFICA
En el balance de materia formulado en el Apartado 4.3 interviene la derivada de la masa
o del nmero de moles de cada componente. En el balance de energa interviene la
derivada de la energa interna total de la mezcla. El lenguaje de modelado considera por
defecto que la masa o el nmero de moles de los componentes y que la energa interna
total son variables de estado. De esta forma, la temperatura es la nica variable
desconocida que aparece en la expresin que relaciona la variacin en la energa interna
con la cantidad de materia, la capacidad calorfica a volumen constante y la variacin en
la temperatura. Por ello, el lenguaje de modelado intenta evaluar la temperatura de esta
expresin.
La dificultad surge cuando la capacidad calorfica es funcin (por ejemplo, polinmica)
de la temperatura, ya que en estas circunstancias, el clculo de la temperatura requiere
resolver numricamente una expresin que, en general, es no lineal y tiene ms de una
solucin para la temperatura. El problema puede evitarse forzando al lenguaje de
modelado a escoger la temperatura como variable de estado en lugar de la energa
interna total. Se volver sobre este tema ms adelante.
Capacidades calorficas de gases
Un gas se considera perfecto si se asume que satisface la ecuacin de estado
nRT pV , la ley de Joule (la energa interna molar es funcin exclusivamente de la
temperatura) y que su capacidad calorfica es constante [Agui84]. Un gas se considera
semiperfecto si se asume que satisface la ecuacin de estado nRT pV , la ley de Joule
y que su capacidad calorfica molar depende exclusivamente de la temperatura (no de la
presin) [Agui84].
Gases perfectos Gases semiperfectos
constante C
constante C
V
p


R C C
V p


(Ley de Mayer)
( )
( ) T C C
T C C
V V
p p



Dado que los valores de
p
C

son normalmente ms sencillos de medir que los de


V
C


[Wark95], frecuentemente se encuentran en la literatura ecuaciones analticas que
relacionan la capacidad calorfica a presin constante con la temperatura para cada gas.
Las ms comunes son las polinmicas. Existen tablas del cociente de las capacidades
calorficas,
V
p
C
C

, para diferentes gases. Vase, por ejemplo, [Perr84]. La capacidad


calorfica de las mezclas pueden calcularse a partir de los de sus componentes de la
forma siguiente [Perr84]:
126 EL VOLUMEN DE CONTROL

comp
comp
N
i
i
p
i
mezcla
p
N
i
i V
i
mezcla V
C
n
n
C
C
n
n
C
1 :
1 :



Capacidad calorfica de mezclas:
promedio en fraccin molar

Capacidad calorfica de lquidos
La diferencia entre la capacidad calorfica a presin constante y a volumen constante en
los lquidos y slidos es generalmente muy pequea, por serlo el coeficiente
volumtrico de expansin, . Los coeficientes volumtrico de expansin e isotermo de
compresibilidad varan muy lentamente con la temperatura [Wark95], [Agui81]. Si un
lquido o un slido se considera incompresible, sus capacidades calorficas a presin
constante y a volumen constante son consideradas iguales.
0
V p
C C
Relacin para un lquido o slido
incompresible.

Se supone que, en general, el calor especfico de los lquidos es funcin slo de la
temperatura. Para mezclas lquidas suele tomarse como capacidad calorfica el
promedio en fracciones en masa de las capacidades de los componentes puros,
desprecindose el efecto del calor de mezclado [Perr84].

comp
N
i
i
i
mezcla
C
m
m
C
1 :

Capacidad calorfica de mezclas
ideales.

Capacidad calorfica de slidos
La capacidad calorfica de los slidos suele aparecer tabulada para cada elemento como
una funcin polinmica de la temperatura [Himm96]:
2
T
c
bT a C
bT a C
a C
+
+


Formas habituales en que suele
correlacionarse la capacidad calorfica
de los slidos con la temperatura.

LAS LIGADURAS SOBRE EL VOLUMEN 127

4.7 LAS LIGADURAS SOBRE EL VOLUMEN
Planteamiento de las ligaduras sobre el volumen
Un modo comn de escoger el volumen de control en el modelado macroscpico y de
gradiente mximo es de forma que coincida parcialmente con la interfaz entre la pared
de un recipiente y su interior. Las superficies del volumen de control que no coinciden
con la interfaz con el recipiente suele constituir planos de control para el flujo de
materia (ver Figura 4.1).












Figura 4.1 Eleccin del volumen y de los planos de control.
El volumen de control debe escogerse de modo que el medio que contenga sea o una
mezcla lquida homognea, o una mezcla gaseosa homognea o un slido homogneo
(ver el Apartado 4.2). Al modelar un fluido contenido en un recipiente se contemplan
las tres siguientes situaciones:
Caso 1. El objeto a modelar es una mezcla lquida homognea contenida en un
recipiente. Las propiedades del gas que ocupa el volumen del recipiente no
ocupado por el lquido carecen de inters a excepcin de su presin, ya que
se supone que es igual a la presin en la superficie del lquido. La presin del
gas no se calcula de sus propiedades (que no son modeladas), sino que es una
condicin de contorno. En este caso, el volumen de control se escoge de
modo que su superficie coincida total o parcialmente con la superficie
interior del recipiente. La superficie del volumen de control que no coincide
con la pared del recipiente son planos de control a travs de los que puede
entrar y salir el flujo de lquido. El modelo impone la siguiente ligadura: el
volumen de la mezcla lquida contenida en el volumen de control no puede
ser mayor que el volumen del volumen de control. Las dimensiones del
volumen de control son fijas.
Caso 2. El objeto a modelar es una mezcla gaseosa homognea contenida en un
recipiente. El volumen de control se escoge de igual modo que en el caso
anterior de la mezcla lquida. El modelo impone la siguiente ligadura: el
volumen de la mezcla gaseosa es igual al volumen del volumen de control.
Las dimensiones del volumen de control son fijas.
Caso 3. El objeto a modelar es una mezcla lquida homognea y una mezcla gaseosa
homognea situada sobre ella, ambas contenidas en el recipiente. La interfaz
entre las dos fases se encuentra claramente definida. Se asume que ambas
volumen de control
planos de control
plano de control
volumen de control
plano de control
128 EL VOLUMEN DE CONTROL

fases estn en equilibrio mecnico. La presin de la mezcla gaseosa se
calcula de su ecuacin de estado. Debe escogerse un volumen de control para
la mezcla lquida y otro para la mezcla gaseosa (ver Figura 4.2):
El volumen de control para la mezcla lquida se escoge de la misma
forma que se hara si no fuera a modelarse la mezcla gaseosa (Caso 1). El
modelo impone la siguiente ligadura: el volumen de la mezcla lquida
contenida en el volumen de control no puede ser mayor que el volumen
del volumen de control. Las dimensiones del volumen de control son
fijas.
El volumen de control para la mezcla gaseosa se define de modo que
contenga en cada momento exactamente a la mezcla gaseosa (supuesto
que el volumen de sta es conexo). Por tanto, el volumen de control para
la mezcla gaseosa es la diferencia entre el volumen de control para la
mezcla lquida y el volumen ocupado en cada instante por la mezcla
lquida. El volumen del volumen de control vara en tiempo de
simulacin. El modelo impone la siguiente ligadura: el volumen ocupado
por la mezcla gaseosa es igual al volumen de su volumen de control.













Figura 4.2 Volmenes de control para el gas y para el lquido.
A fin de separar el modelado de las mezclas lquidas y gaseosas del modelado de las
ligaduras sobre su volumen, se han definido los cuts del tipo ligadura sobre el volumen
y las clases vesselGasB y vesselLiqB, incluidas respectivamente en las libreras gas.lib y
liq.lib, que modelan el volumen constante del volumen de control (Casos 1, 2 y
volumen de control de la mezcla lquida en el Caso 3) que coincide con la superficie
interna del recipiente. Las dos clases son iguales. La nica informacin que contienen es
el valor del volumen (constante) del volumen de control. Se ha repetido su definicin a
fin de que est disponible con la carga de cualquiera de las dos libreras. Los cuts del
tipo ligadura sobre el volumen se han definido de modo que:
La ligadura sobre el volumen de la mezcla lquida en el Caso 1 se imponga
conectando el cut del tipo ligadura sobre el volumen de la clase que modela la
mezcla lquida con el de la clase vesselLiqB.
La ligadura sobre el volumen de la mezcla gaseosa en el Caso 2 se imponga
conectando el cut del tipo ligadura sobre el volumen de la clase que modela la
mezcla gaseosa con el de la clase vesselGasB.
gas
lquido
volumen de control
del lquido
lquido
volumen de control
del gas
gas
LAS LIGADURAS SOBRE EL VOLUMEN 129

La ligadura sobre el volumen de la mezcla gaseosa y de la mezcla lquida en el Caso
3 (la suma de los volmenes de ambas mezclas debe ser igual al volumen del
volumen de control del lquido) se imponga conectando el cut de ligadura sobre el
volumen de la clase que modela la mezcla gaseosa y de la clase que modela la
mezcla lquida a la clase vesselLiqB o vesselGasB indistintamente.
Definicin de los cuts del tipo ligadura sobre el volumen
Para satisfacer los tres requisitos anteriores, se han definido tres tipos diferentes de cut
de ligadura sobre el volumen. En los tres casos el cut recibe el mismo nombre,
constraintV, si bien se define de forma diferente. Los tres tipos son:
1. El primer tipo forma parte de la interfaz (clase gasV1I) de las clases que modelan un
volumen de control que contiene una mezcla homognea de gases.
2. El segundo tipo forma parte de la interfaz (clase liquidV2I) de las clases que
modelan un volumen de control que contiene una mezcla homognea de lquidos.
3. El tercer tipo integra la interfaz (clase vesselI) de las clases vesselLiqB y
vesselGasB, que modelan el volumen del recipiente.
El volumen ocupado por el lquido,
liq
V , es una variable que se evala de las ecuaciones
de la clase que modelan la mezcla lquida. El volumen del recipiente,
recipiente
V , es un
parmetro al que se asigna valor en la clase que modela el volumen de recipiente
(vesselLiqB o vesselGasB). El volumen del volumen de control de la mezcla lquida,
liq
recipiente
V , es una variable de la clase que modela la mezcla lquida y debe ser evaluada de
las ecuaciones de conexin de los cuts de ligadura sobre el volumen, asignndosele el
valor
recipiente
V . El volumen del volumen de control de la mezcla gaseosa,
gas
recipiente
V , es una
variable de la clase que modela la mezcla gaseosa que debe ser evaluada de las
ecuaciones de conexin. Si se conecta solamente la clase que modela el volumen de
control que contiene la mezcla gaseosa con la clase que modela el recipiente, se le debe
asignar el valor
recipiente
V . Si se conectan las clases que modelan ambos volmenes de
control (el del lquido y el del gas) con la clase que modela el recipiente, debe evaluarse
de la relacin
liq
recipiente recipiente
gas
recipiente
V V V .
A continuacin se describe el proceso de definicin de los tres cuts del tipo ligadura
sobre el volumen. Para determinar una posible estructura de los tres cuts se supone en
primer lugar que estn compuestos nicamente por una variable across y una through de
la forma siguiente:
( )
2 1
/ g g
Cut de la clase que modela el volumen de control que contiene la mezcla
gaseosa.
( )
2 1
/ l l
Cut de la clase que modela el volumen de control que contiene la mezcla
lquida.
( )
2 1
/ r r
Cut de la clase que modela el volumen del recipiente.

130 EL VOLUMEN DE CONTROL

Las tres posibles conexiones de estos cuts de ligadura sobre el volumen y las ecuaciones
a que aquellas dar lugar son:
Conexin Ecuaciones a que da lugar la
conexin
Ecuaciones que deben
establecerse mediante la conexin
con la causalidad sealada
connect ( )
2 1
/ g g at ( )
2 1
/ r r

'

0
2 2
1 1
r g
r g

[ ]
recipiente
gas
recipiente
V V
connect ( )
2 1
/ l l at ( )
2 1
/ r r

'

0
2 2
1 1
r l
r l

[ ]
recipiente
liq
recipiente
V V
connect ( )
2 1
/ g g at ( )
2 1
/ r r
connect ( )
2 1
/ l l at ( )
2 1
/ r r

'

+ +

0
2 2 2
1 1
1 1
r l g
r l
r g

[ ]
[ ]

'

+
recipiente
liq
recipiente
recipiente
gas
recipiente liq
V V
V V V


El problema consiste en encontrar la equivalencia entre las variables
1 2 1 2 1
, , , , r l l g g y
2
r
y las variables
liq
V ,
liq
recipiente
V ,
gas
recipiente
V y
recipiente
V de modo que se satisfagan las tres
siguientes equivalencias:
recipiente
gas
recipiente
V V
r g
r g

'


0
2 2
1 1

recipiente
liq
recipiente
V V
r l
r l

'


0
2 2
1 1

'

'

+ +

recipiente
liq
recipiente
recipiente
gas
recipiente liq
V V
V V V
r l g
r l
r g

0
2 2 2
1 1
1 1


Una posible eleccin de las variables de los cut es la siguiente:
gas
recipiente
V g
dummy g

2
1

Variables del cut de la clase que modela el volumen de control
que contiene la mezcla gaseosa.
liq
liq
recipiente
V l
V l

2
1

Variables del cut de la clase que modela el volumen de control
que contiene la mezcla lquida.
LAS LIGADURAS SOBRE EL VOLUMEN 131

dummy r
V r
recipiente

2
1

Variables del cut de la clase que modela el volumen del
recipiente.

La variable muda dummy es la misma para el cut de la mezcla gaseosa y del recipiente.
Para imponer esta condicin se introduce una segunda variable across en los cuts:
( )
gas
recipiente
V dummy dummy / ,
Cut de la mezcla gaseosa. Las tres variables del cut son
evaluadas de las ecuaciones de la conexin.
( )
liq
liq
recipiente
V dummy V / ,
Cut de la mezcla lquida. Las variables across son
evaluadas de las ecuaciones de la conexin. La variable
through es evaluada en la clase de la mezcla lquida.
( ) dummy dummy V
recipiente
/ ,
Cut del recipiente. La variable muda dummy es
evaluada de las ecuaciones de la conexin. La variable
recipiente
V es evaluada en la clase recipiente.

Las ecuaciones a que dan lugar la conexin de estos cut son las siguientes:
Conexin Ecuaciones a que da lugar la
conexin, ordenadas y con la
causalidad sealada
Ecuaciones producto de la
conexin, sin incluir las de
las variables mudas
connect
( )
gas
recipiente
V dummy dummy / ,
at
( ) dummy dummy V
recipiente
/ ,
[ ]
[ ]
[ ]

'

0 . .
. .
. .
dummy rec V gas
dummy rec dummy gas
V rec dummy gas
gas
recipiente
recipiente

Volumen del volumen de
control que contiene la mezcla
gaseosa:
recipiente
gas
recipiente
V V
connect
( )
liq
liq
recipiente
V dummy V / ,
at
( ) dummy dummy V
recipiente
/ ,
[ ]
[ ]
[ ]

'

dummy rec dummy liq


dummy rec V liq
V rec V liq
liq
recipiente
liq
recipiente
. .
0 . .
. .

Volumen del volumen de
control que contiene la mezcla
lquida:
recipiente
liq
recipiente
V V
connect
( )
gas
recipiente
V dummy dummy / ,
at
( )
liq
liq
recipiente
V dummy V / ,
at
( ) dummy dummy V
recipiente
/ ,
[ ]
[ ]
[ ]
[ ]
[ ]

'

0 .
. .
. .
. .
. .
. .
dummy rec
V liq V gas
dummy rec dummy liq
dummy liq dummy gas
V rec V liq
V rec dummy gas
liq
gas
recipiente
recipiente
liq
recipiente
recipiente

Volumen del volumen de
control que contiene la mezcla
gaseosa y volumen del
volumen de control que
contiene la mezcla lquida:

'

+
recipiente
liq
recipiente
recipiente
gas
recipiente liq
V V
V V V


132 EL VOLUMEN DE CONTROL

En las Figuras 4.3 y 4.4 se muestran las ecuaciones a que da lugar la conexin de los
cuts del tipo ligadura sobre el volumen de un lquido, un gas y un recipiente.

model class gas
terminal dummy { Variable muda } ->
volGasRec { Volumen del recipiente }
cut ligaduraV (dummy,dummy/volGasRec)
end

model class liquido
terminal dummy { Variable muda } ->
volLiqRec { Volumen del recipiente } ->
volLiq { Volumen del liquido }
cut ligaduraV (volLiqRec,dummy/volLiq)
volLiq = f(Time)
end

model class recipiente
terminal dummy { Variable muda } ->
volRec { Volumen del recipiente }
parameter volumenRec { Volumen del recipiente }
cut ligaduraV (volRec,dummy/-dummy)
volRec = volumenRec
end

model sistemaGasLiqRec
{ Conexin gas - liquido - recipiente }
submodel (gas) gas
submodel (liquido) liq
submodel (recipiente) rec
connect gas:ligaduraV at rec:ligaduraV
connect liq:ligaduraV at rec:ligaduraV
end

Figura 4.3 Ligadura sobre el volumen aplicada al sistema lquido - gas.

SORTED AND SOLVED EQUATIONS
rec. [volRec] = volumenRec
sistemaGasLiqRec.
[gas.dummy] = rec.volRec
Qw101 = f(Time)
liq. [liq.volLiq] = Qw101
sistemaGasLiqRec.
[rec.dummy] = gas.dummy
[gas.volGasRec] = rec.dummy - liq.volLiq
[liq.dummy] = gas.dummy
[liq.volLiqRec] = gas.dummy
END OF SORTED AND SOLVED EQUATIONS

Figura 4.4 Ecuaciones ordenadas y con la causalidad computacional sealada.
Puesto que se ha asumido que cuando se encuentran una mezcla lquida y una mezcla
gaseosa en un mismo recipiente estn en equilibrio mecnico, se puede ampliar la
definicin de los cuts de ligadura sobre el volumen de tal forma que la conexin del cut
del gas con el del lquido y con el del recipiente imponga que la presin del gas sea
idntica a la presin sobre la parte superior del lquido. Para ello basta con incluir una
tercera variable de tipo across en el cut de la forma siguiente.
( )
gas
recipiente gas
V p dummy dummy / , ,
Cut de la mezcla gaseosa.
LAS LIGADURAS SOBRE EL VOLUMEN 133

( )
liq ref top
liq
recipiente
V p dummy V / , ,
,

Cut de la mezcla lquida.
( ) dummy p dummy V
dummy recipiente
/ , ,
Cut del recipiente.

Reglas de conexin de los cuts del tipo ligadura sobre el volumen
Ninguno de los cuts del tipo ligadura sobre el volumen puede dejarse sin conectar, ya
que en los tres casos al menos una de las variables across se calcula de las ecuaciones de
la conexin. Las dos reglas de conexin para cuts del mismo nivel jerrquico son (ver
Tabla 4.1):
El cut de la clase que modela un volumen de control que contiene una mezcla
gaseosa y el cut de la clase que modela el volumen de control que contiene una
mezcla lquida deben conectarse una nica vez y debe ser con el cut de la clase que
modela el volumen del recipiente.
El cut de la clase que modela el volumen del recipiente debe conectarse o bien una
nica vez, al cut de la clase del gas o al cut de la clase del lquido, o bien dos veces,
una al cut de la clase del gas y una al cut de la clase del lquido.
ligadura-recip. ligadura-gas ligadura-liq.
ligadura-recip. NO
ligadura-gas SI NO
ligadura-liq. SI NO NO
Tabla 4.1 Regla de conexionado de los cuts bsicos de ligadura sobre el volumen del
mismo nivel jerrquico.
La regla de conexin para cuts de distinto nivel jerrquico es que el cut que forma parte
de la interfaz de la clase compuesta debe conectarse una nica vez con un nico cut del
mismo tipo de uno de los submodelos de la clase (ver Tabla 4.2).
ligadura-recip ligadura-gas ligadura-liq
ligadura-recip SI
ligadura-gas NO SI
ligadura-liq. NO NO SI
Tabla 4.2 Regla de conexionado de los cuts bsicos de ligadura sobre el volumen de
diferente nivel jerrquico.
134 EL VOLUMEN DE CONTROL

A fin de facilitar el cumplimiento de las reglas anteriores de conexin, se han definido
clases (ver Tabla 4.3), contenidas en la librera cutsB.lib, asignado atributos grficos
diferentes a cada tipo de cut de ligadura sobre el volumen (ver Tabla 4.4).
cuts ligadura-recip.
model class (CutBase) cutVolConstrVessel
cut ligadura-gas
model class (CutBase) cutVolConstrGas
cut ligadura-liq.
model class (CutBase) cutVolConstrLiq
Tabla 4.3 Clases en que se definen los atributos grficos de los cuts bsicos de ligadura sobre el volumen.
cutVolConstrVessel cutVolConstrGas cutVolConstrLiq



Tabla 4.4 Atributos grficos de los cuts bsicos de ligadura sobre el volumen.
Para evitar que la ligadura sobre el volumen d lugar al establecimiento de lazos
algebraicos se imponen las siguientes tres reglas adicionales:
Regla sobre el modelo del volumen del recipiente: el volumen del recipiente,
recipiente
V , se considera constante.
Regla sobre el modelo del volumen de control que contiene la mezcla gaseosa:
la presin del gas,
gas
p , debe ser o una variable de estado o una funcin del
tiempo y de variables de estado.
Regla sobre el modelo del volumen de control que contiene una mezcla lquida:
el volumen ocupado por el lquido,
liq
V , debe ser o una variable de estado o una
funcin del tiempo y de variables de estado.
4.8 MODELOS DE UNA MEZCLA HOMOGNEA DE GASES
SEMIPERFECTOS DE JARA v. 1.0
Las ecuaciones del modelo de un volumen de control conteniendo una mezcla ideal
homognea de gases semiperfectos son las siguientes:
Q F
dt
dU
H
+
Balance de energa.
n n
G F
dt
n d
+
Balance de materia.
MODELOS DE UNA MEZCLA HOMOGNEA DE GASES SEMIPERFECTOS DE JARA v. 1.0 135

gas
recipiente
V V
El volumen del gas es igual al volumen del
volumen de control que lo contiene.

comp
N
i
i
n RT pV
1 :

Ecuacin de estado de los gases semiperfectos.
( ) ( )


'

+

comp comp
ref
N
i
i
N
i
T
T
i p ref i i
n RT dT T C T h n
pV H U
1 : 1 :
* *
,



Energa interna total de la mezcla homognea
ideal de gases semiperfectos.

La energa interna de la mezcla, pese a aparecer derivada en el balance de energa, no
debe ser considerada variable de estado si se desea evaluarla de la expresin en que
aparece en funcin de la integral de la capacidad calorfica. Una forma de escoger la
temperatura como variable de estado, en lugar de la energa interna, es aadir al modelo
la ecuacin muda dummy
dt
dT
(ver Apartado 2.10) [Elmq95]. De esta forma el
lenguaje de modelado realiza de forma automtica, al reducir el ndice, las
manipulaciones simblicas. Sin embargo, este procedimiento tiene la desventaja de que
obliga a reducir el ndice del problema y a especificar que la temperatura debe ser
considerada variable de estado cada vez que se emplee esta clase, lo cual resulta tedioso.
Una alternativa consiste en reescribir las ecuaciones del modelo de modo que aparezca
derivada la temperatura en lugar de la energa interna. Para ello se aplica la frmula de
Leibniz [Rami89]:
( )
( )
( )
( ) ( )
( )
( )
( )

1
0
1
0

,
, , ,
0
0
1
1
u
u
u
u
dx
x f
d
du
u f
d
du
u f dx x f
d
d

Frmula de Leibniz.

Puesto que 0
dt
dT
ref
y dado que las capacidades calorficas,
i p
C
,

, no son funcin
explcita del tiempo, la derivada de la energa interna vale [Rami89]:
( ) ( )
( ) ( ) { }

'

'

+
comp comp
ref
comp
ref
N
i
i p i
N
i
T
T
i p ref i
i
N
i
T
T
i p ref i i
dt
dT
R C n RT dT T C T h
dt
dn
dt
dU
RT dT T C T h n U
1 :
,
1 :
* *
,
1 :
* *
,





Aplicacin de la
frmula de
Leibniz.

Sustituyendo la derivada de la energa interna por una variable algebraica, derivU , se
obtiene el modelo expresado de modo que sea la temperatura y no la energa interna la
variable de estado que escoge el lenguaje de modelado por defecto.
136 EL VOLUMEN DE CONTROL

La librera gas.lib contiene la clase semiPerfGasCv6B, que modela una mezcla
homognea de gases semiperfectos. Se supone que la capacidad calorfica a presin
constante de cada componente puede escribirse como un polinomio de la temperatura
de, a lo sumo, grado seis, ( )

6
0 :
, ,

k
k
k i i p
T c T C . La clase molecular semiPerfGasCp6VB
tambin se encuentra en la librera gas.lib. Consiste en la composicin de la clase
semiPerfGasCp6B y de la clase vesselGasB, de modo que modela un volumen de
control que contiene una mezcla homognea de gases semiperfectos.
Las ecuaciones del modelo de la mezcla homognea de gases semiperfectos son:
Q F derivU
H
+
Balance de energa.
n n
G F
dt
n d
+
Balance de materia.
gas
recipiente
V V
El volumen de la mezcla gaseosa es
igual al de su volumen de control.

comp
N
i
i
n RT pV
1 :

Ecuacin de estado de los gases
semiperfectos.
( ) ( )

,
_

'

+

comp
comp
N
i k
k
k i i
N
i k
k
ref
k
k i ref i
i
dt
dT
R T c n
RT T T c
k
T h
dt
dn
derivU
1 :
6
0 :
,
1 :
7
1 :
1 ,


Derivada respecto al tiempo de la
ecuacin que relaciona la variacin
en la energa interna de la mezcla
con la variacin en su temperatura.

4.9 MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE
JARA v. 1.0
Eleccin de los planos de control
En un volumen de control que contiene una mezcla homognea de gases la presin en
todos los planos de control es la misma y, por tanto, todos ellos son equivalentes desde
el punto de vista del flujo de materia. Por el contrario, en un volumen de control
macroscpico que contiene una mezcla homognea de lquidos se modela la variacin
de la presin con la posicin espacial en el volumen de la mezcla. En consecuencia, la
presin en un plano de control depende de su posicin.
El modelo ms simple, y a la vez ms general, se obtiene considerando que el volumen
de control intercambia masa con el entorno a travs de dos planos de control: uno
situado en la base del volumen de control (punto donde la presin es mayor) y otro
MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 137

situado en la parte superior del volumen de control (punto donde la presin es menor).
A travs de cada uno de los planos de control puede fluir un nmero arbitrario de flujos.
Para entender por qu esta eleccin de los planos de control no supone ninguna
limitacin prctica, considrese un tanque del que parten varias conducciones a
diferentes alturas. El tanque puede modelarse mediante la conexin en serie de un
determinado nmero de tanques de tal forma que la presin en la parte superior de uno
sea igual a la existente en la parte inferior del siguiente y que las conducciones se
encuentren o bien en la parte superior o en la base de los tanques (ver Figura 4.5). Como
se ver ms adelante, se ha definido una clase que modela la condicin de igualdad de
presiones entre dos puntos, estableciendo el flujo de materia necesario para ello en cada
instante.













Figura 4.5 Modelado de un tanque del que parten conducciones a diferentes alturas.
La ligadura sobre el volumen
El volumen de la mezcla lquida contenida en el volumen de control no puede superar el
volumen de ste. Si en el volumen de control confluye cierto nmero de flujos de
lquido, cuando aquel se encuentre lleno la presin del lquido deber ser la menor que
satisfaga que el flujo volumtrico total sea no positivo. A continuacin se estudia cmo
concretar esta ligadura en el cdigo del modelo.
La presin en la base del lquido,
bot
p , cuando el volumen del lquido no ha alcanzado
su valor mximo, es funcin de la presin en la parte superior del lquido,
top
p , de la
geometra del volumen de control (independiente del tiempo) y de la masa de la mezcla
lquida.
( )
top bot
p m f p ,
Dependencia funcional de la presin en la base del
lquido.

El modelo del lquido almacenado depende de si est activa o no la ligadura sobre su
volumen. Cuando el volumen del lquido es igual al del volumen de control, la presin
en la base del lquido es la suma de la presin debida a la masa del lquido ms la
4
F
1
F
5
F
3
F
2
F
4
p
4
F
5
F
3
F
2
F
1
F
1
p
5
p
3
p
2
p
1
p
2
p
3
p
3
p
4
p
4
p
5
p
138 EL VOLUMEN DE CONTROL

presin que ejercen las paredes del volumen de control sobre el lquido a fin de que el
volumen de ste no supere al de aquel, es decir, la presin (positiva) mnima necesaria
para que la variacin en volumen del lquido almacenado no sea positiva.
Para realizar una primera formulacin del modelo en sus dos estados se supone, por
simplicidad, que la composicin del lquido es constante y que la presin en su parte
superior,
top
p , es nula. m representa la masa total de la mezcla lquida, su densidad
(constante, por serlo la composicin) y V su volumen. El volumen mximo del lquido
es igual al volumen de su volumen de control,
liq
recipiente
V . Se considera que el volumen de
control intercambia un flujo de masa
m
F con el exterior, cuyo valor es una funcin
algebraica de la presin en la base del lquido, ( ) p f F
m
. Esta relacin vendr dada en
una clase que modele las propiedades de este flujo.
No est activa la ligadura sobre
el volumen
Est activa la ligadura sobre el
volumen

m
V

m
V
Relacin entre la masa y el
volumen del lquido.
m
F
dt
dm

m
F
dt
dm

Balance de masa.
S
mg
p
bot

liq
recipiente
V
m


Expresin para la presin o
ligadura sobre el volumen.

Cuando no est activa la ligadura sobre el volumen, el sistema tiene un grado de
libertad, mientras que cuando est activa no tiene ninguno, ya que la masa del lquido en
este ltimo caso, pese a aparecer derivada, no se calcula por integracin de su derivada
sino de la ecuacin de la ligadura para el volumen. Reduciendo el ndice del modelo
cuando est activa la ligadura sobre el volumen se obtiene:
No est activa la ligadura sobre el volumen Est activa la ligadura sobre el volumen
estado de variable es m [ ]
liq
recipiente
V
m


[ ]

m
V [ ]

m
V
[ ]
S
mg
p
bot
0
1

1
]
1

dt
dm


[ ] ( )
bot
m
p f F
[ ]
m
F
dt
dm

MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 139

m
F
dt
dm

1
]
1


[ ] ( )
bot
m
p f F
Obsrvense las siguientes dos dificultades: el modelo del volumen de control que
contiene la mezcla lquida es de ndice variable y adems, tambin es variable la
asignacin de la causalidad computacional de las variables de su interfaz:
Cuando no est activa la ligadura sobre el volumen del lquido, el sistema tiene
ndice cero. La presin en la base del lquido se calcula de las ecuaciones de la
clase que modela del volumen de control y el flujo de masa de la ecuacin de la
clase que modela el flujo.
Cuando est activa la ligadura sobre el volumen del lquido, el sistema tiene
ndice dos. La presin en la base del lquido se calcula de la ecuacin de la clase
que modela el flujo y el flujo de masa de la clase del volumen de control que
contiene el lquido.
Dymola no trabaja directamente con modelos de ndice variable, debiendo stos ser
previamente manipulados, introduciendo variables y ecuaciones mudas, de tal forma
que el sistema tenga en todos los casos el mismo nmero de incgnitas, ecuaciones e
ndice y adems, debe cumplirse que en todos los casos sea preciso derivar el mismo
nmero de ecuaciones para reducir el ndice. En el Anexo B se propone un algoritmo
original para realizar la descripcin matemtica de modelos de estructura variable. A
continuacin se aplica el algoritmo del Anexo B para obtener una formulacin, vlida
para sus dos estados, del siguiente modelo de ndice variable (que esencialmente es el
mismo que el modelo anterior del volumen de control).
Ecuaciones del primer estado. ndice uno Ecuaciones del segundo estado. ndice dos
( )
( ) 0
,
1

y g
y x f
dt
dx

( )
( ) 0
,
2

x h
y x f
dt
dx


Se aaden dos variables mudas , y dos ecuaciones al modelo en cada estado:
Ecuaciones del primer estado. ndice dos Ecuaciones del segundo estado. ndice dos
( )
( )
(*)
0
,
1
x
dt
d
y g
y x f
dt
dx


( )
( ) ( )

dt
dx
dt
d
x h
y x f
dt
dx
* 0
,
2

140 EL VOLUMEN DE CONTROL

Se han sealado con un asterisco las ecuaciones que deben ser derivadas para reducir el
ndice. El modelo del sistema completo, supuesto que la variable lgica
1
L vale uno
cuando el sistema se encuentra en el primer estado y cero cuando est en el segundo
estado, es:
( ) ( ) ( )
( ) ( ) ( )
( ) ( )
( )
( )
dt
dx
dx
x dh
dt
dx
dt
d
dt
dx
y g
x h x
dt
d
y x f y x f
dt
dx
1 1
1 1
1 1
2 1 1 1
L 1 L 0
L 1 L 0
L 1 L 0
, L 1 , L
+

,
_

,
_

+
+


Si se escoge como variable de estado y x como variable desconocida, se obtiene un
sistema de cinco ecuaciones con cinco incgnitas: x , derx , y , der y . El resultado
anterior es aplicable al modelo con dos estados ("lleno" y "no lleno") del volumen de
control que contiene una mezcla lquida. Se introducen las variables mudas y de
la forma siguiente:
No est activa la ligadura sobre
el volumen
Est activa la ligadura sobre el
volumen

m
V

m
V
Relacin entre la masa y el
volumen del lquido.
m
F
dt
dm

m
F
dt
dm

Balance de masa.
S
mg
p
bot

liq
recipiente
V
m


Expresin para la presin o
ligadura sobre el volumen.
( )
bot
m
p f F ( )
bot
m
p f F
El flujo de masa depende de la
presin en la base del lquido.

dt
d

dt
d

Ecuacin muda. La variable muda
ser la variable de estado en
ambos estados.
m

dt
dm

Ecuacin muda. En el primer
caso fuerza que el problema sea
de ndice superior. En el segundo
relaciona las derivadas.

MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 141

El modelo anterior tiene en ambos estados ndice dos. Reducido el ndice en cada caso,
las ecuaciones ordenadas con la causalidad sealada son:
No est activa la ligadura sobre el volumen Est activa la ligadura sobre el volumen
estado de variable es estado de variable es
[ ] m [ ]
liq
recipiente
V
m


[ ]

m
V [ ]

m
V
[ ]
S
mg
p
bot
0
1

1
]
1

dt
dm


[ ] ( )
bot
m
p f F
[ ]
m
F
dt
dm

m
F
dt
dm

1
]
1


[ ] ( )
bot
m
p f F
1
]
1

dt
d
dt
dm
[ ]
dt
dm

[ ]

dt
d

1
]
1

dt
d


La variable lgica isFull determina cundo est activa la ligadura sobre el volumen
( True isFull ) y cundo no ( False isFull ). Reduciendo el ndice del modelo en cada
estado, se obtiene la siguiente formacin del modelo vlida para sus dos estados:
estado de variable es
[ ]
[ ]

m V
m
isFull
recipiente
else then if 0
liq

[ ]

m
V
S
mg
p derm isFull
bot
else then if 0
( )
bot
m
p f F
m
F derm
der
142 EL VOLUMEN DE CONTROL

else
1
then if 0

der derm derm isFull


Del lazo algebraico deben evaluarse las variables derm p F
bot
m
, , , y der . Las
ecuaciones anteriores, considerando que isFull vale uno cuando es True y cero cuando
es False, pueden reescribirse transformando las sentencias if-then-else. As, por
ejemplo, la masa es funcin explcita de la variable de estado y el volumen es
funcin explcita de la masa.
[ ]
( )
( ) isFull isFull
isFull isFull V
m
liq
recipiente
+
+

1
1

1


[ ]

m
V
Teniendo en cuenta que ( )
bot
m
p f derm F y que der , las ecuaciones:
( ) ( )

,
_

+
S
mg
p isFull derm isFull
bot
1 0
( ) ( )

der derm -isFull derm isFull +

,
_

1
1
0
pueden reescribirse de la forma siguiente:
( ) ( ) ( )

,
_

+
S
mg
p isFull p f isFull
bot bot
1 0
( ) ( ) ( )

,
_

bot
p f -isFull derm isFull 1
1
0
de donde:
( )
bot
p f
( ) ( )

,
_

,
_

S
mg
p -isFull p f isFull
bot bot
1
1
0


con lo cual, la presin se calcula de esta ltima expresin:
( )

'



0 si
1 si 0
isFull
S
mg
p
isFull p f
bot
bot

y, en consecuencia:
MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 143

'

,
_


0 si
1 si 0
isFull
S
mg
f
isFull
derm F der
m

Como se ha visto, manipulando las ecuaciones se ha conseguido expresar el modelo de
ndice variable de forma aceptable por el lenguaje de modelado. Sin embargo, el ndice
del sistema cuando est activa la ligadura sobre el volumen del lquido depende no slo
de las ecuaciones de la clase que describe el volumen de control, sino tambin de las
ecuaciones de la clase que describe el flujo de masa.
Para ilustrar esto supngase que el flujo de materia, en lugar de ser una funcin
algebraica de la presin en la base del lquido, como se ha supuesto hasta ahora, es una
funcin del momento lineal del lquido, cuya derivada depende, en virtud de la ley de
Newton, de la presin en la base del lquido. Las ecuaciones de la clase que modela el
flujo de materia son:
( ) momento f F
m
1

El flujo de materia es funcin explcita del
momento lineal de la materia en movimiento.
( )
( )
bot
p f
dt
momento d
2

Balance dinmico de momento lineal.

En este caso, las ecuaciones del sistema, dependiendo de si est activa o no la ligadura
sobre el volumen del lquido, pueden escribirse:
No est activa la ligadura sobre
el volumen
Est activa la ligadura sobre el
volumen

m
V

m
V
Relacin entre la masa y el
volumen del lquido.
m
F
dt
dm

m
F
dt
dm

Balance de masa.
S
mg
p
bot

liq
recipiente
V
m


Expresin para la presin o
ligadura sobre el volumen.
( ) momento f F
m
1
( ) momento f F
m
1

El flujo de materia es funcin
explcita del momento lineal de la
materia en movimiento.
( )
( )
bot
p f
dt
momento d
2

( )
( )
bot
p f
dt
momento d
2

Balance de momento lineal.

144 EL VOLUMEN DE CONTROL

Cuando no est activa la ligadura sobre el volumen el sistema tiene dos grados de
libertad y cuando s lo est, ninguno. Reduciendo el ndice del problema de tres a cero
en el caso en que la ligadura sobre el volumen est activa, las ecuaciones ordenadas y
con la causalidad sealada son:
No est activa la ligadura sobre el volumen Est activa la ligadura sobre el volumen
estado de variable es m [ ]
liq
recipiente
V
m


estado de variable es momento
0
1

1
]
1

dt
dm


[ ]

m
V [ ]

m
V
[ ]
S
mg
p
bot
[ ]
m
F
dt
dm

[ ] ( ) momento f F
m
1

[ ] ( )
1
momento f F
m

m
F
dt
dm

1
]
1


0
1
2
2

1
]
1

dt
m d


( )
( )
bot
p f
dt
momento d
2

1
]
1


1
]
1

dt
dF
dt
m d
m
2
2


( )
( )
( )
1
]
1

dt
momento d
momento d
momento df
dt
dF
m
1


( )
[ ] ( )
2 bot
p f
dt
momento d


Es desaconsejable emplear esta formulacin, ya que al variar el estado (al activarse o
desactivarse la ligadura sobre su volumen) vara la causalidad de las variables de la
interfaz y el ndice, siendo adems la variacin de ndice dependiente del modelo del
flujo. A continuacin se considera una aproximacin diferente al problema.
Cuando el volumen de control se encuentra lleno, sus paredes ejercen una presin sobre
el lquido que se supone (arbitrariamente) proporcional a la disminucin que produce en
el volumen del lquido. Si bien se ha asumido como hiptesis de modelado que los
lquidos son incompresibles, se define, nicamente porque resulta conveniente desde el
punto de vista computacional, un coeficiente ficticio,
num
, al que se asigna valor
MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 145

arbitrariamente y cuyo significado fsico es anlogo al del coeficiente de
compresibilidad dependiente nicamente de la presin (no de la temperatura):
V
V
p
dp
dV
V
num

1 1

El coeficiente ficticio,
num
, se define en analoga
con el coeficiente de compresibilidad .
La presin en la parte superior del lquido es igual a una presin de referencia (la del
gas situado sobre l) cuando no est activa la ligadura. Cuando est activa la ligadura es
igual a la presin que ejerce el volumen de control a fin de imponer la ligadura sobre el
volumen. Las ecuaciones del nuevo modelo del lquido son:
No est activa la ligadura sobre
el volumen
Est activa la ligadura sobre el
volumen

estado de variable es m estado de variable es m

m
V
liq
recipiente
V V
Relacin entre la masa y el
volumen del lquido.
m
F
dt
dm

m
F
dt
dm

Balance de masa.
top bot
p
S
mg
p +
top bot
p
S
mg
p +
Presin en la base del lquido.
topRef
p p
top

,
_

1
1
liq
recipiente num
top
V
m
p


Presin en la parte superior del
lquido.

La masa es una variable de estado en ambos casos y la presin en la base funcin
explcita de la masa. El modelo as formulado tiene ndice cero est o no activa la
ligadura sobre el volumen del lquido. El coste que hay que pagar por ello es de tipo
computacional, ya que al ser el coeficiente
num
muy pequeo, el sistema resultante es
stiff. Para demostrarlo supngase, por simplicidad, que el flujo de masa entrante al
volumen de control,
m
F , es proporcional a la presin en la base del mismo,
bot
p , de la
forma ( )
bot
m
p p F F
0 0
.
0
F y
0
p son independientes del tiempo. Sustituyendo en el
balance de materia el flujo de lquido por su valor en funcin de la presin y sta por el
suyo en funcin de la masa, se obtiene:
146 EL VOLUMEN DE CONTROL

No est activa la ligadura sobre el
volumen
Est activa la ligadura sobre el volumen
( )
topRef 0 0
0
p p F m
S
g F
dt
dm
+

,
_

+ +

,
_

+
num num
liq
recipiente
p F m
V S
g
F
dt
dm

1 1
0 0 0


El autovalor vale, respectivamente:
No est activa la ligadura sobre el
volumen
Est activa la ligadura sobre el volumen
S
g F
0

,
_

num
liq
recipiente
V S
g
F
1
0


En general, el autovalor es mucho mayor en el caso en que est activa la ligadura sobre
el volumen, ya que
num
toma valores tpicamente entre
6
10

y
10
10

. El valor adecuado
para el parmetro
num
depende de cada caso y debe escogerse el mayor valor posible
que sea aceptable de acuerdo con la precisin numrica deseada. A fin de determinar
este valor, debe compararse, para el problema en concreto, el valor que toma el volumen
"acotado" del lquido cuando el recipiente est lleno,
liq
recipiente
V V , con el valor "no
acotado" calculado a partir de la masa del lquido,

m
V
unb
. En el caso ideal, ambos
volmenes deben ser iguales al del volumen de control,
liq
recipiente
V . La diferencia V V
unb

debe encontrarse lo ms prxima posible al mayor error aceptable.
A fin de evitar problemas numricos, se incluye una ecuacin muda en la clase que
modela el volumen de control que contiene la mezcla lquida cuya misin es forzar que
el tamao del paso de integracin se mantenga pequeo y no surjan problemas cuando
se active la ligadura y la presin en el fondo del lquido pase a variar rdenes de
magnitud ms rpido. La ecuacin se activa y desactiva en las proximidades del evento
de cambio de estado. La ecuacin es del tipo:
( )

,
_

num
t
sin dummyVar
dt
d


Ecuacin muda cuya finalidad es obligar al
algoritmo numrico a mantener pequeo el tamao
del paso de integracin.

Presin en la parte superior del lquido
Respecto al clculo de la presin en la parte superior de la mezcla lquida,
top
p , pueden
darse, como se ha expuesto anteriormente, dos situaciones:
MODELOS DE UNA MEZCLA LQUIDA HOMOGNEA DE JARA v. 1.0 147

1. Si el volumen de control se encuentra lleno, la presin en la parte superior del
lquido es igual a la presin que ejercen las paredes del volumen de control para
imponer que el flujo total en volumen sea cero y, por tanto, el volumen del lquido
no supere el volumen del volumen de control.
top
p se calcula de una ecuacin
contenida en la clase que modela el volumen de control que contiene el lquido.
2. Si el volumen de control no se encuentra lleno de lquido, pueden darse dos
situaciones:
2.1. Si se modela la mezcla gaseosa que se encuentra sobre el lquido, la presin
en la parte superior del lquido es igual a la presin del gas. La presin del
gas se calcula de la ecuacin de estado del gas y
top
p a partir de sta, de las
ecuaciones de conexin de los cuts de ligadura sobre el volumen.
2.2. Si no se modela el gas que se encuentra sobre el lquido, en equilibrio
mecnico con l, la presin en la parte superior del lquido,
top
p
, se considera
igual a una constante de referencia.
top
p se calcula o bien igualndola a un parmetro o bien de funciones que dependen
exclusivamente de variables de estado y del tiempo. Cuando el volumen de control se
encuentra lleno, la presin es funcin de la masa de los componentes de la mezcla
lquida (variables de estado). Cuando el lquido se encuentra en equilibrio mecnico con
una mezcla gaseosa cuyas propiedades se modelan, la regla acerca de la causalidad de la
variable presin del cut de ligadura sobre el volumen de una clase que modela un
volumen de control que contiene un gas, impone que la presin del gas debe ser o una
variable de estado o funcin del tiempo y de variables de estado.
Ecuaciones del modelo del volumen de control
En general, la capacidad calorfica de cada componente de la mezcla lquida es funcin
de la temperatura. Al igual que en el caso del modelo para la mezcla gaseosa, resulta
conveniente escoger la temperatura y no la entalpa total como variable de estado. En
aras de una mayor comodidad a la hora de usar los modelos, se reformulan las
ecuaciones en lugar de poner los medios para que sea el lenguaje de modelado quien
realice las manipulaciones (ver Apartado 2.10). Se modifica el balance de energa:
Q F F
dt
dH
bot
H
top
H
+ + Q F F derivH
bot
H
top
H
+ +
y se sustituye la ecuacin para la entalpa por su derivada (aplicando la frmula de
Leibniz [Rami89]):
( ) ( )

'

+
comp
ref
N
i
T
T
i p ref i i
dT T C T h m H
1 :
* *
.

( ) ( )


+

'

+
comp comp
ref
N
i
i p i
N
i
T
T
i p ref i
i
dt
dT
C m dT T C T h
dt
dm
derivH
1 :
.
1 :
* *
.

148 EL VOLUMEN DE CONTROL

Las clases que modelan un volumen de control que contiene una mezcla lquida ideal
homognea se encuentran en la librera liq.lib. Estas son:
Clase liquidCp6B. Modela un volumen de control que contiene una mezcla lquida
homognea ideal. Se supone que la capacidad calorfica por unidad de masa de cada
uno de los componentes de la mezcla lquida puede expresarse como un polinomio
de la temperatura de grado, a lo sumo, seis, ( )

6
0 :
, ,
k
k
k i i p
T c T C . No contiene ninguna
condicin sobre la presin en la parte superior del lquido,
topRef
p .
Clase liquidCp6PrefB. Es una subclase de liquidCp6B. Se impone que la presin
sobre la superficie del lquido,
topRef
p , sea constante.
Clase liquidCp6PrefVB. Consiste en la composicin de la clase liquidCp6PrefB y de
la clase vesselLiqB. Modela una mezcla lquida contenida en un volumen de control
en equilibrio mecnico con un gas cuyas propiedades no se modelan.
Para modelar una mezcla lquida en equilibrio mecnico con una mezcla gaseosa cuyas
propiedades s se modelan debe usarse la clase liquidCp6B. Sus ecuaciones son:
Q F F derivH
bot
H
top
H
+ +
Balance de energa.
m
bot
m
top
m
G F F
dt
m d
+ +
Balance de materia de cada uno de los
componentes de la mezcla.
( ) ( )


+

'

+

comp
comp
N
i k
k
k i i
N
i k
k
ref
k k i
ref i
i
dt
dT
T c m
T T
k
c
T h
dt
dm
derivH
1 :
6
0 :
,
1 :
7
1 :
1 ,


Variacin en la entalpa total de la
mezcla en funcin de la variacin en la
temperatura y en la masa de los
componentes.

comp
N
i
puro
i
i
unb
m
V
1 :


Volumen de la mezcla ideal no sometida
a la ligadura sobre el volumen.
( )
unb
liq
recipiente
V V min V ,
Volumen del lquido satisfaciendo la
ligadura sobre el volumen.
( )
top bot
p g
S
sin
m p +


Presin en la parte inferior del lquido.
representa el ngulo formado con la
horizontal.

'

>

,
_

vessel unb
vessel unb liq
recipiente
unb
num top
V V p
V V
V
V
p
si
si 1
1
topRef

Presin en la parte superior del lquido.

MODELOS DE UN SLIDO HOMOGNEO DE JARA v. 1.0 149

4.10 MODELOS DE UN SLIDO HOMOGNEO DE JARA v. 1.0
La nica caracterstica modelada de los slidos es su capacidad de almacenar, mediante
la variacin de su temperatura, energa proveniente del flujo de calor por conduccin o
por conveccin. La masa y la composicin del slido se consideran constantes. De la
expresin de la entalpa total del slido en funcin de la temperatura, puede obtenerse la
derivada de la entalpa respecto del tiempo aplicando la frmula de Leibniz [Rami89]:
( ) ( )

'

T
T
p ref
ref
dT T C T h m H
* *
( )
dt
dT
T mC
dt
dH
p

En la expresin anterior se ha indicado de forma explcita que, en general, la capacidad
calorfica del slido es funcin de su temperatura. Sustituyendo la derivada de la
entalpa por su valor en funcin de la derivada de la temperatura, el balance de energa
puede escribirse de la forma siguiente:
( ) Q
dt
dT
T mC
p

Balance dinmico de energa del slido.

Si la dinmica de enfriamiento y calentamiento del slido es lo suficientemente rpida
comparada con las dinmicas de inters, puede considerarse que el slido, ante cambios
en las condiciones trmicas del entorno, alcanza instantneamente la temperatura de
equilibrio. En este caso, el balance de energa del slido debe escribirse en el estado
estacionario: la temperatura del slido es aquella que satisface que el flujo de calor
entrante al slido es igual al saliente en todo momento.
Q 0
Balance de energa del slido en el estado estacionario.

Sin embargo, esta forma de plantear el balance de energa del slido da lugar al
establecimiento de lazos algebraicos cuando el flujo de calor se modela mediante una
resistencia trmica. La ecuacin constitutiva de la resistencia trmica es una expresin
algebraica que relaciona la diferencia de temperaturas con el flujo de calor. Este tipo de
expresiones surgen, por ejemplo, de la ley de enfriamiento de Newton, de la forma
discreta de la ley de Fourier, etc. (ver Captulo 5). Los lazos algebraicos son no lineales
si lo es la ecuacin constitutiva de la resistencia trmica. Puesto que la dimensin del
lazo algebraico aumenta con el nmero de volmenes de control conectados mediante
resistencias trmicas, sta no es una forma adecuada de abordar el problema.
Considerar "instantnea" la dinmica de calentamiento y enfriamiento del slido crea
dificultades numricas: desde el punto de vista computacional interesa que la
temperatura del slido sea un estado para evitar la aparicin de lazos algebraicos. Por
otra parte, si la simulacin de estas dinmicas carece de inters prctico, tampoco tiene
sentido realizar el estudio que conduce a su modelado. Una solucin consiste en
establecer estas dinmicas de forma arbitraria, satisfacindose que, por una parte, sean
lo suficientemente rpidas como para ser despreciables pero, por otra, que no sean ms
150 EL VOLUMEN DE CONTROL

rpidas de lo estrictamente necesario, a fin de no hacer el sistema innecesariamente stiff.
La forma de aplicar esta estrategia consiste en suponer que el slido posee una
capacidad calorfica muy pequea:
Q
dt
dT

Balance de energa del slido. es un real positivo pequeo.

Las clases que modelan los volmenes de control conteniendo slidos estn contenidas
en la librera heat.lib. Estas son:
La clase solidCB contiene el balance de energa dinmico. Debe ser completada con
una ecuacin que defina la capacidad calorfica del slido.
La clase solidC6B es una subclase de solidCB. La capacidad calorfica del slido es
un polinomio de la temperatura de grado a lo sumo seis.
La clase solidB asume que la forma de la dinmica de enfriamiento y calentamiento
del slido carece de inters y por ello se establece de forma arbitraria mediante la
asignacin de cierto valor al parmetro (que el programador debe escoger para
cada problema en concreto).
4.11 CONCLUSIONES
En este captulo se han expuesto las aproximaciones realizadas en la versin 1.0 de
JARA para el modelado del volumen de control y se ha establecido el contexto en el
cual pueden emplearse las clases.
Se han planteado las ligaduras sobre el volumen, se ha discutido la estructura de los cuts
de ligadura sobre el volumen y se han descrito sus atributos grficos y sus reglas de
conexin. Con ello se ha completado la descripcin de las interfaces de las clases.
Se han expuesto algunos de los fundamentos tericos empleados en el modelado de los
volmenes de control y finalmente se ha discutido la descripcin interna de las clases
que modelan los volmenes de control en la versin 1.0 de JARA.

151

Captulo 5
TRANSFERENCIA DE CALOR
5.1 INTRODUCCIN
En la versin 1.0 de JARA slo se considera el modelado de la transferencia de calor
por conduccin y por conveccin, no se modela la transferencia por radiacin. Se ha
realizado el modelado de la transferencia de calor por conveccin entre un fluido y una
superficie slida (Apartado 5.2) y la transferencia de calor por conduccin a travs de
slidos (Apartado 5.3), por tener estos dos fenmenos especial inters en el mbito del
modelado orientado al control de procesos qumicos [Incr96]. Tambin se han
modelado en JARA v. 1.0 las condiciones de contorno para el flujo de calor (Apartado
5.4): la fuente de flujo de calor y la fuente de temperatura. Finalmente, se discuten dos
ejemplos de aplicacin (Apartados 5.5 y 5.6) y se exponen las conclusiones (Apartado
5.7).
5.2 FLUJO DE CALOR POR CONVECCIN EN UN FLUIDO EN
CONTACTO CON UN SLIDO
Una forma bastante usual de representar la transferencia de calor por conveccin es
mediante la ley de enfriamiento de Newton (ver Figura 5.1). En realidad no se trata de
una ley, sino de la ecuacin de definicin del coeficiente de transmisin de calor, h
(
1 2
K Wm ) [Bird75].
El coeficiente de transmisin de calor, h , es, en general, una funcin de las condiciones
del flujo, del fluido y de la temperatura [Bird75]. Hay procesos de conveccin en que
adems hay un intercambio de calor latente, asociado a un cambio de fase entre los
estados vapor y lquido del fluido, que se produce en el fluido en contacto con el slido.
Dos casos de especial inters son la ebullicin y la condensacin. En la Tabla 5.1 se
muestran los valores tpicos del coeficiente de calor por conveccin [Incr96].
Existen correlaciones experimentales del coeficiente de transmisin de calor para
diferentes condiciones de proceso (ver, por ejemplo, [Goul69]). En general, en estas
correlaciones experimentales el coeficiente de transmisin de calor es directamente
proporcional al flujo de masa e inversamente proporcional a la viscosidad, siendo
generalmente despreciable su dependencia con la temperatura (pese a que la viscosidad
depende fuertemente de la temperatura) [Goul69].
152 TRANSFERENCIA DE CALOR







( )

T T Q
s x
hS
















Figura 5.1 Ley de enfriamiento de Newton [Incr96].
Proceso
h (
1 2
K Wm )
Conveccin libre
Gases
Lquidos

2-25
50-1000
Conveccin forzada
Gases
Lquidos

25-250
50-20000
Conveccin va cambio de fase
Ebullicin y condensacin

2500-100000
Tabla 5.1 Valores tpicos del coeficiente de transferencia de calor por conveccin [Incr96]
Modelos de la resistencia trmica en JARA v. 1.0
La ley de enfriamiento de Newton puede escribirse estableciendo una analoga con la
ecuacin constitutiva de una resistencia elctrica (ver Figura 5.2). Como se ver, el
modelo de la resistencia trmica no slo es aplicable al flujo por conveccin, sino
tambin al flujo por conduccin a travs de interfaces entre slidos y al flujo por
conduccin en el seno de un slido.



( )
th
B A
B A
R
T T
Q











Figura 5.2 Relacin constitutiva de la resistencia trmica.
En el caso particular del flujo por conveccin entre una superficie slida y un fluido,
B A
T T representa la diferencia de temperatura entre el slido y el lquido,
th
R es la
resistencia trmica ( K W
1
) y Q el flujo de calor (W ). La relacin constitutiva de la
Volumen de
control A
Volumen de
control B
hS
x
Q
th
R
B A
Q

A
T
B
T
FLUJO DE CALOR POR CONVECCIN EN UN FLUIDO EN CONTACTO CON UN SLIDO 153

resistencia trmica debe tambin reflejar el hecho de que para que exista flujo de calor
por conduccin o conveccin entre dos volmenes de control la masa de ambos debe ser
mayor que cero. El parmetro toma un valor muy pequeo (tpicamente 1.E-10) y su
finalidad es evitar que pueda producirse divisin entre cero.

'

> >
+

contrario caso en 0
0 y 0 si
B A
th
B A
B A
m m
R
T T
Q
Relacin constitutiva de la
resistencia trmica.

Las clases resistThermB y resistThermFB, contenidas en la librera heat.lib, modelan la
relacin constitutiva de la resistencia trmica y deben ser completadas con una ecuacin
de la cual evaluar la resistencia trmica:
En la clase resistThermB, subclase de la interfaz heatFlow2I, se asume que el valor
de la resistencia trmica es funcin de la temperatura y de la masa en los volmenes
de control entre los que se produce el flujo de calor. Cuando la masa en uno de ellos
es cero, el flujo de calor tambin debe serlo. En ocasiones, la superficie de
transferencia de calor entre los volmenes de control depende de la masa contenida
en stos. Por ejemplo, la superficie de contacto entre una mezcla lquida y el
recipiente que la contiene depende de la cantidad de lquido. Esta clase puede
resultar til para modelar el flujo de calor por conduccin.
En la clase resistThermFB, subclase de heatFlowF2I, se supone que el valor de la
resistencia trmica es funcin de la temperatura en los volmenes de control entre
los que se produce el flujo de calor, de la masa contenida en uno de ellos y del flujo
de materia en el otro. La finalidad de esta clase es modelar la transferencia de calor
con conveccin, por ejemplo, entre una superficie slida y un fluido.
En la librera heat.lib se han incluido las siguientes subclases de resistThermB y
resistThermFB que modelan determinados casos particulares [Incr96] [Cutl99]:
Clase RthConstB
constante R
th

Subclase de resistThermB
Clase RthExpTB
constantes ,
1 , 0 ,
2
0 ,
1 ,
th th
T T
R
th th
R R
e R R
B A
th
+
+

Subclase de resistThermB
Clase RthAbsTB
constantes , ,
2 , 1 , 0 ,
1 ,
0 ,
2 ,
th th th
R
B A
th
th th
R R R
T T
R
R R
th

,
_


Subclase de resistThermB
Clase convecSiederTateB Ver Apartado 6.6 Subclase de resistThermFB

154 TRANSFERENCIA DE CALOR

5.3 FLUJO DE CALOR POR CONDUCCIN EN SLIDOS
Introduccin
El modelado de la porcin de un slido contenida en un volumen de control se realiza
asumiendo que su temperatura es uniforme, es decir, representa un valor promedio.
Cuando esta aproximacin no sea admisible en todo el medio, puede definirse un
nmero de volmenes de control suficiente para describir la variacin punto a punto de
la temperatura. Este punto se tratar ms adelante al discutir el mtodo del balance de
energa.
Al plantear el balance de energa en el volumen de control que contiene el slido se han
contemplado dos niveles diferentes de aproximacin: puede considerarse que el slido
contenido en el volumen de control alcanza de forma instantnea la temperatura de
equilibrio con su entorno (aquella en que en cada instante el flujo de calor entrante es
igual al saliente) o bien puede modelarse la dinmica de enfriamiento y calentamiento
del slido mediante el balance dinmico de energa.
Es, por tanto, preciso discutir en qu circunstancias:
1. Puede considerarse que la dinmica de enfriamiento o calentamiento de un
slido es lo suficientemente rpida, comparada con el resto de dinmicas del
sistema, como para que pueda despreciarse y, por tanto, se suponga que la
temperatura en el slido se encuentra en todo momento en estado estacionario.
2. Puede considerarse que la temperatura de un slido es uniforme, y por tanto
puede ser modelada mediante un nico volumen de control, y en cules no
puede suponerse esto, con lo cual debe considerarse su temperatura dependiente
de las coordenadas espaciales y, en consecuencia, debe modelarse mediante ms
de un volumen de control.
Antes de discutir estos dos puntos es preciso establecer el uso que se va a hacer de la ley
de Fourier de conduccin del calor. Asimismo, se enuncia la ecuacin del flujo de calor
a travs de una interfaz entre dos slidos distintos, que ser til a la hora de calcular el
flujo de calor a travs de paredes compuestas.
La ley de Fourier
La ley de Fourier de la conduccin del calor establece que el flujo de calor por
conduccin, por unidad de superficie perpendicular al flujo, es proporcional al gradiente
de temperatura. La constante de proporcionalidad, (
1 1
K Wm ), es la conductividad
calorfica del material. Las conductividades calorficas de los slidos han de
determinarse experimentalmente ya que dependen de numerosos factores que son
difciles de medir o predecir [Bird75].
T q
Ley de Fourier de la conduccin del calor.

FLUJO DE CALOR POR CONDUCCIN EN SLIDOS 155

Conduccin de calor a travs de interfaces entre slidos
En los sistemas compuestos la cada de temperatura a travs de la interfaz entre los
materiales puede ser apreciable, debido principalmente a la rugosidad de ste, que hace
que el contacto entre los dos materiales no sea continuo. La resistencia de contacto
puede modelarse como dos resistencias en paralelo, una debida a la conduccin a travs
de los puntos de contacto entre los dos materiales y otra debida a los huecos en la
interfaz. El flujo de calor a travs de la interfaz puede relacionarse con la diferencia de
temperaturas mediante la ley de enfriamiento de Newton (ver Figura 5.3) [Incr96].




( )
B A hueco x contacto x x
T T Q Q Q + hS
, ,




















Figura 5.3 Conduccin de calor a travs de interfaces [Incr96].
Aproximacin del estado estacionario
A continuacin se describe una forma muy bsica de evaluar la constante de tiempo de
la dinmica de enfriamiento y calentamiento de un slido que intercambia calor por
conveccin con un fluido. Su conocimiento permite decidir si es lo suficientemente
rpida, comparada con las dems dinmicas, como para despreciarla y asumir que el
slido alcanza instantneamente el estado estacionario [Incr96].
Para ello se establece un volumen de control que contenga el slido y cuya superficie de
control coincida con la superficie del slido. Se plantea el balance de energa del slido
considerando que su temperatura es uniforme en todo momento y que nicamente
intercambia calor por conveccin con el fluido que lo envuelve. El objetivo es estudiar
la evolucin de la temperatura del slido desde su estado inicial hasta que alcanza el
equilibrio con la temperatura del fluido. Se representan con subndice s las variables
del slido: su temperatura,
s
T , su calor especfico (considerado constante),
s
C , su
superficie,
s
S , y su masa,
s
m .

T define la temperatura del fluido (que se considera


constante) ms all de la capa lmite trmica.
( ) ( )
t
C m
S
t
s s s s
s
s s
s s
s
e T T T T T T S
dt
dT
C m
h
0
h


+
Balance de energa del slido
asumiendo las aproximaciones
anteriores.
hS
A
T
B
T
Q
x,contacto
Q
x,hueco
156 TRANSFERENCIA DE CALOR

En analoga con la cada de potencial en un condensador que se descarga a travs de una
resistencia en un circuito elctrico RC , la cantidad
s
s s
S
C m
h
puede interpretarse como una
constante de tiempo trmica, que puede descomponerse en el producto de la resistencia
trmica a la transferencia de calor por conveccin,
th
R , por la capacidad trmica del
slido ,
th
C [Incr96]: ( )
th th s s
s
th
C R C m
S

,
_

h
1
.
Aproximacin de la temperatura uniforme
Se considera un volumen de control conteniendo un medio slido, de modo que la
superficie del volumen de control coincida con la del slido, cuyo entorno trmico sufre
un cambio. Suponer que la temperatura del slido es uniforme en cualquier instante
durante el proceso transitorio implica despreciar los gradientes de temperatura dentro
del volumen de control. Para ello la conductividad trmica interior en el volumen de
control debe ser muy alta comparada con la que hay entre el volumen de control y el
entorno. En el caso de un slido en contacto con un fluido, consiste en suponer que los
gradientes de temperatura en el interior del slido son pequeos comparados con los
gradientes en la capa lmite trmica del fluido en contacto con el slido [Incr96].
Para desarrollar un criterio de validez de esta aproximacin sea una pared plana slida
tal que una de sus superficies se mantiene a la temperatura
1 , s
T y la otra superficie es
expuesta a un fluido a temperatura

T , donde
1 , s
T T <

. La temperatura de esta
superficie tomar algn valor intermedio,
2 , s
T , que satisfar
1 , 2 , s s
T T T < <

. En
condiciones estacionarias, el flujo de calor por conduccin y por conveccin debe ser el
mismo. Reordenando se obtiene que el nmero adimensional de Biot, Bi
h

s
L

, da una
medida de la cada de temperatura en el slido relativo a la diferencia de temperatura
entre su superficie y el fluido (ver Figura 5.4).



( ) ( )
Bi
h
h
1
h
2 ,
2 , 1 ,
2 , 2 , 1 ,

s convec
conduc s
s
s s
s s s
s
L
R
R
S
S
L
T T
T T
T T S T T
L
S


















Figura 5.4 Nmero adimensional de Biot [Incr96].
Q
conv
Q
cond
FLUJO DE CALOR POR CONDUCCIN EN SLIDOS 157

Cuando 1 Bi << , la resistencia a la conduccin dentro del slido es mucho menor que la
resistencia a la conveccin a travs de la capa lmite del fluido, con lo cual la
aproximacin de temperatura uniforme en el slido es razonable. En la prctica suele
considerarse que si se satisface 1 . 0
h
Bi <
s
c
L

, el error asociado con el mtodo de la


capacidad concentrada es pequeo. La longitud caracterstica,
c
L , puede escogerse
como el cociente entre el volumen y la superficie del slido, si bien existen otros
criterios [Incr96].
El mtodo del balance de energa. Aplicacin usando JARA v. 1.0
El balance diferencial de energa del slido (en este contexto de aproximaciones) se
obtiene estableciendo un volumen de control infinitesimal y considerando que la
variacin en la energa interna del medio contenido dentro del volumen de control es
debida nicamente al flujo de calor a travs de su superficie de control. Si se hace la
aproximacin de considerar que el slido alcanza instantneamente el equilibrio trmico
con su entorno, se impone adems que la variacin de la energa interna sea cero.
El mtodo del balance de energa consiste en establecer este mismo balance de energa,
pero aplicado a un volumen de control de dimensin finita en lugar de diferencial. Se
trata, por tanto, de un mtodo que proporciona una solucin aproximada, pero, a medida
que la dimensin del volumen de control va hacindose menor, va reducindose el error
respecto a la solucin obtenida empleando el volumen de control diferencial. Las
ecuaciones obtenidas de aplicar el mtodo podran obtenerse igualmente como resultado
de discretizar de forma determinada las coordenadas espaciales en el balance diferencial
[Incr96].
En ocasiones puede realizarse la aproximacin de modelado de considerar uniforme la
temperatura del slido, con lo que puede escogerse un nico volumen de control
coincidente con el slido, de modo que la superficie de control coincida con la
superficie del slido. El balance de energa aplicado al volumen de control proporciona
la relacin entre la temperatura del slido y el flujo de calor a travs de la superficie de
control. Dependiendo de las aproximaciones de modelado puede formularse el balance
de energa dinmico o bien puede asumirse que el volumen de control alcanza
instantneamente el estacionario, emplendose entonces el balance de energa en estado
estacionario.
Sin embargo, en ocasiones no es admisible considerar uniforme la temperatura del
slido. En estos casos, deben establecerse tantos volmenes de control en el slido
como regiones con diferente temperatura se deseen considerar. Deben formularse el
flujo de calor por conduccin entre volmenes de control adyacentes y el flujo de calor
por conveccin entre el fluido y los volmenes de control cuya superficie de control
coincida con la superficie del slido.
Como se ve, a diferencia de las soluciones analticas, que permiten determinar la
temperatura en cualquier punto de inters del medio, las soluciones numricas permiten
calcular la temperatura slo en un determinado conjunto discreto de puntos o nodos.
Cada uno de estos nodos representa una cierta regin que lo contiene, y su temperatura
es una medida de la temperatura promedio en esta regin. Una vez escogidos los nodos
y dividido el slido en un conjunto de regiones que lo recubran sin solaparse, de modo
158 TRANSFERENCIA DE CALOR

que cada regin contenga un nico nodo, puede asumirse que cada regin es un
volumen de control y establecer el correspondiente balance de energa, a partir del cual
evaluar la temperatura en el volumen de control y, por tanto, en el nodo.
El modo de escoger los nodos y la forma de los volmenes de control depende de la
precisin deseada y de la geometra del problema. La precisin numrica depende del
nmero de nodos escogidos: si ste es grande pueden obtenerse soluciones
extraordinariamente precisas. La forma del volumen de control suele estar dictada por la
geometra del problema. Los nodos interiores normalmente se sitan en el centro del
volumen de control, de modo que las propiedades de ste puedan considerarse un
promedio de las del medio contenido en el volumen de control.
Para calcular el flujo de calor por conduccin entre dos volmenes de control
adyacentes, puede considerarse que el gradiente de temperatura es igual a su diferencia
de temperatura dividido por la distancia entre sus nodos. Considrese, a modo de
ejemplo, el flujo de calor que entra al volumen de control ( ) m n, por conduccin a partir
de sus cuatro volmenes de control adyacentes, asumiendo para ello que el flujo de
calor se produce nicamente en las direcciones x e y (ver Figura 5.5).


( ) ( )
( ) ( )
( ) ( )
( ) ( )
y
T T
x L Q
y
T T
x L Q
x
T T
y L Q
x
T T
y L Q
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n


+
+


+
+


, , 1
, , 1
, , 1
, , 1
, 1 ,
, 1 ,
, 1 ,
, 1 ,



















Figura 5.5 Discretizacin bidimensional de la ley de Fourier [Incr96].
La discretizacin de la ley de Fourier conduce a una relacin entre el flujo de calor y la
diferencia de temperaturas anloga a la relacin constitutiva de una resistencia elctrica
(obsrvese la analoga entre la conductividad trmica y elctrica), y formalmente igual a
la ley de enfriamiento de Newton. En el ejemplo anterior, la resistencia trmica en la
direccin del eje x vale
( ) yL
x
R
x th

,
, y la resistencia en la direccin del eje y ,
( ) xL
y
R
y th

,
. Por ello, se representa tanto la ley de enfriamiento de Newton como la
difusin de calor entre dos volmenes de control mediante una resistencia trmica.
La temperatura en los volmenes de control se calcula del balance de energa
establecido en cada uno de ellos, que puede ser, segn las aproximaciones de modelado,
L
FLUJO DE CALOR POR CONDUCCIN EN SLIDOS 159

dinmico o en el estado estacionario. Por ejemplo, en el caso del volumen de control
( ) m n, :
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
,
_

+ +

+ + +

+ +
+ +
y
x
x
y
T T T
y
x
T T
x
y
Q Q Q Q
m n m n m n m n m n
m n m n m n m n m n m n m n m n
, , 1 , 1 1 , 1 ,
, , 1 , , 1 , 1 , , 1 ,
2
0

Balance de energa en
el estacionario aplicado
al volumen de control
( ) m n,
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )

,
_

+
+

+ + +

+ +
+ +
2 2 , 2
, 1 , 1
2
1 , 1 , ,
, , 1 , , 1 , 1 , , 1 ,
,
1 1
2
y x
T
y
T T
x
T T
dt
dT C
Q Q Q Q
dt
dT
yLC x
m n
m n m n m n m n m n
m n m n m n m n m n m n m n m n
m n


Balance de energa
dinmico aplicado al
volumen de control
( ) m n,

El clculo de la temperatura en los volmenes de control empleando el balance en
estado estacionario conduce al establecimiento de un lazo algebraico lineal. La
temperatura del volumen de control es una variable de estado en el balance dinmico.
As pues, el slido puede modelarse mediante su particin en un conjunto de volmenes
de control, cada uno de los cuales posee una temperatura uniforme. El flujo de calor por
conduccin entre cada pareja de volmenes de control adyacentes puede calcularse
conocida la resistencia trmica y la diferencia de temperaturas entre sus nodos. En la
aproximacin del estado estacionario la temperatura de cada nodo es aquella que anula
la suma de los flujos de calor (ver Figura 5.6). Por el contrario, si se considera la
dinmica de enfriamiento y calentamiento del volumen de control, sta viene
determinada por su capacidad trmica, producto de su masa por la capacidad calorfica
del slido por unidad de masa (ver Figura 5.7).















Figura 5.6 Balance en el estacionario Figura 5.7 Balance dinmico.
Como se ha explicado anteriormente, para evitar el establecimiento del lazo algebraico
al que da lugar la formulacin del balance de energa en el estacionario, se supone que
la capacidad trmica del slido contenido en el volumen de control no es cero, sino que
m n
T
, 1 +

T
m n
T
, 1
y L
x

y L
x

x L
y

x L
y

m n
T
,

1 , + m n
T
T
1 , m n
T
T
m n
T
, 1 +

T
m n
T
, 1
y L
x

x L
y

m n
T
,
y L
x

1 , m n
T
T
1 , + m n
T
T
x L
y

yLC x
160 TRANSFERENCIA DE CALOR

toma un valor arbitrario lo suficientemente pequeo como para poderse considerar que
la dinmica a que da lugar es despreciable comparada con las dinmicas de inters. La
clase solidB, contenida en la librera heat.lib, modela el volumen de control conteniendo
un slido de capacidad calorfica despreciable.
Si el slido intercambia calor por conveccin con un fluido, debe considerarse este flujo
de calor por conveccin en los volmenes de control cuya superficie de control coincida
en parte con la superficie del slido. Para ilustrar este mtodo se analiza un nodo
correspondiente a la esquina interna representada en la Figura 5.8. El flujo de calor por
conveccin entrante al volumen de control puede modelarse tambin mediante una
resistencia trmica que conecte aquel con el volumen de control del fluido.
( ) ( )
( ) ( )
( ) ( )
( ) ( )
( ) ( )
( )
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
m n m n
T T L
y x
h Q
y
T T
x L Q
y
T T x
L Q
x
T T y
L Q
x
T T
y L Q
, ,
, , 1
, , 1
, , 1
, , 1
, 1 ,
, 1 ,
, 1 ,
, 1 ,
2 2
2
2

,
_



+
+


+
+


















Figura 5.8 Nodo correspondiente a una esquina interna del slido [Incr96].
A continuacin se estudia el flujo de calor a travs de la interfaz que separa dos slidos
diferentes y que se supone caracterizado por un coeficiente de transmisin de calor,
interfaz
h . Si se establece un volumen de control a cada lado de la interfaz, el flujo de calor
entre ellos puede calcularse a partir de la resistencia trmica equivalente, teniendo en
cuenta que el flujo de calor entre sus nodos multiplicado por la resistencia trmica que
los separa es igual a su diferencia de temperaturas (ver Figura 5.9).
( ) ( )
( )
( )
( ) xL
y
R
xL
R
xL
y
R
R R R
T T
Q
B
B th
th
A
A th
B th th A th
m n m n
m n m n

+ +

2
h
1
2
,
interfaz
interfaz ,
,
, interfaz , ,
, , 1
, , 1


Figura 5.9 Flujo de calor a travs de una interfaz entre dos slidos [Incr96].
m n
T
,
m n
T
, 1
A th
R
,
erfaz th
R
,int
B th
R
,
erfaz int
h
L
FLUJO DE CALOR POR CONDUCCIN EN SLIDOS 161

A continuacin se van a estudiar con ms detalle los problemas unidimensionales, en el
estacionario y dinmicos, ya que son los que ms frecuentemente se presentan en el
mbito del modelado orientado al control de procesos. Problemas unidimensionales son
aquellos en que puede suponerse que el gradiente de temperatura se produce en una
nica direccin. Por ejemplo, la conduccin de calor a travs de una pared plana en
direccin perpendicular a su superficie, la conduccin en la direccin radial en slidos
esfricos o cilndricos, en la direccin axial en slidos con seccin uniforme arbitraria,
etc.
Conduccin unidimensional en el estacionario
La forma tradicional de resolver estos problemas en el estacionario consiste en plantear
el balance de energa en el estacionario (imponiendo que la derivada de la temperatura
respecto al tiempo sea cero) y calcular de l la temperatura en funcin de la coordenada
espacial y las condiciones de contorno. El flujo de calor se obtiene del gradiente de la
temperatura, aplicando la ley de Fourier [Incr96].
Considrese una pared plana de espesor uniforme L , de conductividad calorfica
constante, , rea S y cuyas superficies se encuentran a temperatura uniforme y
diferente entre s. En la Figura 5.10 se muestra el flujo de calor a travs de la pared en
estado estacionario y la distribucin de temperaturas.




( ) ( )
1 , 1 , 2 ,
0
s s s
T
L
x
T T x T
dx
dT
dx
d
+

,
_


( )
2 , 1 , s s x x
T T
L
S
Q
dt
dT
S Q



















Figura 5.10 Flujo de calor a travs de una pared plana de espesor uniforme.
Se obtiene el mismo resultado para el flujo de calor si se aplica el mtodo del balance de
la energa escogiendo para ello dos nodos: uno en cada una de las superficies de la
pared, lugar en que la temperatura es conocida. A continuacin se definen dos
volmenes de control rectangulares iguales, conteniendo cada uno un nodo, y de forma
que una cara de la superficie de control de cada uno coincida con una de las dos
superficies de la pared. El flujo de calor entre los volmenes de control se obtiene
mediante la discretizacin de la ecuacin de Fourier (ver Figura 5.11). Sin embargo, el
perfil de temperatura obtenido es un escaln, en oposicin al perfil lineal obtenido
mediante la solucin analtica. Supngase que en lugar de dos nodos se escogen N ,
equiespaciados una distancia
1

N
L
x . El primero y el ltimo se encuentren sobre las
S
x
Q
x
Q
162 TRANSFERENCIA DE CALOR

superficies de la pared. Los volmenes de control, rectangulares, se escogen de anchura
x para todos los nodos interiores, conteniendo a stos en el centro, y de anchura
2
x

para los nodos extremos, segn se muestra en la Figura 5.12. La temperatura en un
volumen de control interno es la media de las del volumen de control anterior y
posterior. Dado que la temperatura de los volmenes de control extremos viene
impuestas por las condiciones de contorno, la variacin obtenida de la temperatura en
funcin de la coordenada espacial es una escalera que se asemejar tanto ms a la
solucin analtica lineal cuanto mayor sea el nmero de volmenes de control N .



L
T T
S Q
s s
x
2 , 1 ,













Figura 5.11 Flujo de calor a travs de una pared plana de espesor uniforme.










( ) ( ) ( ) ( )

'

+
+ +
+
2 ,
1 , 1
1 1 1 1
1 1
: contorno de s Condicione
2
0 0
s N
s
n n
n
n n n n
n n n n
T T
T T
T T
T
x
T T
S
x
T T
S Q Q

Figura 5.12 Balance de energa aplicado a un volumen de control interno.
x
x
Q
L x
1 , s
T
2 , s
T
1
T
2
T
3
T
2 N
T
1 N
T
N
T
S
x

S
x

S
x

S
x

x x
1
2 , 1 ,

N
T T
s s
FLUJO DE CALOR POR CONDUCCIN EN SLIDOS 163

Pueden usarse circuitos trmicos equivalentes para calcular el flujo de calor a travs de
sistemas ms complejos, como se muestra en las Figuras 5.13 y 5.14.













Figura 5.13 Circuito trmico equivalente de una pared mltiple [Incr96].










Figura 5.14 Circuitos trmicos equivalentes [Incr96].
Los sistemas cilndricos y esfricos a menudo experimentan gradientes de temperatura
slo en la direccin radial, con lo cual pueden ser tratados como unidimensionales. En
[Incr96] puede encontrarse el clculo de la solucin analtica en ambos casos, supuesto
que las condiciones de contorno son el valor de la temperatura en la superficie de radio
interior y en la de radio exterior (ver Figura 5.15).
Fluido caliente
Fluido fro
S h
1
S
A
S
B
S
C
x
Q
S h
4
S
E

S
2 / S
F

2 / S
G

S
H

x
Q
164 TRANSFERENCIA DE CALOR











( )
( )
2 ,
2 2 1
2 , 1 ,
ln
/ ln
0
1
s
s s
T
r
r
r r
T T
r T
dr
dT
r
dr
d
r
+

,
_



,
_


( )
( )
( )
1 2
2 , 1 ,
/ ln
2
2
r r
T T L
Q
dr
dT
rL Q
s s
r r


















Figura 5.15 Distribucin de temperatura en una pared cilndrica [Incr96].
Fluido fro
Fluido caliente
x
Q
x
Q
CONDICIONES DE CONTORNO PARA EL FLUJO DE CALOR DE JARA v. 1.0 165

Conduccin unidimensional dinmica
Los problemas de conduccin unidimensional dinmica son aquellos en que puede
asumirse que el gradiente de temperatura se produce en una nica dimensin y en los
cuales no puede considerarse ni que el gradiente dentro del medio es despreciable
(aproximacin de temperatura uniforme) ni que el medio alcanza instantneamente el
equilibrio trmico con su entorno (aproximacin del estado estacionario).
Considrese el flujo de calor a travs de una pared plana de seccin S . Puede
establecerse el balance de energa diferencial aplicado a una seccin de la pared de
espesor diferencial dx (ver Figura 5.16). Puede formularse el problema de forma
macroscpica estableciendo el balance en un volumen de control finito, una seccin de
la pared de espesor x , y sustituyendo las diferenciales por incrementos en la ley de
Fourier (ver Figura 5.17). Cuanto mayor sea el nmero de volmenes de control con
que se recubre la pared, es decir, cuanto menor sea el espesor de aquellos, menor es el
error cometido.
















( )
dx x
dx x
x
x
dx x x
x
T
S Q
x
T
S Q
Q Q
t
T
C Sdx
+
+
+



















( )
x
T T
S Q
x
T T
S Q
Q Q
t
T
C x S
x x x
x x
x x x
x
x x x

+
+

+


Figura 5.16 Balance microscpico. Figura 5.17 Balance macroscpico.
x x
x
Q
dx x
Q
+
x
Q
x x
Q
+ x
T
x
T
x x
T
x x
T
+
dx L x L x
x x
T


x
T
x x
T
+
166 TRANSFERENCIA DE CALOR

5.4 CONDICIONES DE CONTORNO PARA EL FLUJO DE
CALOR DE JARA v. 1.0
En analoga con el caso elctrico, pueden definirse dos tipos diferentes de fuentes: de
tensin o temperatura y de corriente o flujo de calor.
Modelo de la fuente de flujo de calor de JARA v. 1.0
Una fuente de flujo de calor es un sistema que impone el sentido y la magnitud del flujo
de calor que intercambia con el sistema al cual se conecta, con independencia de la
temperatura de ste.
Debe especificarse el valor de la consigna para el flujo de calor, la cual coincidir con el
flujo de calor real siempre y cuando el sistema al cual se conecta la fuente tenga una
masa distinta de cero. Esta condicin permite evaluar la variable through del cut de flujo
de calor.
La clase sourceHeatFB, contenida en la librera heat.lib, modela la fuente de flujo de
calor. Se ha definido, completando la interfaz de la clase, un cut receptor de
informacin cuya variable terminal es la consigna para el flujo de calor:
Cut receptor de informacin
cut setPointSignal (heatFsp)

Modelo de la fuente de temperatura de JARA v. 1.0
Una fuente de temperatura es un volumen de control cuya temperatura es independiente
del flujo de calor que intercambia con el entorno, es decir, es un sistema dotado de una
capacidad calorfica infinita. Algunos ejemplos son [Agui81]:
Un cuerpo con una capacidad calorfica muy superior a la de otro, con lo cual puede
considerarse que la cesin y absorcin de calor por aquel no modifica su
temperatura.
Una mezcla en equilibrio de dos fases de un componente.
Un termostato.
La clase sourceTempB, contenida en la librera heat.lib, modela la fuente de
temperatura. La clase debe ser completada con una expresin que permita calcular la
temperatura de la fuente en cada instante, que debe ser funcin de las variables de
estado de la clase y/o del tiempo. Es indiferente el valor que se asigne a la masa
contenida en el volumen de control (variable matter) siempre y cuando sea distinto de
cero. Se le asigna arbitrariamente el valor uno.
EJEMPLO. CONDUCCIN EN EL ESTACIONARIO A TRAVS DE UNA PARED MLTIPLE PLANA 167

5.5 EJEMPLO. CONDUCCIN EN EL ESTACIONARIO A
TRAVS DE UNA PARED MLTIPLE PLANA
Sea una pared de una cmara de refrigeracin compuesta de tres capas de diferente
material, de espesores mm 15
A
L , mm 100
B
L y mm 75
C
L . La superficie interior
de la pared se encuentra a una temperatura constante igual a K 273 y la temperatura
exterior oscila, a lo largo de 24 horas, entre C 20 y C 20 .
Se supone que la transferencia de calor se produce en el estacionario y se desea calcular
el flujo de calor por unidad de superficie y la temperatura en las interfaces entre los
diferentes materiales y en la superficie exterior. En la Figura 5.18 se representa el
circuito trmico equivalente [Cutl99].
La conductividad trmica del material B es funcin de la temperatura. En primera
aproximacin se considera que la temperatura en el material es igual al promedio de las
temperaturas en los interfaces B A y C B . La conductividad trmica de los
materiales es [Cutl99]:
1 1
151 . 0

K Wm
A

1 1
1225
5 . 2

K Wm e
T
B

1 1
762 . 0

K Wm
C

El coeficiente de transferencia de calor por conveccin natural para la pared exterior es
[Cutl99]:
1 2
4
1
4 5

6
37 . 1 h

K Wm
T T









Figura 5.18 Circuito trmico equivalente.
En la Figura 5.19 se muestra el modelo en Dymola, en la Figura 5.20 el diagrama
Dymodraw del modelo y en las Figuras 5.21 a 5.24 el resultado de la simulacin.
Superficie
interior
Superficie
exterior
1
T
2
T
3
T
4
T
5
T
1
T
2
T
3
T
4
T
5
T
S
L
A
A
S
L
B
B
S
L
C
C
S h
1
A B C
C
L
B
L
A
L
168 TRANSFERENCIA DE CALOR


model class (sourceTempB) sourceTemp1
parameter tempConst { Temperatura de la fuente. T }
sourceTemp = tempConst
end

model class (sourceTempB) sourceTemp5
parameter timeScale { Conversion de segundos a la unidad de tiempo. s/timeUnits }
sourceTemp = if Time < ( 12 * 3600 ) / timeScale ->
then 40 / ( 12 * 3600 ) * Time * timeScale + 253 ->
else - 40 / ( 12 * 3600 ) * ( Time - 12 * 3600 / timeScale ) * timeScale + 293
end

model OneDimHeatTransf
parameter timeScale = 3600 { Conversion de segundos a la unidad de tiempo. s/timeUnits }
parameter La = 15E-3 { Espesor de la pared A. m } ->
Lb = 100E-3 { Espesor de la pared B. m } ->
Lc = 75E-3 { Espesor de la pared C. m }
parameter Ka = 0.151 { Conductividad termica de la pared A. W/(m K) } ->
Kb0 = 2.5 { Coef. de la conductividad termica de la pared B. W/(m K) } ->
Kb1 = 1225 { Coef. de la conductividad termica de la pared B. K } ->
Kc = 0.762 { Conductividad termica de la pared C. W/(m K) }
parameter h0 = 1.37 { Factor del coeficiente de transmision de calor. W*M**-2*K-1 } ->
h1 = 6 { Factor del coeficiente de transmision de calor. K } ->
h2 = 0.25 { Factor del coeficiente de transmision de calor. }
parameter intTemp = 273 { Temperatura interior. K }
parameter Cnodes = 1E-4 { Capacidad termica de los nodos. M*L**2*t**-2*T**-1 }
submodel (solidB) interfAB {* at (-48,-56) (-22,-30) rotation=-90 } (eps=Cnodes) ->
interfBC {* at (-13,-56) (13,-30) rotation=-90 } (eps=Cnodes) ->
interfCExt {* at (22,-56) (48,-30) rotation=-90 } (eps=Cnodes)
submodel (RthConstB) wallA {* at (-65,30) (-40,56) rotation=180 } ->
( Rth = ( La / ( Ka * timeScale ) ) ) ->
wallC {* at (5,30) (30,56) rotation=180 } ->
( Rth = ( Lc / ( Kc * timeScale ) ) )
submodel (RthExpTB) wallB {* at (-30,30) (-5,56) rotation=180 } ->
( R0 = ( Lb / ( Kb0 * timeScale ) ), R1 = Kb1 )
submodel (RthAbsTB) convecExt {* at (40,30) (65,56) rotation=180 } ->
( R0 = (1 / ( h0 * timeScale ) ), R1 = h1, R2 = h2 )
submodel (sourceTemp1) sourceT1 {* at (-100,30) (-75,56) rotation=180 } (tempConst=intTemp)
submodel (sourceTemp5) sourceT5 {* at (75,30) (100,56) } (timeScale=timeScale)
connect sourceT1:inHeat at wallA:outHeat {* color=1 }
connect interfAB:inHeat at wallA:inHeat {* via (-40,43) (-35,43) (-35,-30) color=1 }
connect interfAB:inHeat at wallB:outHeat {* via (-30,43) (-35,43) (-35,-30) color=1 }
connect interfBC:inHeat at wallB:inHeat {* via (-5,43) (0,43) (0,-30) color=1 }
connect interfBC:inHeat at wallC:outHeat {* via (5,43) (0,43) (0,-30) color=1 }
connect interfCExt:inHeat at wallC:inHeat {* via (30,43) (35,43) (35,-30) color=1 }
connect interfCExt:inHeat at convecExt:outHeat {* via (40,43) (35,43) (35,-30) color=1 }
connect sourceT5:inHeat at convecExt:inHeat {* color=1 }
end

Figura 5.19 Modelo de la pared mltiple definiendo en el material B un nico volumen de control.







Figura 5.20 Diagrama Dymodraw del modelo de la pared mltiple.
EJEMPLO. CONDUCCIN EN EL ESTACIONARIO A TRAVS DE UNA PARED MLTIPLE PLANA 169














Figura 5.21 Temperatura en las interfaces.


























Figura 5.22 Valor de las resistencias trmicas.
La resistencia trmica de la pared A es similar a la de la pared C , por ello no se
distinguen en la Figura 5.22. Cuando la diferencia de temperatura entre la superficie
exterior de la pared y en entorno se hace cero, el coeficiente de transferencia de calor
por conveccin natural se hace cero y la resistencia trmica infinita. Para evitar que esta
situacin produzca un error numrico en tiempo de simulacin se ha modelado la
170 TRANSFERENCIA DE CALOR

resistencia trmica de la forma:
2
1
0
r
th
T
r
r R

,
_

, donde es un parmetro de valor


muy pequeo (tpicamente
10
10

) cuya finalidad es evitar que el denominador se haga


cero cuando la diferencia de temperaturas es nula.












Figura 5.23 Flujo de calor a travs de las resistencias trmicas.
Los flujos de calor sourceT1.heatF, wallA.heatFI, wallB.heatFI, wallC.heatFI y
convecExt.heatFI son muy similares, por ello no se distinguen entre s en la Figura 5.23.
Si se considera que la conduccin de calor se produce en el estacionario, estos flujos son
exactamente iguales.
Para estimar el error cometido al sustituir el balance de energa en el estacionario por el
balance dinmico, suponiendo que la capacidad trmica del material contenido en los
volmenes de control es muy pequea, se representa en la Figura 5.24 el flujo de
calor neto entrante a los volmenes de control (en el estacionario vale cero). La relacin
entre ste y el flujo de calor a travs de las resistencias trmicas da una idea del error
cometido. Como se ve, el flujo de calor a travs de las resistencias trmicas es
aproximadamente dos rdenes de magnitud mayor que el flujo neto entrante a los
volmenes de control. Si la precisin en la aproximacin resultara insuficiente para la
aplicacin en concreto, puede disminuirse el error haciendo ms pequeo, al precio
de hacer el sistema ms stiff.

EJEMPLO. CONDUCCIN EN EL ESTACIONARIO A TRAVS DE UNA PARED MLTIPLE PLANA 171












Figura 5.24 Flujo de calor neto entrante a los volmenes de control.
Con el fin de estimar el error cometido al englobar la pared B en un nico volumen de
control, puede dividirse el material B en un determinado nmero de elementos y
estimar la temperatura en las interfaces entre ellos, suponiendo para ello que la
temperatura en cada elemento es la media de la existente en su interfaz con el elemento
anterior y en su interfaz con el elemento posterior. A modo de ejemplo se repite la
simulacin anterior, pero dividiendo el material B en seis elementos de control (ver
Figura 5.25).











Figura 5.25 Circuito trmico equivalente. El material B se ha dividido en seis volmenes de control.
En la Figura 5.26 se muestra el modelo, en las Figuras 5.27 y 5.28 la representacin
Dymodraw. Con el fin de establecer una comparacin, la Figura 5.29 contiene la
S
L
A
A

S h
1
S
L
C
C
S
L
B
B

1
T 3
T
4
T
2
T
5
T
A
L
6
B
L
C
L
1
T
2
T
3
T
4
T
5
T
21
T
2
T
22
T
24
T
23
T
25
T
3
T
S
L
B
B

6
S
L
B
B

6
S
L
B
B

6
S
L
B
B

6
S
L
B
B

6
S
L
B
B

6
172 TRANSFERENCIA DE CALOR

temperatura en las interfaces de los seis volmenes de control en que se ha dividido la
pared B y la Figura 5.30 la temperatura en la interfaz de la pared B con la A y con la
C obtenidas simulando el modelo anterior, en el cual la pared B se englobado en un
nico volumen de control.

model class (sourceTempB) sourceTemp1
parameter tempConst { Temperatura de la fuente. T }
sourceTemp = tempConst
end

model class (sourceTempB) sourceTemp5
parameter timeScale { Conversion de segundos a la unidad de tiempo. s/timeUnits }
sourceTemp = if Time < ( 12 * 3600 ) / timeScale ->
then 40 / ( 12 * 3600 ) * Time * timeScale + 253 ->
else - 40 / ( 12 * 3600 ) * ( Time - 12 * 3600 / timeScale ) * timeScale + 293

end

model class (heatFlow2I) wallNelemB
constant Nelem = 6 { Numero de volumenes de control en que se divide la pared }
parameter timeScale { Conversion de segundos a la unidad de tiempo. s/timeUnits }
parameter Kb0 { Coef. de la conductividad termica de la pared B. W/(m K) } ->
Kb1 { Coef. de la conductividad termica de la pared B. K }
parameter Lb { Espesor total de la pared B. m }
parameter Cnodes = 1E-4 { Capacidad termica de los nodos. M*L**2*t**-2*T**-1 }
submodel (RthExpTB) wallB1 {* at (75,30) (100,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 ) ->
wallB2 {* at (40,30) (65,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 ) ->
wallB3 {* at (5,30) (30,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 ) ->
wallB4 {* at (-30,30) (-5,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 ) ->
wallB5 {* at (-65,30) (-40,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 ) ->
wallB6 {* at (-100,30) (-75,56) } ->
( R0 = ( Lb / ( Kb0 * timeScale * Nelem ) ), R1 = Kb1 )
submodel (solidB) interfB12 {* at (57,-56) (83,-30) rotation=-90 } (eps=Cnodes) ->
interfB23 {* at (22,-56) (48,-30) rotation=-90 } (eps=Cnodes) ->
interfB34 {* at (-13,-56) (13,-30) rotation=-90 } (eps=Cnodes) ->
interfB45 {* at (-48,-56) (-22,-30) rotation=-90 } (eps=Cnodes) ->
interfB56 {* at (-83,-56) (-57,-30) rotation=-90 }
connect outHeat at wallB1:outHeat {* color=1 }
connect interfB12:inHeat at wallB1:inHeat {* via (75,43) (70,43) (60,-30) color=1 }
connect interfB12:inHeat at wallB2:outHeat {* via (65,43) (70,43) (60,-30) color=1 }
connect interfB23:inHeat at wallB2:inHeat {* via (40,43) (35,43) (35,-30) color=1 }
connect interfB23:inHeat at wallB3:outHeat {* via (30,43) (35,43) (35,-30) color=1 }
connect interfB34:inHeat at wallB3:inHeat {* via (5,43) (0,43) (0,-30) color=1 }
connect interfB34:inHeat at wallB4:outHeat {* via (-5,43) (0,43) (0,-30) color=1 }
connect interfB45:inHeat at wallB4:inHeat {* via (-30,43) (-35,43) (-35,-30) color=1 }
connect interfB45:inHeat at wallB5:outHeat {* via (-40,43) (-35,43) (-35,-30) color=1 }
connect interfB56:inHeat at wallB5:inHeat {* via (-65,43) (-70,43) (-70,-30) color=1 }
connect interfB56:inHeat at wallB6:outHeat {* via (-75,43) (-70,43) (-70,-30) color=1 }
connect inHeat at wallB6:inHeat {* color=1 }
{* layer icon }
{* line (-60,0) (-40,0) thickness =2 color=1 }
{* line (-40,0) (-30,25) thickness =2 color=1 }
{* line (-30,25) (-10,-25) thickness =2 color=1 }
{* line (-10,-25) (10,25) thickness =2 color=1 }
{* line (10,25) (30,-25) thickness =2 color=1 }
{* line (30,-25) (40,0) thickness =2 color=1 }
{* line (40,0) (50,0) thickness =2 color=1 }
{* info
Conexion en serie de Nelem resistencias termicas RthExpTB.
}
end

model OneDimHeatTransf
parameter timeScale = 3600 { Conversion de segundos a la unidad de tiempo. s/timeUnits }
parameter La = 15E-3 { Espesor de la pared A. m } ->
Lb = 100E-3 { Espesor de la pared B. m } ->
Lc = 75E-3 { Espesor de la pared C. m }
parameter Ka = 0.151 { Conductividad termica de la pared A. W/(m K) } ->
Kb0 = 2.5 { Coef. de la conductividad termica de la pared B. W/(m K) } ->
Kb1 = 1225 { Coef. de la conductividad termica de la pared B. K } ->
Kc = 0.762 { Conductividad termica de la pared C. W/(m K) }
parameter h0 = 1.37 { Factor del coeficiente de transmision de calor. W*M**-2*K-1 } ->
h1 = 6 { Factor del coeficiente de transmision de calor. K } ->
h2 = 0.25 { Factor del coeficiente de transmision de calor. }
parameter intTemp = 273 { Temperatura interior. K }
parameter Cnodes = 1E-4 { Capacidad termica de los nodos. M*L**2*t**-2*T**-1 }
EJEMPLO. CONDUCCIN EN EL ESTACIONARIO A TRAVS DE UNA PARED MLTIPLE PLANA 173

submodel (solidB) interfAB {* at (-48,-56) (-22,-30) rotation=-90 } (eps=Cnodes) ->
interfBC {* at (-13,-56) (13,-30) rotation=-90 } (eps=Cnodes) ->
interfCExt {* at (22,-56) (48,-30) rotation=-90 } (eps=Cnodes)
submodel (RthConstB) wallA {* at (-65,30) (-40,56) rotation=180 } ->
( Rth = ( La / ( Ka * timeScale ) ) ) ->
wallC {* at (5,30) (30,56) rotation=180 } ->
( Rth = ( Lc / ( Kc * timeScale ) ) )
submodel (wallNelemB) wallB {* at (-30,30) (-5,56) rotation=180 } ->
( Lb=Lb, Kb0=Kb0, Kb1=Kb1, timeScale=timeScale )
submodel (RthAbsTB) convecExt {* at (40,30) (65,56) rotation=180 } ->
( R0 = (1 / ( h0 * timeScale ) ), R1 = h1, R2 = h2 )
submodel (sourceTemp1) sourceT1 {* at (-100,30) (-75,56) rotation=180 } (tempConst=intTemp)
submodel (sourceTemp5) sourceT5 {* at (75,30) (100,56) } (timeScale=timeScale)
connect sourceT1:inHeat at wallA:outHeat {* color=1 }
connect interfAB:inHeat at wallA:inHeat {* via (-40,43) (-35,43) (-35,-30) color=1 }
connect interfAB:inHeat at wallB:outHeat {* via (-30,43) (-35,43) (-35,-30) color=1 }
connect interfBC:inHeat at wallB:inHeat {* via (-5,43) (0,43) (0,-30) color=1 }
connect interfBC:inHeat at wallC:outHeat {* via (5,43) (0,43) (0,-30) color=1 }
connect interfCExt:inHeat at wallC:inHeat {* via (30,43) (35,43) (35,-30) color=1 }
connect interfCExt:inHeat at convecExt:outHeat {* via (40,43) (35,43) (35,-30) color=1 }
connect sourceT5:inHeat at convecExt:inHeat {* color=1 }
end

Figura 5.26 Modelo de la pared mltiple dividiendo el material B en seis volmenes de control.






Figura 5.27 Representacin Dymodraw del modelo. Esta sealado el icono de la clase compuesta wallB.








Figura 5.28 Componentes de la clase compuesta wallB.
174 TRANSFERENCIA DE CALOR












Figura 5.29 Temperatura en las interfaces de los seis volmenes de control de la pared B.











Figura 5.30 Temperatura de las interfaces englobando la pared B en un nico volumen de control.
EJEMPLO. CONDUCCIN RADIAL EN EL ESTACIONARIO CON CONVECCIN CON EL ENTORNO 175

5.6 EJEMPLO. CONDUCCIN RADIAL EN EL
ESTACIONARIO CON CONVECCIN CON EL ENTORNO
Sea una tubera cilndrica de m 05 . 0 de dimetro interno y m 07 . 0 de dimetro
externo, de conductividad trmica
1 1 1
1
45

K m Js , por la que circula vapor. La
tubera est rodeada de un aislante de m 025 . 0 de espesor y conductividad trmica
1 1 1
2
087 . 0

K m Js . El coeficiente de transferencia de calor por conveccin al vapor
es
1 2 1
1
11350 h

K m Js y el coeficiente de transferencia por conveccin natural de la
superficie del aislante al aire puede aproximarse por
1 2 1
0.25
2
32 . 1 h

,
_


K m Js
D
T
,
donde T es la diferencia de temperatura entre la superficie y el aire y D es el
dimetro del cilindro en metros (ver Figura 5.31) [Cutl99].
Se considera que el vapor circula a una temperatura de K 418 y que la temperatura del
entorno oscila a lo largo de h 24 entre K 283 y K 300 . Se pretende simular el flujo de
calor por unidad de longitud y la temperatura en las interfaces.
























Figura 5.31 Esquema de la tubera y modelo de la transmisin de calor [Cutl99].
En la Figura 5.32 se muestra el modelo escrito en Dymola y en la Figura 5.33 su
representacin Dymodraw.

aislante
tubera
L r h
1 1
2
1

1
T
2
T

3
T
4
T

5
T
2

1

T
1
T
T
2
T
3
T
4
T
5
T
1
r
2
r
3
r
( )
L
r r
1
1 2
2
ln


( )
L
r r
2
2 3
2
ln
L r h
3 2
2
1

176 TRANSFERENCIA DE CALOR




model class (sourceTempB) sourceTemp1
parameter tempConst { Temperatura de la fuente. T }
sourceTemp = tempConst
end

model class (sourceTempB) sourceTemp5
parameter timeScale { Conversion de segundos a la unidad de tiempo. s/timeUnits }
sourceTemp = if Time < ( 12 * 3600 ) / timeScale ->
then 17 / ( 12 * 3600 ) * Time * timeScale + 283 ->
else - 17 / ( 12 * 3600 ) * ( Time - 12 * 3600 / timeScale ) * timeScale + 300
end

model OneDimHeatTransf
constant pi = 3.141593 { Numero pi }
parameter timeScale = 3600 { Conversion de segundos a la unidad de tiempo. s/timeUnits }
parameter radiusPipeInt = 0.025 { Radio interno de la tuberia. m } ->
radiusPipeExt = 0.035 { Radio externo de la tuberia. m } ->
radiusInsulat = 0.060 { Radio externo del aislante. m }
parameter Kpipe = 45 { Conductividad termica de la pared de la tuberia. W/(m K) } ->
Kinsulat = 0.087 { Conductividad termica de la pared del aislante. W/(m K) }
parameter hSteam = 11350 { Coef. de transferencia de calor por conveccion al vapor.
W/(m**2 K) }
parameter vaporTemp = 418 { Temperatura del vapor. K }
parameter Cnodes = 1E-4 { Capacidad termica de los nodos. M*L**2*t**-2*T**-1 }
submodel (solidB) interfGasPipe {* at (-48,-56) (-22,-30) rotation=-90 } (eps=Cnodes) ->
interfPipeInsulat {* at (-13,-56) (13,-30) rotation=-90 } (eps=Cnodes) ->
interfInsulatEnv {* at (22,-56) (48,-30) rotation=-90 } (eps=Cnodes)
submodel (RthConstB) pipe {* at (-30,30) (-5,56) } ->
(Rth=(ln(radiusPipeExt/radiusPipeInt)/(2*pi*Kpipe*timeScale))) ->
insulation {* at (5,30) (30,56) } ->
(Rth=(ln(radiusInsulat/radiusPipeExt)/(2*pi*Kinsulat*timeScale))) ->
convGas {* at (-65,30) (-40,56) } ->
(Rth=(1/(hSteam*timeScale*2*pi*radiusPipeInt)))
submodel (RthAbsTB) convecEnv {* at (40,30) (65,56) } ->
(R0=(1/(2*pi*radiusPipeExt*1.32*timeScale)), ->
R1=(2*radiusPipeExt),R2=0.25)
submodel (sourceTemp1) sourceT1 {* at (-100,30) (-75,56) rotation=180 } (tempConst=vaporTemp)
submodel (sourceTemp5) sourceT5 {* at (75,30) (100,56) } (timeScale=timeScale)
connect sourceT1:inHeat at convGas:inHeat {* color=1 }
connect interfGasPipe:inHeat at convGas:outHeat {* via (-40,43) (-35,43) (-35,-30) color=1 }
connect interfGasPipe:inHeat at pipe:inHeat {* via (-30,43) (-35,43) (-35,-30) color=1 }
connect interfPipeInsulat:inHeat at pipe:outHeat {* via (-5,43) (0,43) (0,-30) color=1 }
connect interfPipeInsulat:inHeat at insulation:inHeat {* via (5,43) (0,43) (0,-30) color=1 }
connect interfInsulatEnv:inHeat at insulation:outHeat {* via (30,43) (35,43) (35,-30) color=1 }
connect interfInsulatEnv:inHeat at convecEnv:inHeat {* via (40,43) (35,43) (35,-30) color=1 }
connect sourceT5:inHeat at convecEnv:outHeat {* color=1 }
end

Figura 5.32 Modelo de la transferencia de calor radial a travs de la tubera.







Figura 5.33 Representacin Dymodraw del modelo.
La resistencia trmica asociada a la transferencia de calor por conveccin al vapor
( K hr J
1 7
10 558 . 1 ) y la resistencia asociada a la conduccin radial a travs de la
tubera ( K hr J
1 7
10 306 . 3 ) son tres rdenes de magnitud menores que la
resistencia asociada a la conduccin radial a travs del aislante y que la resistencia
EJEMPLO. CONDUCCIN RADIAL EN EL ESTACIONARIO CON CONVECCIN CON EL ENTORNO 177

asociada a la conveccin natural de la superficie del aislante al aire. Por este motivo, la
cada de temperatura se produce fundamentalmente en el aislante y en la capa lmite
trmica del aire que rodea el aislante (ver Figuras 5.34 y 5.35).














Figura 5.34 Temperatura del vapor, en la superficie interna de la tubera
y en la interfaz entre sta y el aislante.














Figura 5.35 Temperatura en la interfaz entre la tubera y el aislante, en
la superficie externa del aislante y temperatura del aire del entorno.
La Figura 5.36 muestra el flujo de calor a travs de cada una de las resistencias
trmicas. La diferencia existente entre los flujos es lo suficientemente pequea,
comparada con la escala del grfico, como para que coincida la representacin grfica
de todos ellos. El hecho de que el valor de los flujos no sea exactamente igual se debe a
que, en lugar de plantear en los volmenes de control del slido el balance de energa en
el estacionario, se ha planteado el balance dinmico asumiendo que la capacidad
trmica de los mismos es pequea, dando lugar a dinmicas lo suficientemente rpidas
comparadas con el resto de las dinmicas como para que puedan ser consideradas
instantneas. La relacin entre el flujo de calor a travs de las resistencias trmicas
(Figura 5.36) y el flujo neto de calor entrante a los volmenes de control (Figura 5.37)
puede servir de estimacin del error cometido al realizar esta aproximacin.
178 TRANSFERENCIA DE CALOR















Figura 5.36 Flujo de calor a travs de las resistencias trmicas.














Figura 5.37 Flujo de calor neto entrante a los volmenes de control.
5.7 CONCLUSIONES
En este captulo se ha descrito la forma en que se ha realizado el modelado, en la
versin 1.0 de JARA, de la transferencia de calor por conveccin entre un fluido y una
superficie slida, de la transferencia de calor por conduccin a travs de slidos y de las
condiciones de contorno para el flujo de calor: de la fuente de flujo de calor y de la
fuente de temperatura. Finalmente, se han discutido dos ejemplos en los que se ilustra la
aplicacin de diferentes modelos de resistencia trmica, fuentes de temperatura y
volmenes de control conteniendo un slido homogneo. En los Captulos 6, 7 y 8
pueden encontrarse ms ejemplos de aplicacin de las clases que modelan el flujo de
calor.

179

Captulo 6
FLUJO DE FLUIDOS
6.1 INTRODUCCIN
En este captulo se aborda el modelado del flujo de mezclas lquidas y de mezclas
gaseosas. En el Apartado 6.2 se describen los modelos de las condiciones de contorno
para el flujo de materia que contiene la versin 1.0 de JARA. Como en el caso del flujo
de calor (ver Captulo 5), estas son: la fuente de la magnitud across (fuente de presin) y
la fuente de la magnitud through (fuente de flujo de materia). En los Apartados 6.3 a
6.11 se describen los modelos de JARA v. 1.0 del flujo de fluidos establecido entre dos
volmenes de control que contienen mezclas homogneas ideales, o bien lquidas o bien
gaseosas, integradas por un mismo conjunto de componentes (la masa de alguno de los
componentes puede valer cero en alguna de las mezclas).
Se supone que la composicin y la temperatura del flujo convectivo de materia saliente
de un volumen de control satisface la aproximacin de mezcla agitada. En el Apartado
6.3 se discute esta aproximacin, que sirve de base para el modelado de las bombas,
conducciones y vlvulas. Para el modelado de las bombas debe adems definirse la
curva caraterstica de las mismas, de modo que quede definido en qu condiciones
puede seguir el flujo proporcionado por la bomba a su valor de consigna (ver Apartado
6.5). Para el modelado de las conducciones y vlvulas debe plantearse, adems de la
condicin de mezcla agitada, el balance de momento lineal, dinmico o en el
estacionario (Apartados 6.7, 6.8 y 6.9). En los Apartados 6.8.1 y 6.8.3 se discuten las
dificultades asociadas a las transiciones de regimen del flujo, se muestran ejemplos y se
proponen soluciones. El balance de momento lineal en el estacionario conduce a un
modelo poco eficiente y por ello es reformulado en el Apartado 6.8.2.
El Apartado 6.4 est dedicado al modelado del retardo en el transporte. La estrategia
adoptada en JARA v. 1.0 para el modelado es la aconsejada por MMS [MMS84]: la
divisin del camino de flujo en volmenes de control y el modelado del transporte del
fluido entre ellos. Este procedimiento es anlogo al mtodo del balance de energa,
aplicado al flujo de calor por conduccin en un slido, descrito en el Apartado 5.3. En el
Apartado 6.6 se muestran algunos ejemplos muy sencillos de intercambiadores de calor,
que pretenden ilustrar la aplicacin conjunta de las clases de JARA v. 1.0 que modelan
el flujo de fluidos y las que modelan el flujo de calor.
Las clases que modelan el flujo establecido entre dos volmenes de control poseen
interfaces del tipo fenmeno de transporte con cuts resistivos de flujo de lquido o de
180 FLUJO DE FLUIDOS


gas. Puesto que los cuts resistivos no pueden ser conectados entre s (ver Apartado
3.4.2), debe resolverse el problema del modelado de la conexin en serie y de la
bifurcacin de conducciones, vlvulas y bombas. La estrategia adoptada en JARA v. 1.0
es similar a una de las soluciones de MMS [MMS84] (ver Apartado 3.2): la definicin
de un nodo de conexin. El modelado del nodo de conexin en JARA v. 1.0 se discute
en el Apartado 6.10.
El Apartado 6.11 est dedicado al modelado de la condicin de igualdad de presiones
entre dos volmenes de control. Se discuten varias alternativas y se propone una
solucin que es adoptada en JARA v 1.0. La clase que modela la condicin establece un
flujo, entre los dos volmenes de control, que satisface la aproximacin de mezcla
agitada y que adems tiene una magnitud tal que hace que en todo momento la presin
en los puntos de conexin a sendos volmenes de control sea igual. El Apartado 6.12
recoge las conclusiones.
6.2 CONDICIONES DE CONTORNO PARA EL FLUJO DE
MATERIA EN JARA v. 1.0
6.2.1 Modelos de la fuente de flujo de materia en JARA v. 1.0
La curva caracterstica. Magnitud del flujo total de materia
Se va a denominar fuente de flujo de materia a un sistema que intercambia materia con
el entorno a travs de un nico plano de control, imponiendo, salvo en dos casos que se
especifican a continuacin, el sentido y la magnitud del flujo de materia. Si el flujo tiene
sentido saliente de la fuente, sta adems impone la composicin y la temperatura del
flujo. Si el flujo entra a la fuente, la composicin y la temperatura del flujo sern los del
fluido en el volumen de control del cual extrae el fluido la fuente.
Adems del valor de consigna para el sentido y la magnitud del flujo (expresado como
masa o volumen por unidad de tiempo), en todo momento la fuente de materia debe
disponer de valores de consigna para la composicin y la temperatura del flujo, pese a
que los valores reales de la temperatura y composicin del flujo slo se corresponden
con los de la consigna cuando el flujo sale de la fuente. Es indiferente el valor que se d
a la consigna para la composicin y la temperatura cuando el flujo entra a la fuente. Los
valores de consigna para el sentido y magnitud del flujo, su composicin y temperatura
sern, en general, funcin del tiempo.
Existen dos casos en los cuales la fuente no impone la magnitud del flujo, es decir, en
los cuales la magnitud del flujo de materia no es igual a su consigna. Estos son:
1. Cuando, de acuerdo con la consigna, el flujo debe tener sentido entrante a la
fuente, pero la masa de fluido es cero en el volumen de control al que se ha
conectado la fuente y del cual debe obtenerse el flujo.
CONDICIONES DE CONTORNO PARA EL FLUJO DE MATERIA EN JARA v. 1.0 181

2. Cuando, de acuerdo con la consigna, la fuente debe introducir el flujo en un
volumen de control y ste, o bien se encuentra lleno de lquido, o bien la presin
en el punto de entrada es mayor de la que la fuente puede vencer.
En el primer caso la presin en el volumen de control, en el punto de conexin, vale
cero y, en el segundo, toma valores elevados. A fin de modelar estos dos fenmenos, se
considera que la fuente tiene una curva caracterstica continua (flujo vs presin de la
carga) definida mediante los siguientes cuatro parmetros:
eps
p
Presin de la carga por debajo de la cual la fuente de materia no puede extraer ms fluido
de la carga.
min
p
Presin de la carga por debajo de la cual el flujo que extrae la fuente de la carga cae
linealmente.
codo
p
Presin de la carga por encima de la cual el flujo que introduce la fuente en la carga
comienza a caer linealmente.
max
p
Presin de la carga por encima de la cual la fuente no tiene capacidad para introducir flujo
en la carga.

Si se representan por
SP
F la consigna para el flujo de materia (masa o nmero de
moles), F el flujo real de la fuente (positivos para flujo entrante a la fuente y negativos
para saliente de la fuente) y p la presin de la carga, la curva caracterstica de la fuente
(flujo vs presin de la carga), se supone de la forma mostrada en la Figura 6.1.









Flujo saliente de la fuente, 0 <
SP
F Flujo entrante , 0 >
SP
F
( )

'

<

<

max
max codo max
codo max
SP
codo
SP
p p
p p p p p
p p
F
p p F
F
si 0
si
si

( )

'

<

>

eps
min eps eps
eps min
SP
min
SP
p p
p p p p p
p p
F
p p F
F
si 0
si
si

Figura 6.1 Curva caracterstica de la fuente de flujo de materia.
182 FLUJO DE FLUIDOS


Aproximacin de mezcla agitada para la carga. Composicin del flujo de materia
La composicin del flujo de materia entrante a la fuente es la misma que la del fluido
contenido en el volumen de control al que se ha conectado la fuente. Suponiendo que el
fluido es una mezcla homognea de
comp
N componentes, esta condicin supone
1
comp
N ligaduras, las cuales, junto con la condicin sobre el flujo total, constituyen
las
comp
N ecuaciones necesarias para calcular el flujo de materia de los
comp
N
componentes. Cuando el flujo de materia sale de la fuente su magnitud y composicin
son iguales a los valores de consigna.
1 ,..., 1 :
0 si
0 si
, ,
,
1 :

'

>

comp
m SP m SP
i
m SP
N
j
j
i
m
m
i
N i
F x
F
m
m
F
F
comp

Cuando el flujo entra a la fuente, su
composicin es la misma que la del fluido
en el volumen de control. Cuando sale, el
valor de la composicin es igual al de la
consigna. 1
comp
N ligaduras.
( )
m SP
N
i
m
i
m
F p f F F
comp
,
1 :
,


El flujo total que impone la fuente depende
de su consigna y de la presin de la carga.
1 ligadura.

El nmero de componentes de la mezcla lquida es una constante en el modelo.
Obsrvese que slo tiene sentido plantear las 1
comp
N ligaduras anteriores cuando el
nmero de componentes de la mezcla sea mayor que uno. Dado que las ecuaciones han
de ser vlidas para cualquier nmero de componentes y a fin de evitar que aparezcan
ndices matriciales con valor cero en el caso 1
comp
N , se introduce una variable muda
( dummy ) y una ecuacin muda ( 1 dummy ) adicionales.
comp
m
i i
N i F F
dummy F
,..., 1 :
*
1
*
1

+

Extensin con una variable muda del vector
de flujo de masa de cada componente.
comp i i
N i m m
m
,..., 1 :
1
*
1
*
1

+

Extensin del vector masa de los
componentes del fluido contenido en el
volumen de control.
comp
m SP
i
m SP
i
m SP
N i x x
x
,..., 1 :
1
,
*
,
1
*
,
1

+

Extensin del vector de consignas para la
fraccin en masa de cada elemento en la
mezcla.
comp
m SP m SP
i
m SP
N
j
j
i
m
i
N i
F x
F
m
m
F
F
comp
,..., 1 :
0 si
0 si
,
*
,
,
1 :
*
*

'

>


Cuando el flujo entra a la fuente, su
composicin es la misma que la del fluido
perfectamente agitado del cual se extrae el
flujo, cuando sale, el valor de la
composicin es igual al de la consigna
( 1
comp
N ligaduras).
CONDICIONES DE CONTORNO PARA EL FLUJO DE MATERIA EN JARA v. 1.0 183

Al igual que la composicin, la temperatura del flujo depende de si entra o sale de la
fuente. El flujo de entalpa asociado al flujo de materia puede obtenerse de la
temperatura del flujo, el flujo de masa de cada componente y la capacidad calorfica de
cada componente.

'

>

0 si
0 si
,
,
m SP SP
m SP
flujo
F T
F T
T
La temperatura del flujo es igual a su consigna
cuando el flujo sale de la fuente. Cuando entra a la
fuente es igual a la temperatura del fluido
almacenado en reposo al que se ha conectado la
fuente.
( ) ( )

'

+

comp
flujo
ref
comp
N
i
T
T
i p ref i
m
i
N
i
i
m
i
H
dT T C T h F
h F F
1 :
* *
,
1 :


Flujo de entalpa entrante a la fuente en funcin de
la capacidad calorfica y el flujo de masa de cada
componente y de la temperatura del flujo.

Puede establecerse la causalidad computacional de las ecuaciones de la clase
considerando que T m x T F
m SP SP m SP
, , , ,
, ,
y p son conocidas y que deben calcularse
m
F
y
H
F :
[ ]
[ ]
comp i i
N i m m
m
,..., 1 :
1
*
1
*
1

+

Extensin del vector masa
de cada uno de los
componentes del fluido
almacenado en el volumen
de control al que se
conecta la fuente.
[ ]

comp
N
i
i
m m
1 :

La variable m representa
la masa total del fluido
almacenado en reposo al
cual se conecta la fuente.
[ ]
[ ]
comp
m SP
i
m SP
i
m SP
N i x x
x
,..., 1 :
1
,
*
,
1
*
,
1

+

Extensin del vector de
consignas para la fraccin
en masa de cada elemento
en la mezcla.
[ ]
( )
( )

'

'

<

>
<

'

<

<

0 si
si 0
si
si
0 si
si 0
si
si
,
,
,
,
,
,
m SP
eps
min eps eps
eps min
m SP
min
m SP
m SP
max
max codo max
codo max
m SP
codo
m SP
m
F
p p
p p p p p
p p
F
p p F
F
p p
p p p p p
p p
F
p p F
F

El flujo total que impone la
fuente depende de su
consigna y de la presin de
la carga (1 ligadura).
184 FLUJO DE FLUIDOS


[ ]
comp
m SP m SP
i
m SP i
m
i
N i
F x
F
m
m
F
F
,..., 1 :
0 si
0 si
,
*
,
,
*
*

'

>

Cuando el flujo entra a la
fuente, su composicin es
la misma que la del
volumen de control.
Cuando sale, es igual al de
la consigna.
[ ]
m
N
m m
comp
F F F + + ...
1

El flujo total es la suma de
los de los componentes.
[ ]

'

>

0 si
0 si
SP SP
SP
flujo
F T
F T
T
La temperatura del flujo es
igual a su consigna cuando
el flujo sale de la fuente.
Cuando entra a la fuente es
igual a la temperatura del
fluido del volumen de
control.
[ ]
[ ]
[ ]
m
N N
comp
m
i i
comp comp
F F
N i F F
dummy F

+
+
*
1
*
1
*
1
1 ,..., 1 :
Extensin del vector de
flujo de materia de cada
componente.
[ ] ( ) ( )

'

+
comp
flujo
ref
N
i
T
T
i p ref i
m
i
H
dT T C T h F F
1 :
* *
,

Flujo de entalpa entrante a
la fuente en funcin de la
capacidad calorfica, del
flujo de masa de cada
componente y de la
temperatura del flujo.

A fin de evitar que las ligaduras sobre la composicin del flujo produzcan un error del
tipo
0
0
cuando la masa contenida en el volumen de control al que se conecta la fuente
sea cero, se introduce en las ecuaciones la constante , de valor muy pequeo
(despreciable), de modo que la singularidad
0
0
se transforma en 0
0
0

+
:
[ ]
comp
m SP m SP
i
m SP i
m
i
N i
F x
F
m
m
F
F
,..., 1 :
0 si
0 si
,
*
,
,
*
*

'

>
+
Cuando el flujo entra a la fuente, su
composicin es la misma que la del fluido
perfectamente agitado del cual se extrae el
flujo. Cuando sale, el valor de la
composicin es igual al de la consigna.

Modelos de la fuente de flujo de materia
JARA contiene dos clases bsicas que modelan la curva caracterstica de la fuente y la
condicin de mezcla agitada aplicada a la carga. En la primera, sourceLiqFB, contenida
en la librera liq.lib, se considera que el fluido es un lquido. En la segunda,
sourceGasFB, de la librera gas.lib, que es un gas. La diferencia fundamental estriba en
CONDICIONES DE CONTORNO PARA EL FLUJO DE MATERIA EN JARA v. 1.0 185

que en el primer caso la materia se mide en unidades de masa y en el segundo en moles.
El cdigo de ambas clases es esencialmente el mismo.
Se han definido tres subclases de cada una de las clases anteriores. En dos de ellas se
considera que la consigna para el flujo de masa viene expresada en cantidad de materia
(masa o moles) por unidad de tiempo y la composicin en fraccin en masa o fraccin
molar. As, sourceMolGasFB y sourceMassGasFB son subclases de sourceGasFB y
sourceMassLiqFB y sourceMolLiqFB son subclases de sourceLiqFB. Estas subclases
aaden a su superclase la definicin de un cut de flujo de informacin, controlSignal,
que agrupa las variables consigna para el flujo de masa o moles, la fraccin en masa o
molar y la temperatura del flujo.
La consigna para el flujo total de materia en la clase sourceGasFB se expresa en moles
por unidad de tiempo y la composicin de la mezcla en fraccin molar. Su subclase
sourceMolGasFB nicamente aade a su superclase la definicin del cut receptor de
informacin que agrupa las variables consigna. En la subclase sourceMassGasFB la
consigna para el flujo total viene expresada en masa por unidad de tiempo y la
composicin en fraccin en masa. La clase contiene las expresiones necesarias para
calcular el flujo en moles por unidad de tiempo,
n SP
F
,
, y la composicin en fraccin
molar,
n SP
N
n SP
comp
x x
, ,
1
,..., , conocido el flujo en masa por unidad de tiempo
m SP
F
,
y la
composicin en fraccin en masa,
m SP
N
m SP
comp
x x
, ,
1
,..., . Si se representa por
j
M el peso
molecular del componente j , estas son:

comp
N
j j
m SP
j
i
m SP
i
n SP
i
M
x
M
x
x
1 :
,
,
,

Relacin entre la consigna de la composicin
expresada como fraccin molar y expresada como
fraccin en masa.

comp
N
i i
m SP
i m SP n SP
M
x
F F
1 :
,
, ,

Relacin entre la consigna para el flujo total
expresada en moles por unidad de tiempo y en masa
por unidad de tiempo.

La consigna para el flujo total de materia en la clase sourceLiqFB tiene unidades de
masa por unidad de tiempo y la composicin de la mezcla se expresa en fraccin en
masa. Su subclase sourceMassLiqFB nicamente aade a su superclase la definicin del
cut receptor de informacin que agrupa las variables consigna. En la subclase
sourceMolLiqFB la consigna para el flujo total viene expresada en moles por unidad de
tiempo y la composicin en fraccin molar. La clase contiene las expresiones necesarias
para calcular el flujo en masa por unidad de tiempo,
m SP
F
,
, y la composicin en
fraccin en masa,
m SP
N
m SP
comp
x x
, ,
1
,..., , conocido el flujo en moles por unidad de tiempo
n SP
F
,

y la composicin en fraccin molar,
n SP
N
n SP
comp
x x
, ,
1
,..., . Si se representa por
j
M el peso
molecular del componente j , estas son:

186 FLUJO DE FLUIDOS

comp
N
j
j
n SP
j
i
n SP
i m SP
i
M x
M x
x
1 :
,
,
,

Relacin entre la consigna para la composicin
expresada como fraccin molar y como fraccin en
masa.

comp
N
i
n SP
i i
n SP m SP
x M F F
1 :
, , ,

Relacin entre la consigna para el flujo total
expresado en moles por unidad de tiempo y en
masa por unidad de tiempo.

En las terceras subclases de sourceGasFB y sourceLiqFB, sourceVolGasFB y
sourceVolLiqFB respectivamente, se considera que la consigna para el flujo de materia
se expresa en volumen por unidad de tiempo. En el caso de los lquidos la consigna para
la composicin del flujo viene expresada en fraccin en volumen. En fraccin molar en
el caso de los gases.
La clase sourceVolLiqFB, contiene, aparte del cut de flujo de informacin para las
variables consigna, las expresiones necesarias para calcular el valor de la consigna para
el flujo total expresado en flujo de masa, a partir del mismo expresado en flujo de
volumen, y el valor de la consigna para la composicin del flujo, expresado en fraccin
en masa (para los lquidos), a partir del mismo expresado en fraccin en volumen. A
continuacin se presenta cmo se realizan estas transformaciones.
Conocida la fraccin en volumen de los componentes en la mezcla,
V
V
V
V
comp
N
,...,
1
, y la
densidad de cada uno de ellos cuando se encuentran puros,
puro
N
puro
comp
,...,
1
, puede
obtenerse su fraccin en masa, suponiendo que el volumen de la mezcla es igual a la
suma de los volmenes que tendran, la misma masa de cada componente que est
presente en la mezcla, si se encontraran en estado puro.


comp comp comp
N
j
puro
j
j
puro
i
i
N
j
puro
j j
puro
i i
N
j
j
i
V
V
V
V
V
V
m
m
1 : 1 : 1 :


Fraccin en masa expresada en trminos de la
fraccin en volumen.

El flujo de masa,
m
F , puede calcularse a partir del flujo de volumen,
V
F , si se conoce
la densidad de la mezcla. La densidad de la mezcla puede obtenerse de la densidad de
los componentes en estado puro y de su fraccin en masa en la mezcla:
mezcla
V m
F F
Relacin entre el flujo de masa y de volumen de la
mezcla.
CONDICIONES DE CONTORNO PARA EL FLUJO DE MATERIA EN JARA v. 1.0 187



comp comp
N
i
puro
i
i
N
i
puro
i
i
mezcla
m m m
m
1 : 1 :
1


Densidad de la mezcla lquida en funcin de la
densidad de sus componentes en estado puro y de
su fraccin en masa en la mezcla. Aplicacin de la
ley de Amagat.

Anlogamente, la clase sourceVolGasFB, contiene el cut de flujo de informacin para
las variables consigna y ecuacin de estado de los gases perfectos: expresin necesaria
para calcular el valor de la consigna para el flujo en moles a partir del mismo expresado
en flujo de volumen. Obsrvese que el nmero de moles de una mezcla gaseosa
contenido en un determinado volumen es funcin de la presin y la temperatura a que se
encuentre la mezcla. Por lo tanto, es preciso especificar a qu presin (variable
pressFSP) y a que temperatura (variable tempFSP) se encuentra el volumen de gas
cuando el flujo sale de la fuente. Cuando el flujo entra a la fuente, la presin y
temperatura son los existentes en el volumen de control del que la fuente extrae la
mezcla gaseosa.

'

>

0 si
0 si
, ,
, ,
,
V SP V SP
SP
SP
V SP V SP
n SP
F F
RT
p
F F
RT
p
F
Relacin entre la consigna expresada en flujo de
volumen de la mezcla ideal de gases semiperfectos
y en flujo de moles.

6.2.2 Modelo de la fuente de presin en JARA v. 1.0
Se modela la fuente de presin como un volumen de control que contiene una masa
inagotable cuya presin, composicin y temperatura son independientes del flujo de
materia que entre o salga de l. Los valores de la masa de cada componente, la presin y
la temperatura de la mezcla contenida en el volumen de control deben ser funcin de las
variables de estado de la clase y/o del tiempo.
El que la fuente de presin se comporte como una fuente o como un sumidero de
materia depende, en cada instante, de las caractersticas de los fenmenos de transporte
que relacionen este volumen de control con otros.
Se ha definido una clase que modela una fuente de presin para mezclas lquidas,
sourcePressLiqB, contenida en la librera liq.lib, y una clase que modela una fuente de
presin para mezclas gaseosas, sourcePressGasB, contenida en la librera gas.lib.
Ambas clases nicamente contienen atributos grficos Dymodraw, debiendo ser
completadas con expresiones que permitan evaluar las variables across de la interfaz a
partir de variables de estado y del tiempo.


188 FLUJO DE FLUIDOS


6.3 LA APROXIMACIN DE MEZCLA AGITADA APLICADA
AL FLUJO DE FLUIDOS
La aproximacin de mezcla agitada
La aproximacin de mezcla agitada aplicada a una determinada propiedad de un fluido
(temperatura, composicin, etc.) contenido en un volumen de control consiste en
suponer que el valor de la propiedad es uniforme en todo el volumen de control, es
decir, es independiente de las coordenadas espaciales. Una consecuencia de esta
aproximacin es que el valor de la propiedad del fluido que abandona el volumen de
control es igual a la del fluido contenido en el volumen de control.
Se aplica esta aproximacin a la temperatura y composicin del fluido que sale del
volumen de control por conveccin y a la temperatura de cada componente que sale por
difusin:
Sistema B A Sistema

'



B
A
T
T

La temperatura con que fluye (por
conveccin o difusin) cada componente
del fluido es igual a la del fluido
almacenado en el volumen de control del
cual sale el flujo.
Sistema B A Sistema
1 : 1 :
1 : 1 :

'

comp
N
i
B
i
B
i
comp
N
i
m
i
m
i
comp
N
i
A
i
A
i
comp
N
i
m
i
m
i
m
m
F
F
m
m
F
F

La fraccin en masa de cada uno de los
componentes del fluido que fluye por
conveccin es igual a la del fluido
almacenado en el volumen de control del
cual sale el flujo.

En general, el sentido del flujo cambia durante el curso de la simulacin en funcin de
las condiciones de operacin, en consecuencia, este conjunto de ligaduras debe referirse
en cada instante a las propiedades del fluido contenido en el volumen de control del cual
sale el flujo.
En lugar de la aproximacin de mezcla agitada pueden realizarse otras aproximaciones
para estimar las propiedades del fluido que abandona el elemento de volumen. Por
ejemplo, podra considerarse que el valor de la propiedad del fluido en el elemento toma
el valor medio entre el valor de la misma en el fluido entrante al elemento y el valor en
el fluido saliente. Como se ver, esta suposicin conduce a un efecto denominado "see-
saw" [MMS84].
Para ilustrar este efecto se considera el siguiente modelo de un fluido en movimiento,
con flujo de masa
m
F constante, por una conduccin recta de seccin constante, S . Se
divide el flujo en un determinado nmero de volmenes de control de forma que la
pared interna de la conduccin coincida con la superficie del volumen de control y que
los planos de control sean perpendiculares a la direccin del flujo. La dimensin de los
volmenes de control en la direccin axial es x .
LA APROXIMACIN DE MEZCLA AGITADA APLICADA AL FLUJO DE FLUIDOS 189

Se supone que la variacin en la entalpa del fluido contenido en un determinado
volumen de control se debe nicamente a la diferencia entre el flujo de entalpa entrante
y saliente. Se considera que el fluido posee una capacidad calorfica y una densidad
constantes y que llena por completo la conduccin, con lo cual los volmenes de control
se encuentran completamente llenos de fluido. El balance de energa en el elemento
simo i es:
( )
1 , , 1 +

i i i i p
m i
p
T T C F
dt
dT
xC S
Balance de energa aplicado al volumen de control
simo i .
2
1 , , 1 +
+

i i i i
i
T T
T
La temperatura del fluido en el elemento se
considera que es igual al valor medio de las
temperaturas del flujo entrante y saliente.

Se ha representado por
i i
T
, 1
la temperatura del fluido que circula entre el volumen de
control ( ) simo i 1 y el simo i y
1 , + i i
T la que circula entre el elemento simo i y
el ( ) simo i +1 . El flujo
m
F se considera positivo cuando lleva el sentido de los
elementos crecientes, es decir, cuando sale del elemento ( ) simo i 1 para entrar en el
simo i y sale de ste para entrar en el ( ) simo i +1 .
Dado que la temperatura en el volumen de control,
i
T , es una variable de estado y que
la temperatura del flujo entrante se calcula, o bien de las condiciones de contorno, o
bien de las ecuaciones del elemento aguas arriba, de estas dos ecuaciones para el
elemento simo i puede evaluarse la temperatura del fluido saliente del elemento y la
derivada de la temperatura del fluido almacenado en el elemento,
dt
dT
i
.
Se supone que la temperatura del fluido entrante al elemento aumenta bruscamente
debido, por ejemplo, a un cambio brusco en las condiciones de contorno. Dado que la
temperatura del fluido almacenado en el elemento de control,
i
T , no puede variar
instantneamente (por ser una variable de estado que vara mediante integracin con una
constante de tiempo determinada por la masa total en el volumen de control), al
calcularse la temperatura del fluido saliente, como el doble de la temperatura del fluido
almacenado menos la temperatura del fluido entrante, si la temperatura del fluido
entrante aumenta linealmente con una pendiente mayor que el doble de la velocidad de
integracin de la temperatura del fluido almacenado en el volumen de control, la
temperatura del fluido saliente del elemento disminuye, lo cual no tiene sentido. Si se
considera que el flujo tiene sentido positivo, se puede ilustrar el efecto "see-saw" de la
forma siguiente [MMS84]:
0 2 si cual, lo con 2
2
1 , , 1 , 1 1 , 1 , , 1
< >
+

+ + +
dt
dT
dt
dT
dt
dT
dt
dT
dt
dT
dt
dT T T
T
i i i i i i i i i i i i i i
i


190 FLUJO DE FLUIDOS


El uso de mltiples elementos de control conectados en serie alivia el problema (no lo
elimina), a expensas de aumentar la carga computacional. Esto se debe a que la
constante de tiempo de la temperatura del fluido almacenado en el volumen de control
es inversamente proporcional a su masa, x S [MMS84].
( )
( )
x S
F
T T
x S
F
dt
dT
T T
T
T T C F
dt
dT
xC S
i i i
i
i i i i
i
i i i i p
m i
p

+
+

2 2
2

, 1
1 , , 1
1 , , 1


Dividiendo el volumen de control en N volmenes iguales, se reduce la constante de
tiempo en N veces, con lo cual la entalpa especfica en el volumen puede variar N
veces ms rpida.
Aplicacin de la aproximacin de mezcla agitada al flujo por conveccin
Sean dos volmenes de control, que se representan como A y B , que contienen
mezclas que se suponen agitadas, y entre los que se establece un flujo de materia por
conveccin. La aproximacin de mezcla agitada aplicada a la composicin del flujo
supone 1
comp
N condiciones sobre el flujo de masa de los
comp
N componentes del
fluido. Normalmente se completan las
comp
N condiciones necesarias para el clculo del
flujo de masa individuales de los componentes con una ecuacin que relaciona el flujo
total por conveccin entre los dos volmenes de control con la diferencia de presin
entre ellos.
( )
( )
( )
( )
1 ,..., 1 :
0 si
0 si

'

>

comp
conv
B A
m
B
B
i
conv
B A
m
A
A
i
conv
B A
m
conv
B A
m
i
N i
F
m
m
F
m
m
F
F

Condicin de mezcla agitada para la
composicin del flujo expresada en
trminos del flujo de masa
( 1
comp
N ligaduras).
( )
( )
( )
( )
1 ,..., 1 :
0 si
0 si

'

>

comp
conv
B A
n
B
B
i
conv
B A
n
A
A
i
conv
B A
n
conv
B A
n
i
N i
F
n
n
F
n
n
F
F

Condicin de mezcla agitada para la
composicin del flujo expresada en
trminos del flujo molar ( 1
comp
N
ligaduras).

Es equivalente expresar la igualdad de concentraciones de dos sistemas A y B en
trminos de sus fracciones en masa o de sus fracciones molares, es decir:
1 - ,..., 1 : 1 - ,..., 1 :
comp
B
B
i
A
A
i
comp
B
B
i
A
A
i
N i
n
n
n
n
N i
m
m
m
m

LA APROXIMACIN DE MEZCLA AGITADA APLICADA AL FLUJO DE FLUIDOS 191

sto puede demostrarse de forma sencilla si se considera que:
1 - ,..., 1 : 1 - ,..., 1 :
1 - ,..., 1 : 1 - ,..., 1 :
comp B
N
B
i
A
N
A
i
comp B
B
i
A
A
i
comp B
N
B
i
A
N
A
i
comp B
B
i
A
A
i
N i
n
n
n
n
N i
n
n
n
n
N i
m
m
m
m
N i
m
m
m
m
comp comp
comp comp




Para obtener el miembro de la derecha de la segunda equivalencia a partir del miembro
de la derecha de la primera basta con multiplicar ste por
i
N
M
M
comp
.
Obsrvese que slo tiene sentido plantear la condicin de mezcla agitada para la
concentracin del flujo cuando el nmero de componentes de ste sea mayor que uno.
La introduccin de variables y ecuaciones mudas permite extender esta ligadura al caso
1
comp
N . As, por ejemplo, en el caso de la condicin de mezcla agitada expresada en
trminos del flujo de masa:
( )
comp
conv
m
i
m
i
m
N i F
dummy
,..., 1 :
B A 1
1
+


Extensin, con una variable muda, del vector
de flujo de materia de cada componente
entre los sistemas A y B .
comp
B
i
B
i
comp
A
i
A
i
B A
N i m
N i m
,..., 1 :
,..., 1 :
1
1
1
1 1


+
+



Extensin del vector masa de cada uno de
los componentes del fluido almacenado en
reposo en los sistemas A y B .
( ) ( )


comp
N
i
conv
B A
m
i
conv
B A
m
F F
1 :

El flujo total es la suma de los flujos de los
componentes que componen la mezcla.

comp
comp
N
i
B
i
B
N
i
A
i
A
m m
m m
1 :
1 :

La masa contenida en el sistema A es la
suma de la masa de cada uno de los
componentes contenidos. Igualmente para la
masa contenida en el sistema B .
( )
( )
( )
comp
conv
B A
m
B
B
i
conv
B A
m
A
A
i
conv
B A
m
m
i
N i
F
m
F
m
F
,..., 1 :
0 si
0 si

'

>


Condicin de mezcla agitada para la
composicin extendida al caso en que el
nmero de componentes del flujo sea igual a
uno.

192 FLUJO DE FLUIDOS


La aproximacin de mezcla agitada aplicada a la temperatura del fluido contenido en el
volumen de control implica que la temperatura es uniforme en todo el volumen de
control y que es la misma para todos los componentes del fluido. Como consecuencia,
la temperatura del fluido que sale del volumen de control por conveccin es la misma en
todo instante que la del fluido contenido en el volumen de control.
( )
( )

0 si
0 si
A

'

>

conv
B A
m
B
conv
B A
m
B A
F T
F T
T
Ligadura sobre la temperatura del flujo
consecuencia de la aproximacin de mezcla
agitada aplicada a la temperatura.
( ) ( ) ( )


comp
N
i
B A i
conv
B A
m
i
conv
B A
H
T h F F
1 :

Flujo de entalpa asociado al flujo convectivo
de materia entre los volmenes de control A y
B .

Modelado de la aproximacin de mezcla agitada aplicada al flujo de fluidos por
conveccin en JARA v. 1.0
Se considera un modelo del flujo por conveccin entre dos volmenes de control tal
que, conocida la presin en el plano de control, la temperatura y la masa de cada
componente en cada uno de los volmenes de control, permita calcular el flujo de
materia de cada componente y el flujo de entalpa. La temperatura y composicin del
flujo se calculan de la aproximacin de mezcla agitada.
Puesto que el flujo de calor por conveccin entre un slido y un fluido en movimiento
depende de la velocidad del flujo, en las clases que modelan el flujo de materia por
conveccin se contempla la posibilidad de que se produzca tambin flujo de calor por
conveccin. Se supone que la entalpa que entra por unidad de tiempo a uno de los
volmenes de control es igual a la que sale del otro ms el calor que se aade por
conveccin al fluido.
Las ecuaciones de la clase, suponiendo que se emplea la masa para representar la
cantidad de materia, son:
( )
( )
( )
( )
( )

'

,
_

>

,
_

,
_

0 si
...
1
1
0 si
...
1
1
...
1
1
1
1 :
1
1
1 :
1
1
1 :
conv
B A
m
B
N
B
N
i
B
i
conv
B A
m
A
N
A
N
i
A
i
conv
B A
m
N
conv
B A
m
N
i
conv
B A
m
i
F
m
m
m
F
m
m
m
F
F
dummy
F
comp
comp
comp
comp
comp
comp

Condicin de mezcla
agitada aplicada a la
composicin del flujo.
MODELO DEL RETARDO EN EL TRANSPORTE 193

( )
( ) ( ) ( )
( ) ( ) ( )

'


>

0 si
0 si
1 :
1 :
conv
B A
m
N
i
B i
conv
B A
m
i
conv
B A
m
N
i
A i
conv
B A
m
i
conv
A
H
F Q T h F
F T h F
F
comp
comp

Flujo en entalpa
saliente del volumen de
control A.
( )
( ) ( ) ( )
( ) ( ) ( )

'

> +

0 si
0 si
1 :
1 :
conv
B A
m
N
i
B i
conv
B A
m
i
conv
B A
m
N
i
A i
conv
B A
m
i
conv
B
H
F T h F
F Q T h F
F
comp
comp

Flujo de entalpa
entrante al volumen de
control B

Se ha asumido, para el clculo de la entalpa por unidad de masa (en el caso de los
lquidos) y por mol (en el caso de los gases) que el calor especfico a presin constante
puede escribirse como un polinomio de grado, a lo sumo, seis, ( )

6
0 : i
i
i p
T c T C . De esta
forma:
( ) ( ) ( )

+ +

+
+ +
6
0 :
1 1
,
* *
,
1
i
i
ref
i i
ref i
T
T
p ref i i
T T
i
c
h dT T C h T h
ref

Entalpa por unidad de
masa del componente i

La clase convecGasFlowB (librera gas.lib), contiene el conjunto anterior de ecuaciones,
modelando la condicin de tanque agitado para la composicin y temperatura del flujo
de mezclas gaseosas por conveccin. De forma anloga, la clase convecLiqFlowB
(librera liq.lib) contiene las ecuaciones anteriores para el caso del flujo por conveccin
de una mezcla lquida. Ambas clases deben ser completadas mediante una expresin
que permita evaluar el flujo total de materia.
6.4 MODELO DEL RETARDO EN EL TRANSPORTE
Los caminos largos de flujo introducen retardos en las dinmicas que deben ser
modelados cuando el transitorio de inters es del mismo orden que aquellas. Existen dos
mtodos fundamentales de modelar retardos en sistemas con geometra unidimensional
[MMS84].
El primero consiste en emplear una memoria de retardo en la que se almacena el valor
de la energa del fluido a la entrada y se asigna ese valor a la salida transcurrido un
retardo igual al cociente de la masa del fluido almacenado en el elemento dividido por
el flujo de fluido por unidad de tiempo. El retardo depende de la densidad del fluido y
de su flujo, con lo cual vara con el tiempo. Dado que la energa interna se transporta a
la velocidad del fluido, mientras que el transporte de presin es casi instantneo, slo se
retarda la energa interna. La energa interna por unidad de masa en el plano de salida,
194 FLUJO DE FLUIDOS


out
u , se calcula de la energa interna por unidad de masa en el plano de entrada,
in
u , y
no del balance de energa como es habitual [MMS84]:
F
V
out


El retardo en el transporte.
( ) ( ) t u t u
in out

Retardo en la propagacin de los cambios en la
energa interna.
( ) ( )
out
out
out out
p
t u t h

+
Entalpa por unidad de masa en el plano de salida.

La presin en el plano de salida,
out
p , puede venir dada como una condicin de
contorno y la densidad en el plano de salida,
out
, igual a la del fluido almacenado en el
elemento de control (condicin de tanque agitado), puede calcularse del balance de
masa. La mayor desventaja de esta representacin del retardo en el transporte es que se
supone que el elemento no intercambia calor con el exterior: la energa interna en el
plano de salida es la misma que la del plano de entrada retardada.
El segundo mtodo, que es el recomendado [MMS84] para modelar retardos en el
transporte consiste en dividir el flujo en mltiples elementos, en cada uno de los cuales
se establece el balance de masa y el balance de energa. Al aumentar el nmero de
elementos, la solucin se aproxima a un retardo puro en el transporte. Esto puede
comprobarse mediante el siguiente anlisis en el dominio de la frecuencia.
Sea una conduccin de volumen V por la que circula un fluido cuyo flujo se puede
modelar como flujo de pistn, esto es: perfectamente mezclado en la direccin radial
(las variables son independientes de la coordenada radial) y no mezclado en absoluto en
la direccin axial (se desprecia la conduccin axial de calor en el seno del fluido as
como la difusin axial de materia). Al no considerarse la difusin axial ni de calor ni de
materia las discontinuidades en la temperatura y concentracin se propagan a lo largo
del sistema como una onda sin desaparecer. Esto conlleva dificultades numricas al
integrar las ecuaciones diferenciales ya que se requiere mucho esfuerzo para aproximar
las discontinuidades, que a menudo representan slo una pequea porcin de la
respuesta del sistema. Cuanta mayor difusin existe en el sistema, menor es el nmero
de elementos en que es necesario dividir el flujo para modelar su dinmica [Goul69].
Para demostrar que dividiendo el flujo en mltiples volmenes de control se modela el
retardo en el transporte, considrese primeramente que se modela la conduccin
completa con flujo de pistn como si fuera un tanque agitado con dos planos de control
a travs de los cuales intercambia
m
F unidades de masa por unidad de tiempo.
Intercambia un flujo de calor con el entorno por unidad de tiempo Q.
in
T representa la
temperatura de entrada del fluido y
out
T la temperatura del fluido dentro de la
conduccin, que es la misma que la del fluido que sale de la conduccin. Se supone que
la capacidad calorfica del lquido es constante. Con el fin de estudiar la forma en que la
temperatura de salida sigue a la de entrada, se establece el balance de energa y se
MODELO DEL RETARDO EN EL TRANSPORTE 195

calcula la funcin de transferencia, suponiendo que los dems trminos son
momentneamente constantes:
( )
( )
( )
1
1

+
+
s
F
V
s T
s T
Q T T C F
dt
dT
VC
m
out
in
out
out in p
m out
p out


Se observa que la temperatura de salida sigue a la de entrada, si los dems trminos
permanecen constantes, con una constante de tiempo
m
out
F
V
. Dividiendo la conduccin
en N elementos iguales, de volumen
N
V
, y considerando que cada uno de esos
elementos es un tanque continuo perfectamente agitado, puede escribirse el balance de
energa del elemento simo i y su funcin de transferencia, suponiendo constantes
todas las variables a excepcin de la temperatura, de la forma siguiente:
( )
( )
( )
1
1

+
+
s
N F
V
s T
s T
N
Q
T T C F
dt
dT
C
N
V
m
out
i
in
i
out i
out
i
in p
m
i
out
p out


En cada elemento, en las condiciones indicadas, la temperatura de salida sigue a la de
entrada con una constante de tiempo
N F
V
m
out

. La funcin de transferencia global de la


conduccin, se obtiene a partir de la de los N elementos, teniendo en cuenta que la
temperatura de entrada del fluido a un elemento es igual a la temperatura de salida del
fluido del elemento situado aguas arriba:
( )
( )
( )
( )
( )
( )
( )
( )
N
m
out
N
in
N
out
in
out
in
out
in
out
s
N F
V
s T
s T
s T
s T
s T
s T
s T
s T

,
_

+

1
1
...
2
2
1
1


Al aumentar el nmero de elementos, la funcin de transferencia se aproxima al lmite:
( )
( )
s
F
V
N
m
out
N
in
out
m
out
e
s
N F
V
lim
s T
s T

,
_

1
1

que es la transformada de Laplace de un retardo puro,
m
out
F
V
.
En la prctica N debe ser bastante grande ( ) 20 N para que se aproxime
razonablemente un retardo para un salto escaln en la entrada. Sin embargo, los saltos
escaln son raros (aunque no imposibles), y dividiendo los intercambiadores de calor y
las tuberas largas en 3 ms elementos se consigue una aproximacin suficiente del
retardo de la mayora de los transitorios [MMS84].
196 FLUJO DE FLUIDOS


6.5 MODELOS DE BOMBAS IDEALES DE JARA v. 1.0
La curva caracterstica
Se denomina bomba a un sistema que intercambia materia a travs de dos planos de
control, de modo que el flujo entrante por uno de ellos es igual al saliente por el otro en
cada instante, y tal que impone la magnitud y el sentido de este flujo de materia. Para
ello deben asignarse valores de consigna al sentido y a la magnitud del flujo.
La bomba debe conectarse a dos volmenes de control, entre los que establece el flujo
de materia. Se aplica la aproximacin de mezcla agitada a la temperatura y a la
composicin del flujo a travs de la bomba, es decir, la temperatura y la composicin
del flujo son iguales a los del fluido contenido en el volumen de control del cual parte.
Al igual que en el modelo de la fuente de flujo de materia (ver Apartado 6.2.1), se
define una curva caracterstica para la bomba, de modo que exista una presin de la
carga,
max
p , por encima de la cual no sea posible bombear fluido y una presin mnima,
eps
p , por debajo de la cual la bomba no pueda extraer fluido. De esta forma se asegura
que cuando el volumen de control al cual se bombea se llene de lquido, la subida de la
presin haga cero el flujo de la bomba. Tambin se garantiza que la bomba no va a
extraer fluido de donde no existe. Para facilitar la resolucin numrica se define una
transicin lineal desde el valor de la consigna para el flujo hasta el valor cero, para lo
cual se definen las presiones
min
p y
codo
p .
SP
B A
F

representa el valor de la consigna para
el flujo de materia entre los volmenes de control A y B .

'

>

0 si
0 si
SP
B A B
SP
B A A
to
F p
F p
p
Presin existente en el plano de control por el cual
sale el fluido de la bomba.

'

>

0 si
0 si
SP
B A A
SP
B A B
from
F p
F p
p
Presin existente en el plano de control por el cual
entra el fluido a la bomba.

'

<

<

max to
max to codo
codo max
to max
codo to
to
p p
p p p
p p
p p
p p
si 0
si
si 1

Coeficiente que regula la dependencia del flujo con
la presin en el plano de control por el cual sale el
flujo de la bomba.

'

<

>

eps from
min from eps
eps min
eps from
min from
from
p p
p p p
p p
p p
p p
si 0
si
si 1

Coeficiente que regula la dependencia del flujo con
la presin en el plano de control del cual entra el
flujo a la bomba.
SP
B A from to B A
F F


Relacin entre el flujo de materia que proporciona
la bomba y el valor de la consigna.
MODELOS DE BOMBAS IDEALES DE JARA v. 1.0 197

Modelos de bombas ideales contenidos en la versin 1.0 de JARA
Se ha definido una clase con el modelo de la curva caracterstica de una bomba ideal
para flujo de gases, pumpGasB, y otra con el de una bomba ideal para flujo de lquidos,
pumpLiqB. Ambas son subclases de las clases que modelan la condicin de mezcla
agitada aplicada al flujo de materia entre dos volmenes de control: convecGasFlowB y
convecLiqFlowB respectivamente.
Cada una de las clases pumpGasB y pumpLiqB posee tres subclases, dependiendo de
que la consigna para el flujo de materia se exprese en unidades de flujo de masa, flujo
de moles o de flujo de volumen (ver Figuras 6.2 y 6.3). De acuerdo con la forma en que
se ha modelado la curva caracterstica de la bomba, la forma natural de expresar el flujo
es como flujo de masa (en el caso de los lquidos) o de moles (en el caso de los gases).
De esta forma, las subclases pumpMolGasB y pumpMassLiqB nicamente amplan a sus
superclases mediante la definicin del cut de variables (de flujo de informacin) que
contiene la variable terminal consigna para el flujo de materia.







Figura 6.2 Bombas de flujo de gas. Herencia. Figura 6.3 Bombas de flujo de lquido. Herencia.
Con el fin de ofrecer la posibilidad de expresar la consigna para el flujo de materia de
los gases empleando unidades de masa y la de los lquidos nmero de moles, se han
definido las clases pumpMassGasB y pumpMolLiqB. Para ello es preciso expresar la
consigna para el flujo en moles por unidad de tiempo en funcin de la misma en masa
por unidad de tiempo y de la composicin del flujo en fraccin en masa. Igualmente, es
preciso expresar la consigna en masa por unidad de tiempo en funcin de la misma en
moles por unidad de tiempo y de la composicin expresada como fraccin molar.
La notacin empleada para la consigna del flujo contiene informacin acerca del criterio
de signos para el flujo: se supone que la bomba conecta dos volmenes de control A y
B y que se considera positivo el flujo cuando sale de A y entra en B y negativo en
sentido contrario, entonces la consigna del flujo tendr como subndice B A .

'

>

0 si
0 si
,
1 :
,
1 :
, ,
m SP
B A
N
i i
B
B
i
m SP
B A
N
i i
A
A
i
m SP
B A
n SP
B A
F
M m
m
F
M m
m
F F
comp
comp

Consigna para el flujo expresada en moles por
unidad de tiempo en funcin de la misma expresada
en masa por unidad de tiempo y de la fraccin en
masa de la mezcla contenida en el volumen de
control del cual parte el flujo.
gasFlow2qI
convecGasFlowB
pumpGasB
pumpMolGasB
pumpMassGasB
pumpVolGasB
liqFlow2qI
convecLiqFlowB
pumpLiqB
pumpMassLiqB
pumpMolLiq
B
pumpVolLiqB
198 FLUJO DE FLUIDOS

'

>

0 si
0 si
,
1 :
,
1 : , ,
n SP
B A
N
i
B
i
B
i
n SP
B A
N
i
A
i
A
i
n SP
B A
m SP
B A
F
n
M n
F
n
M n
F F
comp
comp

Consigna para el flujo expresada en masa por
unidad de tiempo en funcin de la misma expresada
en moles por unidad de tiempo y de la fraccin
molar de la mezcla contenida en el volumen de
control del cual parte el flujo.

Las clases pumpVolGasB y pumpVolLiqB se han definido con el fin de permitir
expresar la consigna para el flujo en volumen por unidad de tiempo. Sea
i
la densidad
del componente i de la mezcla lquida cuando se encuentra puro y sea
mezcla
la
densidad total de la mezcla. La forma en que se relaciona la consigna para el flujo
expresada como volumen por unidad de tiempo,
V SP
B A
F
,

, con la misma expresada como


masa por unidad de tiempo,
m SP
B A
F
,

, es:
mezcla
V SP
B A
m SP
B A
F F
, ,


Relacin entre la consigna expresada como
volumen por unidad de tiempo con la misma
expresada como masa por unidad de tiempo.

'

>

0 si
1
0 si
1
,
1 :
,
1 :
m SP
B A N
i i
B B
i
m SP
B A N
i i
A A
i
mezcla
F
m m
F
m m
comp
comp


La densidad de la mezcla que circula por la bomba
es igual a la densidad del fluido contenido en el
volumen de control del cual parte el flujo.

Se considera a continuacin el caso en el cual los dos volmenes de control A y B que
conecta la bomba contienen mezclas gaseosas. Adoptando el mismo criterio de signos
anterior para el flujo y asumiendo que las mezclas de gases obedecen la ecuacin de
estado de los gases perfectos, puede relacionarse la consigna para el flujo expresada
como volumen por unidad de tiempo,
V SP
B A
F
,

, con la misma expresada como nmero de


moles por unidad de tiempo,
n SP
B A
F
,

, de la forma siguiente:

'

>

0 si
0 si
, ,
, ,
,
V SP
B A
V SP
B A B
B
V SP
B A
V SP
B A
A
A
n SP
B A
F F
RT
p
F F
RT
p
F
Relacin de la consigna expresada como nmero de
moles por unidad de tiempo con la misma
expresada como volumen de la mezcla gaseosa por
unidad de tiempo.

MODELOS DE BOMBAS IDEALES DE JARA v. 1.0 199

Ejemplo de aplicacin
Como ejemplo de aplicacin, se considera un sistema formado por una fuente de una
mezcla lquida de queroseno y benceno que bombea a un tanque de almacenamiento de
3
10 m de volumen y
2
4 m de seccin. Este tanque se haya conectado, mediante una
bomba, a un tanque calefactado de
3
1m de volumen y
2
1m de seccin.
La mezcla lquida que suministra la fuente est formada por un 25% en masa de
queroseno y un 75% de benceno. Las densidades son, respectivamente,
3
760 Kg/m y
3
849 Kg/m . Las capacidades calorficas, en el rango de temperaturas de inters, pueden
considerarse una funcin lineal de la temperatura: T C
p
36 . 5 446 + para el queroseno
y T C
p
60 . 4 325 + para el benceno, expresadas en ( ) K Kg J / [Cutl99].
Se considera que inicialmente ambos tanques se encuentran vacos y que la fuente
comienza a llenar el primer tanque. Transcurridos tres minutos cesa el flujo de la fuente
y un minuto ms tarde la bomba comienza a llenar el segundo tanque y cesa una vez
transcurrido un tiempo suficiente para llenarlo completamente. Una vez lleno el
segundo tanque se enciende el calefactor, que calienta la mezcla contenida en el
segundo tanque durante 6 minutos con un flujo de calor de s J E / 5 5 . 2 . A continuacin
se apaga el calefactor y la bomba vaca el segundo tanque introduciendo todo su
contenido en el primer tanque. Finalmente la fuente de materia vaca completamente el
primer tanque quedando los dos tanques vacos. En la Figura 6.4 se muestra el listado
del modelo.
model class (pumpMassSignalI) pumpCntr
{ Controlador de la bomba }
parameter event1 = 240 { Instante de disparo del evento. s } ->
event2 = 360 { Instante de disparo del evento. s } ->
event3 = 720 { Instante de disparo del evento. s } ->
event4 = 900 { Instante de disparo del evento. s }
parameter flow1 = 10 { Flujo total. Kg/s } ->
flow2 = 10 { Flujo total. Kg/s }
totalMassFSP = if Time > event4 then 0 ->
else if Time > event3 then -flow1 ->
else if Time > event2 then 0 ->
else if Time > event1 then flow2 ->
else 0
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceMassSignalI) sourceCntr
{ Controlador de la fuente }
parameter event1 = 180 { Instante de disparo del evento. s } ->
event2 = 850 { Instante de disparo del evento. s }
parameter flow1 = 40 { Flujo total. Kg/s } ->
flow2 = 40 { Flujo total. Kg/s }
totalMassFSP = if Time > event2 then flow2 ->
else if Time > event1 then 0 ->
else -flow1
massFractSP = [0.25;0.75]
tempFSP = 300
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceHeatSignalI) heatCntr
{ Controlador del calentador }
parameter heatFlowSP = 2.5E5 { Consigna para el flujo de calor. J/s }
parameter event1 = 360 { Instante de disparo del evento. s } ->
event2 = 720 { Instante de disparo del evento. s }
heatFSP = if Time > event1 and Time < event2 then -heatFlowSP else 0
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end
200 FLUJO DE FLUIDOS



model s_T_p_T
{ (1): queroseno; (2): benceno }
constant nComp = 2 { Numero de componentes }
parameter sectionTank1 = 4 { Seccin del primer tanque. m**2 } ->
sectionTank2 = 1 { Seccion del segundo tanque. m**2 }
parameter vesselVolume1 = 10 { Volumen del primer tanque. m**3 } ->
vesselVolume2 = 1 { Volumen del segundo tanque. m**3 }
parameter CpCoefM(nComp,7) = [ 446, 5.36, 0, 0, 0, 0, 0; ->
325, 4.60, 0, 0, 0, 0, 0 ] { Capacidad calorifica. J/(Kg*K) } ->
density(nComp) = [ 760 ; 849 ] { Densidad. Kg/m**3 }
submodel (liquidCp6PrefVB) tank1 {* at (-60,0) (-30,30) } ->
(nComp=nComp,section=sectionTank1,CpCoefM=CpCoefM,density=density, ->
compressCoef=1E-6,vesselVolume=vesselVolume1) ->
tank2 {* at (50,0) (20,30) } ->
(nComp=nComp,section=sectionTank2,CpCoefM=CpCoefM,density=density, ->
compressCoef=1E-6,vesselVolume=vesselVolume2)
submodel (pumpMassLiqB) pump {* at (-20,-15) (10,15) } ->
(nComp=nComp,CpCoefM=CpCoefM,pmax=2.5E4,pcodo=2.2E4,pmin=500,peps=100)
submodel (sourceMassLiqFB) sourceLiq {* at (-70,-15) (-100,15) } ->
(nComp=nComp,pmax=2.5E4,pcodo=2.2E4,pmin=1,peps=0.2, ->
CpCoefM=CpCoefM)
submodel (sourceHeatFB) sourceHeat {* at (60,0) (90,30) } (nComp=nComp)
submodel (pumpCntr) pumpCntr {* at (-20,-55) (10,-25) }
submodel (sourceCntr) sourceLiqCntr {* at (-100,-55) (-70,-25) } (nComp=nComp)
submodel (heatCntr) sourceHeatCntr {* at (60,-55) (90,-25) }
connect tank1:inMassBot at pump:inMass {* via (-45,0) (-20,0) color=3 }
connect tank2:inMassBot at pump:outMass {* via (20,0) (-5,0) color=3 }
connect tank1:inMassBot at sourceLiq:inMass {* via (-70,0) (-45,0) color=3 }
connect pumpCntr:setPointSignal at pump:setPointSignal {* color=0 }
connect sourceLiqCntr:setPointSignal at sourceLiq:setPointSignal {* color=0 }
connect sourceHeat:setPointSignal at sourceHeatCntr:setPointSignal {* color=0 }
connect sourceHeat:inHeat at tank2:inHeat {* color=1 }
end
Figura 6.4 Listado del modelo en Dymola.
En la Figura 6.5 se muestran la conexin entre los iconos Dymodraw de las clases que
componen el modelo. Se representa en color azul las conexiones entre cuts de flujo de
lquido, en color rojo las conexiones entre cuts de flujo de calor y en negro entre cuts de
flujo de informacin.







Figura 6.5 Representacin Dymodraw de los iconos de las clases del modelo.
En la Figura 6.6 se muestra el flujo de masa de cada componente y la masa de cada uno
contenida en el primer depsito. Se ha adoptado el criterio de signos de considerar el
flujo de materia positivo cuando entra a la fuente y negativo cuando sale de ella. La
Figura 6.7 contiene la representacin del flujo de masa de cada componente a travs de
la bomba y de la masa de cada componente contenida en el segundo tanque. En la
Figura 6.8 se muestra la presin en la base y en la superficie del lquido contenido en
los tanques. La presin en la superficie del lquido de los tanques cuando no estn llenos
es constante y se ha tomado como referencia para las dems presiones. El primer tanque
MODELOS DE BOMBAS IDEALES DE JARA v. 1.0 201

no se llena, con lo cual la presin en la superficie del lquido es cero en todo momento.
Cuando se llena el segundo tanque, la presin aumenta rpidamente hasta que es lo
suficientemente elevada como para anular el flujo de la bomba.







Figura 6.6 Flujo entrante a la fuente. Masa contenida en el primer tanque.








Figura 6.7 Flujo de la bomba. Masa contenida en el segundo tanque.







Figura 6.8 Presin en la base y en la superficie del lquido contenido en los tanques.
En la Figura 6.9 se muestra el volumen de lquido en cada uno de los dos tanques. La
relacin entre el volumen del segundo tanque y el volumen de lquido que contiene
cuando se encuentra lleno es una medida del error cometido al modelar la ligadura sobre
202 FLUJO DE FLUIDOS


el volumen mediante el coeficiente numrico de compresibilidad. Como se ve, en este
caso el error en el volumen es inferior al 2%.







Figura 6.9 Volumen del lquido contenido en los tanques.
En la Figura 6.10 se muestra la magnitud del flujo de calor entrante al segundo tanque y
la temperatura del lquido contenido en cada uno de los tanques.







Figura 6.10 Flujo de calor entrante al segundo tanque. Temperatura del lquido en los tanques.
6.6 ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE
FLUIDOS Y DE CALOR
En este apartado se consideran algunos ejemplos de cmo modelar un sistema, en el que
existe dependencia respecto a una coordenada espacial, mediante el mtodo del balance
de energa.
Ejemplo 1
Sea un intercambiador de calor simple consistente en un nico tubo de dimetro interior
m D 01 . 0 y longitud m L 8 en el que un hidrocarburo ligero se calienta por
condensacin de vapor a C T
S
170 . Dado que el coeficiente de transferencia de calor
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 203

del vapor a la superficie del tubo y la conductividad trmica de la pared del tubo son
muy elevados, se considera que la pared interior del tubo se encuentra a la temperatura
del vapor [Cutl99]. La viscosidad del hidrocarburo vara significativamente con la
temperatura y puede aproximarse mediante la expresin ( ) s m Kg e
T


+
/
153
1436
86 . 12
,
donde la temperatura, T , debe expresarse en K . Las dems propiedades fsicas de
inters del hidrocarburo pueden considerarse constantes con la temperatura: densidad,
3
/ 850 m kg , calor especfico por unidad de masa, ( ) K Kg J C
p
/ 2000 , y
conductividad trmica, ( ) K m W/ 140 . 0 .
El valor local del coeficiente de transferencia de calor por conveccin de la pared
interior de la tubera al hidrocarburo, supuesto que ste circula con flujo turbulento,
puede obtenerse del valor de las propiedades fsicas locales mediante la correlacin de
Sieder-Tate [Cutl99]:
14 . 0
3 / 1 8 . 0
Pr Re 023 . 0 Nu

,
_

, donde
w

es el cociente de la
viscosidad del lquido a su temperatura media por la viscosidad del fluido a la
temperatura de la pared. Sustituyendo los nmeros adimensionales de Nusselt, Nu ,
Reynolds, Re , y Prandtl, Pr , en funcin de las propiedades fsicas se obtiene:
14 . 0 3 / 1 8 . 0
023 . 0
h

,
_

,
_

,
_

w
p
C
Dv D


Correlacin de Sieder-Tate para la transferencia de
calor durante el flujo turbulento en tuberas
[Cutl99].

El trmino v en el nmero de Reynolds puede expresarse como el cociente del flujo
de masa por la seccin transversal del flujo. Dado que en condiciones normales de
funcionamiento la tubera se encuentra completamente llena de hidrocarburo, la seccin
transversal de flujo se considera igual a la seccin transversal del tubo.
La forma escogida de modelar el intercambiador consiste en seleccionar un determinado
nmero de puntos o "nodos", N (diez en este ejemplo), en los cuales se desea estimar la
temperatura, y asociar a cada uno de ellos un volumen de control (ver Figura 6.11). Se
considera que la temperatura dentro de cada volumen de control es uniforme, es decir,
que el volumen de control contiene una mezcla perfectamente agitada.
La magnitud de la masa de fluido que contiene cada volumen de control es constante, ya
que se supone que el tubo se encuentra completamente lleno de lquido y que la
magnitud del flujo es uniforme en todo el intercambiador, es decir, que no hay
acumulacin de materia. Puesto que el volumen de cada uno de lo volmenes de control
interiores es
1 2
2

,
_

N
L D
V
N
, la masa contenida es
N
V , esto es, Kg 0593 . 0 . Los
volmenes de control extremos poseen la mitad de longitud,
( ) 1 2 N
L
, y, por ello,
contienen la mitad de masa, Kg 0297 . 0 .
204 FLUJO DE FLUIDOS




















Figura 6.11 Discretizacin espacial del intercambiador en volmenes de control.
Dado que se considera que el flujo de materia es uniforme en todo el intercambiador y
que la magnitud y el sentido del flujo es independiente de las propiedades del fluido, se
modela el flujo de materia mediante bombas que conectan los volmenes de control
conteniendo las mezclas agitadas (ver Figura 6.12). De las fuentes de materia
conectadas a los volmenes de control extremos, aquella cuyo sentido del flujo es
entrante al volumen de control, determina la temperatura de entrada del hidrocarburo al
intercambiador. Se asigna en todo momento a las bombas y a las fuentes el mismo valor
de consigna para la magnitud y el sentido del flujo, de modo que no vare la masa
almacenada en cada uno de los volmenes de control. El valor inicial de la masa en cada
volumen de control es aquella que hace que la porcin correspondiente de tubo se
encuentre llena del hidrocarburo.









Figura 6.12 Modelo del flujo de materia del intercambiador.
Al modelar el volumen de control usando una instanciacin de la clase liquidCp6PrefB,
conectada a una instanciacin de la clase vesselLiqB, es decir, una instanciacin de la
clase liquidCp6PrefVB, pueden darse al volumen y a la seccin del volumen de control
valores arbitrarios, pero de tal forma que el volumen sea superior al del fluido (
N
V o
2
N
V
si es uno de los volmenes de los extremos) y la seccin d lugar a presiones
moderadas en el fondo del volumen de control, de modo que no sea superior a la
mxima presin de la carga de la curva caracterstica de la fuente de materia. Con ello
se consigue que los flujos proporcionados por las bombas y las fuentes sean iguales al
valor de sus consignas.
m
F
m
F
m
F
m
F
m
F
m
F
m
F
m
F
1
T
2
10 N
V
10 N
V
10 N
V
2
10 N
V
2
T
9
T
10
T
1
T
2
T
3
T
8
T
9
T
10
T
l
2 l
....
.
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 205

Para estimar la variacin en la temperatura del hidrocarburo a lo largo del
intercambiador puede plantearse el balance de energa en cada uno de los volmenes de
control. La entalpa del fluido entrante al volumen de control es igual a la entalpa
saliente del volumen aguas arriba ms el calor por conveccin transmitido al fluido en la
longitud de intercambiador que separa los nodos asociados a los volmenes de control
(ver Figura 6.13). Los flujos de materia y de entalpa se consideran positivos cuando
tienen el sentido de los volmenes de control crecientes.
La resistencia trmica asociada al flujo por conveccin establecido entre la pared y el
fluido, en la porcin de tubo entre dos nodos consecutivos, es inversamente
proporcional al producto del rea mojada del tubo, Dl , por el coeficiente de
transferencia de calor, h , que se calcula mediante la correlacin de Sieder-Tate a partir
de la temperatura del fluido (igual a la del nodo aguas arriba), de la temperatura de la
pared y de la magnitud del flujo de materia. La clase convecSiederTateB, contenida en
la librera heat.lib, modela la resistencia trmica asociada al flujo de calor por
conveccin donde el coeficiente de transferencia de calor se calcula de la expresin
4
3 2
Pr Re Nu
1

,
_

w
. La clase debe ser completada con las expresiones para
evaluar la viscosidad del fluido a su temperatura media y a la temperatura de la pared y
con la expresin para evaluar la conductividad trmica del fluido.























Figura 6.13 Balance de energa en un elemento de volumen del intercambiador.
( )( )
( )( )

'

<

0 si ' 2 h
0 si ' 2 h
int
1 int
1
1
m
i
T
m
i
T
i
F T T l r
F T T l r
q
i
i


Flujo de calor por conveccin entrante al fluido
que circula entre el nodo ( ) simo i 1 y el
simo i .
H
out i
F
, 1

H
in i
F
, 1 +
H
in i
F
,
H
out i
F
,
1 i
q
i
q
i
T
1 i
T
1 + i
T
' T ' T ' T
' T ' T ' T
' T
' T
N
T
' T
' T
N
T
m
F
int
r
L
l
206 FLUJO DE FLUIDOS


( )( )
( )( )

'

<

+
+
0 si ' 2 h
0 si ' 2 h
1 int
int
1
m
i
T
m
i
T
i
F T T l r
F T T l r
q
i
i


Flujo de calor por conveccin entrante al fluido
que circula entre el nodo simo i y el
( ) simo i + 1 .
1 , 1 ,
+
i
H
out i
H
in i
q F F
El flujo de energa entrante al volumen de control
simo i es igual al saliente del volumen de
control ( ) simo i 1 ms el flujo de calor por
conveccin aadido al fluido que circula entre los
nodos simo i e ( ) simo i 1 .
( )
( )
l
F F
dt
T d
C r
H
out i
H
in i i
p
, , 2
int


Balance macroscpico de energa en el volumen
de control simo i .

Haciendo tender la longitud del elemento a cero, 0 l , y expresando el flujo de
entalpa en funcin de la temperatura, el flujo de masa y la capacidad calorfica, e
incluyendo explcitamente el trmino debido al flujo de calor por conveccin, se obtiene
el balance microscpico unidimensional:
( )
( )
( )( ) T T r
x
T
C F
t
T
C r
p
m
p
+

' 2 h
int
2
int


Balance microscpico unidimensional de
energa.

Resumiendo lo anterior, el modelo del intercambiador consiste en la conexin en serie
de volmenes de control conteniendo mezclas agitadas y bombas que los conectan. A
cada una de las bombas se conecta una resistencia trmica que modela el flujo de calor
por conveccin. Todas las resistencias se conectan a una fuente de temperatura que
modela la temperatura de la pared interna de la tubera del intercambiador, que se
supone independiente de la coordenada espacial.
Inicialmente el fluido dentro del tubo se encuentra a una temperatura de C 10 . En el
instante inicial de la simulacin comienza a entrar s Kg / 1 de hidrocarburo a una
temperatura de C 40 . A medida que avanza el fluido por el tubo va subiendo su
temperatura producto del flujo de calor proveniente de la condensacin del vapor.
Transcurridos s 5 se invierte el sentido del flujo, con lo cual el extremo caliente del
tubo pasa a ser el extremo fro y viceversa. El tiempo total de simulacin son s 10 . En la
Figura 6.14 se muestra el modelo escrito en Dymola.

model class (pumpMassSignalI) pumpCntrl
parameter event1 { Instante de disparo del evento. s } ->
massFlowSP1 { Flujo de masa. Kg/s } ->
massFlowSP2 { Flujo de masa. Kg/s }
totalMassFSP = if Time < event1 then massFlowSP1 else massFlowSP2
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceMassSignalI) massSourceCntrl
parameter event1 { Instante de disparo del evento. s } ->
massFlowSP1 { Flujo de masa. Kg/s } ->
massFlowSP2 { Flujo de masa. Kg/s } ->
inletTemp { Temperatura. K }
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 207

totalMassFSP = if Time < event1 then massFlowSP1 else massFlowSP2
massFractSP = 1
tempFSP = inletTemp
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceTempB) sourceTemp
parameter tempSteam { Temperatura del vapor. K }
sourceTemp = tempSteam
end

model SinglePassHeatExchanger
constant nComp = 1 { Numero de componentes } ->
pi = 3.141593 { Numero pi }
constant numNodes = 10 { Numero de nodos para el calculo de la temperatura }
parameter density = 850 { Densidad. Kg/m**3 } ->
CpCoefM(nComp,7) = [2E3,0,0,0,0,0,0] { Capac. calorif. por unidad de masa. J/(Kg*K)} ->
thermCondFluid(2) = [0.140; 0] { Coeficientes de la conductividad termica. } ->
viscLiq(4) = [ 1 ; ->
-12.86 ; ->
1436 ; ->
153 ] { Coeficientes de la viscosidad. }
parameter lenPipe = 8 { Longitud del intercambiador. m } ->
radiusPipe = 0.005 { Radio interno. m } ->
pipeDiameter = (2*radiusPipe) { Diametro interno. m } ->
pipePerimeter = (pi * pipeDiameter) { Perimetro interno. m } ->
pipeSection = (pi * radiusPipe**2) { Seccion transversal interna. m**2 } ->
nodesDistance = (lenPipe / (numNodes - 1) ) { Distancia entre nodos. m } ->
elemSurfArea = (pipePerimeter * nodesDistance) { Area mojada entre nodos. m**2 }
parameter pmax = 1E9 { Parametros de la curva caracteristica de la fuente y las bombas. } ->
pcodo = 0.9E9 ->
pmin = 2E-2 ->
peps = 1E-2
parameter STcoef(4) = [0.023; 0.8; 1/3; 0.14] { Coefs. de la correlacion de Sieder-Tate }
parameter tempSteam = 443 { Temperatura del vapor. K } ->
event1 = 5 { Instante de cambio de la direccion del flujo. s } ->
massFlowSP1 = 1 { Flujo de masa antes de event1. Kg/s } ->
massFlowSP2 = 1 { Flujo de masa despues de event1. Kg/s } ->
inletTemp = 313 { Temperatura de entrada del hidrocarburo. K }
submodel (liquidCp6PrefVB) volCntrl1 {* at (-91,0) (-80,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl2 {* at (-72,0) (-61,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl3 {* at (-53,0) (-42,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl4 {* at (-34,0) (-23,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl5 {* at (-15,0) (-4,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl6 {* at (4,0) (15,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl7 {* at (23,0) (34,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl8 {* at (42,0) (53,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl9 {* at (61,0) (72,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density) ->
volCntrl10 {* at (80,0) (91,12) } ->
(nComp=1,section=1,CpCoefM=CpCoefM,vesselVolume=1E5,density=density)
submodel (pumpMassLiqB) pump1 {* at (-81,20) (-71,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump2 {* at (-62,20) (-52,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump3 {* at (-43,20) (-33,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump4 {* at (-24,20) (-14,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump5 {* at (-5,20) (5,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump6 {* at (14,20) (24,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump7 {* at (33,20) (43,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump8 {* at (52,20) (62,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pump9 {* at (71,20) (81,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
submodel (convecSiederTateB) convecHeat1 {* at (-81,40) (-71,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat2 {* at (-62,40) (-52,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
208 FLUJO DE FLUIDOS


convecHeat3 {* at (-43,40) (-33,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat4 {* at (-24,40) (-14,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat5 {* at (-5,40) (5,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat6 {* at (14,40) (24,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat7 {* at (33,40) (43,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat8 {* at (52,40) (62,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid) ->
convecHeat9 {* at (71,40) (81,50) rotation=-90 } ->
(nCompI=1,nCompO=nComp,STcoef=STcoef,visc=viscLiq,CpCoefM=CpCoefM, ->
pipeDiameter=pipeDiameter,pipeSection=pipeSection, ->
pipeSurfaceArea=elemSurfArea,thermCondCoef=thermCondFluid)
submodel (sourceMassLiqFB) source1 {* at (-100,20) (-90,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
source2 {* at (90,20) (100,30) } ->
(nComp=1,CpCoefM=CpCoefM,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
submodel (sourceTemp) sourceTemp {* at (-5,60) (5,70) rotation=90 } ->
(tempSteam=tempSteam)
submodel (pumpCntrl) pumpCntrl {* at (-5,-30) (5,-20) } ->
(event1=event1,massFlowSP1=massFlowSP1,massFlowSP2=-massFlowSP1)
submodel (massSourceCntrl) source1Cntrl {* at (-100,-30) (-90,-20) } ->
(nComp=nComp,event1=event1,massFlowSP1=-massFlowSP1, ->
massFlowSP2=massFlowSP2,inletTemp=inletTemp) ->
source2Cntrl {* at (90,-30) (100,-20) } ->
(nComp=nComp,event1=event1,massFlowSP1=massFlowSP1, ->
massFlowSP2=-massFlowSP2,inletTemp=inletTemp)
{ Set point signals }
connect source1Cntrl:setPointSignal at source1:setPointSignal {* color=0 }
connect source2Cntrl:setPointSignal at source2:setPointSignal {* color=0 }
connect pumpCntrl:setPointSignal at pump1:setPointSignal ->
{* via (-76,20) (-76,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump2:setPointSignal ->
{* via (-57,20) (-57,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump3:setPointSignal ->
{* via (-38,20) (-38,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump4:setPointSignal ->
{* via (-19,20) (-19,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump5:setPointSignal ->
{* via (0,20) (0,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump6:setPointSignal ->
{* via (19,20) (19,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump7:setPointSignal ->
{* via (38,20) (38,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump8:setPointSignal ->
{* via (57,20) (57,-20) (0,-20) color=0 }
connect pumpCntrl:setPointSignal at pump9:setPointSignal ->
{* via (76,20) (76,-20) (0,-20) color=0 }
{ Mass flow }
connect volCntrl1:inMassBot at source1:inMass ->
{* via (-85,0) (-99,0) (-99,25) color=3 }
connect volCntrl1:inMassBot at pump1:inMass ->
{* via (-85,0) (-80,0) (-80,25) color=3 }
connect volCntrl2:inMassBot at pump1:outMass ->
{* via (-66,0) (-72,0) (-72,25) color=3 }
connect volCntrl2:inMassBot at pump2:inMass ->
{* via (-66,0) (-61,0) (-61,25) color=3 }
connect volCntrl3:inMassBot at pump2:outMass ->
{* via (-47,0) (-53,0) (-53,25) color=3 }
connect volCntrl3:inMassBot at pump3:inMass ->
{* via (-47,0) (-42,0) (-42,25) color=3 }
connect volCntrl4:inMassBot at pump3:outMass ->
{* via (-28,0) (-34,0) (-34,25) color=3 }
connect volCntrl4:inMassBot at pump4:inMass ->
{* via (-28,0) (-23,0) (-23,25) color=3 }
connect volCntrl5:inMassBot at pump4:outMass ->
{* via (-9,0) (-14,0) (-14,25) color=3 }
connect volCntrl5:inMassBot at pump5:inMass ->
{* via (-9,0) (-4,0) (-4,25) color=3 }
connect volCntrl6:inMassBot at pump5:outMass ->
{* via (9,0) (4,0) (4,25) color=3 }
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 209

connect volCntrl6:inMassBot at pump6:inMass ->
{* via (9,0) (14,0) (14,25) color=3 }
connect volCntrl7:inMassBot at pump6:outMass ->
{* via (28,0) (23,0) (23,25) color=3 }
connect volCntrl7:inMassBot at pump7:inMass ->
{* via (28,0) (34,0) (34,25) color=3 }
connect volCntrl8:inMassBot at pump7:outMass ->
{* via (47,0) (42,0) (42,25) color=3 }
connect volCntrl8:inMassBot at pump8:inMass ->
{* via (47,0) (53,0) (53,25) color=3 }
connect volCntrl9:inMassBot at pump8:outMass ->
{* via (66,0) (61,0) (61,25) color=3 }
connect volCntrl9:inMassBot at pump9:inMass ->
{* via (66,0) (72,0) (72,25) color=3 }
connect volCntrl10:inMassBot at pump9:outMass ->
{* via (85,0) (80,0) (80,25) color=3 }
connect volCntrl10:inMassBot at source2:inMass ->
{* via (85,0) (91,0) (91,25) color=3 }
{ Heat flow }
connect convecHeat1:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat1:outHeat at pump1:inHeat {* color=1 }
connect convecHeat2:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat2:outHeat at pump2:inHeat {* color=1 }
connect convecHeat3:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat3:outHeat at pump3:inHeat {* color=1 }
connect convecHeat4:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat4:outHeat at pump4:inHeat {* color=1 }
connect convecHeat5:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat5:outHeat at pump5:inHeat {* color=1 }
connect convecHeat6:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat6:outHeat at pump6:inHeat {* color=1 }
connect convecHeat7:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat7:outHeat at pump7:inHeat {* color=1 }
connect convecHeat8:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat8:outHeat at pump8:inHeat {* color=1 }
connect convecHeat9:inHeat at sourceTemp:inHeat {* color=1 }
connect convecHeat9:outHeat at pump9:inHeat {* color=1 }
end

Figura 6.14 Listado del modelo.
En la Figura 6.15 se muestra el diagrama Dymodraw del modelo.























Figura 6.15 Representacin Dymodraw del modelo.
En las Figuras 6.16 y 6.19 se muestra la evolucin de la temperatura de los diez
volmenes de control durante todo el curso de la simulacin. En las Figuras 6.17 y 6.20
se muestra un detalle la evolucin durante las primeras dcimas de segundo y en las
Figuras 6.18 y 6.21 los primeros ochenta segundos despus del cambio de sentido.
210 FLUJO DE FLUIDOS











Figura 6.16 Temperatura en los cinco primeros volmenes de control.










Figura 6.17 Detalle de la evolucin inicial de la temperatura en los cinco primeros volmenes de control.









Figura 6.18 Temperatura tras el cambio de sentido del flujo en los cinco primeros volmenes de control.
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 211











Figura 6.19 Evolucin de la temperatura en los ltimos cinco volmenes de control.


















Figura 6.20 Evolucin inicial de la temperatura en los cinco primeros volmenes de control.














Figura 6.21 Temperatura tras el cambio de sentido del flujo en los ltimos cinco volmenes de control.
212 FLUJO DE FLUIDOS


La energa del fluido entrante a cada elemento de control interno es igual a la suma de la
entalpa del fluido saliente del volumen de control aguas arriba ms el calor aadido al
flujo por conveccin en el recorrido entre el nodo del volumen de control y el del
volumen de control aguas arriba (ver, por ejemplo, Figura 6.22). Para el clculo del
flujo de calor por conveccin se considera que el fluido en este recorrido se encuentra a
la temperatura del fluido contenido en el volumen de control aguas arriba.









Figura 6.22 Flujos de entalpa entrante y saliente y flujo de calor entrante a la primera bomba.
Ejemplo 2
Sea un intercambiador de calor de longitud m L 1 formado por dos tuberas
concntricas en que se emplea agua para refrigerar una mezcla gaseosa de dixido de
carbono y dixido de azufre. La tubera interior es de cobre, posee una conductividad
trmica de ( ) K m W
w
381 y tiene un dimetro interior de mm D 92 . 18
1
y un
dimetro exterior de mm D 22 . 22
2
, con lo cual su pared tiene un grosor de mm 65 . 1 .
El cobre posee una densidad
3
/ 8950 m Kg
w
y una capacidad calorfica
( ) K Kg J C
w p
/ 383
,
. La tubera exterior es de acero, con un dimetro interior de
mm D 1 . 38
3
, y se encuentra muy bien aislada del entorno [Cutl99].
El agua empleada como refrigerante circula por la tubera externa. El valor de consigna
para su flujo se escoge de modo que ste sea aproximadamente treinta veces el del gas.
La temperatura de entrada del agua son C 18 . La densidad del agua se considera
3
/ 996 m Kg
l
, su calor especfico ( ) K Kg KJ C
l p
/ 185 . 4
,
, su conductividad
trmica ( ) K m W
l
/ 61 . 0 y su viscosidad
53 . 144
69 . 541
547 . 10

T
l
e ( ) s m Kg / , donde T
debe expresarse en K .
El coeficiente de transferencia de calor por conveccin entre las paredes de la tubera
interna y los fluidos refrigerante,
l
h , y refrigerado,
g
h , se obtiene en este ejemplo de la
correlacin de Dittus-Boelter [Cutl99]:
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 213

3 . 0
,
8 . 0
1 1 g
023 . 0
h

,
_

,
_

g
g g p
g
g g
g
C v D D


Correlacin de Dittus-Boelter para la transferencia
de calor por conveccin entre la pared de la tubera
interna y la mezcla gaseosa.
4 . 0
,
8 . 0
2 2
023 . 0
h

,
_

,
_

l
l l p
l
l l
l
l
C
v D D


Correlacin de Dittus-Boelter para la transferencia
de calor por conveccin entre la pared de la tubera
interna y el agua.

El fluido refrigerado es una mezcla gaseosa de dixido de carbono y dixido de azufre.
Los valores medios utilizados para la capacidad calorfica son:
( ) K Kg KJ C
CO p
/ 837 . 0
2
,
para el dixido de carbono y ( ) K Kg KJ C
SO p
/ 657 . 0
2
,

para el dixido de azufre. Considerando que la fraccin molar de cada uno de los gases
es aproximadamente 5 . 0 , la viscosidad media de la mezcla en el rango de temperaturas
de inters vale aproximadamente ( ) s m Kg
g


/ 10 55 . 1
5
y su conductividad trmica
aproximadamente ( ) K m
g
W/ 0.014 .
El modelo realizado es muy simple. Se consideran las dinmicas trmicas de la mezcla
gaseosa, el agua y la pared de la tubera interna. Los flujos de calor considerados son los
convectivos entre la mezcla gaseosa y la pared de la tubera interna y entre sta y el
agua, as como el flujo por conduccin a lo largo de la pared de la tubera interna.
Otro modelo posible, ms sencillo que el anterior, consistira en despreciar el flujo de
calor por conduccin y la dinmica de calentamiento o enfriamiento de la mezcla
gaseosa y de la pared de la tubera interna, suponindose que alcanzan instantneamente
el equilibrio, de modo que la nica dinmica trmica considerada es la del agua, de
modo que se supone que el flujo de calor entre la mezcla gaseosa y el agua alcanza
instantneamente el estacionario y que la resistencia trmica por unidad de longitud
entre ambos es igual a la suma de tres trminos: el debido a la conveccin en la mezcla
gaseosa,
g
g th
D
R
h
1
1
,

, el debido a la conduccin en la pared de la tubera interior,


w
w th
D
D
R
2
ln
1
2
,

,
_

, y el debido a la conveccin en el agua,


l
l th
D
R
h
1
2
,

. Al realizar la
conexin en serie de las resistencias, se intercala entre cada pareja de resistencias el
modelo de un volumen de control conteniendo un slido con una capacidad trmica,
p
mC , pequea. La finalidad es que la temperatura en el punto de conexin sea una
variable de estado, con lo cual se evita la formacin de lazos algebraicos. La capacidad
trmica debe ser lo suficientemente pequea como para que su dinmica asociada sea
tan rpida, comparada con las dinmicas de inters, que sea despreciable, pero, a su vez,
no ms pequea de lo necesario, a fin de evitar que el sistema sea stiff.
A fin de estudiar la variacin de la temperatura con la coordenada axial, se ha dividido
el intercambiador de calor en 10 N elementos. Al igual que en el ejemplo anterior, la
longitud de los elementos situados en los extremos, ( ) ( ) 1 2 / N L , es la mitad que la de
los elementos interiores, ( ) 1 / N L . Se considera que la mezcla gaseosa contenida en
214 FLUJO DE FLUIDOS


cada uno de los elementos tiene una temperatura uniforme. La misma suposicin se
realiza respecto a la temperatura del agua y de la pared de la tubera interna.
La magnitud y sentido del flujo de agua y de la mezcla gaseosa se consideran
independientes de la coordenada espacial y son impuestos como condiciones de
contorno. El flujo de lquido y de gas se modela mediante bombas que hacen fluir la
cantidad de materia establecida por unidad de tiempo entre los elementos. Al igual que
en el caso anterior, dado que el coeficiente de transferencia de calor por conveccin
depende de la magnitud del flujo de materia, la resistencia trmica se conecta a la
bomba.
Se supone que el flujo de la mezcla gaseosa son h Kg / 1 3 y que su temperatura de
entrada es aproximadamente K 400 . El flujo de refrigerante, treinta veces mayor que el
del gas, es h Kg / 1000 . Al comienzo de la simulacin se supone que tanto el gas como
el agua en el intercambiador se encuentran a K 283 . Inicialmente ambos flujos tienen
el mismo sentido. Transcurridos s 120 se invierte el sentido del flujo de agua. s 120
ms tarde se invierte el sentido de circulacin de la mezcla gaseosa. s 120 ms tarde se
vuelve a invertir el sentido del flujo de agua de modo que recupera su sentido inicial.
Finalmente, s 120 ms tarde se invierte el sentido de circulacin de la mezcla gaseosa,
de modo que ambos flujos circulan con el mismo sentido. El tiempo total simulado son
s 600 . Se asignan las condiciones iniciales a las variables de estado en el fichero de
comandos (no se incluye su listado). En la Figura 6.23 se muestra el modelo.

model class (pumpMassSignalI) pumpCntrl
parameter event1 { Instante de disparo de un evento. s } ->
event2 { Instante de disparo de un evento. s }
parameter massFlowSP1 { Consigna para el flujo de masa. Kg/s } ->
massFlowSP2 { Consigna para el flujo de masa. Kg/s }
totalMassFSP = if Time < event1 or Time > event2 then massFlowSP1 else massFlowSP2
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (pumpMolSignalI) pumpMolCntrl
parameter event1 { Instante de disparo de un evento. s } ->
event2 { Instante de disparo de un evento. s }
parameter molFlowSP1 { Consigna para el flujo de moles. mol/s } ->
molFlowSP2 { Consigna para el flujo de moles. mol/s }
totalMolFSP = if Time < event1 or Time > event2 then molFlowSP1 else molFlowSP2
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceMassSignalI) massSourceCntrl
parameter event1 { Instante de disparo de un evento. s } ->
event2 { Instante de disparo de un evento. s }
parameter massFractionSP(nComp)
parameter massFlowSP1 { Consigna para el flujo de masa. Kg/s } ->
massFlowSP2 { Consigna para el flujo de masa. Kg/s } ->
inletTemp { Consigna para la temperatura. K }
totalMassFSP = if Time<event1 or Time>event2 then massFlowSP1 else massFlowSP2
massFractSP = massFractionSP
tempFSP = inletTemp
{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model class (sourceMolSignalI) molSourceCntrl
parameter event1 { Instante de disparo de un evento. s } ->
event2 { Instante de disparo de un evento. s }
parameter molFlowSP1 { Consigna para el flujo de moles. mol/s } ->
molFlowSP2 { Consigna para el flujo de moles. mol/s }
parameter molFractionSP(nComp) { Fraccion molar de los componentes } ->
inletTemp { Consigna para la temperatura. K }
totalMolFSP = if Time < event1 or Time > event2 then molFlowSP1 else molFlowSP2
molFractSP = molFractionSP
tempFSP = inletTemp
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 215

{* layer icon }
{* text "cntrl" (-70,-70) (70,70) color=0 }
end

model DoublePipeHeatExchanger {* (-90, -90) (90, 90) grid (1,1) }
{
Gas. (1): Dioxido de carbono; (2): Dioxido de azufre
Liquid0. (1): Agua
}
constant nCompL = 1 { Numero de componentes de la mezcla liquida } ->
nCompG = 2 { Numero de componentes de la mezcla gaseosa } ->
pi = 3.141593 { Numero pi }

constant numNodes = 10 { Numero de nodos para la temperatura }
parameter perfGasConst = 8.31 { Constante de los gases perfectos. J/(mol*K) }
{ Parametros del liquido }
parameter densityL = 996 { Densidad. Kg/m**3 } ->
CpCoefML(nCompL,7) = [4185,0,0,0,0,0,0] { Capacidad calorifica por masa. J/(Kg*K) } ->
viscLiq(4) = [ 1 ; ->
-10.547 ; ->
541.69 ; ->
144.53 ] { Coeficientes de la viscosidad } ->
thermCondL(2) = [0.61; 0] { Coef. de la conductidad termica. W/(m*K) }
{ Parametros del gas }
parameter CpCoefNG(nCompG,7) = [36.83,0,0,0,0,0,0; ->
42.05,0,0,0,0,0,0] { Cap. cal. por mol a press cte. J/(mol*K) } ->
CpCoefMG(nCompG,7) = [837,0,0,0,0,0,0; ->
657,0,0,0,0,0,0] { Cap. cal. por masa a press cte. J/(Kg*K) } ->
viscGas(4) = [1.55E-5; 0; 0; 1] { Viscosidad. Kg/(m*s) } ->
thermCondG(2) = [0.014; 0] { Coef. de la conduc. termica. W/(m*K) } ->
molecWeigthG(2) = [44E-3; 64E-3 ] { Peso molecular. Kg/mol }
{ Datos del intercambiador }
parameter lenPipe = 1 { Longitud de la tuberia. m } ->
pipeDiameter1 = 18.92E-3 { Diametro interno de la tuberia interna. m } ->
pipeDiameter2 = 22.22E-3 { Diametro externo de la tuberia interna. m } ->
pipeDiameter3 = 38.10E-3 { Diametro interno de la tuberia externa. m }
parameter sectionInt = ( pi * (pipeDiameter1/2)**2 ) ->
sectionExt = ( pi * ( (pipeDiameter3/2)**2 - (pipeDiameter2/2)**2 ) ) ->
areaInt = ( pi * pipeDiameter1 * lenPipe / (numNodes - 1) ) ->
areaExt = ( pi * pipeDiameter2 * lenPipe / (numNodes - 1) ) ->
volElemInt = ( sectionInt * lenPipe / (numNodes - 1) )
parameter pmax = 1E9 { Parametros de la curva caracteristica de la fuente y las bombas } ->
pcodo = 0.9E9 ->
pmin = 2E-2 ->
peps = 1E-2
parameter eventG1 = 240 { Cambio en la direccion del gas. s } ->
eventG2 = 480 { Cambio en la direccion del gas. s } ->
molFractionGSP(nCompG) = [0.5; 0.5] { Fraccion molar del gas. } ->
molFlowGSP1 = 0.16 { Flujo de moles del gas. mol/s } ->
molFlowGSP2 = 0.16 { Flujo de moles del gas. mol/s } ->
inletTempG = 400 { Temperatura de entrada del gas. K }
parameter eventL1 = 120 { Cambio en la direccion del liquido. s } ->
eventL2 = 360 { Cambio en la direccion del liquido. s } ->
massFractionLSP(nCompL) = 1 { Fraccion en masa del liquido. } ->
massFlowLSP1 = 0.2778 { Flujo de masa del liquido. Kg/s } ->
massFlowLSP2 = 0.2778 { Flujo de masa del liquido. Kg/s } ->
inletTempL = 291 { Temperatura de entrada del liquido. K }
parameter densityIntPipeWall = 8950 { Densidad de la pared interna. Kg/m**3 } ->
CpIntPipeWall(7) = [383;0;0;0;0;0;0] { Capac. cal. de la pared interna. J/(Kg*K) } ->
thermalCondWall = 381 { Conduct. term. de la pared interna. W/(m*K)}
parameter pipeWallSection = ( pi * ( (pipeDiameter2/2)**2 - (pipeDiameter1/2)**2 ) ) ->
massIntPipeWall = ( densityIntPipeWall * lenPipe * pipeWallSection ) ->
massElemPipe = ( massIntPipeWall / (numNodes - 1) ) ->
thermalResistance = ( lenPipe / ( thermalCondWall*pipeWallSection*( numNodes - 1 ) ) )
parameter STcoefLiq(4) = [0.023; 0.8; 0.4; 0] { Coefs. de la correlacion de Sieder-Tate } ->
STcoefGas(4) = [0.023; 0.8; 0.3; 0]
submodel (liquidCp6PrefVB) volCntrlLiq1 {* at (-91,-70) (-80,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq2 {* at (-72,-70) (-61,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq3 {* at (-53,-70) (-42,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq4 {* at (-34,-70) (-23,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq5 {* at (-15,-70) (-4,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq6 {* at (4,-70) (15,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq7 {* at (23,-70) (34,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq8 {* at (42,-70) (53,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq9 {* at (61,-70) (72,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL) ->
volCntrlLiq10 {* at (80,-70) (91,-58) } ->
(nComp=nCompL,section=1,CpCoefM=CpCoefML,vesselVolume=1E5,density=densityL)
216 FLUJO DE FLUIDOS


submodel (pumpMassLiqB) pumpL1 {* at (-81,-50) (-71,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL2 {* at (-62,-50) (-52,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL3 {* at (-43,-50) (-33,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL4 {* at (-24,-50) (-14,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL5 {* at (-5,-50) (5,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL6 {* at (14,-50) (24,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL7 {* at (33,-50) (43,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL8 {* at (52,-50) (62,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpL9 {* at (71,-50) (81,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
submodel (pumpCntrl) pumpLCntrl {* at (-5,-100) (5,-90) } ->
(event1=eventL1,event2=eventL2,massFlowSP1=massFlowLSP1,massFlowSP2=-massFlowLSP2)
submodel (sourceMassLiqFB) sourceL1 {* at (-100,-50) (-90,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
sourceL2 {* at (90,-50) (100,-40) } ->
(nComp=nCompL,CpCoefM=CpCoefML,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
submodel (massSourceCntrl) sourceL1Cntrl {* at (-100,-100) (-90,-90) } ->
(nComp=nCompL,event1=eventL1,event2=eventL2,massFlowSP1=-massFlowLSP1, ->
massFlowSP2=massFlowLSP2,massFractionSP=massFractionLSP, ->
inletTemp=inletTempL) ->
sourceL2Cntrl {* at (90,-100) (100,-90) } ->
(nComp=nCompL,event1=eventL1,event2=eventL2,massFlowSP1=massFlowLSP1, ->
massFlowSP2=-massFlowLSP2,massFractionSP=massFractionLSP, ->
inletTemp=inletTempL)
submodel (semiPerfGasCp6VB) volCntrlGas1 {* at (-91,58) (-80,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=(0.5*volElemInt)) ->
volCntrlGas2 {* at (-72,58) (-61,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas3 {* at (-53,58) (-42,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas4 {* at (-34,58) (-23,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas5 {* at (-15,58) (-4,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas6 {* at (4,58) (15,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas7 {* at (23,58) (34,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas8 {* at (42,58) (53,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas9 {* at (61,58) (72,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=volElemInt) ->
volCntrlGas10 {* at (80,58) (91,70) rotation=90 } ->
(nComp=nCompG,perfGasConst=perfGasConst,CpCoefN=CpCoefNG, ->
vesselVolume=(0.5*volElemInt)) ->
submodel (pumpMolGasB) pumpG1 {* at (-81,50) (-71,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG2 {* at (-62,50) (-52,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG3 {* at (-43,50) (-33,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG4 {* at (-24,50) (-14,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG5 {* at (-5,50) (5,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG6 {* at (14,50) (24,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG7 {* at (33,50) (43,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG8 {* at (52,50) (62,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
pumpG9 {* at (71,50) (81,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
submodel (pumpMolCntrl) pumpGCntrl {* at (-5,100) (5,90) } ->
(event1=eventG1,event2=eventG2,molFlowSP1=molFlowGSP1,molFlowSP2=-molFlowGSP2)
submodel (sourceMolGasFB) sourceG1 {* at (-100,40) (-90,50) rotation=180 } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps) ->
sourceG2 {* at (90,50) (100,40) } ->
(nComp=nCompG,CpCoefN=CpCoefNG,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps)
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 217

submodel (molSourceCntrl) sourceG1Cntrl {* at (-100,100) (-90,90) } ->
(nComp=nCompG,event1=eventG1,event2=eventG2,molFlowSP1=-molFlowGSP1, ->
molFlowSP2=molFlowGSP2,molFractionSP=molFractionGSP,inletTemp=inletTempG) ->
sourceG2Cntrl {* at (90,100) (100,90) } ->
(nComp=nCompG,event1=eventG1,event2=eventG2,molFlowSP1=molFlowGSP1, ->
molFlowSP2=-molFlowGSP2,molFractionSP=molFractionGSP,inletTemp=inletTempG)
submodel (solidC6B) ->
pipeWall1 {* at (-77,-5) (-67,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall2 {* at (-58,-5) (-48,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall3 {* at (-39,-5) (-29,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall4 {* at (-20,-5) (-10,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall5 {* at (-1,-5) (9,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall6 {* at (18,-5) (28,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall7 {* at (37,-5) (47,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall8 {* at (56,-5) (66,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe) ->
pipeWall9 {* at (75,-5) (85,5) } (CpCoefM=CpIntPipeWall,mass=massElemPipe)
submodel (RthConstB) condHeat12 {* at (-66,-5) (-59,5) } (Rth=thermalResistance) ->
condHeat23 {* at (-47,-5) (-40,5) } (Rth=thermalResistance) ->
condHeat34 {* at (-28,-5) (-21,5) } (Rth=thermalResistance) ->
condHeat45 {* at (-9,-5) (-2,5) } (Rth=thermalResistance) ->
condHeat56 {* at (10,-5) (17,5) } (Rth=thermalResistance) ->
condHeat67 {* at (29,-5) (36,5) } (Rth=thermalResistance) ->
condHeat78 {* at (48,-5) (55,5) } (Rth=thermalResistance) ->
condHeat89 {* at (67,-5) (74,5) } (Rth=thermalResistance)
submodel (convecSiederTateB) convHeatFL1 {* at (-81,-30) (-71,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL2 {* at (-62,-30) (-52,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL3 {* at (-43,-30) (-33,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL4 {* at (-24,-30) (-14,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL5 {* at (-5,-30) (5,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL6 {* at (14,-30) (24,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL7 {* at (33,-30) (43,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL8 {* at (52,-30) (62,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq) ->
convHeatFL9 {* at (71,-30) (81,-20) rotation=-90 } ->
(nCompI=1,nCompO=nCompL,CpCoefM=CpCoefML,thermCondCoef=thermCondL, ->
pipeDiameter=pipeDiameter2,pipeSection=sectionExt,STcoef=STcoefLiq, ->
pipeSurfaceArea=areaExt,visc=viscLiq)
submodel (convecSiederTateB) convHeatFG1 {* at (-81,20) (-71,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG2 {* at (-62,20) (-52,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG3 {* at (-43,20) (-33,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG4 {* at (-24,20) (-14,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG5 {* at (-5,20) (5,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG6 {* at (14,20) (24,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG7 {* at (33,20) (43,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
218 FLUJO DE FLUIDOS


pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG8 {* at (52,20) (62,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas) ->
convHeatFG9 {* at (71,20) (81,30) rotation=90 } ->
(nCompI=1,nCompO=nCompG,CpCoefM=CpCoefMG,thermCondCoef=thermCondG, ->
pipeDiameter=pipeDiameter1,pipeSection=sectionInt,STcoef=STcoefGas, ->
pipeSurfaceArea=areaInt,visc=viscGas)
{ Sen-ales de consigna }
connect sourceL1Cntrl:setPointSignal at sourceL1:setPointSignal {* color=0 }
connect sourceL2Cntrl:setPointSignal at sourceL2:setPointSignal {* color=0 }
connect pumpLCntrl:setPointSignal at pumpL1:setPointSignal ->
{* via (0,-91) (-76,-91) (-76,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL2:setPointSignal ->
{* via (0,-91) (-57,-91) (-57,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL3:setPointSignal ->
{* via (0,-91) (-38,-91) (-38,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL4:setPointSignal ->
{* via (0,-91) (-19,-91) (-19,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL5:setPointSignal ->
{* via (0,-91) (0,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL6:setPointSignal ->
{* via (0,-91) (19,-91) (19,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL7:setPointSignal ->
{* via (0,-91) (38,-91) (38,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL8:setPointSignal ->
{* via (0,-91) (57,-91) (57,-49) color=0 }
connect pumpLCntrl:setPointSignal at pumpL9:setPointSignal ->
{* via (0,-91) (76,-91) (76,-49) color=0 }
connect sourceG1Cntrl:setPointSignal at sourceG1:setPointSignal {* color=0 }
connect sourceG2Cntrl:setPointSignal at sourceG2:setPointSignal {* color=0 }
connect pumpGCntrl:setPointSignal at pumpG1:setPointSignal ->
{* via (0,91) (-76,91) (-76,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG2:setPointSignal ->
{* via (0,91) (-57,91) (-57,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG3:setPointSignal ->
{* via (0,91) (-38,91) (-38,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG4:setPointSignal ->
{* via (0,91) (-19,91) (-19,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG5:setPointSignal ->
{* via (0,91) (0,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG6:setPointSignal ->
{* via (0,91) (19,91) (19,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG7:setPointSignal ->
{* via (0,91) (38,91) (38,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG8:setPointSignal ->
{* via (0,91) (57,91) (57,49) color=0 }
connect pumpGCntrl:setPointSignal at pumpG9:setPointSignal ->
{* via (0,91) (76,91) (76,49) color=0 }
{ Flujo de liquido }
connect volCntrlLiq1:inMassBot at sourceL1:inMass ->
{* via (-86,-69) (-99,-69) (-99,-45) color=3 }
connect volCntrlLiq1:inMassBot at pumpL1:inMass ->
{* via (-86,-69) (-80,-69) (-80,-45) color=3 }
connect volCntrlLiq2:inMassBot at pumpL1:outMass ->
{* via (-67,-69) (-72,-69) (-72,-45) color=3 }
connect volCntrlLiq2:inMassBot at pumpL2:inMass ->
{* via (-67,-69) (-61,-69) (-61,-45) color=3 }
connect volCntrlLiq3:inMassBot at pumpL2:outMass ->
{* via (-48,-69) (-53,-69) (-53,-45) color=3 }
connect volCntrlLiq3:inMassBot at pumpL3:inMass ->
{* via (-48,-69) (-42,-69) (-42,-45) color=3 }
connect volCntrlLiq4:inMassBot at pumpL3:outMass ->
{* via (-29,-69) (-34,-69) (-34,-45) color=3 }
connect volCntrlLiq4:inMassBot at pumpL4:inMass ->
{* via (-29,-69) (-23,-69) (-23,-45) color=3 }
connect volCntrlLiq5:inMassBot at pumpL4:outMass ->
{* via (-10,-69) (-15,-69) (-15,-45) color=3 }
connect volCntrlLiq5:inMassBot at pumpL5:inMass ->
{* via (-10,-69) (-4,-69) (-4,-45) color=3 }
connect volCntrlLiq6:inMassBot at pumpL5:outMass ->
{* via (10,-69) (4,-69) (4,-45) color=3 }
connect volCntrlLiq6:inMassBot at pumpL6:inMass ->
{* via (10,-69) (15,-69) (15,-45) color=3 }
connect volCntrlLiq7:inMassBot at pumpL6:outMass ->
{* via (29,-69) (23,-69) (23,-45) color=3 }
connect volCntrlLiq7:inMassBot at pumpL7:inMass ->
{* via (29,-69) (34,-69) (34,-45) color=3 }
connect volCntrlLiq8:inMassBot at pumpL7:outMass ->
{* via (48,-69) (42,-69) (42,-45) color=3 }
connect volCntrlLiq8:inMassBot at pumpL8:inMass ->
{* via (48,-69) (53,-69) (53,-45) color=3 }
connect volCntrlLiq9:inMassBot at pumpL8:outMass ->
{* via (67,-69) (61,-69) (61,-45) color=3 }
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 219

connect volCntrlLiq9:inMassBot at pumpL9:inMass ->
{* via (67,-69) (72,-69) (72,-45) color=3 }
connect volCntrlLiq10:inMassBot at pumpL9:outMass ->
{* via (86,-69) (80,-69) (80,-45) color=3 }
connect volCntrlLiq10:inMassBot at sourceL2:inMass ->
{* via (86,-69) (91,-69) (91,-45) color=3 }
{ Flujo de gas }
connect volCntrlGas1:inMol at sourceG1:inMol {* color=5 }
connect volCntrlGas1:inMol at pumpG1:inMol {* color=5 }
connect volCntrlGas2:inMol at pumpG1:outMol {* color=5 }
connect volCntrlGas2:inMol at pumpG2:inMol {* color=5 }
connect volCntrlGas3:inMol at pumpG2:outMol {* color=5 }
connect volCntrlGas3:inMol at pumpG3:inMol {* color=5 }
connect volCntrlGas4:inMol at pumpG3:outMol {* color=5 }
connect volCntrlGas4:inMol at pumpG4:inMol {* color=5 }
connect volCntrlGas5:inMol at pumpG4:outMol {* color=5 }
connect volCntrlGas5:inMol at pumpG5:inMol {* color=5 }
connect volCntrlGas6:inMol at pumpG5:outMol {* color=5 }
connect volCntrlGas6:inMol at pumpG6:inMol {* color=5 }
connect volCntrlGas7:inMol at pumpG6:outMol {* color=5 }
connect volCntrlGas7:inMol at pumpG7:inMol {* color=5 }
connect volCntrlGas8:inMol at pumpG7:outMol {* color=5 }
connect volCntrlGas8:inMol at pumpG8:inMol {* color=5 }
connect volCntrlGas9:inMol at pumpG8:outMol {* color=5 }
connect volCntrlGas9:inMol at pumpG9:inMol {* color=5 }
connect volCntrlGas10:inMol at pumpG9:outMol {* color=5 }
connect volCntrlGas10:inMol at sourceG2:inMol {* color=5 }
{ Flujo de calor por conduccin }
connect pipeWall1:inHeat at condHeat12:inHeat {* color=1 }
connect pipeWall2:inHeat at condHeat12:outHeat {* color=1 }
connect pipeWall2:inHeat at condHeat23:inHeat {* color=1 }
connect pipeWall3:inHeat at condHeat23:outHeat {* color=1 }
connect pipeWall3:inHeat at condHeat34:inHeat {* color=1 }
connect pipeWall4:inHeat at condHeat34:outHeat {* color=1 }
connect pipeWall4:inHeat at condHeat45:inHeat {* color=1 }
connect pipeWall5:inHeat at condHeat45:outHeat {* color=1 }
connect pipeWall5:inHeat at condHeat56:inHeat {* color=1 }
connect pipeWall6:inHeat at condHeat56:outHeat {* color=1 }
connect pipeWall6:inHeat at condHeat67:inHeat {* color=1 }
connect pipeWall7:inHeat at condHeat67:outHeat {* color=1 }
connect pipeWall7:inHeat at condHeat78:inHeat {* color=1 }
connect pipeWall8:inHeat at condHeat78:outHeat {* color=1 }
connect pipeWall8:inHeat at condHeat89:inHeat {* color=1 }
connect pipeWall9:inHeat at condHeat89:outHeat {* color=1 }
{ Flujo de calor por conveccion entre la pared de la tuberia y el liquido }
connect convHeatFL1:inHeat at pipeWall1:inHeat {* color=1 }
connect convHeatFL1:outHeat at pumpL1:inHeat {* color=1 }
connect convHeatFL2:inHeat at pipeWall2:inHeat {* color=1 }
connect convHeatFL2:outHeat at pumpL2:inHeat {* color=1 }
connect convHeatFL3:inHeat at pipeWall3:inHeat {* color=1 }
connect convHeatFL3:outHeat at pumpL3:inHeat {* color=1 }
connect convHeatFL4:inHeat at pipeWall4:inHeat {* color=1 }
connect convHeatFL4:outHeat at pumpL4:inHeat {* color=1 }
connect convHeatFL5:inHeat at pipeWall5:inHeat {* color=1 }
connect convHeatFL5:outHeat at pumpL5:inHeat {* color=1 }
connect convHeatFL6:inHeat at pipeWall6:inHeat {* color=1 }
connect convHeatFL6:outHeat at pumpL6:inHeat {* color=1 }
connect convHeatFL7:inHeat at pipeWall7:inHeat {* color=1 }
connect convHeatFL7:outHeat at pumpL7:inHeat {* color=1 }
connect convHeatFL8:inHeat at pipeWall8:inHeat {* color=1 }
connect convHeatFL8:outHeat at pumpL8:inHeat {* color=1 }
connect convHeatFL9:inHeat at pipeWall9:inHeat {* color=1 }
connect convHeatFL9:outHeat at pumpL9:inHeat {* color=1 }
{ Flujo de calor por conveccion entre la pared de la tuberia y el gas }
connect convHeatFG1:inHeat at pipeWall1:inHeat {* color=1 }
connect convHeatFG1:outHeat at pumpG1:inHeat {* color=1 }
connect convHeatFG2:inHeat at pipeWall2:inHeat {* color=1 }
connect convHeatFG2:outHeat at pumpG2:inHeat {* color=1 }
connect convHeatFG3:inHeat at pipeWall3:inHeat {* color=1 }
connect convHeatFG3:outHeat at pumpG3:inHeat {* color=1 }
connect convHeatFG4:inHeat at pipeWall4:inHeat {* color=1 }
connect convHeatFG4:outHeat at pumpG4:inHeat {* color=1 }
connect convHeatFG5:inHeat at pipeWall5:inHeat {* color=1 }
connect convHeatFG5:outHeat at pumpG5:inHeat {* color=1 }
connect convHeatFG6:inHeat at pipeWall6:inHeat {* color=1 }
connect convHeatFG6:outHeat at pumpG6:inHeat {* color=1 }
connect convHeatFG7:inHeat at pipeWall7:inHeat {* color=1 }
connect convHeatFG7:outHeat at pumpG7:inHeat {* color=1 }
connect convHeatFG8:inHeat at pipeWall8:inHeat {* color=1 }
connect convHeatFG8:outHeat at pumpG8:inHeat {* color=1 }
connect convHeatFG9:inHeat at pipeWall9:inHeat {* color=1 }
connect convHeatFG9:outHeat at pumpG9:inHeat {* color=1 }
end

Figura 6.23 Modelo del intercambiador de calor.
220 FLUJO DE FLUIDOS


En la Figura 6.24 se muestra la representacin Dymodraw del modelo.


































Figura 6.24 Representacin Dymodraw del modelo del intercambiador de calor.
En la Figura 6.25 se representa la temperatura de entrada del flujo de lquido a cada una
de las dos fuentes, situadas en los extremos del intercambiador, y la temperatura de
entrada del flujo de gas a cada una de las dos fuentes de flujo de gas.














Figura 6.25 Temperatura del flujo de lquido y de gas entrante a las fuentes.
ALGUNOS EJEMPLOS SENCILLOS DE FLUJO DE FLUIDOS Y DE CALOR 221

En la Figura 6.26 se representa la evolucin de la temperatura del agua contenida en el
primer, tercero, sexto y dcimo volmenes de control en que se ha dividido el flujo de
lquido.






















Figura 6.26 Temperatura del agua.
Anlogamente, en la Figura 6.27 se muestra la evolucin de la temperatura del gas
contenido en los volmenes de control primero, segundo, quinto, noveno y dcimo de
los diez en que se ha dividido el flujo de la mezcla gaseosa.
La Figura 6.28 contiene la representacin de la evolucin de la temperatura de
porciones de la pared, que separa el flujo de lquido y el de gas, contenidas en los
volmenes de control primero, tercero, sexto y noveno.
Con el fin de comparar la magnitud de las diferentes contribuciones al flujo de calor
entrante a cada uno de los elementos en que se ha dividido la pared de la tubera interna,
en la Figura 6.29 se muestra, para el segundo volumen de control, la evolucin del flujo
de calor por conduccin entre el primer volumen de control y el segundo y entre el
segundo y el tercero, as como el flujo de calor por conveccin entre el segundo
volumen de control y el flujo de gas y entre el segundo volumen de control y el flujo de
agua. El criterio de signos, de acuerdo con la forma en que se han conectado los
elementos, es considerar positivo el primero de los flujos cuando entra al segundo
volumen de control y positivos los otros tres cuando salen.
222 FLUJO DE FLUIDOS





























Figura 6.27 Temperatura de la mezcla gaseosa.


























Figura 6.28 Temperatura de la pared de la tubera interior.
BALANCE MACROSCPICO DE MOMENTO LINEAL APLICADO A UNA CONDUCCIN 223

























Figura 6.29 Flujo de calor del segundo volumen de control de la pared de la tubera interna.
6.7 BALANCE MACROSCPICO DE MOMENTO LINEAL
APLICADO A UNA CONDUCCIN
Al contrario que los balances de masa y energa, que se aplican a volmenes de control
con un nmero arbitrario de entradas y salidas de flujo de materia, el balance de
momento lineal se aplica a un volumen de control con slo una entrada y una salida de
flujo de materia: una conduccin de seccin S y longitud L constantes, que adems se
considera completamente llena de fluido.
El flujo de materia de cada componente que entra por uno de los planos de control se
considera igual, en cada instante, al que sale por el otro. Se considera que no existe ni
acumulacin de materia en el volumen de control ni retardo en el transporte a su travs.
Por ello, la concentracin del fluido entrante al elemento de control es igual en todo
momento a la del fluido saliente del mismo. Se considera igual en todo momento el
mdulo de la velocidad del fluido en ambos planos de control y en el elemento de
control. En general, la magnitud del flujo, la composicin del fluido y su velocidad
sern funcin del tiempo.
comp
m
i
m
i
N i F F ,..., 1 : , 0
2 plano 1 plano
+
El flujo de materia entrante de cada componente
es igual al saliente.
0
2 plano 1 plano
+ v v
La velocidad del flujo de materia entrante al
sistema a travs de un plano de control es igual a
la del saliente por el otro.

224 FLUJO DE FLUIDOS


La velocidad del fluido puede relacionarse con el flujo total de masa de la forma:
v S F
m

Relacin entre la velocidad, la densidad y el flujo total de masa del fluido y la
seccin de la tubera por la que circula.

El momento lineal del fluido que circula por el elemento de volumen es igual a la suma
de la masa de cada componente multiplicada por la velocidad del flujo.
v m P
comp
N
i
i

1 :

Momento lineal de un fluido.
L F P
m

Relacin entre el momento lineal del fluido, su flujo total de masa y la longitud
de la tubera por la cual circula.

Considerando que en cada instante el momento lineal del fluido entrante al elemento de
control es igual al momento lineal del fluido saliente del mismo, puede establecerse el
balance de momento lineal: la variacin en el momento lineal del fluido contenido en el
volumen de control se debe a la accin de las fuerzas de presin ejercidas en los planos
de control,
p
f , a la fuerzas producidas por las superficies slidas sobre el fluido,
F
f , y
a la fuerza de la gravedad,
g
f , suponiendo que existe una diferencia de altura z entre la
posicin de los planos de control.
p g F
f f f
dt
dP
+ +
Balance dinmico de momento lineal.
p g F
f f f + + 0
Balance en el estacionario del momento lineal.
Sgz f
g

Fuerza que ejerce la gravedad en la direccin de
movimiento del fluido.
( )
2 plano 1 plano
p p S f
p

Fuerzas de presin en los planos de control.

Para evaluar la magnitud de las fuerzas ejercidas por las superficies slidas sobre el
fluido se considera el flujo estacionario de un fluido con densidad constante que circula
por una conduccin recta de seccin uniforme. La fuerza que ejercen las paredes slidas
sobre el fluido puede expresarse como suma de dos fuerzas: la que ejerceran sobre el
fluido aunque estuviese en reposo ms la fuerza adicional relacionada con el
comportamiento cintico del fluido.
sta ltima tiene la misma direccin y sentido opuesto a la velocidad media del fluido
en la conduccin y puede expresarse arbitrariamente como el producto de un rea
caracterstica (generalmente la superficie mojada), una energa cintica caracterstica del
BALANCE MACROSCPICO DE MOMENTO LINEAL APLICADO A UNA CONDUCCIN 225

fluido por unidad de volumen y un nmero adimensional denominado factor de friccin
de Fanning [Bird75],
Fanning
.
( )
Fanning F
v L
v
v
f

,
_

,
_

2
2
1

Una posible definicin del factor de friccin
Fanning para un fluido que circula por una
conduccin.

En [Bird75], [Perr84] pueden encontrarse representaciones grficas del factor de
friccin frente al nmero de Reynolds,

Dv
Re , para diferentes valores de la
rugosidad relativa de la cara interna de la conduccin,
D

(cociente entre la altura de las


protuberancias y el dimetro de la conduccin), para tuberas circulares, rectas, largas y
completamente llenas de fluido.
Existen correlaciones explcitas e implcitas para el factor de friccin. Por ejemplo, si la
tubera es circular, larga (su longitud es mucho mayor que su dimetro), recta y lisa, el
factor de friccin depende nicamente del nmero de Reynolds, supuesto que el fluido
tuviera una temperatura homognea [Perr84]:

'

>
<

inestable te generalmen 10 * 2.1 Re


estable 10 * 2.1 Re

Re
16
3
3
Fanning


Ecuacin explcita para flujo laminar
en tubos largos, lisos y circulares.
5 3
4 / 1
10 Re 10 * 2.1 ,
Re
0791 . 0
< <
Fanning

Ecuacin explcita de Blasius para
flujo turbulento en tubos largos, lisos
y circulares.
( ) 4 . 0 Re log 0 . 4
1

Fanning
Fanning


Frmula implcita de Nikuradse para
flujo turbulento.

El valor 2100 para el nmero de Reynolds no representa el lmite inferior al cual se
produce la transicin natural de flujo laminar a turbulento, sino que representa el lmite
a partir del cual el flujo turbulento, una vez establecido, puede mantenerse en una
tubera larga [Perr84].
Para flujo turbulento, 3000 Re > , en tuberas largas y rectas donde la rugosidad de la
superficie, caracterizada por el cociente
D

, es importante, completamente llenas de un


fluido con temperatura uniforme, se usan frecuentemente, entre otras, la ecuacin
implcita de Colebrook y White (en [Perr84] est representada grficamente su solucin
226 FLUJO DE FLUIDOS


en funcin de Re y
D

), la ecuacin explcita de Shacham y la ecuacin explcita de


Haaland [Perr84] [Cutl99]. En [Perr84] y [Bird75] se discute la aplicacin del factor de
friccin al caso de tubos largos, rectos y con seccin no circular (por ejemplo, anular,
cuadrada, triangular, etc.).
6.8 MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS
LQUIDAS EN JARA v. 1.0
Tal como se explic en apartados precedentes, las clases convecGasFlowB y
convecLiqFlowB, que modelan la condicin de mezcla agitada aplicada a la temperatura
y composicin del flujo por conveccin entre dos volmenes de control, deben ser
completadas por una expresin de la cual evaluar la magnitud total del flujo de materia.
En las clases que modelan las bombas, la magnitud del flujo de materia es funcin de su
valor de consigna y de la presin en los volmenes de control que conecta.
En este apartado y en el siguiente se supone que la magnitud del flujo de materia entre
los dos volmenes de control se obtiene de establecer el balance de momento lineal
(dinmico o en el estacionario) en la conduccin a travs de la cual se produce. En
primer lugar se estudiar el flujo de mezclas lquidas y, en el siguiente apartado, el de
mezclas gaseosas.
6.8.1 Balance dinmico de momento lineal
La clase pipeDynLiqB, subclase de convecLiqFlowB, contiene el balance de momento
lineal aplicado a una tubera larga (su longitud es mucho mayor que su dimetro), recta
y de seccin arbitraria, pero constante, completamente llena de lquido, que conecta dos
volmenes de control conteniendo cada uno una mezcla lquida con una presin,
temperatura y concentracin bien definidas. Se supone que actan tres fuerzas, en la
direccin del flujo, sobre la mezcla lquida que llena la tubera: la gravitatoria (supuesto
que la tubera se encuentra inclinada respecto a la horizontal), la debida a la diferencia
de presiones entre los extremos de la tubera y la debida a la friccin del fluido en
movimiento con las paredes internas de la tubera.
Se supone que el flujo convectivo se produce entre dos mezclas lquidas, contenidas en
sendos volmenes de control, que se representan por A y B . El criterio adoptado de
considerar que el flujo de masa, el momento lineal y la velocidad tienen sentido positivo
cuando van de A a B . Se consideran constantes en el modelo:
L
Longitud de la tubera.
S
Seccin de la tubera.
L S
w

Superficie interna de la conduccin, mojada por la mezcla lquida.
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 227

B plano A plano
z z z


Diferencia de altura entre los extremos de la tubera.
puro
i

Densidad del componente i de la mezcla lquida cuando se encuentra puro.

La clase pipeDynLiqB debe ser completada con una expresin para el clculo del factor
adimensional de Fanning,
Fanning
, dependiente de la geometra de la seccin de la
tubera, de las caractersticas de su pared interna, de la velocidad, densidad y viscosidad
de la mezcla lquida, etc. Las ecuaciones de la clase, con la causalidad computacional
sealada, suponiendo que son conocidas las variables across de la interfaz, son:
[ ]

'

<

0 si
0 si
1 :
1 :
P
m
m
P
m
m
comp
comp
N
i
puro
i
B
i
B
N
i
puro
i
A
i
A


Condicin de tanque agitado para la densidad del
flujo: la densidad de la mezcla lquida fluyente es
la misma que la existente en el lquido en reposo
de la cual parte. El volumen total de la mezcla se
obtiene aplicando la ley de Amagat.
[ ] ( )
B A
p
p p S f
plano plano

Fuerzas debida a la diferencia de presiones entre
los extremos de la tubera.
[ ] Sgz f
g

Fuerza que ejerce la gravedad en la direccin de
movimiento del fluido.
( ) [ ] L F P
conv
B A
m


Relacin entre el momento lineal del fluido, su
flujo total de masa y la longitud de la tubera por la
cual circula.
( ) [ ] v S F
conv
B A
m


Relacin entre la velocidad, la densidad y el flujo
total de masa del fluido y la seccin de la tubera
por la que circula.
( ) 0 ) (

conv
B A
m
F isPosit new
Definicin de la variable de estado lgica
isPosit .
[ ]

'

t not isPosi T
isPosit T
T
si
si
B
A

Condicin de tanque agitado para la temperatura
del flujo.
[ ] ( ) ,... , , T v
Fanning Fanning

Factor adimensional de Fanning. Debe completarse
la clase pipeDynLiqB con una expresin que
permita su evaluacin.
228 FLUJO DE FLUIDOS


[ ]

'

<

0 si
2
1
0 si
2
1
2
2
P v S
P v S
f
Fanning w
Fanning w
F



Fuerza debida a la friccin de la mezcla lquida
con la pared interna de la tubera.
p g F
f f f
dt
dP
+ +
1
]
1


Conservacin del momento lineal. El momento
lineal es una variable de estado.

Debe imponerse una condicin adicional: la variable de estado momento lineal, P , debe
ser puesta a cero cuando la masa contenida en el volumen de control del cual parte el
flujo sea cero:
( )
0 no y 0 si
o
0 no y 0 si
0
> <
> >

B
A
m P
m P
P init
El momento lineal del lquido es cero cuando la
masa de la mezcla lquida en movimiento sea cero,
esto es, cuando la mezcla contenida en el volumen
de control del cual parte el flujo tenga masa cero.

Al plantear las expresiones para el clculo de la fuerza debida a la diferencia de
presiones, de la fuerza de friccin y de la fuerza gravitatoria se ha supuesto que la
tubera se encuentre totalmente llena de fluido. Sin embargo, en el instante inicial o
durante la simulacin puede ocurrir que esta condicin no sea satisfecha, por ejemplo, si
la masa contenida en los volmenes de control que conecta la tubera es cero. El empleo
del modelo en condiciones en las cuales la tubera no se encuentre llena implica asumir
el error que con ello se comete. Con el fin de hacer algo menor este error se ha
modificado la expresin para el clculo de la fuerza debida a la gravedad de la forma
siguiente:
SL m
tubLlena

Masa de lquido contenido en la tubera cuando
sta se encuentra llena.

'

<

'

> <
> >
>

tubLlena
tubLlena
tubLlena
tubLlena
tubLlena
tub
y 0 si
y 0
o
y 0
si
y 0 si
m m z m
m m z
m m z
m
m m z m
m
B B
B
A
A A

Cuando la masa contenida en el volumen de
control elevado es inferior a la requerida para
llenar la tubera se asume que la masa
contenida en la tubera es igual a la contenida
en el volumen de control elevado.
L
z
g m f
g tub

Fuerza que ejerce la gravedad en la direccin
de movimiento del fluido.

MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 229

Ms adelante se expondr la finalidad del parmetro epsMomentum, que interviene en el
balance de momento de la clase pipeDynLiqB. Baste por el momento con considerar que
vale uno y, por tanto, no modifica el balance de momento. La variable terminal
controlSignal tiene la finalidad de adaptar el balance de momento a la ecuacin
constitutiva de algunos modelos sencillos de vlvulas, tal como se expondr en el
Apartado 6.8.2.
Supngase que se desea emplear una expresin para el clculo del factor de Fanning
cuando el flujo tiene rgimen laminar y otra cuando tiene rgimen turbulento.
( )
( )

'

o turbulent regimen si , Re
laminar regimen si , Re
turbulento
laminar

Fanning

Factor de friccin de Fanning
para flujo laminar y turbulento.


Una posible eleccin sera, por ejemplo [Bird75]:

'

< <
<

o) (turbulent 10 Re 2100 ,
Re
0791 . 0
(laminar) 2100 Re ,
Re
16
5
4 / 1
Fanning

Factor de friccin de Fanning
para flujo laminar y turbulento
(frmula de Blasius) en tubos
largos, lisos y circulares.


El problema que plantea esta eleccin es que puede no ser posible encontrar un estado
de reinicio al cruzar el nmero de Reynolds el valor crtico. Supngase que el flujo tiene
rgimen laminar y que, al aumentar su velocidad, el nmero de Reynolds supera el valor
crtico. Evaluando las expresiones para el clculo del factor de Fanning, para el nmero
de Reynolds crtico, se obtiene que la fuerza de friccin debida al flujo turbulento sea
mayor que la debida al laminar. Si la inercia del fluido en la conduccin es pequea
(como es el caso, tal como se ver, de la aproximacin del balance de momento en el
estacionario) el aumento de la friccin, debida al paso del rgimen laminar al
turbulento, produce una disminucin de la velocidad que puede hacer que el nmero de
Reynolds se haga inferior al crtico, con lo cual, el rgimen pasa de turbulento a
laminar. Al pasar el rgimen a laminar disminuye la fuerza de friccin, lo que produce
un aumento en la velocidad del fluido y hace que el nmero de Reynolds vuelva a
superar el valor crtico, con lo cual el rgimen pasa de laminar a turbulento, y as
sucesivamente. En la Figura 6.30 se muestra el bucle descrito anteriormente. En el
ejemplo "Dinmica del vaciado de un depsito", del Apartado 6.8.3, se discute este
problema.
Una posible solucin consiste en definir una zona de transicin entre el flujo laminar y
turbulento en la cual el factor de Fanning evolucione de forma continua, por ejemplo, de
forma lineal:
230 FLUJO DE FLUIDOS


( )
( ) ( ) ( ) ( )
( )

'

>

<

o) (turbulent Re Re si , Re
Re Re Re si
Re Re
Re Re Re Re
Re
Re Re
Re Re
(laminar) Re Re si , Re
t C, t
t C, l C,
t C, l C,
l C, l t C, t C, t l C,
t C, l C,
t C, t l C, l
l C, l

Fanning







Figura 6.30 Bucle planteado al producirse el cambio de rgimen.
La clase circSmoothPipeLiqB, subclase de pipeDynLiqB, contiene expresiones
(ecuacin de Blasius en el caso del flujo turbulento) para el clculo del factor de
friccin adimensional de Fanning de una tubera larga (su longitud, L , es mucho mayor
que su dimetro, D), de seccin circular y pared interna lisa. La clase debe ser
completada con una expresin para la viscosidad de la mezcla lquida, que es funcin,
en general, de la temperatura del fluido y de la concentracin molar (moles por unidad
de volumen) de sus componentes [Bird75]. Por tanto, debe ser completada tambin, si
procede, con expresiones para el clculo de la concentracin molar de cada componente.
( )
( )
[ ]
( )
( ) i
conv
B A
m
conv
B A
m
i
i
i
conv
B A
m
conv
B A
m
i
i i
M
F
F
c
m
m
F
F
m
n c


Concentracin
molar de cada
uno de los
componentes
de la mezcla
lquida
fluyente.
Expresin para
el componente
i .
[ ]
( )
( )

'

<

0 si ,
0 si ,
P c T
P c T
B
A


La viscosidad
de la mezcla
lquida
depende, en
general, de la
temperatura y
de la
concentracin
molar de los
componentes.
Aproximacin
de tanque
agitado para la
viscosidad.
Re v f
F
Re v f
F
Rgimen laminar
Rgimen turbulento
C
Re Re <
Re Re >
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 231

[ ]

Re
Nmero
adimensional
de Reynolds
para una
conduccin de
seccin
circular.
[ ]

'

>

<

o) (turbulent Re Re si ,
Re
0791 . 0
Re Re Re si
Re Re

Re
16
Re
Re
0791 . 0
Re
Re
Re Re
Re
0791 . 0

Re
16
(laminar) Re Re si ,
Re
16
t C, 4 / 1
t C, l C,
t C, l C,
l C,
t C, 4 / 1
t C,
l C,
t C, l C,
4 / 1
t C, l C,
l C,
Fanning


Factor de
friccin de
Fanning para
flujo laminar y
turbulento
(frmula de
Blasius) en
tubos largos,
lisos y
circulares.

6.8.2 Balance de momento lineal en estado estacionario. Vlvulas
El balance de momento lineal en estado estacionario establece que la velocidad del flujo
es tal que, en todo momento, la fuerza de friccin es igual y de signo contrario a la suma
de la componente en la direccin del movimiento de la fuerza propulsora que acta
sobre el fluido: la debida a la diferencia de presin entre los extremos de la tubera ms
la fuerza gravitatoria.
p g F
f f f + + 0
Balance de momento lineal en estado estacionario.

El modelo del balance dinmico del momento lineal considera la inercia del fluido, con
lo cual, el hecho de que la proyeccin de las fuerzas propulsoras sobre la direccin del
flujo cambie de signo no significa que el flujo de materia cambie de sentido de forma
inmediata: el sentido del flujo de materia viene determinado por el signo de la variable
de estado momento lineal.
Por el contrario, en el modelo del balance de momento lineal en estado estacionario se
considera que el momento lineal del fluido sigue instantneamente las variaciones en las
fuerzas propulsoras del fluido, de modo que en todo momento el flujo de materia tiene
el mismo sentido que la proyeccin sobre la direccin del flujo de la suma de las fuerzas
propulsoras. El sentido del flujo es igual al sentido de la suma de la componente en la
direccin del flujo de la fuerza de la gravedad ms la fuerza debida a la diferencia de
presiones.
232 FLUJO DE FLUIDOS


( )
( ) p g
p g
conv
B A
m
conv
B A
m
f f
f f
F
F
+
+


El sentido del flujo es igual al sentido de la suma
de las componentes en la direccin del flujo de la
fuerza gravitatoria y de la diferencia de presiones.

Del balance de momento lineal, puede obtenerse una expresin para el mdulo del flujo
de materia:
( )
( )
p g
Fanning w
conv
B A
m
conv
B A
m
Fanning w p g
f f
S
S F
v S F
v S f f
+


2
2
1
2


Una forma de escribir el modelo del balance anterior consiste en definir una variable
lgica que represente el sentido del flujo y expresar el flujo convectivo como una
funcin de estructura variable de las fuerzas propulsoras, dependiendo la forma de la
funcin de la variable lgica. Sin embargo, como se discuti en el Apartado 2.5.3,
deben tomarse algunas precauciones. Expresiones del tipo:
( )
( )
p g
Fanning w
p g
Fanning w
p g
conv
B A
m
f f
S
S
f f
S
S f f F
+
> + > +

2
- else
-
2
then 0 if


dan lugar a error numrico al cambiar
p g
f f + de signo, ya que el algoritmo de
simulacin detecta si se han producido eventos (en este caso, el paso de 0 > +
p g
f f de
True a False o viceversa) una vez han sido calculadas todas las variables algebraicas en
el instante de evaluacin, esto es, una vez se ha intentado calcular la raz cuadrada de un
real negativo, producindose el consiguiente error. Para que expresiones de este tipo
funcionaran sera preciso que el algoritmo de simulacin comprobara si se ha producido
el evento de cambio de signo de
p g
f f + despus de calcular
p g
f f + y antes de calcular
( )
conv
B A
m
F

, en cada instante de evaluacin, lo cual no sucede. Es aconsejable, para evitar
este tipo de problemas, emplear la funcin ( ) abs del lenguaje de modelado:
( ) ( )
( )
p g
Fanning w
p g
Fanning w
p g
conv
B A
m
f f abs
S
S
f f abs
S
S f f F
+
> + > +

2
- else
-
2
then 0 if

MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 233

Obsrvese que escribir el balance de esta forma indica al lenguaje de modelado que
cada vez que en tiempo de simulacin se detecte un evento debe suspenderse la
integracin e iterar para establecer, dentro de un determinado error numrico, el instante
en que se ha producido el evento. Este enfoque puede resultar costoso
computacionalmente si el sistema describe pequeas oscilaciones entorno al punto de
equilibrio (aquel en el cual la proyeccin de las fuerzas propulsoras en la direccin del
movimiento es cero): un valor muy pequeo de las fuerzas propulsoras da lugar a un
pequeo flujo de materia que produce un cambio de signo en la fuerza debida a la
diferencia de presiones, lo que hace que el pequeo flujo de materia se produzca en
sentido contrario y as sucesivamente. Si, como en este caso, el conocimiento de los
instantes en que se producen estos eventos carece de inters, sta no es una formulacin
adecuada del balance de momento.
Modelica proporciona la sintaxis para la descripcin de este tipo de expresiones: if-
noEvent( )-then-else [Mode99]. Puesto que Dymola no permite la descripcin de
expresiones if-then-else "suavizadas", debe modificarse el modelo. Se obtiene una
formulacin ms conveniente sustituyendo el valor absoluto del flujo, ( )
conv
B A
m
F

, por
una variable auxiliar, que se representa ( )
conv
B A
m
absF

, esto es:
( )
( )
( )
p g
p g
conv
B A
m
conv
B A
m
p g
Fanning w
conv
B A
m
f f
f f
absF
F
f f
S
S absF
+
+

2

Balance del momento lineal en estado estacionario

Sin embargo, la forma en que se han formulado estas dos ecuaciones asume de forma
implcita que de ellas van a evaluarse ( )
conv
B A
m
absF

y ( )
conv
B A
m
F

respectivamente. Si bien
no es ste el caso, puede ser preciso tener que formular el balance de momento lineal de
modo que de l pueda evaluarse, dependiendo del resultado de la asignacin de
causalidad computacional del modelo completo, bien el flujo total, ( )
conv
B A
m
F

, o bien la
suma de las fuerzas propulsoras en la direccin del movimiento,
p g
f f + . Para ello,
deben escribirse las ecuaciones de modo que sean monovaluadas para cualquiera de sus
posibles causalidades, pudiendo ser para ello preciso indicar la forma de realizar el
tearing si alguna de las causalidades posibles conduce a la formacin de un lazo
algebraico. En este caso, el balance puede reescribirse de la forma siguiente:
p g p g
f f f +
+
Se nota
p g
f
+
la suma de las fuerzas
propulsoras en la direccin del movimiento.
234 FLUJO DE FLUIDOS


( ) ( )
( )
( )
( )
( ) ec.3
ec.2
ec.1
2
p g p g
p g
p g
conv
B A
m
conv
B A
m
p g
Fanning w
conv
B A
m
f absf
absf
f
absF
F
absf
S
S absF
+ +
+
+


Balance del momento lineal en estado
estacionario

La variable auxiliar
p g
absf
+
representa el valor absoluto de la suma de las fuerzas
propulsoras en la direccin del movimiento. Su finalidad es aislar la funcin valor
absoluto para garantizar, al realizar el tearing, que de la ecuacin en que aparece esta
funcin se calcula una variable monovaluada: en la ecuacin
p g p g
f absf
+ +
, la
variable
p g
absf
+
est monovaluada, mientras que la variable
p g
f
+
est bivaluada, por
ello, de esta ecuacin debe calcularse
p g
absf
+
. Las dos posibles asignaciones de
causalidad, con la forma de iterar el lazo sealada en el segundo caso, son:
( ) ( )
conv
B A
m ec
conv
B A
m ec
p g
ec
p g
F absF absf f
+ +

2 . 1 . 3 .

( ) ( )



+ +
ec.2
1 . 3 . 2 .
ec.2


conv
B A
m ec
p g
ec
p g
ec
conv
B A
m
absF absf f F

En el segundo caso hay tres formas posibles de cortar el lazo algebraico:
Variable tearing Ecuacin residuo
( )
conv
B A
m
absF


1 . ec
p g
f
+
2 . ec
p g
absf
+
3 . ec

Al igual que en el caso del balance dinmico, la densidad de la mezcla lquida que fluye
por conveccin puede obtenerse de la condicin de tanque agitado, considerando que es
una mezcla ideal:
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 235

'

< +
+

0 si
0 si
1 :
1 :
p g
N
i
puro
i
B
i
B
p g N
i
puro
i
A
i
A
f f
m
m
f f
m
m
comp
comp


Condicin de tanque agitado para la densidad del
flujo. El volumen de la mezcla se calcula
aplicando la ley de Amagat.

Al igual que la clase pipeDynLiqB, la clase pipeStatLiqB, que modela el balance de
momento en el estado estacionario, debe ser completada con una expresin para el
clculo del factor de friccin adimensional de Fanning. En general, el factor de Fanning
depende de la velocidad, lo cual da lugar a la aparicin de un lazo algebraico (la
causalidad se ha sealado suponiendo que, conocidas las variables across de la interfaz,
deben calcularse las through):
[ ] ( )
B A
p
p p S f
plano plano

Fuerzas debida a la diferencia de
presiones entre los extremos de la tubera.
[ ]

'

< +
+

0 si
0 si
1 :
1 :
p g
N
i
puro
i
B
i
B
p g N
i
puro
i
A
i
A
f f
m
m
f f
m
m
comp
comp


Condicin de mezcla agitada para la
densidad del flujo. El volumen de la
mezcla se calcula aplicando la ley de
Amagat.
[ ] Sgz f
g

Fuerza que ejerce la gravedad en la
direccin de movimiento del fluido.
[ ]

'

it flowIsPos not T
t flowIsPosi T
T
si
si
B
A

Condicin de mezcla agitada para la
temperatura del flujo. El hecho de que
t fIowIsPosi sea una variable de estado
hace que, el hecho de que el factor de
Fanning dependa de la temperatura no da
lugar a un lazo algebraico.
( ) ( )
( ) ( )
( )
( )
( )
( ) ( ) ec.4
ec.3
ec.2
2

ec.1 ,...
v S F
f f
f f
absF
F
f f
S
S absF
v
conv
B A
m
p g
p g
conv
B A
m
conv
B A
m
p g
Fanning w
conv
B A
m
Fanning Fanning

+
+


El factor de Fanning depende, en general,
de la velocidad del fluido, lo que da lugar
a la aparicin de un lazo algebraico entre
las variables
Fanning
, v , ( )
conv
B A
m
F

y
( )
conv
B A
m
absF

.
236 FLUJO DE FLUIDOS


( ) 0 ) (

conv
B A
m
F t flowIsPosi new
Definicin de la variable de estado lgica
t fIowIsPosi .

El hecho de que la dependencia del factor de Fanning respecto de la temperatura sea, en
general, no lineal, aconseja emplear la ecuacin que relaciona sta con aquel para
evaluar el factor de Fanning. sta es una orientacin a la hora de hacer el tearing del
lazo:
( ) ( )



4 .
3 . 2 . 1 .
ec
conv
B A
m ec
conv
B A
m ec
Fanning
ec
F absF v

Causalidad preferente de cada una de
las ecuaciones a la hora de iterar el
lazo.

Puede escogerse como ecuacin residuo cualquiera de las cuatro ecuaciones, siempre
que se escoja como variable de tearing a evaluar de ella la variable a la que apunta la
punta de flecha correspondiente a esa ecuacin. De forma arbitraria se ha seleccionado
(usando para ello la funcin de Dymola residue, como se indica en el Anexo A) la
velocidad como variable de tearing y la cuarta ecuacin como residuo. Debe, por tanto,
especificarse un valor inicial para la iteracin al comienzo de la simulacin. El valor
inicial por defecto es cero.
La ecuacin constitutiva de algunos modelos de vlvulas consiste bsicamente en el
balance de modelo lineal en el estacionario modificado introduciendo un factor de
proporcionalidad,
valve
K , funcin de la apertura de la vlvula [Goul69]:
( )
p g
Fanning w
valve
conv
B A
m
f f
S
S K absF +

2

Ecuacin constitutiva de algunos modelos
sencillos de vlvula.

Se ha incluido en el modelo, a fin de ampliar su utilidad, este factor de proporcionalidad
como una variable terminal, contenida en un cut receptor de informacin. Obsrvese
que la introduccin de este factor de proporcionalidad equivale a plantear el balance de
momento en el estacionario de la forma siguiente:
( )
p g valve F
f f K f + +
2
0
Balance de momento lineal en estado estacionario.

La clase pipeStatLiqB, es una subclase de convecLiqFlowB (que modela la hiptesis de
mezcla agitada aplicada a la composicin y temperatura del flujo), modela el balance de
momento en el estado estacionario. La clase circSmoothPipeStatLiqB, contiene
expresiones para el clculo del factor de friccin adimensional de Fanning de una
tubera larga (su longitud, L , es mucho mayor que su dimetro, D), de seccin circular
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 237

y pared interna lisa. La clase debe ser completada con una expresin para la viscosidad
de la mezcla lquida.
No es conveniente, desde el punto de vista computacional, plantear el factor de Fanning
como una funcin discontinua del nmero de Reynolds, puesto que esta expresin
forma parte de un lazo algebraico. Tal como se discuti en el apartado anterior, una
posible solucin consiste en definir una zona de transicin entre el flujo laminar y
turbulento en la cual el factor de Fanning evolucione de forma continua, por ejemplo, de
forma lineal. Sin embargo, puesto que el lazo algebraico no lineal del modelo es una
fuente potencial de dificultades numricas, deben explorarse otras alternativas.
Considerar el balance de momento lineal en el estacionario supone asumir que la inercia
del fluido es lo suficientemente pequea como para ser despreciable. En lugar de
imponer que la inercia valga cero, como se hace en el balance en estado estacionario,
puede imponerse que adquiera un valor arbitrario, lo suficientemente pequeo como
para que su dinmica asociada sea tan rpida comparada con las dinmicas de inters
como para ser despreciable, pero no ms pequea de lo estrictamente necesario, a fin de
evitar que el sistema sea stiff. Con este fin, se introduce un parmetro epsMomentum,
P
,
en la clase pipeDynLiqB. El balance de momento lineal queda formulado de la forma
siguiente:
( )
t P
p g valve F t
f
dt
dP
f f K f f

+ +

2

Balance de momento lineal dinmico ( 1
P
) y
en el estacionario ( 1 <<
P
). El momento lineal
es en ambos casos una variable de estado.

La variable totalForce,
t
f , es una medida del error que se comete al emplear este
modelo en lugar del modelo en el estado estacionario (en el cual
t
f vale cero). El valor
por defecto del parmetro
P
es uno, que corresponde al balance dinmico de momento
lineal. Cuando el factor
valve
K se hace cero se asigna valor cero a la variable de estado
momento lineal.
6.8.3 Ejemplo. Dinmica de vaciado de un depsito
Se pretende simular la dinmica de vaciado de un tanque que contiene benceno a travs
de una tubera de dos pulgadas ( cm 08 . 5 ) de dimetro interno y m 2 de longitud que
desemboca a un sumidero a presin atmosfrica. El tanque tiene un volumen de
3
1 m y
su base tiene una superficie de
2
1 m . El benceno se encuentra entorno a los C 27 . A
esa temperatura su densidad vale aproximadamente
3
/ 875 m Kg , su viscosidad
2 5
/ 10 5 . 56 m s N

y su capacidad calorfica ( ) K Kg J C
p
/ 1717 [Cutl99].
Se ha conectado una fuente a la parte superior del tanque. Inicialmente el tanque se
encuentra vaco. La fuente llena el tanque con un flujo constante de s m / 01 . 0
3
durante
238 FLUJO DE FLUIDOS


diez minutos, transcurridos los cuales cesa su flujo. La simulacin finaliza una vez el
contenido del tanque se ha vaciado totalmente a travs de la tubera.
Se realizar la simulacin empleando dos modelos diferentes para la tubera. En primer
lugar se considera el balance dinmico de momento lineal modelado mediante la clase
pipeDynLiqB, pero asignando un valor pequeo al parmetro epsMomentum, de modo
que se aproxime al planteamiento en el estacionario. A continuacin se realiza la
simulacin empleando el modelo de la tubera con el balance en el estacionario, descrito
mediante la clase circSmoothPipeStatLiqB.
Con el fin de ilustrar los problemas a los que sto conduce, supngase que el factor de
friccin de Fanning se expresa como una funcin discontinua del nmero de Reynolds
de la forma siguiente:

'

< <
<

o) (turbulent 10 Re 2100 ,
Re
0791 . 0
(laminar) 2100 Re ,
Re
16
5
4 / 1
Fanning

Factor de friccin de Fanning
para flujo laminar y turbulento
(frmula de Blasius) en tubos
largos, lisos y circulares.


En la Figura 6.31 se muestra el modelo, escrito en Dymola, del sistema formado por la
fuente, el depsito, la tubera y el sumidero. En la Figura 6.32 puede verse la
representacin Dymodraw del modelo.

model class (sourceVolLiqSignalI) sourceCntrl
parameter volFlow1 { Flujo de volumen. m**3/s } ->
volFlow2 { Flujo de volumen. m**3/s }
parameter event1 { Instante de disparo del evento. s }
totalVolFSP = if Time > event1 then volFlow2 else volFlow1
volFractSP = 1
tempFSP = 300
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (valveSignalI) valveCntrl
valveOpeningSP = 1 { Valor de consigna para la apertura de la valvula }
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (pipeDynLiqB) benzenePipe
{ Tuberia circular, larga, uniforme y lisa completamente llena de liquido }
local viscosity { Viscosidad de la mezcla. N*s/m**2 } ->
reynolds { Numero de Reynolds } ->
laminar = true { true=laminar /false=turbulent flow }
parameter benzeneVisc { Viscosidad del benceno. N*s/m**2 }
parameter critReynolds = 2100 { Numero de Reynolds critico } ->
radiusPipe = ( section / 3.141592 )**0.5 { Radio de la tuberia. m }
{ Definicion del numero de Reynolds }
reynolds = 2 * radiusPipe * ( abs(veloc) + eps ) * fluidDensity / ( viscosity + eps )
{ Regimen del flujo }
new(laminar) = reynolds < critReynolds
{ Factor de Fanning. Ecuacion de Blasius para el flujo turbulento }
fanning = if laminar ->
then 16 / ( abs(reynolds) + eps) ->
else 0.0791 / ( abs(reynolds)**0.25 + eps )
{ Viscosidad }
viscosity = benzeneVisc
{* layer icon }
{* rectangle (-40,-40) (40,40) color=0 fill_color=10 }
{* ellipse (-50,-40) (-30,40) color=10 fill_color=3 }
{* ellipse (30,-40) (50,40) color=10 fill_color=10 }
end
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 239


model class (sourcePressLiqB) sinkBencene
parameter pressSink { Presion. Pa } ->
massFracSink(nComp) { Fraccion en masa. } ->
tempSink { Temperatura. K }
massL = massFracSink
tempL = tempSink
pressL = pressSink
end

model benzeneStorageTank
constant nComp = 1 { Numero de componentes } ->
pi = 3.141593 { Numero pi }
parameter density(nComp) = 875 { Densidad de los componentes puros. Kg/m**3 } ->
CpCoefM(nComp,7) = [1717;0;0;0;0;0;0] { Capacidad calorifica. J/(Kg*K) } ->
benzeneVisc = 56.544E-5 { Viscosidad del benceno. N*s/m**2 }
parameter tankVolume = 1 { Volumen del tanque. m**3 } ->
tankSection = 1 { Seccion del tanque. m**2 }
parameter pipeLength = 2 { Longitud de la tuberia. m } ->
pipeDiameter = 5.08E-2 { Diametro interno de la tuberia. m }
parameter pipeSection = ( pi * ( pipeDiameter / 2 )**2 ) { Seccion de la tuberia. m**2 } ->
pipeWettedArea = ( pi * pipeDiameter * pipeLength ) { Area mojada. m**2 }
parameter pmax = 6E5 { Parametros de la curva caracteristica de la fuente } ->
pcodo = 5E5 ->
pmin = 1 ->
peps = 0.2
parameter event1 = 600 { Instante de disparo del evento. s } ->
sourceVFSP1 = -0.01 { Flujo de volumen. m**3/s } ->
sourceVFSP2 = 0 { Flujo de volumen. m**3/s }
parameter patm = 101325 { Atmospheric pressure. N/m**2 }
parameter epsMomentum = 1E-4
submodel (liquidCp6PrefVB) tank {* at (-40,-15) (-10,15) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,pressTopReference=patm)
submodel (sourceVolLiqFB) source {* at (-90,-15) (-60,15) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM)
submodel (benzenePipe) pipe {* at (10,-15) (40,15) } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,benzeneVisc=benzeneVisc, ->
epsMomentum=epsMomentum)
submodel (sourceCntrl) sourceCntrl {* at (-90,-60) (-60,-30) } ->
(nComp=nComp,volFlow1=sourceVFSP1,volFlow2=sourceVFSP2,event1=event1)
submodel (sinkBencene) sink {* at (60,-15) (90,15) } ->
(nComp=nComp,pressSink=patm,massFracSink=1,tempSink=300)
submodel (valveCntrl) valveCntrl {* at (10,-60) (40,-30) }
connect tank:inMassTop at source:inMass ->
{* via (-25,14) (-25,20) (-95,20) (-95,0) (-89,0) color=3 }
connect tank:inMassBot at pipe:inMass ->
{* via (-25,-14) (-25,-20) (0,-20) (0,0) (11,0) color=3 }
connect sink:inMass at pipe:outMass ->
{* via (39,0) (61,0) color=3 }
connect source:setPointSignal at sourceCntrl:setPointSignal {* color=0 }
connect valveCntrl:setPointSignal at pipe:setPointSignal {* color=0 }
end

Figura 6.31 Listado del modelo.







Figura 6.32 Representacin Dymodraw del modelo.
240 FLUJO DE FLUIDOS


Se ha asignado al parmetro epsMomentum el valor
4
10

de modo que el balance


dinmico del momento lineal tenga una dinmica tan rpida, comparada con el resto de
las dinmicas del problema, que pueda suponerse que est formulado en el estacionario.
Al ejecutar la simulacin se observa que sta se queda ejecutando un bucle infinito
durante el vaciado del depsito.
Para obtener informacin que permita estudiar el problema se selecciona en la ventana
de Dymola Experiment/Preferences/Output Debug Information y se repite la
simulacin. Cuando nuevamente la simulacin entra en un bucle infinito, sta se detiene
ejecutando, en la ventana de Dymola, Simulation/Stop. El fichero dslog.txt, generado
por Dymola, contiene informacin acerca de los eventos activados durante el curso de la
simulacin. En la Figura 6.33 se muestra un fragmento del fichero dslog.txt, en el que se
observa que el bucle es debido a que cuando se produce el cambio de rgimen, el nuevo
estado satisface a su vez las condiciones de cambio de rgimen y as indefinidamente.

...

Expression pipe.reynolds - pipe.critReynolds became -1.1778E-10 ( < 0).
Variable pipe.laminar changed to true.
Iterating to find consistent restart conditions.
during event at Time = 741.573

Expression pipe.reynolds - pipe.critReynolds became 3.298E-05 ( > 0).
Variable pipe.laminar changed to false.
Iterating to find consistent restart conditions.
during event at Time = 741.573

Expression pipe.reynolds - pipe.critReynolds became -1.29148E-10 ( < 0).
Variable pipe.laminar changed to true.
Iterating to find consistent restart conditions.
during event at Time = 741.573

Expression pipe.reynolds - pipe.critReynolds became 3.29793E-05 ( > 0).
Variable pipe.laminar changed to false.
Iterating to find consistent restart conditions.
during event at Time = 741.573

Expression pipe.reynolds - pipe.critReynolds became -1.0823E-10 ( < 0).
Variable pipe.laminar changed to true.
Iterating to find consistent restart conditions.
during event at Time = 741.573

...

Figura 6.33 Fragmento del fichero dslog.txt.
Para ilustrar con mayor claridad el problema, puede hacerse una modificacin en la
definicin del factor de friccin de Fanning de modo que tenga histresis respecto al
nmero de Reynolds, tal como se muestra en la Figura 6.34. En la Figura 6.35 se
muestra la clase BenzenePipe modificada.










Figura 6.34 Factor de friccin de Fanning con histresis respecto al nmero de Reynolds.
laminar turbulento
C C
eps Re Re Re <
C C
eps Re Re Re + >
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 241


model class (pipeDynLiqB) benzenePipe
{ Tuberia circular, larga, uniforme y lisa completamente llena de liquido }
local viscosity { Viscosidad de la mezcla. N*s/m**2 } ->
reynolds { Numero de Reynolds } ->
laminar = true { true=laminar /false=turbulent flow }
parameter benzeneVisc { Viscosidad del benceno. N*s/m**2 }
parameter critReynolds = 2100 { Numero de Reynolds critico } ->
epsReynoldsCrit = 150 ->
radiusPipe = ( section / 3.141592 )**0.5 { Radio de la tuberia. m }
{ Definicion del numero de Reynolds }
reynolds = 2 * radiusPipe * ( abs(veloc) + eps ) * fluidDensity / ( viscosity + eps )
{ Regimen del flujo }
when laminar and reynolds > critReynolds + epsReynoldsCrit or ->
not laminar and reynolds < critReynolds - epsReynoldsCrit then
new(laminar) = not laminar
endwhen
{ Factor de Fanning. Ecuacion de Blasius para el flujo turbulento }
fanning = if laminar ->
then 16 / ( abs(reynolds) + eps) ->
else 0.0791 / ( abs(reynolds)**0.25 + eps )
{ Viscosidad }
viscosity = benzeneVisc
{* layer icon }
{* rectangle (-40,-40) (40,40) color=0 fill_color=10 }
{* ellipse (-50,-40) (-30,40) color=10 fill_color=3 }
{* ellipse (30,-40) (50,40) color=10 fill_color=10 }
end

Figura 6.35 Clase benzenePipe modificada.
En la Figura 6.36 se muestra el cambio de rgimen del flujo y la fuerza de friccin en
funcin del tiempo. En la Figura 6.37 est representada la fuerza de friccin vs Re .







Figura 6.36 Rgimen del flujo y fuerza de friccin.







Figura 6.37 Fuerza de friccin en funcin del nmero de Reynolds.
242 FLUJO DE FLUIDOS


Una forma de resolver el problema consiste en modificar el modelo de forma que quede
conectado de forma continua (por ejemplo, linealmente) el factor de Fanning entre el
rgimen laminar y turbulento. Esta es la aproximacin empleada en la clase
circSmoothPipeDynLiqB, contenida en la librera liq.lib. En la Figura 6.38 se muestra la
clase benzenePipe definida como una subclase de circSmoothPipeDynLiqB.

model class (circSmoothPipeDynLiqB) benzenePipe
parameter benzeneVisc { Viscosidad del benceno. N*s/m**2 }
viscosity = benzeneVisc
end

Figura 6.38 Clase benzenePipe definida como subclase de circSmoothPipeDynLiqB.
En las Figuras 6.39 y 6.40 se muestra la evolucin de la masa contenida en el depsito,
el momento lineal y la velocidad del fluido en la tubera y las tres fuerzas que actan
sobre l: la fuerza debida a la diferencia de presiones entre la base del depsito y el
sumidero, la fuerza de friccin y la fuerza gravitatoria, que en este ejemplo vale cero.
En la Figura 6.41 se muestra el cambio de rgimen producido durante el vaciamiento
del tanque y la fuerza de friccin.











Figura 6.39 Masa de benceno contenida en el depsito. Momento lineal y velocidad.







Figura 6.40 Fuerzas que actan sobre el fluido en la tubera.
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 243








Figura 6.41 Cambio de rgimen. Fuerza de friccin.
Se obtiene un resultado muy similar si se modela la clase benzenePipe como subclase
de circSmoothPipeStatLiqB (que modela el balance de momento en el estacionario),
como se muestra en la Figura 6.42. Tal como se ha sealado anteriormente, es preferible
emplear el balance dinmico de momento lineal, asignando un valor pequeo al
parmetro epsMomentum, que emplear el balance en el estacionario.

model class (circSmoothPipeStatLiqB) benzenePipe
parameter benzeneVisc { Viscosidad del benceno. N*s/m**2 }
viscosity = benzeneVisc
end

Figura 6.42 Clase benzenePipe definida como subclase de circSmoothPipeStatLiqB.
6.8.4 Ejemplo. Dos depsitos conectados mediante una tubera con
vlvula
Sean dos depsitos de agua iguales conectados entre s por una tubera circular de acero
de cuatro pulgadas de dimetro interno, m D 1023 . 0 , y con una longitud de m L 5 ,
dotada de una vlvula. Cada uno de los depsitos tiene una capacidad de
3
15 m V y
su base tiene una seccin de
2
1
5 m S . Se ha conectado una fuente a la base del primer
depsito. El segundo depsito est dotado de un calentador elctrico de s KJ / 500 de
potencia. La densidad del agua se considera
3
/ 996 m Kg , su capacidad calorfica
( ) K Kg KJ C
p
/ 18 . 4 y su viscosidad ( ) s m Kg e
T


+
/
53 . 144
69 . 541
547 . 10
[Cutl99].
Inicialmente ambos tanques se encuentran vacos. La fuente comienza a llenar los
tanques con un flujo constante de s m / 02 . 0
3
. La temperatura de entrada del agua es
C 18 . Transcurridos s 800 cesa el flujo de la fuente. En ese instante se enciende el
calentador elctrico y durante otros s 800 calienta el agua almacenada en el segundo
depsito. Transcurrido ese tiempo la fuente vaca completamente los dos tanques con un
flujo constante de s m / 02 . 0
3
. La vlvula se encuentra cerrada durante los primeros
s 400 y en el intervalo s s 1800 - 1000 . El resto del tiempo se encuentra
244 FLUJO DE FLUIDOS


completamente abierta. En la Figura 6.43 se muestra el cdigo del modelo y en la
Figura 6.44 su representacin Dymodraw.

model class (sourceVolLiqSignalI) sourceCntrl
parameter volFlow1 { Flujo de volumen. m**3/s } ->
volFlow2 { Flujo de volumen. m**3/s } ->
volFlow3 { Flujo de volumen. m**3/s }
parameter event1 { Instante de disparo del evento. s } ->
event2 { Instante de disparo del evento. s }
totalVolFSP = if Time > event2 ->
then volFlow3 ->
else if Time > event1 ->
then volFlow2 ->
else volFlow1
volFractSP = 1
tempFSP = 291
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (sourceHeatSignalI) heaterCntrl
parameter event1 { Instante de disparo del evento. s } ->
event2 { Instante de disparo del evento. s }
parameter heatFlowSP { Consigna para el flujo de calor. J/s }
heatFSP = if Time > event1 and Time < event2 then heatFlowSP else 0
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (valveSignalI) valveCntrl
valveOpeningSP = if Time < 400 or Time >1000 and Time < 1800 then 0 else 1
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (circSmoothPipeDynLiqB) waterPipe
viscosity = exp( -10.547 + 541.69 / ( tempF - 144.53 ) )
end

model waterStorageTanks
constant nComp = 1 { Numero de componentes } ->
pi = 3.141593 { Numero pi }
parameter density(nComp) = 996 { Densidad de los componentes puros. Kg/m**3 } ->
CpCoefM(nComp,7) = [4180;0;0;0;0;0;0] { Capacidad calorifica por masa. J/(Kg*K) }
parameter tank1Volume = 15 { Volumen de tanque. m**3 } ->
tank1Section = 5 { Seccion del tanque. m**2 }
parameter tank2Volume = 15 { Volumen de tanque. m**3 } ->
tank2Section = 5 { Seccion del tanque. m**2 }
parameter pipeLength = 5 { Longitud de la tuberia. m } ->
pipeDiameter = 0.1023 { Diametro interno de la tuberia. m }
parameter pipeSection = ( pi * ( pipeDiameter / 2 )**2 ) ->
pipeWettedArea = ( pi * pipeDiameter * pipeLength )
parameter epsMomentum = 1
parameter pmax = 6E4 { Parametros de la curva caracteristica de la fuente } ->
pcodo = 5E4 ->
pmin = 1 ->
peps = 0.2
parameter event1 = 800 { Instante de disparo del evento. s } ->
event2 = 1600 { Instante de disparo del evento. s } ->
sourceVFSP1 = -0.02 { Flujo de volumen. m**3/s } ->
sourceVFSP2 = 0 { Flujo de volumen. m**3/s } ->
sourceVFSP3 = 0.02 { Flujo de volumen. m**3/s } ->
heatFlowSP = 500E3 { Flujo de calor. J/s }
submodel (liquidCp6PrefVB) tank1 {* at (-40,-15) (-10,15) } ->
(nComp=nComp,density=density,vesselVolume=tank1Volume, ->
section=tank1Section,CpCoefM=CpCoefM) ->
tank2 {* at (60,-15) (90,15) } ->
(nComp=nComp,density=density,vesselVolume=tank2Volume, ->
section=tank2Section,CpCoefM=CpCoefM)
submodel (sourceVolLiqFB) source {* at (-90,-15) (-60,15) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM)
submodel (waterPipe) pipe {* at (10,-15) (40,15) } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=epsMomentum)
submodel (sourceCntrl) sourceCntrl {* at (-90,-60) (-60,-30) } ->
(nComp=nComp,volFlow1=sourceVFSP1,volFlow2=sourceVFSP2, ->
volFlow3=sourceVFSP3,event1=event1,event2=event2)
submodel (sourceHeatFB) heater {* at (60,30) (90,60) } (nComp=nComp)
submodel (heaterCntrl) heaterCntrl {* at (10,60) (40,30) } ->
(event1=event1,event2=event2,heatFlowSP=-heatFlowSP)
submodel (valveCntrl) valveCntrl {* at (10,-60) (40,-30) }
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS LQUIDAS EN JARA v. 1.0 245

connect tank1:inMassBot at source:inMass ->
{* via (-25,-14) (-25,-20) (-100,-20) (-100,0) (-89,0) color=3 }
connect tank1:inMassBot at pipe:inMass ->
{* via (-25,-14) (-25,-20) (0,-20) (0,0) (11,0) color=3 }
connect tank2:inMassBot at pipe:outMass ->
{* via (75,-14) (75,-20) (50,-20) (50,0) (39,0) color=3 }
connect source:setPointSignal at sourceCntrl:setPointSignal {* color=0 }
connect heater:setPointSignal at heaterCntrl:setPointSignal {* color=0 }
connect heater:inHeat at tank2:inHeat {* color=1 }
connect valveCntrl:setPointSignal at pipe:setPointSignal {* color=0 }
end

Figura 6.43 Modelo de dos depsitos conectados mediante una vlvula.









Figura 6.44 Representacin Dymodraw del modelo.
En la Figura 6.45 se muestra el flujo y la temperatura del agua que intercambia la fuente
con el primer depsito. En las Figuras 6.46 y 6.47 se muestran respectivamente la masa
de agua en cada uno de los depsitos y las temperaturas de las mismas. La Figura 6.48
representa la apertura de la vlvula en funcin del tiempo y el momento lineal del agua
en la conduccin.






Figura 6.45 Flujo y temperatura del agua entrante a la fuente.
246 FLUJO DE FLUIDOS










Figura 6.46 Masa de agua contenida en cada uno de los depsitos.








Figura 6.47 Temperatura del agua contenida en los depsitos.






Figura 6.48 Apertura de la vlvula. Momento lineal del agua en la conduccin.
MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS GASEOSAS DE JARA v. 1.0 247

6.9 MODELOS DEL FLUJO CONVECTIVO DE MEZCLAS
GASEOSAS DE JARA v. 1.0
Al plantear el balance de momento lineal de una mezcla gaseosa que fluye por una
tubera se supone que la variacin en el momento lineal se debe a la diferencia de
presiones y a la fuerza de friccin.
( )
B A
p
p p S f
plano plano

Fuerzas debida a la diferencia de presiones entre
los extremos de la tubera.

'

<

0 si
2
1
0 si
2
1
2
2
P v S
P v S
f
Fanning w
Fanning w
F



Fuerza debida a la friccin de la mezcla lquida
con la pared interna de la tubera.
F p
f f
dt
dP
+
Balance de momento lineal.
( ) ,... , , T v
Fanning Fanning

Factor adimensional de Fanning.

Como en el caso de los lquidos, se ha modificado el balance de momento lineal de
forma que sea posible definirlo en el estacionario de forma aproximada asignando al
parmetro epsMomentum ,
P
, un valor pequeo arbitrario. Tambin se ha introducido el
factor de proporcionalidad
valve
K en el balance con el fin de que la clase sea aplicable
para representar algunos modelos sencillos de vlvulas.
p valve F P
f K f
dt
dP
2
+
Balance de momento lineal modificado.

El momento lineal es una variable de estado. Cuando el nmero de moles de la mezcla
contenido en el volumen de control del cual parte el flujo no es mayor que cero el
momento lineal es inicializado a cero.
( )
0 no y 0 si
o
0 no y 0 si
0
> <
> >

B
A
n P
n P
P init
El momento lineal es cero cuando la masa de la
mezcla gaseosa en movimiento sea cero, esto es,
cuando la mezcla contenida en el volumen de
control del cual parte el flujo tenga masa cero.

Se realiza la aproximacin de considerar que la densidad del gas en la tubera es la
misma que posee la mezcla gaseosa en el volumen de control del cual parte el flujo y
que la mezcla obedece la ecuacin de estado de los gases perfectos.
248 FLUJO DE FLUIDOS

'


>

0 si
0 si
1 :
1 :
P
RT n
n M p
V
m
P
RT n
n M p
V
m
B B
N
i
B
i i
B
B
B
A A
N
i
A
i i
A
A
A
comp
comp

Condicin de mezcla agitada para la
densidad del flujo aplicada a una mezcla
ideal de gases semiperfectos.

El momento lineal de la mezcla, P , se relaciona con el flujo total de masa, ( )
conv
B A
m
F

, y
la longitud de la tubera, L , de la forma siguiente:
( ) L F P
conv
B A
m


Relacin entre el momento lineal del fluido, su
flujo total de masa y la longitud de la tubera por la
cual circula.

La velocidad de movimiento de la mezcla puede relacionarse con el flujo total de masa
de la forma siguiente:
( ) v S F
conv
B A
m


Relacin entre la velocidad, la densidad y el flujo
total de masa del fluido y la seccin de la tubera
por la que circula.
( ) ( )


comp
N
i
conv
B A
n
i i
conv
B A
m
F M F
1 :

El flujo de masa de cada componente de la mezcla
gaseosa es igual a su peso molecular multiplicado
por su flujo molar.

Puede realizarse la particin del anterior conjunto de ecuaciones suponiendo que son
conocidas la presin, temperatura y nmero de moles de cada componente en los
volmenes de control entre los que se establece el flujo:
[ ] ( )
B A
p
p p S f
plano plano

Fuerzas debida a la diferencia de presiones
entre los extremos de la tubera.
[ ]

'

>

0 si
0 si
1 :
1 :
P
RT n
n M p
P
RT n
n M p
B B
N
i
B
i i
B
A A
N
i
A
i i
A
comp
comp

Condicin de mezcla agitada para la
densidad del flujo de una mezcla ideal de
gases semiperfectos.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 249

( ) [ ] L F P
conv
B A
m


Relacin entre el momento lineal del fluido,
su flujo total de masa y la longitud de la
tubera por la cual circula.
( ) [ ] v S F
conv
B A
m


Relacin entre la velocidad, la densidad y el
flujo total de masa del fluido y la seccin de
la tubera por la que circula.
[ ] ( ) ,... , , T v
Fanning Fanning

Factor adimensional de Fanning.
[ ]

'

<

0 si
2
1
0 si
2
1
2
2
P v S
P v S
f
Fanning w
Fanning w
F



Fuerza debida a la friccin de la mezcla
lquida con la pared interna de la tubera.
( ) ( ) ( ) [ ]
conv
B A
n
N N
N
i
conv
B A
n
i i
conv
B A
m
comp comp
comp
F M F M F


+

1
1 :

El flujo de masa de cada componente de la
mezcla gaseosa es igual a su peso molecular
multiplicado por su flujo molar.
p valve F P
f K f
dt
dP
2
+
1
]
1


Balance de momento lineal. El momento
lineal es una variable de estado.
( )
0 no y 0 si
o
0 no y 0 si
0
> <
> >

B
A
n P
n P
P init
El momento lineal del gas es cero cuando la
masa de la mezcla gaseosa en movimiento
sea cero, esto es, cuando la mezcla de la
cual parte el flujo tenga masa cero.

La clase pipeDynGasB, contenida en la librera gas.lib, contiene el modelo
anteriormente descrito del flujo de una mezcla gaseosa, que obedece la ecuacin de los
gases perfectos, a travs de una conduccin.
6.10 MODELO DE LAS BIFURCACIONES EN EL FLUJO DE
JARA v. 1.0
6.10.1 Modelo de la unin infinitesimal
Al definir las reglas de conexin de los cuts se ha impuesto que no pueden conectarse
entre s dos cuts resistivos de flujo de materia, lo cual aparentemente supone una seria
limitacin en cuanto a la posibilidad de conexin entre s de las clases que modelan
fenmenos de transporte (conduccin a travs de tuberas, vlvulas, etc.). En este
apartado se aborda el problema del modelado de la conexin en serie o en paralelo de
estos elementos, as como el problema ms general de las uniones de flujo, es decir,
puntos en los cuales confluyen y de los cuales parten varios flujos de materia.
250 FLUJO DE FLUIDOS


Se considera un conjunto de
pipes
N conducciones de flujo de materia unidas todas ellas
en un mismo punto. Dependiendo de la presin en el extremo no comn de cada tubera
y de la presin en el punto de unin, comn a todas ellas, el flujo llevar, en cada
tubera, sentido entrante a la unin o saliente de ella. En general, el sentido y las
caractersticas del flujo en cada conduccin varan en tiempo de simulacin en funcin
de las condiciones de contorno de la conduccin.
Se supone que el extremo no comn de la conduccin sima j est conectado a un
volumen de control conteniendo una mezcla de
comp
N componentes, con masas
j N j
comp
m m ,...,
1
, a una temperatura
j
T . La masa de cada componente y la temperatura de
la mezcla son funcin, en general, del tiempo.
El extremo comn de todas las conducciones est conectado al sistema que modela la
unin, en el que se define en cada instante la presin,
0
p , la temperatura,
0
T y la
fraccin en masa,
0
m
i
x , 1 1
comp
,...,N i: , de la mezcla en ese punto. La confluencia de los
flujos se modela mediante la conexin de los cuts resistivos de las clases que describen
el transporte de materia con el cut capacitivo de la clase que modela la unin.
El modelo de la unin infinitesimal asume que en ella no se almacena ni masa ni
energa: la variacin en la masa, debida nicamente a la suma del flujo de las
pipes
N
conducciones, es cero y la variacin en la energa interna, debida nicamente a la suma
de los flujos de entalpa asociados a los flujos de materia, es cero.
comp
N
j
m
ij
N i F
pipes
,..., 1 : 0
1 :


Balance de masa en la unin infinitesimal: la suma
de los flujos de cada uno de los componentes es,
en cualquier instante, cero.
0
1 :

pipes
N
j
H
j
F
Balance de energa en la unin infinitesimal: la
suma de los flujos de entalpa de los flujos de masa
es, en cualquier instante, cero.

A continuacin se plantean las ecuaciones del sistema formado por la unin y las
conducciones. Se supone que el flujo de entalpa en cada conduccin puede expresarse
como una funcin de la capacidad calorfica de cada componente (funcin, en general,
de la temperatura), del flujo de masa de cada componente y de la temperatura del flujo.
( )
pipes
m
j N
m
j j
H
j
H
j
N j F F T F F
comp
,..., 1 : ,..., ,
1


Flujo de entalpa en cada conduccin.

El flujo total que circula por cada conduccin es funcin de la diferencia de presiones
entre sus extremos:
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 251

pipes
N
i
m
ij
m
j
N j F F
comp
,..., 1 :
1 :


El flujo total que circula por cada conduccin es
igual a la suma de los flujos de cada uno de los
componentes.
( )
pipes
m
j j j
N j F p p f ,..., 1 : 0 ,... , ,
0

El flujo total en cada conduccin depende de la
diferencia de presiones entre los extremos de la
conduccin.

Adems se considera que se aplica la hiptesis de mezcla agitada para la composicin y
la temperatura del fluido contenido en los volmenes de control y en la unin
infinitesimal. Esto implica que:
1. La composicin y la temperatura de los fluidos con sentido entrante a la unin es
la misma que la del fluido contenido en el volumen de control al que est
conectada la conduccin en su extremo no comn.
2. Los flujos con sentido saliente de la unin tienen todos la misma temperatura,
0
T , y la misma composicin (fraccin en masa
0
m
i
x para el componente i ) en
cada instante.
Definiendo una variable lgica para cada conduccin que informe acerca del sentido de
su flujo y adoptando el criterio de signos de considerar positivos los flujos entrantes a la
unin y negativos los salientes, podemos escribir las dos consecuencias anteriores de la
hiptesis de mezcla agitada de la forma siguiente:
( )
pipes
m
j j
,...,N j: F isPosit new 1 0 Definicin de las
pipes
N variables lgicas
j
isPosit . Valen True cuando el flujo entra en
la unin.
pipes
j comp
m
i
j comp
j
ij
m
j
m
ij
,...,N j:
isPosit not N i x
isPosit N i
m
m
F
F
1 para

si 1 ,..., 1 : ,
si 1 ,..., 1 : ,
0

'


Consecuencia de la condicin de mezcla agitada
para la composicin del flujo.
pipes
j
j j
flow
j
,...,N j:
isPosit not T
isPosit T
T 1
si
si
0

'


Consecuencia de la condicin de mezcla agitada
para la temperatura del flujo.

En las nicas ecuaciones en que aparece la composicin de los componentes (todos
menos uno) del fluido en la unin,
0
m
i
x con 1 1 :
comp
,...,N i , es en las correspondientes
a la condicin de mezcla agitada, en cada conduccin, para la concentracin de ese
componente. Dado que el flujo de al menos una de las conducciones debe ser saliente de
la unin, siempre existir ecuacin para calcular
0
m
i
x , con 1 1 :
comp
,...,N i . Lo mismo
252 FLUJO DE FLUIDOS


sucede con la temperatura del lquido en la unin,
0
T , que slo aparece en las
ecuaciones para la condicin de mezcla agitada para la temperatura.
Dado que la variable a evaluar de las ecuaciones (la condicin de mezcla agitada para la
concentracin y la temperatura) vara en tiempo de simulacin, al asignar la causalidad
computacional formarn parte de sendos lazos algebraicos. Por ejemplo, la condicin
para la temperatura forma lazo algebraico (normalmente no lineal, por depender en
general la capacidad calorfica de la temperatura de forma no lineal) con las ecuaciones
que relacionan la temperatura del flujo con el flujo de entalpa y con la ecuacin que
impone que la suma de los flujos de entalpa entrantes a la unin vale cero.
Si se considera conocida la presin en el extremo no comn de cada conduccin,
j
p
con
pipes
N j ,..., 1 : , las ecuaciones anteriores suponen un conjunto de
1 4 + + +
comp pipes comp pipes
N N N N ecuaciones:
comp
N
j
m
ij
N i F
pipes
,..., 1 : 0
1 :


comp
N ecuaciones.
0
1 :

pipes
N
j
H
j
F
Una ecuacin.
pipes
N
i
m
ij
m
j
N j F F
comp
,..., 1 :
1 :


pipes
N ecuaciones.
( )
pipes
m
j N
m
j
flow
j
H
j
H
j
N j F F T F F
comp
,..., 1 : ,..., ,
1

pipes
N ecuaciones.
( )
pipes
m
j j j
N j F p p f ,..., 1 : 0 ,... , ,
0

pipes
N ecuaciones.
( )
pipes
m
j j
,...,N j: F isPosit new 1 0
pipes
N ecuaciones.
pipes
j comp
m
i
j comp
j
ij
m
j
m
ij
,...,N j:
isPosit not N i x
isPosit N i
m
m
F
F
1 para

si 1 ,..., 1 : ,
si 1 ,..., 1 : ,
0

'


( ) 1
comp pipes
N N ecuaciones.
pipes
j
j j
flow
j
,...,N j:
isPosit not T
isPosit T
T 1
si
si
0

'


pipes
N ecuaciones.

con 1 4 + + +
comp pipes comp pipes
N N N N incgnitas:
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 253

'

pipes
comp
m
ij
N j
N i
F
,..., 1 :
,..., 1 :

pipes comp
N N incgnitas
pipes
m
j
N j F ,..., 1 :
pipes
N incgnitas.
pipes
H
j
,...,N j: F 1
pipes
N incgnitas.
1 1 , ,
0
0 0

comp
m
i
,...,N i: x T p
1 +
comp
N incgnitas.
pipes
flow
j
,...,N j: T 1
pipes
N incgnitas.
pipes j
,...,N j: isPosit 1
pipes
N incgnitas.

En el conjunto de ecuaciones anterior puede distinguirse entre aquellas contenidas en las
clases que modelan el flujo por conveccin en las conducciones y las ecuaciones
contenidas en la clase que modela la unin infinitesimal.
Ecuaciones contenidas en la clase que modela
la unin infinitesimal.
Ecuaciones contenidas en las clases que modelan
el flujo de fluido por conveccin en las
conducciones.
comp
N
j
m
ij
N i F
pipes
,..., 1 : 0
1 :


pipes
N
i
m
ij
m
j
N j F F
comp
,..., 1 :
1 :


0
1 :

pipes
N
j
H
j
F
( )
pipes
m
j N
m
j
flow
j
H
j
H
j
N j F F T F F
comp
,..., 1 : ,..., ,
1


( )
pipes
m
j j j
N j F p p f ,..., 1 : 0 , ,
0


( )
pipes
m
j j
,...,N j: F isPosit new 1 0

pipes
j comp
m
i
j comp
j
ij
m
j
m
ij
,...,N j:
isPosit not N i x
isPosit N i
m
m
F
F
1 para

si 1 ,..., 1 : ,
si 1 ,..., 1 : ,
0

'



pipes
j
j j
flow
j
,...,N j:
isPosit not T
isPosit T
T 1
si
si
0

'



254 FLUJO DE FLUIDOS


El modelo de la unin, formulado de esta forma, contiene ligaduras sobre las variables
through de su interfaz y no posee ecuaciones para evaluar la presin, temperatura o
composicin del fluido en la unin. Como se observa, plantear el modelo de esta forma
conduce a la aparicin de lazos algebraicos aun en el ms sencillo de los casos: aquel en
el cual todos los extremos no comunes de las conducciones estn conectados a
volmenes de control conteniendo fluidos. Estos lazos algebraicos son, en general, no
lineales, debido a la dependencia de la capacidad calorfica respecto de la temperatura y
a que el flujo total en la conduccin puede depender de forma no lineal de las presiones
en los extremos de la misma. Si el extremo no comn de las conducciones se conecta a
otras uniones, para formar redes de conducciones, se establecen lazos algebraicos de
gran nmero de ecuaciones que hacen que el problema sea inmanejable.
Como se ve, el modelo anterior de la unin infinitesimal no constituye una clase bien
planteada, ya que su descripcin interna no es compatible con su interfaz. Se puede
considerar que el modelo de la unin infinitesimal es el caso lmite, cuando las
dimensiones espaciales tienden a cero, del modelo de la unin macroscpica que se
plantea a continuacin. Sin embargo, el modelo de la unin macroscpica resulta
mucho ms conveniente desde el punto de vista del modelado que el de la unin
infinitesimal, ya que permite considerar, en primera aproximacin, el hecho de que las
conducciones se encuentran llenas de fluido: de la masa total de fluido contenida en el
sistema, parte se encuentra alojada en las conducciones.
Si bien los modelos de las conducciones que se han expuesto en apartados precedentes
asumen que no se produce acumulacin de materia en las conducciones, el modelo
combinado conduccin - unin permite considerar simultneamente los aspectos
dinmicos y de almacenamiento, posibilitando, por ejemplo, la simulacin de los
retardos en el transporte de variaciones en la temperatura o en la composicin del flujo.
6.10.2 Modelo de la unin macroscpica para el flujo de mezclas
lquidas
Como se ha visto, la propiedad que define la unin infinitesimal es que en ella no se
produce ni acumulacin de masa,
comp
N
j
m
ij
i
N i F
dt
dm
pipes
,..., 1 : , 0
1 :


, ni acumulacin de
energa, 0
1 :


pipes
N
j
H
j
F
dt
dH
.
Estas dos condiciones son satisfechas, en determinadas circunstancias, por el modelo de
un volumen de control que contiene una mezcla lquida. Para demostrarlo se considera
un volumen de control, de volumen constante, que intercambia masa con el entorno a
travs de un nmero arbitrario de flujos. Se supone que los flujos entran y salen del
volumen de control por su base. Si se agrupan entre s todos los flujos entrantes en un
determinado instante en un flujo total equivalente y se hace lo mismo con todos los
flujos salientes, puede considerarse que existe un nico flujo de entrada en la base del
volumen de control,
comp
m
i in
N i F ,..., 1 : ,
,
, y un nico flujo de salida,
comp
m
i out
N i F ,..., 1 : ,
,
.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 255

Sea
vc
T la temperatura del lquido en el volumen de control y
vc
i vc m
i vc
m
m
x
,
,
la fraccin en
masa del componente i de la mezcla lquida contenida en el mismo. Se supone que se
realiza la aproximacin de mezcla agitada sobre la temperatura,
out vc
T T , y sobre la
composicin del lquido contenido en el volumen de control,
1 ,..., 1 : ,
,
,

comp
m
out
m
i out m
i vc
N i
F
F
x .
Cuando aumenta la cantidad de lquido contenido en el volumen de control y ste se
llena, la presin ejercida por las paredes del volumen de control sobre el lquido hace
que la presin de ste sea tal que se satisfaga que el volumen de lquido por unidad de
tiempo de los flujos entrantes sea igual al volumen saliente, 0
1 :
,
1 :
,


comp comp
N
j
V
j out
N
j
V
j in
F F . Si
la composicin del fluido entrante es igual a la del lquido contenido en el volumen de
control y, por la aproximacin de mezcla agitada, a la del fluido saliente, se cumplir
que la masa del fluido entrante por unidad de tiempo es igual a la del saliente.
m
out
m
in
N
j j
m
j out
m
out
m
in
comp
m
out
m
i out
m
in
m
i in
N
j j
m
j out
N
j j
m
j in
N
j
V
j out
N
j
V
j in
F F
F
F
F
N i
F
F
F
F
F F
F F
comp
comp comp comp comp

,
_


0 1
,..., 1 : ,
0 0
1 :
,
, ,
1 :
,
1 :
,
1 :
,
1 :
,



Y la masa entrante por unidad de tiempo de cada componente es igual a la saliente:
comp
m
i out
m
i in
comp m
out
m
i out
m
in
m
i in
m
out
m
in
N i F F
N i
F
F
F
F
F F
,..., 1 :
,..., 1 : ,

, ,
, ,


Si, adems, la temperatura del fluido entrante es igual a la del lquido contenido en el
volumen de control, y, por la aproximacin de mezcla agitada, a la del fluido saliente,
entonces la entalpa entrante por unidad de tiempo,
H
in
F , es igual a la saliente,
H
out
F .
( )
( )
H
out
H
in
H
i out
H
i in
N i F F
T T
comp out i
m
i out
H
i out
comp in i
m
i in
H
i in
F F F F
N i T h F F
N i T h F F
comp
m
i out
m
i in
out in

, ,
,..., 1 : , ,
, ,
, ,
,..., 1 :
,..., 1 :

Como se ve, un volumen de control completamente lleno de lquido, unin
macroscpica, se comporta como una unin infinitesimal siempre que la composicin y
la temperatura del fluido entrante sean las mismas que las del lquido almacenado en el
volumen de control. Cuanto ms pequeo es el volumen de control mas corta es su
"memoria", es decir, ms rpido es el transitorio en la concentracin y la temperatura
del fluido contenido en el volumen de control frente a un cambio en las condiciones del
256 FLUJO DE FLUIDOS


flujo entrante. Para demostrar esta ltima afirmacin se plantea el balance para la masa
de cada componente en trminos de su fraccin en volumen.
La masa del componente i contenida en el volumen de control puede escribirse de la
forma:
vc
V
i vc i i vc
V x m
, ,
. Donde
i
es la densidad del componente puro (que se supone
constante),
V
i vc
x
,
es la fraccin en volumen del componente en el volumen de control y
vc
V es el volumen del lquido contenido en el volumen de control. El balance de masa
para cada componente, teniendo en cuenta que, por encontrarse lleno el volumen de
control, el volumen del lquido contenido en l es constante, puede plantearse de la
forma siguiente:
vc
V
in
V
i in V
i vc
vc
V
out
V
i vc
vc
V
out
V
i vc i
m
i out
V
in
V
i in i
m
i in
vc V
i vc i vc
V
i vc
i
i vc
V
F x
x
V
F
dt
dx
dt
dV
F x F
F x F
dt
dV
x V
dt
dx
dt
dm
,
,
,
, ,
, ,
,
, ,
0

+



El autovalor,
vc
V
out
i
V
F
, se hace ms negativo, es decir, la dinmica se hace ms
rpida, cuando menor es el volumen,
vc
V . Lo mismo sucede con la temperatura: a
igualdad en el flujo de entalpa entrante, en la temperatura inicial y concentracin del
lquido contenido en el volumen de control, cuanto menor es el volumen del volumen de
control, menor es la energa necesaria para realizar un determinado cambio en la
temperatura del lquido contenido en l, con lo cual, menor es el tiempo que tarda la
temperatura en alcanzar el estacionario.
Por tanto, un posible modelo de unin infinitesimal es un volumen de control con un
volumen muy pequeo que intercambia fluido a travs de su base mediante un nmero
arbitrario de flujos. La superficie de la base del volumen de control determina la presin
del lquido en la misma mientras el volumen de control no se encuentra completamente
lleno. Por tanto, si el flujo en las conducciones conectadas a la base del volumen de
control es funcin de la diferencia de presin entre sus extremos, la superficie de la base
influye en la dinmica de estos flujos. Cuanto mayor sea la superficie de la base, menor
es la presin para un mismo volumen de lquido, y, por ello, mayor es el flujo entrante
al volumen de control y menor el saliente.
Al igual que sucede con el modelo de las conducciones, una de cuyas hiptesis de
modelado es que se encuentran completamente llenas de lquido, el modelo de las
uniones tambin asume que se encuentran completamente llenas. Si en el instante inicial
de la simulacin o en el curso de sta no se satisface esta condicin, debe asumirse que
con ello se est cometiendo un error.
Como se ver en el Apartado 6.10.5, en el ejemplo "Control de nivel de un depsito de
lquido", debe escogerse la superficie de la base de la unin lo suficientemente grande
como para que pueda suponerse que, mientras la unin no se encuentra totalmente llena,
el flujo de salida de lquido de la misma, debido a la presin en su base, es despreciable
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 257

y tambin que la entrada de lquido a la unin se produce contra una presin
aproximadamente igual a la de referencia. La clase bsica junctLiqCp6PrefB, contenida
en la librera liq.lib, constituye un modelo de una unin macroscpica. El valor
asignado por defecto en la clase junctLiqCp6PrefB a la superficie de la base de la unin
es
20
10 unidades de superficie.
El volumen de lquido contenido en el volumen de control cuando ste se encuentra
lleno depende, por un lado, del valor (arbitrario) que se haya asignado al volumen del
volumen de control. Por otro lado depende del valor (arbitrario) que se haya dado al
coeficiente "numrico" de compresibilidad, compressCoef. Cuanto menor es el valor de
este parmetro, mayor es el incremento en la presin del lquido producido por un
incremento relativo en el volumen del lquido contenido en el volumen de control, una
vez ste se encuentra lleno. A fin de evitar, en la medida de lo posible, que el sistema
sea fuertemente stiff, no debe escogerse ni el volumen del volumen de control ni el
coeficiente de compresibilidad numrico ms pequeos de lo estrictamente necesario
para que se satisfagan las hiptesis de modelado dentro de los mrgenes de error
admisibles para la aplicacin en concreto.
El volumen del volumen de control afecta a la "memoria" del mismo, es decir,
determina en qu medida se viola la hiptesis de que la composicin y temperatura del
lquido en el volumen de control son los mismos que los del fluido entrante. Para una
determinada eleccin del volumen puede estimarse el error cometido viendo en qu
medida la concentracin y temperatura del flujo saliente sigue a las del entrante.
El coeficiente numrico de compresibilidad, compressCoef, determina en qu medida
se viola la ligadura sobre el volumen: cuando el volumen de control se encuentra lleno
de lquido, la presin que las paredes ejercen sobre ste es tal que garantiza que el
volumen de lquido no supera el volumen del volumen de control. Para un determinado
valor del coeficiente puede obtenerse una idea del error cometido comparando las
variables fluidVun, volumen real de la mezcla lquida contenida en el volumen de
control, y, dummyVol, volumen que tendra la mezcla si satisficiera exactamente la
ligadura sobre el volumen.
Tal como se indic al final del apartado anterior, en ocasiones puede resultar til
emplear la unin macroscpica para modelar el retardo en el transporte que se produce
en las conducciones reales: las propiedades del fluido que sale en un determinado
instante de la conduccin no son instantneamente iguales a las del fluido que entra. El
retardo con que el fluido saliente sigue las propiedades del entrante depende de la
magnitud del flujo y del volumen de la conduccin. Por ejemplo, una conduccin real
puede dividirse para su modelado en un determinado nmero de tramos cada uno de los
cuales puede modelarse mediante una clase que describa el comportamiento dinmico
del fluido (modelo de las conducciones) y una clase que describa los cambios en la
composicin y temperatura del fluido en ese tramo (modelo del volumen de control).
Este punto se tratar con cierto detalle posteriormente.
258 FLUJO DE FLUIDOS


6.10.3 Ejemplo. Dinmica de la presin en el punto de unin
Se considera una tubera tal que uno de sus extremos est conectado a la base de un
depsito y el otro se encuentra taponado. Este ltimo se modela mediante la conexin
del extremo de la tubera a una unin macroscpica. Se emplea el modelo de la tubera
considerando el balance de momento lineal en el estacionario. Una fuente se encuentra
conectada a la base del depsito. El fluido que introduce la fuente inicialmente en el
tanque es una mezcla de queroseno (entorno al 80% en volumen), benceno (entorno al
15% en volumen) y otros compuestos orgnicos (entorno al 5% en volumen). Una vez
que el tanque se encuentra completamente lleno, la fuente vaca el tanque. A
continuacin lo llena de nuevo completamente, pero esta vez slo de queroseno.
A la temperatura a la que se encuentra la mezcla, K 300 , se considera que la densidad
del queroseno son
3
/ 760 m Kg , la del benceno,
3
/ 850 m Kg , y la de la mezcla de otros
compuestos orgnicos
3
/ 890 m Kg . Se supone que la viscosidad de la mezcla es
aproximadamente la del queroseno a K 300 :
2 3
/ 10 3 . 7 m s N

[Cutl99].
El objetivo de la simulacin es ver cmo el valor de la presin en la unin macroscpica
sigue al valor de la presin en la base del tanque. Puesto que no se simulan cambios en
la temperatura del fluido, pueden darse valores arbitrarios a la capacidad calorfica de
los componentes. Dando a la unin un volumen pequeo no se tiene en consideracin el
volumen de lquido contenido en la conduccin. Tal como se ha planteado el modelo es
preciso ajustar los siguientes parmetros:
El parmetro epsMomentum, de la clase que modela el balance de momento lineal,
pipeDynLiqB. Cuanto menor sea este parmetro ms rpidamente alcanzar el
momento lineal el estacionario. Para evaluar si el valor escogido da lugar a un error
admisible puede observarse la variable totalForce, cuyo valor sera cero si el
balance se planteara en el estacionario (ver Figura 6.52).
El parmetro compressCoef, de la clase liquidCp6B, que controla en qu medida se
viola la ligadura sobre el volumen del lquido contenido en el volumen de control.
La clase liquidCp6B es superclase de las clases que modelan el depsito y la unin
y, por tanto, debe fijarse un valor del parmetro en cada clase. Para un valor
determinado del parmetro, la forma de estimar el error es comparar las variables
fluidVun, volumen real de la mezcla lquida contenida en el volumen de control, y,
dummyVol, volumen que tendra la mezcla si satisficiera exactamente la ligadura
sobre el volumen (ver Figura 6.53).
El parmetro vesselVolume, de la clase junctLiqCp6PrefB, que modela la unin.
Cuanto menor sea el volumen del volumen de control, con ms rapidez sigue la
composicin y la temperatura de los flujos de salida a la composicin y la
temperatura de la mezcla de los flujos de entrada. La forma de examinar el error
cometido es comparar directamente el valor de la temperatura y composicin de los
flujos de entrada y de salida. La composicin y la temperatura de los flujos de salida
es la misma que la del fluido contenido en la unin.
En la Figura 6.49 se muestra el modelo del sistema y en la Figura 6.50 su representacin
Dymodraw.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 259


model class (sourceVolLiqSignalI) sourceCntrl
parameter volFlow1 { Consigna para el flujo en volumen. L**3*t**-1 } ->
volFlow2
parameter event1 { Instante de disparo del evento. t } ->
event2
totalVolFSP = if Time < event1 or Time > event2 then volFlow1 else volFlow2
volFractSP = if Time<event2 then [0.8;0.15;0.05] else [1;0;0]
tempFSP = 300
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (valveSignalI) valveCntrl
{ Apertura de la valvula }
valveOpeningSP = 1
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (circSmoothPipeDynLiqB) pipe
parameter meanVisc { Viscosidad promedio de la mezcla. M*L**-1*t**-1 }
viscosity = meanVisc
end

model dinamUnion
{
Componente 1: Queroseno
Componente 2: Benceno
Componente 3: Mezcla de componentes organicos
}
constant nComp=3 { Numero de componentes } ->
pi = 3.141593
parameter tankVolume = 10 { Volumen del tanque. m**3 } ->
tankSection = 1 { Seccion del tanque. m**2 }
parameter volJunc = 1.E-3 { Volumen de la union. m**3 } ->
sectJunc = 1E20 { Seccion de la union. m**2 }
parameter density(nComp) = [760; 850; 890] { Densidad de los comp. puros. Kg/m**3 } ->
CpCoefM(nComp,7) = [1,0,0,0,0,0,0; ->
1,0,0,0,0,0,0; ->
1,0,0,0,0,0,0] { Coefs. capacidad calorifica } ->
meanVisc = 7.3E-3 { Viscosidad promedio. N*s/m**2 }
parameter pipeLength = 5 { Pipe length. m } ->
pipeDiameter = 0.1023 { Pipe internal diameter. m }
parameter pipeSection = ( pi * ( pipeDiameter / 2 )**2 ) ->
pipeWettedArea = ( pi * pipeDiameter * pipeLength )
parameter pmax = 2E5 { Param. de la curva caracteristica de la fuente. N/m**2 } ->
pcodo = 1.9E5 ->
pmin = 1 ->
peps = 1E-2
parameter compCoefJunc = 1.E-5 { Coef. numerico de compresibilidad. m**2/N } ->
compCoefTank = 1.E-8 { Coef. numerico de compresibilidad. m**2/N } ->
epsMomentum = 1.E-3 { Coef. en el balance de momento lineal. }
parameter event1 = 100 { Instante de disparo de los eventos. s } ->
event2 = 150
parameter volFlow1 = - 0.15 { Consigna para el flujo de volumen. m**3/s } ->
volFlow2 = 0.3 { Consigna para el flujo de volumen. m**3/s }
submodel (liquidCp6PrefVB) tank {* at (-50,0) (-10,40) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compCoefTank)
submodel (junctLiqCp6PrefB) junction {* at (50,0) (90,40) } ->
(nComp=nComp,density=density,CpCoefM=CpCoefM,section=sectJunc, ->
vesselVolume=volJunc,compressCoef=compCoefJunc)
submodel (pipe) pipe {* at (0,0) (40,40) } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=epsMomentum, ->
meanVisc=meanVisc)
submodel (sourceVolLiqFB) source {* at (-60,0) (-100,40) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM)
submodel (sourceCntrl) sourceCntrl {* at (-100,-60) (-60,-20) } ->
(nComp=nComp,event1=event1,event2=event2,volFlow1=volFlow1, ->
volFlow2=volFlow2)
submodel (valveCntrl) valveCntrl {* at (0,-60) (40,-20) }
connect tank:inMassBot at source:inMass ->
{* via (-30,0) (-55,0) (-55,20) (-60,20) color=3 }
connect tank:inMassBot at pipe:inMass ->
{* via (-30,0) (-5,0) (-5,20) (0,20) color=3 }
connect junction:inMass at pipe:outMass {* color=3 }
connect source:setPointSignal at sourceCntrl:setPointSignal {* color=0 }
connect valveCntrl:setPointSignal at pipe:setPointSignal {* color=0 }
end

Figura 6.49 Modelo del sistema fuente - tanque - conduccin - nodo.
260 FLUJO DE FLUIDOS










Figura 6.50 Representacin Dymodraw del sistema.
En la Figura 6.51 se representa el flujo de masa que intercambia la fuente con el tanque
y la masa de cada componente almacenada en cada instante en el tanque. Se considera el
flujo positivo cuando tiene sentido entrante a la fuente. La Figura 6.52 contiene la
representacin de la fuerza total que acta sobre el fluido contenido en la conduccin.
Se ha asignado al parmetro epsMomentum el valor
3
10

: lo suficientemente pequeo
como para poder asumir, con la precisin requerida por este problema en concreto, que
el fluido alcanza "instantneamente" el estacionario. En la Figura 6.52 tambin se
muestra como la presin en la unin sigue a la presin en la base del depsito.






Figura 6.51 Flujo de masa de cada comp. entrante a la fuente. Masa de cada componente en el tanque.






Figura 6.52 Fuerza sobre la mezcla en la conduccin. Presin en la base del depsito y de la unin.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 261

En la Figura 6.53 se muestran el volumen del depsito, tank::liquid.dummyVol, y la
evolucin del volumen de la mezcla contenida en l, tank::liquid.fluidVun, as
como un detalle de ambos cuando el depsito se encuentra completamente lleno de
lquido. La diferencia entre ambos es aproximadamente del 0.2%.








Figura 6.53. Volumen del lquido y del tanque. Detalle cuando el tanque se encuentra lleno.
6.10.4 Ejemplo. Conexin de tres depsitos de lquido en paralelo
Se supone un sistema compuesto por tres depsitos, que se representan por A, B y C ,
conectados en paralelo. Cada uno de los depsitos tiene
3
10 m de volumen y
2
1 m de
superficie. En la base de cada depsito se ha conectado una fuente de lquido y una
tubera, de seccin circular y pared lisa, de m 5 de longitud y m 1023 . 0 de dimetro
interno. Las tres tuberas se hayan conectadas entre s por su extremo libre formando un
punto de unin/bifurcacin de flujo. Las tuberas se modelan suponiendo que el
momento lineal alcanza instantneamente el estacionario. El volumen interno de cada
tubera es de
3
041 . 0 m , con lo cual, el volumen de lquido contenido en las tres
conducciones es
3
123 . 0 m . Como primera aproximacin al modelado del retardo en las
conducciones se supone que la unin macroscpica posee un volumen de
3
123 . 0 m . La
simulacin consiste en realizar las siguientes operaciones:
1. La fuente conectada al tanque A llena completamente, con un caudal de s m / 1 . 0
3
,
los tres tanques con una mezcla de queroseno (entorno al 80% en volumen),
benceno (entorno al 15% en volumen) y otros compuestos orgnicos (entorno al 5%
en volumen) a K 300 de temperatura.
2. La fuente conectada al tanque B extrae la mezcla con un flujo igual a s m / 15 . 0
3
.
3. Las fuentes conectadas a los tanques B y C llenan completamente los tres tanques.
La fuente conectada al tanque B proporciona queroseno puro a una temperatura de
K 340 y con un flujo de s m / 1 . 0
3
. La fuente conectada al tanque C vierte una
mezcla de queroseno (entorno al 90% en volumen) y benceno (entorno al 10% en
volumen) a K 310 y con un flujo de s m / 3 . 0
3
.
Como en el ejemplo anterior, se considera que la densidad del queroseno vale
3
/ 760 m Kg , la del benceno,
3
/ 850 m Kg , y la de la mezcla de otros compuestos
262 FLUJO DE FLUIDOS


orgnicos
3
/ 890 m Kg . Se supone que la viscosidad de la mezcla es aproximadamente
la del queroseno a K 300 :
2 3
/ 10 3 . 7 m s N

. Se supone que la capacidad calorfica del
queroseno vale aproximadamente ( ) K Kg J T C
p
+ / 36 . 5 446 y la del benceno
( ) K Kg J T C
p
+ / 60 . 4 325 [Cutl99]. La Figura 6.54 contiene el listado del modelo y
la Figura 6.55 la representacin Dymodraw del mismo.

model class (sourceVolLiqSignalI) sourceCntrl
parameter volFlowSP1 { Consigna para el flujo de volumen. L**3*t**-1 } ->
volFlowSP2 { Consigna para el flujo de volumen. L**3*t**-1 } ->
volFlowSP3 { Consigna para el flujo de volumen. L**3*t**-1 }
parameter volFracSP1(nComp) { Consigna para la fraccion molar del flujo. } ->
volFracSP2(nComp) { Consigna para la fraccion molar del flujo. } ->
volFracSP3(nComp) { Consigna para la fraccion molar del flujo. }
parameter tempFlowSP { Consigna para la temperatura del flujo. T }
parameter event1 { Instante de disparo del evento. s } ->
event2 { Instante de disparo del evento. s }
totalVolFSP = if Time < event1 ->
then volFlowSP1 ->
else if Time < event2 ->
then volFlowSP2 ->
else volFlowSP3
volFractSP = if Time < event1 ->
then volFracSP1 ->
else if Time < event2 ->
then volFracSP2 ->
else volFracSP3
tempFSP = tempFlowSP
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (valveSignalI) valveCntrl
valveOpeningSP = 1 { Apertura de la valvula }
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (circSmoothPipeDynLiqB) pipe
parameter meanVisc { Viscosidad promedio. N*s/m**2 }
viscosity = meanVisc
end

model tresTanquesParalelo
constant nComp=3 { Numero of componentes } ->
pi = 3.141593 { Numero pi }
parameter tankVolume = 10 { Volumen de los tanques. m**3 } ->
tankSection = 1 { Seccion de los tanques. m**2 }
parameter volJunc = 0.123 { Volumen de la unin. m**3 } ->
sectJunc = 1E20 { Seccion de la union. m**2 }
parameter density(nComp) = [760; 850; 890] { Densidad de los comp. puros. Kg/m**3 } ->
CpCoefM(nComp,7)= [446, 5.36, 0, 0, 0, 0, 0; ->
325, 4.60, 0, 0, 0, 0, 0; ->
1, 0 , 0, 0, 0, 0, 0] { Coefs. capac. calorif. por masa } ->
meanVisc = 7.3E-3 { Viscosidad media de la mezcla. N*s/m**2 }
parameter pipeLength = 5 { Longitud de la tuberia. m } ->
pipeDiameter = 0.1023 { Diametro interno de la tuberia. m }
parameter pipeSection = ( pi * ( pipeDiameter / 2 )**2 ) ->
pipeWettedArea = ( pi * pipeDiameter * pipeLength )
parameter pmax = 2E5 { Parametros de la curva caracteristica de la fuente } ->
pcodo = 1.9E5 ->
pmin = 1 ->
peps = 1E-2
parameter compCoefJunc = 1.E-6 ->
compCoefTank = 1.E-7 ->
epsMomentum = 1
parameter event1 = 300 { Instante de disparo de los eventos. s } ->
event2 = 500 { Instante de disparo de los eventos. s }
{ Valores de consigna para la fuente A }
parameter volFlowSPA1 = -0.1 { m**3/s } ->
volFlowSPA2 = 0 { m**3/s } ->
volFlowSPA3 = 0 { m**3/s } ->
volFracSPA1(nComp) = [0.8; 0.15; 0.05] ->
volFracSPA2(nComp) = [0.8; 0.15; 0.05] ->
volFracSPA3(nComp) = [0.8; 0.15; 0.05] ->
tempFlowSPA = 300 { K }
{ Valores de consigna para la fuente B }
parameter volFlowSPB1 = 0 { m**3/s } ->
volFlowSPB2 = 0.15 { m**3/s } ->
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 263

volFlowSPB3 = -0.1 { m**3/s } ->
volFracSPB1(nComp) = [1; 0; 0] ->
volFracSPB2(nComp) = [1; 0; 0] ->
volFracSPB3(nComp) = [1; 0; 0] ->
tempFlowSPB = 340 { K }
{ Valores de consigna para la fuente C }
parameter volFlowSPC1 = 0 { m**3/s } ->
volFlowSPC2 = 0 { m**3/s } ->
volFlowSPC3 = -0.3 { m**3/s } ->
volFracSPC1(nComp) = [0.9; 0.1; 0] ->
volFracSPC2(nComp) = [0.9; 0.1; 0] ->
volFracSPC3(nComp) = [0.9; 0.1; 0] ->
tempFlowSPC = 310 { K }
submodel (liquidCp6PrefVB) tankA {* at (-50,40) (-30,60) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compCoefTank) ->
tankB {* at (10,40) (30,60) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compCoefTank) ->
tankC {* at (70,40) (90,60) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compCoefTank)
submodel (junctLiqCp6PrefB) junction {* at (10,-50) (30,-30) rotation=-90 } ->
(nComp=nComp,density=density,CpCoefM=CpCoefM,section=sectJunc, ->
vesselVolume=volJunc,compressCoef=compCoefJunc)
submodel (pipe) pipeA {* at (-50,-20) (-30,0) rotation=-90 } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=epsMomentum, ->
meanVisc=meanVisc) ->
pipeB {* at (10,-20) (30,0) rotation=-90 } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=epsMomentum, ->
meanVisc=meanVisc) ->
pipeC {* at (70,-20) (90,0) rotation=-90 } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=epsMomentum, ->
meanVisc=meanVisc)
submodel (sourceVolLiqFB) sourceA {* at (-60,40) (-80,60) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM) ->
sourceB {* at (0,40) (-20,60) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM) ->
sourceC {* at (60,40) (40,60) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM)
submodel (sourceCntrl) sourceCntrlA {* at (-80,10) (-60,30) } ->
(nComp=nComp,event1=event1,event2=event2,volFlowSP1=volFlowSPA1, ->
volFlowSP2=volFlowSPA2,volFlowSP3=volFlowSPA3,volFracSP1=volFracSPA1, ->
volFracSP2=volFracSPA2,volFracSP3=volFracSPA3,tempFlowSP=tempFlowSPA) ->
sourceCntrlB {* at (-20,10) (0,30) } ->
(nComp=nComp,event1=event1,event2=event2,volFlowSP1=volFlowSPB1, ->
volFlowSP2=volFlowSPB2,volFlowSP3=volFlowSPB3,volFracSP1=volFracSPB1, ->
volFracSP2=volFracSPB2,volFracSP3=volFracSPB3,tempFlowSP=tempFlowSPB) ->
sourceCntrlC {* at (40,10) (60,30) } ->
(nComp=nComp,event1=event1,event2=event2,volFlowSP1=volFlowSPC1, ->
volFlowSP2=volFlowSPC2,volFlowSP3=volFlowSPC3,volFracSP1=volFracSPC1, ->
volFracSP2=volFracSPC2,volFracSP3=volFracSPC3,tempFlowSP=tempFlowSPC)
submodel (valveCntrl) valveCntrl {* at (-80,-50) (-60,-30) rotation=-90 }
connect tankA:inMassBot at sourceA:inMass ->
{* via (-40,40) (-40,35) (-55,35) (-55,50) (-60,50) color=3 }
connect tankB:inMassBot at sourceB:inMass ->
{* via (20,40) (20,35) (5,35) (5,50) (0,50) color=3 }
connect tankC:inMassBot at sourceC:inMass ->
{* via (80,40) (80,35) (65,35) (65,50) (60,50) color=3 }
connect tankA:inMassBot at pipeA:inMass {* color=3 }
connect tankB:inMassBot at pipeB:inMass {* color=3 }
connect tankC:inMassBot at pipeC:inMass {* color=3 }
connect junction:inMass at pipeA:outMass ->
{* via (20,-30) (20,-27) (-40,-27) (-40,-20) color=3 }
connect junction:inMass at pipeB:outMass {* color=3 }
connect junction:inMass at pipeC:outMass ->
{* via (20,-30) (20,-27) (80,-27) (80,-20) color=3 }
connect sourceA:setPointSignal at sourceCntrlA:setPointSignal {* color=0 }
connect sourceB:setPointSignal at sourceCntrlB:setPointSignal {* color=0 }
connect sourceC:setPointSignal at sourceCntrlC:setPointSignal {* color=0 }
connect valveCntrl:setPointSignal at pipeA:setPointSignal ->
{* via (-60,-40) (-55,-40) (-55,-10) (-50,-10) color=0 }
connect valveCntrl:setPointSignal at pipeB:setPointSignal ->
{* via (-60,-40) (-55,-40) (-55,-22) (0,-22) (0,-10) (10,-10) color=0 }
connect valveCntrl:setPointSignal at pipeC:setPointSignal ->
{* via (-60,-40) (-55,-40) (-55,-22) (60,-22) (60,-10) (70,-10) color=0 }
end

Figura 6.54 Modelo de los tres tanques conectados en paralelo.
264 FLUJO DE FLUIDOS














Figura 6.55 Representacin Dymodraw del sistema.
En las Figuras 6.56, 6.57 y 6.58 se representan el flujo entrante, a cada una de las
fuentes, de cada uno de los tres componentes y la masa almacenada, en cada uno de los
depsitos, de cada uno de los tres componentes.








Figura 6.56 Flujo de masa entrante a la fuente del primer componente. Masa almacenada en los tanques.








Figura 6.57 Flujo de masa entrante a la fuente del segundo componente. Masa almacenada en los
tanques.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 265









Figura 6.58 Flujo de masa entrante a la fuente del tercer componente. Masa almacenada en los tanques.
En la Figura 6.59 se representan la evolucin de la temperatura y del volumen de la
mezcla contenida en cada depsito. En la Figura 6.60 se encuentra el volumen del
lquido contenido en cada depsito en los instantes finales de la simulacin, en los
cuales los tres depsitos se encuentran completamente llenos. Como se ve, el error
cometido en el volumen del lquido es del orden del 1.5%, considerado admisible para
el propsito de esta simulacin.








Figura 6.59 Temperatura y volumen de la mezcla contenida en cada depsito.











Figura 6.60 Volumen de la mezcla contenida en cada depsito cuando se encuentran llenos.
266 FLUJO DE FLUIDOS


6.10.5 Ejemplo. Control de nivel en un depsito de lquido
Sea un depsito, de
3
5 m de volumen y
2
3 m de superficie, alimentado por una fuente
de lquido conectada a la parte superior de aquel. El lquido desagua a travs de una
tubera conectada a la base del deposito a un sumidero a presin atmosfrica. La tubera,
de seccin circular y pared lisa, tiene m 50 de longitud, m 2046 . 0 de dimetro interno
y est dotada de una vlvula que se encuentra situada aproximadamente a la mitad de la
longitud. La apertura de la vlvula est regulada por un controlador, de tipo PI, de nivel
del tanque. El volumen de lquido contenido en los m 50 de conduccin, cuando se
encuentra llena, es
3
6439 . 1 m . Para modelar el retardo en la tubera se considera que
cada una de las dos uniones macroscpicas que conectan la vlvula con un tramo de
tubera tiene un volumen de
3
8219 . 0 m . La mezcla lquida que suministra la fuente es
la misma que en el ejemplo anterior: queroseno, benceno y otros compuestos orgnicos.
El tanque inicialmente se encuentra vaco y la vlvula cerrada. Durante la simulacin
vara el caudal, la composicin y la temperatura de la mezcla que proporciona la fuente.
El valor de consigna para el controlador de nivel inicialmente es que el tanque se
encuentre lleno al % 80 . Transcurridos s 600 cambia al % 40 .
Debe asignarse a la superficie de la base de la unin un valor lo suficientemente grande
como para que cuando no se encuentre llena la presin en su base sea aproximadamente
la de referencia. Se supone, por ejemplo, que se asigna a la superficie de las uniones un
valor inadecuadamente pequeo para este problema en concreto, por ejemplo,
2
10 m .
En la Figura 6.61 se muestra el listado del modelo y en la Figura 6.62 su representacin
Dymodraw. La Figura 6.63 muestra la evolucin del volumen de la mezcla contenida en
cada una de las dos uniones. Se observa que el volumen de lquido en la segunda unin,
una vez se abre la vlvula, oscila, no encontrndose la unin llena ms que en
determinados instantes puntuales y, por tanto, no satisfacindose las condiciones bajo
las cuales modela una unin macroscpica.

model class (sourceVolLiqSignalI) sourceCntrl
parameter volFlow
totalVolFSP = volFlow
volFractSP = [ 0.80 + 0.05 * cos(Time/50); ->
0.15 - 0.05 * cos(Time/50); ->
0.05]
tempFSP = 320 + 20 * sin( Time / 100 )
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (emitter1I) levelControllerSP
parameter event { Instante de disparo de los eventos. t }
parameter levelSP1 { Consigna para el nivel. L } ->
levelSP2
{ Consigna para el nivel. m }
signal = if Time < event then levelSP1 else levelSP2
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (valveSignalI) pipeCntrl
valveOpeningSP = 1 { Consigna para la apertura de la valvula }
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (circSmoothPipeDynLiqB) pipe
parameter meanVisc { Viscosidad de la mezcla. M*L**-1*t**-1 }
viscosity = meanVisc
end

MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 267

model class PIcontroller
{ Controlador PI discreto con anti-windup }
cut measure {* cutReceiver at (-10,80) (10,100) } ->
(y) { Sen-al variable controlada }
cut control {* cutEmitter at (80,-10) (100,10) } ->
(u) { Sen-al variable manipulada }
cut setPoint {* cutReceiver at (-100,-10) (-80,10) } ->
(w) { Sen-al de consigna }
local error { Sen-al de error } ->
I = 0 { Integral del error } ->
TSamp = 0 { Siguiente instante de muestreo }
parameter K { Ganancia proporcional } ->
T { Constante de tiempo integral } ->
deltT { Periodo de muestreo }
parameter umax { Maximo valor de la variable manipulada } ->
umin { Minimo valor de la variable manipulada }
error = y - w
when Time > TSamp then
new(TSamp) = Time + deltT
u = K * error + I / T
{ anti-windup }
new(I) = if u > umax and error > 0 or u < umin and error < 0 ->
then I else I + deltT * error
endwhen
{* layer icon }
{* rectangle (-80,-80) (80,80) color=0 }
{* text "LC" (-60,-60) (60,60) color=0 }
end

model class (liquidCp6PrefVB) tank
cut level {* cutEmitter at (80,-10) (100,10) } ->
(level)
level = liquid.fluidVun / liquid.section
end

model class (sourcePressLiqB) sinkEnvironment
parameter pressSink { Presion. M*L**-1*t**-2 } ->
tempSink { Temperatura. T } ->
massFracSink(nComp) { Fraccion en masa }
massL = massFracSink
tempL = tempSink
pressL = pressSink
end

model levelCntrlTank
{
Component 1: Queroseno
Component 2: Benzeno
Component 3: Mezcla de componentes organicos
}
constant nComp = 3 { Numero de componentes } ->
pi = 3.141593 { Numero pi }
parameter tankVolume = 5 { Volumen del tanque. m**3 } ->
tankSection = 3 { Seccion del tanque. m**2 }
parameter density(nComp) = [980; 1100; 1050] { Densidad componentes puros. Kg/m**3 } ->
CpCoefM(nComp,7) = [446,5.36,0,0,0,0,0; ->
325,4.60,0,0,0,0,0; ->
390,4.97,0,0,0,0,0] { Coef. capac. calorif. por masa } ->
meanVisc = 7.3E-3 { Viscosidad promedio. N*s/m**2 }
parameter pipeLength = 24.5 { Longitud de la conduccion. m } ->
pipeDiameter = 0.2046 { Diametro interno de la conduccion. m } ->
valveLength = 1 { Longitud equivalente de la valvula. m }
parameter pipeSection = ( pi * ( pipeDiameter / 2 )**2 ) ->
pipeWettedArea = ( pi * pipeDiameter * pipeLength )
parameter volJunc = pipeSection*pipeLength { Volumen de la union. m**3 } ->
sectJunc = 10 { Seccion de la unin. m**2 }
parameter pmax = 2E5 { Parametros de la curva caracteritica de la fuente } ->
pcodo = 1.9E5 ->
pmin = 1 ->
peps = 1E-2
parameter compCoefJunc = 1E-6 { Coeficiente numerico de compresibilidad. m**2/N } ->
compCoefTank = 1E-8 { Coeficiente numerico de compresibilidad. m**2/N }
parameter event = 600 { Instante de disparo del evento. s }
parameter volFlowSP = - 0.02 { Consigna para el flujo. m**3/s } ->
levelSP1 = 0.8*tankVolume/tankSection { Consigna para el nivel. m } ->
levelSP2 = 0.4*tankVolume/tankSection { Consigna para el nivel. m }
parameter pressSink = 0 { Presion del sumidero. N/M**2 } ->
tempSink = 0 { Temperatura del sumidero. K } ->
massFracSink(nComp) = 0 * ones(nComp,1) { Fraccion en masa del sumidero }
parameter K = 0.5 { Ganancia proporcional controlador PI } ->
T = 10 { Constante de tiempo integral controlador PI. s } ->
deltT = 2 { Periodo de muestreo del controlador PI. s }
parameter umax = 1 { Valor maximo de la variable manipulada } ->
umin = 0 { Valor minimo de la variable manipulada }
submodel (tank) tank {* at (-60,0) (-40,20) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
268 FLUJO DE FLUIDOS


section=tankSection,CpCoefM=CpCoefM,compressCoef=compCoefTank)
submodel (junctLiqCp6PrefB) junction1 {* at (-5,40) (15,60) rotation=90 } ->
(nComp=nComp,density=density,CpCoefM=CpCoefM,section=sectJunc, ->
vesselVolume=volJunc,compressCoef=compCoefJunc) ->
junction2 {* at (25,40) (45,60) rotation=90 } ->
(nComp=nComp,density=density,CpCoefM=CpCoefM,section=sectJunc, ->
vesselVolume=volJunc,compressCoef=compCoefJunc)
submodel (pipe) pipe1 {* at (-20,0) (0,20) } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,meanVisc=meanVisc) ->
pipe2 {* at (40,0) (60,20) } ->
(nComp=nComp,length=pipeLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,meanVisc=meanVisc) ->
valve {* at (10,0) (30,20) } ->
(nComp=nComp,length=valveLength,section=pipeSection,density=density, ->
CpCoefM=CpCoefM,wettedArea=pipeWettedArea,epsMomentum=1E-3, ->
meanVisc=meanVisc)
submodel (sourceVolLiqFB) source {* at (-80,0) (-100,20) } ->
(nComp=nComp,pmax=pmax,pmin=pmin,pcodo=pcodo,peps=peps, ->
density=density,CpCoefM=CpCoefM)
submodel (sourceCntrl) sourceCntrl {* at (-100,-40) (-80,-20) } ->
(nComp=nComp,volFlow=volFlowSP)
submodel (levelControllerSP) levelCntrlSP {* at (-70,-40) (-50,-20) } ->
(event=event,levelSP1=levelSP1,levelSP2=levelSP2)
submodel (pipeCntrl) pipeCntrl {* at (40,-40) (60,-20) }
submodel (sinkEnvironment) sink {* at (70,0) (90,20) } ->
(nComp=nComp,pressSink=pressSink,tempSink=tempSink, ->
massFracSink=massFracSink)
submodel (PIcontroller) levelController {* at (-40,-40) (-20,-20) } ->
(K=K,T=T,deltT=deltT,umax=umax,umin=umin)
connect tank:inMassTop at source:inMass ->
{* via (-50,20) (-50,30) (-70,30) (-70,10) (-80,10) color=3 }
connect tank:inMassBot at pipe1:inMass ->
{* via (-50,0) (-50,-10) (-25,-10) (-25,10) (-30,10) color=3 }
connect junction1:inMass at pipe1:outMass ->
{* via (5,40) (5,10) (0,10) color=3 }
connect junction1:inMass at valve:inMass ->
{* via (5,40) (5,10) (10,10) color=3 }
connect junction2:inMass at valve:outMass ->
{* via (35,40) (35,10) (30,10) color=3 }
connect junction2:inMass at pipe2:inMass ->
{* via (35,40) (35,10) (40,10) color=3 }
connect sink:inMass at pipe2:outMass {* color=3 }
connect source:setPointSignal at sourceCntrl:setPointSignal {* color=0 }
connect pipeCntrl:setPointSignal at pipe1:setPointSignal ->
{* via (50,-20) (50,-10) (-10,-10) (-10,0) color=0 }
connect pipeCntrl:setPointSignal at pipe2:setPointSignal {* color=0 }
connect levelController:setPoint at levelCntrlSP:signal {* color=0 }
connect levelController:control at valve:setPointSignal ->
{* via (-20,-30) (20,-30) (20,0) color=0 }
connect levelController:measure at tank:level ->
{* via (-30,-20) (-30,10) (-40,10) color=0 }
end

Figura 6.61 Listado del modelo del depsito con control de nivel.








Figura 6.62 Representacin Dymodraw del modelo del depsito con control de nivel.
MODELO DE LAS BIFURCACIONES EN EL FLUJO DE JARA v. 1.0 269














Figura 6.63 Volumen de la mezcla contenida en cada una de las dos uniones. Superficie = 10 m
2
.
Si se repite la simulacin asignando a la superficie de la unin su valor por defecto, es
decir,
2 20
10 m , se obtiene el resultado mostrado en la Figura 6.64. Las bajadas en el
volumen de la mezcla en la segunda unin son debidas al efecto combinado de la
disminucin en el flujo que llega a esta unin (debido al cierre de la vlvula) y a la
inercia del fluido contenido en el tramo de tubera que conecta la segunda unin con el
sumidero: cuando la unin pasa de estar llena a no estarlo la presin en su base cae
hasta la presin de referencia, igualando a la presin en el sumidero, con lo cual la nica
fuerza que acta sobre el fluido en ese tramo de la conduccin es la de friccin. Hasta
que la fuerza de friccin no lo detiene, este flujo hace disminuir la cantidad de lquido
contenido en la unin.













Figura 6.64 Volumen de la mezcla contenida en cada una de las dos uniones. Superficie = 1E20 m
2
.
270 FLUJO DE FLUIDOS


En la Figura 6.65 se muestra el momento lineal del fluido contenido en los tramos de
tubera entre el depsito y la primera unin y entre la segunda unin y el sumidero.













Figura 6.65 Momento lineal del fluido contenido en los dos tramos de tubera.
En la Figura 6.66 se muestra como el nivel de lquido en el depsito
(levelController.y) sigue a su valor de consigna (levelController.w) y como
evoluciona la variable manipulada del controlador discreto: la apertura de la vlvula
(levelController.u).













Figura 6.66 Nivel del lquido en el depsito y su consigna. Apertura de la vlvula.
La temperatura del lquido contenido en el depsito y en las uniones vara producto de
la oscilacin de la temperatura del flujo proporcionado por la fuente (ver Figura 6.67).
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 271














Figura 6.67 Temperatura del flujo de la fuente y de la mezcla contenida en el depsito y en las uniones.
6.10.6 Modelo de la unin macroscpica para el flujo de mezclas
gaseosas
La unin macroscpica para el flujo de mezclas gaseosas se modela mediante un
volumen de control, cuyo volumen, como en el caso de las mezclas lquidas, depende de
las aproximaciones de modelado. Si se desea que la unin macroscpica posea
propiedades similares a las de la unin infinitesimal el volumen debe ser lo
suficientemente pequeo (pero no mas) como para, dentro del error admisible,
garantizarlo. Suponiendo que la mezcla de gases obedece la ecuacin de estado de los
gases perfectos, la presin de la mezcla contenida en el volumen de control es
proporcional al nmero de moles y a la temperatura, e inversamente proporcional al
volumen: cuanto menor es el volumen mayor es el cambio en la presin debido a un
determinado cambio en el nmero de moles o en la temperatura. Si desea emplearse el
volumen de la unin macroscpica para modelar el retardo producido en las
conducciones, el volumen de la unin debe ser igual al del tramo de conduccin que
representa.
6.11 CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0
6.11.1 Igualdad de la presin de dos mezclas gaseosas
Se consideran dos volmenes de control, cada uno de los cuales contiene una mezcla
gaseosa homognea ideal de gases semiperfectos. Se supone que entre los dos
272 FLUJO DE FLUIDOS


volmenes de control se establece un flujo de materia, debido a la diferencia de presin
entre ellos, de dinmica muy rpida comparada con el resto de las dinmicas del modelo
y cuya forma es irrelevante para el propsito de la simulacin. En estas condiciones
puede considerarse que el flujo de materia entre las dos mezclas gaseosas es tal que en
todo momento anula la diferencia de presiones entre ellas. Es decir, pueden sustituirse
las ecuaciones que describen la dinmica del flujo (la relacin entre la variacin en el
momento lineal, las fuerzas impulsoras y las de friccin), por otras que describen el
estado estacionario al que conduce el flujo (el equilibrio mecnico entre las dos
mezclas).
La clase que modela la condicin de igualdad de presiones entre dos volmenes de
control conteniendo mezclas gaseosas, deber poseer una interfaz del tipo fenmeno de
transporte con dos cuts resistivos de flujo de gas, cada uno de los cuales se conecta a un
cut capacitivo del mismo tipo de un volumen de control. Una posible aproximacin a
este problema consiste en definir la clase que modela la igualdad de presiones de modo
que:
1. La variable presin de un cut de flujo de materia sea igual a la del otro.
2. Imponga la condicin de mezcla agitada a la composicin del flujo y a su
temperatura.
3. Contenga una expresin para el flujo de entalpa asociado al flujo de gases entre
los dos volmenes de control.
Sin embargo, modelar la clase de este modo implica evaluar la presin de las ecuaciones
de la clase, lo cual supone contravenir la regla que se ha establecido para la causalidad
computacional de las variables across de los cuts resistivos, dando lugar a que al realizar
la conexin el sistema tenga ndice superior. Aun as, se analiza a continuacin con
cierto detalle esta aproximacin al problema. Para ello se escriben las ecuaciones del
gas, que se considera por simplicidad ideal y de un solo componente, contenido en los
dos volmenes de control, A y B , as como las ecuaciones de la clase que modela la
condicin de igualdad de presiones.
Ecuaciones del gas en el
volumen de control A.
Ecuaciones del gas en el
volumen de control B .

A A A A
RT n V p
B B B B
RT n V p
Ecuacin de estado de los gases
ideales.
( ) ( )
ref A V ref A A
T T C u n U +

( ) ( )
ref B V ref B B
T T C u n U +


Relacin entre la energa interna,
el nmero de moles, la capacidad
calorfica molar a presin
constante y la temperatura.
n
A
n
B A
A
F F
dt
dn

+
n
B
n
B A
B
F F
dt
dn

+
Balance de moles.
H
A
H
B A
A
F F
dt
dU

+
H
B
H
B A
B
F F
dt
dU

+
Balance de energa interna.
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 273

Ecuaciones de la clase que modela la condicin
de igualdad de presiones.

( ) ( )
ref B A p ref
n
B A
H
B A
T T C h F F +



Flujo de entalpa.

'

>

0 si
0 si
n
B A B
n
B A A
B A
F T
F T
T
Temperatura del flujo.
B A
p p
Ligadura de igualdad de presiones.

Con el fin de realizar la asignacin de la causalidad computacional, las variables que
intervienen en las ecuaciones anteriores se clasifican en conocidas (parmetros y
entradas computacionales) y desconocidas:
ref ref ref
V p
B A
h u T
C C
V V

, ,

,

Parmetros del modelo.
H
B
H
A
n
B
n
A
F F
F F


,
,

Variables calculadas de las ecuaciones de las clases
que modelan el entorno. Se consideran variables
conocidas.
B A
H
B A
n
B A
B B
B B
A A
A A
T F F
dt
dU
dt
dn
T p
dt
dU
dt
dn
T p

, ,
, , ,
, , ,

Incgnitas.
B A
B A
U U
n n
,
,

Incgnitas que aparecen derivadas.

La particin del sistema suponiendo que las cuatro incgnitas que aparecen derivadas en
el modelo sean variables de estado, indica que el sistema no tiene ni ndice cero ni uno:
[ ] ( ) ( )
ref A V ref A A
T T C u n U +

A A
U n , son variables de estado,
A
T es la nica
variable desconocida de la ecuacin.
[ ]
A A A A
RT n V p
A
p es la nica variable a evaluar de la ecuacin.
[ ]
B A
p p
B
p es la nica variable a evaluar de la ecuacin.
274 FLUJO DE FLUIDOS


[ ]
B B B B
T R n V p
B
T es la nica variable que queda por calcular de
las que intervienen en esta ecuacin.
Una vez evaluada
B
T y dado que
B B
U n , son variables de estado, son conocidas todas las variables de
la ecuacin ( ) ( )
ref B V ref B B
T T C u n U +

. Adems, no existe ninguna ecuacin para calcular


n
B A
F

.
Se considera
n
B A
F

conocida para poder seguir asignando la causalidad.
n
A
n
B A
A
F F
dt
dn

+
1
]
1

sta es la nica ecuacin en que aparece


dt
dn
A
y,
por tanto, debe evaluarse de ella.
n
B
n
B A
B
F F
dt
dn

+
1
]
1

sta es la nica ecuacin en que aparece


dt
dn
B
y,
por tanto, debe evaluarse de ella.
[ ]

'

>

0 si
0 si
n
B A B
n
B A A
B A
F T
F T
T
B A
T

es la nica variable a evaluar de la ecuacin,
por eso debe evaluarse de ella.
[ ] ( ) ( )
ref B A p ref
n
B A
H
B A
T T C h F F +



La nica variable a evaluar en esta ecuacin es
H
B A
F

.
H
A
H
B A
A
F F
dt
dU

+
1
]
1

sta es la nica ecuacin en que aparece


dt
dU
A
,
por tanto debe ser evaluado de ella.
H
B
H
B A
B
F F
dt
dU

+
1
]
1

sta es la nica ecuacin en que aparece


dt
dU
B
,
por tanto debe ser evaluado de ella.

Como se observa, considerar estados todas las variables que aparecen derivadas
conduce a que no exista ecuacin para evaluar
n
B A
F

y a que la ecuacin,
( ) ( )
ref B V ref B B
T T C u n U +

sea redundante: imponer la ligadura entre las presiones de


los gases ha reducido en uno el nmero de grados de libertad del sistema. Es preciso
analizar cmo debe realizarse la eleccin de las variables de estado.
Se supone que se consideran estados la energa interna y el nmero de moles de uno de
los gases, por ejemplo, el del volumen de control A. Puede calcularse su temperatura y
presin de la forma siguiente:
estados ,
A A
n U
[ ] ( ) ( )
ref A V ref A A
T T C u n U +


[ ]
A A A A
RT n V p

CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 275

Se consideran las dos posibles elecciones del estado en el gas contenido en el volumen
de control B :
1. Si se escoge la energa interna como variable de estado, entonces el nmero de
moles y la temperatura deben obtenerse del sistema de dos ecuaciones con dos
incgnitas formado por la ecuacin de estado del gas y la ecuacin para la energa
interna. Sin embargo, obsrvese que estas dos ecuaciones son la misma cuando se
trata de obtener de ellas el nmero de moles y la temperatura. Esta alternativa, por
tanto, no resulta viable.
estado
B
U
( ) ( )
( )

'

'

B B
V
ref V ref B B
B B
B B
ref B V ref B B
B B B B
T n
C
T C u n U
T n
R
V p
T T C u n U
RT n V p



2. Si se escoge el nmero de moles como variable de estado, conocido ste y la presin
(igual a la del otro gas) puede obtenerse la temperatura y de sta y el nmero de
moles obtenerse la energa interna.
estado
B
n
[ ]
B B B B
T R n V p
[ ] ( ) ( )
ref B V ref B B
T T C u n U +



En el Apartado 6.11.2, "Ejemplo. Modelado imponiendo la igualdad de la presin", se
discute el modelado de un sistema compuesto por tres tanques conectados en serie de
modo que puede suponerse que la presin del gas contenido en todos ellos es la misma.
Dos fuentes, una conectada al primer tanque y otra al ltimo, introducen una mezcla de
nitrgeno e hidrgeno. Se emplea la clase semiPerfGasCp6VB para modelar los
volmenes de control contenido las mezclas gaseosas, con lo cual las variables que
aparecen derivadas en el modelo de la mezcla gaseosa son la temperatura y el nmero
de moles de cada componente. La igualdad de la presin en los tanques se modela
imponiendo explcitamente la igualdad de las mismas, con lo cual el sistema resultante
tiene ndice superior.
Cuando el nmero de componentes de la mezcla gaseosa es mayor que uno, la
reduccin de ndice transforma un sistema de orden dos a otro de orden uno con un lazo
algebraico no lineal. El nmero de ecuaciones del lazo no lineal aumenta con el nmero
de componentes de la mezcla gaseosa y tambin con el nmero de volmenes de control
que se considera que se encuentran en equilibrio mecnico.
276 FLUJO DE FLUIDOS


A continuacin se discute otra forma de modelar la clase que impone la condicin de
igualdad de presiones. Se supone que en el instante inicial las mezclas gaseosas se
encuentran a la misma presin y que, en lugar de imponer que las presiones se
mantengan iguales entre s, se impone que se mantengan iguales sus derivadas respecto
al tiempo. De esta forma, la clase:
1. Impone la condicin de que la derivada respecto al tiempo de la variable presin
de un cut de flujo de gas sea igual a la derivada de la del otro.
2. Impone la condicin de mezcla agitada a la composicin del flujo y a su
temperatura.
3. Contiene una expresin para el flujo de entalpa asociado al flujo de gases entre
los dos volmenes de control.
El imponer la igualdad de la derivada respecto al tiempo de las presiones supone que las
variables presin van a aparecer derivadas en el modelo: ste tiene ndice superior al
contener ms variables derivadas que grados de libertad. Debe aplicarse el algoritmo de
Pantelides para aadir al modelo la derivada de algunas de sus ecuaciones y
especificarse que las presiones, pese a aparecer derivadas, no deben ser consideradas
estados.
Cabra preguntarse si expresando la derivada de la presin en funcin de la derivada de
variables que ya aparecen derivadas en el modelo puede evitarse que el sistema tenga
ndice superior. Con ello se evitara que el programador tenga que indicar al lenguaje de
modelado que reduzca el ndice cada vez que se usa la clase. Si se supone que las
variables de estado de los gases son el nmero de moles de cada componente y la
temperatura, se puede expresar la derivada de la presin en funcin de las derivadas de
los estados de la forma siguiente:

,
_

+

comp comp comp
N
i
i
N
i
i
N
i
i
n
dt
dT
dt
dn
T
V
R
dt
dp
n RT pV
1 : 1 : 1 :

Sin embargo, la contestacin a la pregunta anterior es que no es posible evitar que el
sistema tenga ndice superior, ya que las variables nmero de moles y temperatura
contenidas en la clase que modela la igualdad de la derivada de las presiones se definen
independientemente de las variables nmero de moles y temperatura definidas en las
clases que modelan los dos volmenes de control que contienen las mezclas de gases.
Al conectar los cuts de las clases, las ecuaciones igualando las variables across nmero
de moles de cada componente y temperatura, son ligaduras entre variables que aparecen
derivadas en el modelo, con lo cual el problema tiene ndice superior: debe aadirse al
modelo la derivada de las ecuaciones de conexin entre estas variables y especificarse
que las variables terminales nmero de moles de cada componente y la temperatura de
la clase que modela la igualdad de la derivada de las presiones no deben evaluarse por
integracin de su derivada sino de las ecuaciones de la conexin.
Uno de los inconvenientes de esta aproximacin al problema (imponer la igualdad de la
derivada de las presiones) reside en la aparicin de lazos algebraicos no lineales de gran
tamao al reducir el ndice del sistema. En el Apartado 6.11.3, "Ejemplo. Modelado
imponiendo la igualdad de la derivada de la presin", se muestra un ejemplo.
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 277

Una aproximacin alternativa al problema consiste en considerar que, dado que el flujo
de materia que se establece entre las mezclas gaseosas para igualar sus presiones tiene
una dinmica muy rpida comparada con el resto de las dinmicas del modelo y que su
forma es irrelevante para el propsito de la simulacin, se puede asumir una dinmica
cualquiera de forma arbitraria siempre y cuando satisfaga la condicin de ser
"suficientemente rpida" comparada con las dinmicas de inters.
A fin de no convertir el sistema en stiff, la dinmica deber escogerse lo ms lenta
posible para poder considerarla despreciablemente rpida. De forma arbitraria se supone
que el flujo de materia es proporcional al gradiente de presiones. La constante de
proporcionalidad es un parmetro del modelo que, tal como se ha indicado
anteriormente, debe escogerse lo ms pequeo posible que permita suponer que la
dinmica a que da lugar es "instantnea".
( )
B A
n
B A
p p k F
prop

Arbitrariamente se define el flujo de materia
proporcional a su diferencia de presiones.

La clase que modela la igualdad de presiones, pressEqGasB, es una subclase de
convecGasFlowB. La clase convecGasFlowB modela la condicin de mezcla agitada
para la concentracin y la temperatura del flujo y proporciona una expresin para el
flujo de entalpa en funcin del flujo molar de cada componente y de la temperatura del
flujo. La clase pressEqGasB contiene la relacin anterior entre el flujo molar y la
diferencia de presiones. La variable relatError, definida como
( ) + +

B A
B A
p p
p p
5 . 0
,
mide el error relativo cometido al considerar que la diferencia de presiones es cero.
La clase pressEqGasB tiene una interfaz del tipo fenmeno de transporte, gasFlow2qI,
con dos cuts resistivos de flujo de gas y satisface la regla para este tipo de cuts: las
variables through pueden calcularse como funcin explcita de las variables across. El
cumplimiento de esta regla garantiza que la conexin de la clase no da lugar a
problemas de ndice superior o a la aparicin de lazos algebraicos.
6.11.2 Ejemplo. Modelo imponiendo la igualdad de la presin
Se supone un sistema formado por tres pequeos depsitos iguales de almacenamiento
de gases, conectados en serie, en los que dos fuentes, una conectada al primer tanque y
otra conectada al ltimo, introducen una mezcla gaseosa de dos componentes
(hidrgeno y nitrgeno). Se realiza la aproximacin de considerar que el flujo entre los
tres depsitos es tal que, en todo momento, el gas contenido en ellos se encuentra a la
misma presin. Para modelar el flujo entre los tanques se impone explcitamente la
condicin de igualdad entre las presiones de las mezclas contenidas en los tanques.
El sistema resultante tiene ndice superior. Tras la aplicacin del algoritmo de
Pantelides se indica que la temperatura en dos de los tanques no debe ser considerada
variable de estado pese a aparecer derivada en el modelo. Para ello se emplean las
278 FLUJO DE FLUIDOS


rdenes siguientes (la versin 3.1 de Dymola soporta la orden variable nonstate, que
tiene el mismo efecto que variable unknown):
variable unknown gasB::semiPerfGas.tempG
variable unknown gasC::semiPerfGas.tempG

Durante los primeros s 5 de simulacin la fuente conectada al primer depsito
introduce en el mismo un flujo de hidrgeno de s mol t / 8 . 0 , donde t representa el
tiempo en segundos transcurrido desde el instante inicial de la simulacin. La fuente
conectada al tercer depsito introduce un flujo igual de nitrgeno. A partir del quinto
segundo ambas fuentes comienzan a extraer la mezcla de los depsitos con un flujo
constante de s mol / 6 . 0 . En la Figura 6.68 se muestra el modelo del sistema y en la
Figura 6.69 su representacin Dymodraw.

model class (convecGasFlowB) pressEqGasPeqP
{ Igualdad de presiones }
pressGI = pressGO
{* layer icon }
{* ellipse (-75,-5) (-65,5) fill_color=0 color=0 }
{* ellipse (65,-5) (75,5) fill_color=0 color=0 }
{* text "P" (-70,50) (-50,70) color=0 }
{* text "P" (50,50) (70,70) color=0 }
{* text "=" (-10,50) (10,70) color=0 }
end

model class (sourceMolSignalI) sourceCntrl
parameter event { Instante de disparo del evento. t } ->
totalMolFRamp { Consigna para el flujo molar total. mol*t**-1 } ->
totalMolF { Consigna para el flujo molar total. mol*t**-1 } ->
molFraction(nComp) { Consigna para la fraccion molar } ->
tempFlow { Consigna para la temperatura. T }
totalMolFSP = if Time < event then totalMolFRamp*Time else totalMolF
molFractSP = molFraction
tempFSP = tempFlow
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model PressEq3Tanks
{ Componentes: (1) Hidrogeno; (2) Nitrogeno }
constant nComp=2 { Numero de componentes de la mezcla }
{ Coeficientes de la capacidad calorifica a presion constante. Cp en J/mol*K }
parameter CpCoefN(nComp,7) = [ 28.61, 0, 0, 0, 0, 0, 0; ->
29.09, 0, 0, 0, 0, 0, 0 ]
parameter perfGasConst = 8.31 { Constante de los gases perfectos. J/mol*K } ->
volumeA = 0.2 { Volumen del tanque A. m**3 } ->
volumeB = 0.2 { Volumen del tanque B. m**3 } ->
volumeC = 0.2 { Volumen del tanque C. m**3 }
{ Valores de consigna para el controlador de la fuente A }
parameter eventA = 5 { Instante de disparo del evento. s } ->
totalMolFRampA = -0.8 { Consigna para el flujo molar total. mol*s**-1 } ->
totalMolFA = 0.6 { Consigna para el flujo molar total. mol*s**-1 } ->
molFractionA(nComp) = [1;0] { Consigna para la fraccion molar } ->
tempFlowA = 300 { Consigna para la temperatura. K }
{ Valores de consigna para el controlador de la fuente C }
parameter eventC = 5 { Instante de disparo del evento. s } ->
totalMolFRampC = -0.8 { Consigna para el flujo molar total. mol*s**-1 } ->
totalMolFC = 0.6 { Consigna para el flujo molar total. mol*s**-1 } ->
molFractionC(nComp) = [0;1] { Consigna para la fraccion molar } ->
tempFlowC = 300 { Consigna para la temperatura. K }
submodel (semiPerfGasCp6VB) gasA {* at (-70,-10) (-50,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeA) ->
gasB {* at (-10,-10) (10,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeB) ->
gasC {* at (50,-10) (70,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeC)
submodel (pressEqGasPeqP) pressEquAB {* at (-40,-10) (-20,10) } ->
(nComp=nComp,CpCoefN=CpCoefN) ->
pressEquBC {* at (20,-10) (40,10) } ->
(nComp=nComp,CpCoefN=CpCoefN)
submodel (sourceMolGasFB) sourceA {* at (-80,-10) (-100,10) } ->
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 279

(nComp=nComp,CpCoefN=CpCoefN) ->
sourceC {* at (80,-10) (100,10) } ->
(nComp=nComp,CpCoefN=CpCoefN)
submodel (sourceCntrl) cntrlSourceA {* at (-100,-40) (-80,-20) } ->
(nComp=nComp,event=eventA,totalMolFRamp=totalMolFRampA, ->
totalMolF=totalMolFA,molFraction=molFractionA,tempFlow=tempFlowA) ->
cntrlSourceC {* at (80,-40) (100,-20) } ->
(nComp=nComp,event=eventC,totalMolFRamp=totalMolFRampC, ->
totalMolF=totalMolFC,molFraction=molFractionC,tempFlow=tempFlowC)
connect gasA:inMol at pressEquAB:inMol ->
{* via (-60,10) (-60,15) (-45,15) (-45,0) (-40,0) color=5 }
connect gasB:inMol at pressEquAB:outMol ->
{* via (0,10) (0,15) (-15,15) (-15,0) (-20,0) color=5 }
connect gasB:inMol at pressEquBC:inMol ->
{* via (0,10) (0,15) (15,15) (15,0) (20,0) color=5 }
connect gasC:inMol at pressEquBC:outMol ->
{* via (60,10) (60,15) (45,15) (45,0) (40,0) color=5 }
connect sourceA:inMol at gasA:inMol ->
{* via (-80,0) (-75,0) (-75,15) (-60,15) (-60,10) color=5 }
connect sourceC:inMol at gasC:inMol ->
{* via (80,0) (75,0) (75,15) (60,15) (60,10) color=5 }
connect sourceA:setPointSignal at cntrlSourceA:setPointSignal {* color=0 }
connect sourceC:setPointSignal at cntrlSourceC:setPointSignal {* color=0 }
end

Figura 6.68 Modelo de los tres tanques en equilibrio mecnico.







Figura 6.69 Representacin Dymodraw del sistema.
En la Figura 6.70 se muestra el flujo de cada componente entrante a cada una de las dos
fuentes.








Figura 6.70 Flujo entrante a las fuentes.
En las Figuras 6.71 y 6.72 se muestra el nmero de moles de cada componente en cada
uno de los tres depsitos.
280 FLUJO DE FLUIDOS













Figura 6.71 Nmero de moles de hidrgeno.











Figura 6.72 Nmero de moles de nitrgeno.
6.11.3 Ejemplo. Modelo imponiendo la igualdad de la derivada de la
presin
Se considera el modelo de tres depsitos conectados en serie, conteniendo una mezcla
de tres componentes gaseosos considerados semi-perfectos: metano, eteno y etino. Una
fuente gaseosa introduce la mezcla gaseosa en el primer depsito y posteriormente lo
extrae. Se asume que el flujo de gases entre los depsitos es tal que se alcanza
"instantneamente" el equilibrio mecnico, es decir, en todo momento la presin del gas
es la misma en los tres depsitos. Esta condicin se modela imponiendo la igualdad de
la presin en el instante inicial y la igualdad de la derivada de la presin de la mezcla
gaseosa en los tres depsitos. La capacidad calorfica de cada componente de la mezcla
puede escribirse como un polinomio de grado cuatro de la temperatura. Se emplea la
clase semiPerfGasCp6VB para modelar las mezclas gaseosas. En la Figura 6.73 se
muestra el cdigo del modelo y en la Figura 6.74 su representacin Dymodraw.
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 281

En la clase que modela el flujo de gas entre los depsitos aparece derivada la presin en
los depsitos. Se escogen como variables de estado la temperatura y el nmero de moles
de cada componente en cada depsito. El algoritmo de Pantelides aade al sistema las
expresiones de las cuales evaluar la derivada de la presin y el flujo molar total entre los
depsitos.

model class (convecGasFlowB) pressEqGasDerP
{ Igualdad de la derivada de las presiones }
der(pressGI) = der(pressGO)
{* layer icon }
{* ellipse (-75,-5) (-65,5) fill_color=0 color=0 }
{* ellipse (65,-5) (75,5) fill_color=0 color=0 }
{* text "dP=dP" (-70,40) (70,70) color=0 }
end

model class (sourceMolSignalI) sourceCntrl
parameter event { Instante de disparo del evento. t } ->
totalMolFRamp { Consigna para el flujo molar total. mol*t**-1 } ->
totalMolF { Consigna para el flujo molar total. mol*t**-1 } ->
molFraction(nComp) { Consigna para la fraccion molar } ->
tempFlow { Consigna para la temperatura. T }
totalMolFSP = if Time < event then totalMolFRamp * Time else totalMolF
molFractSP = molFraction
tempFSP = tempFlow
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model PressEq3Tanks
{ Componentes: (1) Metano; (2) Eteno; (3) Etino }
constant nComp=3 { Numero de componentes de la mezcla }
{ Coeficientes de la capacidad calorifica a presion constante. Cp en J/mol*K }
parameter CpCoefN(nComp,7) = ->
[ 31.794, -33.065E-3, 204.077E-6, -188.911E-9, 57.862E-12, 0, 0; ->
11.717, 158.363E-3, -203.603E-6, 136.209E-9, -34.362E-12, 0, 0; ->
11.850, 94.593E-3, 66.388E-6, -135.070E-9, 56.084E-12, 0, 0 ]
parameter perfGasConst = 8.31 { Constante de los gases perfectos. J/mol*K } ->
volumeA = 0.2 { Volumen del tanque A. m**3 } ->
volumeB = 0.2 { Volumen del tanque B. m**3 } ->
volumeC = 0.2 { Volumen del tanque C. m**3 }
{ Valores de consigna para el controlador de la fuente }
parameter event = 5 { Instante de disparo del evento. s } ->
totalMolFRamp = -0.8 { Consigna para el flujo molar total. mol*s**-1 } ->
totalMolF = 0.6 { Consigna para el flujo molar total. mol*s**-1 } ->
molFraction(nComp) = [0.2;0.3;0.5] { Consigna para la fraccion molar } ->
tempFlow = 300 { Consigna para la temperatura. K }
submodel (semiPerfGasCp6VB) gasA {* at (-70,-10) (-50,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeA) ->
gasB {* at (-10,-10) (10,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeB) ->
gasC {* at (50,-10) (70,10) rotation=-90 } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=volumeC)
submodel (pressEqGasDerP) pressEquAB {* at (-40,-10) (-20,10) } ->
(nComp=nComp,CpCoefN=CpCoefN) ->
pressEquBC {* at (20,-10) (40,10) } ->
(nComp=nComp,CpCoefN=CpCoefN)
submodel (sourceMolGasFB) source {* at (-80,-10) (-100,10) } ->
(nComp=nComp,CpCoefN=CpCoefN,pmin=100,peps=10)
submodel (sourceCntrl) cntrlSource {* at (-100,-40) (-80,-20) } ->
(nComp=nComp,event=event,totalMolFRamp=totalMolFRamp, ->
totalMolF=totalMolF,molFraction=molFraction,tempFlow=tempFlow)
connect gasA:inMol at pressEquAB:inMol ->
{* via (-60,10) (-60,15) (-45,15) (-45,0) (-40,0) color=5 }
connect gasB:inMol at pressEquAB:outMol ->
{* via (0,10) (0,15) (-15,15) (-15,0) (-20,0) color=5 }
connect gasB:inMol at pressEquBC:inMol ->
{* via (0,10) (0,15) (15,15) (15,0) (20,0) color=5 }
connect gasC:inMol at pressEquBC:outMol ->
{* via (60,10) (60,15) (45,15) (45,0) (40,0) color=5 }
connect source:inMol at gasA:inMol ->
{* via (-80,0) (-75,0) (-75,15) (-60,15) (-60,10) color=5 }
connect source:setPointSignal at cntrlSource:setPointSignal {* color=0 }
end

Figura 6.73 Listado del modelo.
282 FLUJO DE FLUIDOS

















Figura 6.74 Representacin Dymodraw del modelo.
En la Figura 6.75 se muestra el flujo molar entrante a la fuente de cada componente de
la mezcla gaseosa y en las Figuras 6.76, 6.77 y 6.78 la evolucin en el nmero de moles
de cada componente contenido en cada depsito. En la Figura 6.79 se encuentra
representada la presin del gas contenido en los depsitos y su temperatura.


















Figura 6.75 Flujo entrante a la fuente de cada componente. Temperatura del flujo.


























Figura 6.76 Nmero de moles de metano en cada depsito.
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 283



























Figura 6.77 Nmero de moles de eteno en cada depsito.


























Figura 6.78 Nmero de moles de etino en cada depsito.

















Figura 6.79 Presin de la mezcla gaseosa en los depsitos. Temperatura en cada depsito.
284 FLUJO DE FLUIDOS


6.11.4 Ejemplo. Modelo suponiendo que el flujo es proporcional a la
diferencia de presiones
Se considera el mismo sistema del ejemplo anterior, pero en este caso el flujo entre los
depsitos se modela mediante la clase pressEqGasB, es decir, suponiendo que el flujo
molar es proporcional a la diferencia de presiones. La constante de proporcionalidad,
prop
k , se escoge lo ms pequea posible de modo que pueda suponerse que, para el
problema en concreto, la diferencia entre las presiones es despreciable. Para ello se
repite la simulacin empleando valores cada vez mayores del parmetro hasta que el
error relativo cometido al considerar que la diferencia de presiones es cero, medido por
la variable relatError, es admisible para la aplicacin en concreto. En la Figura 6.80
se muestra la representacin Dymodraw del sistema y en la Figura 6.81 el valor del
error relativo para 10
prop
k .







Figura 6.80 Representacin Dymodraw del sistema.











Figura 6.81 Error relativo cometido al suponer que la diferencia de presiones es cero con
10 Kprop .
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 285

6.11.5 Igualdad de la presin de dos mezclas lquidas
La condicin de igualdad de la presin entre dos puntos de sendos volmenes de control
conteniendo mezclas lquidas puede establecerse entre uno cualquiera de los dos puertos
de transferencia de materia de uno de los volmenes de control y otro cualquiera de los
dos puertos del otro. El modelado se ha realizado de la misma forma que en el caso de
las mezclas gaseosas, ya que las dificultades que surgen con otras aproximaciones son
similares a las que se presentan en el caso de los gases. La clase pressEqLiqB, contenida
en la librera liq.lib, modela la condicin de igualdad de presiones entre dos puntos de
dos mezclas lquidas.
6.11.6 Ejemplo. Depsito con salidas a tres alturas.
Considrese un tanque de almacenamiento de una mezcla de compuesta por el % 75 en
peso de queroseno y el % 25 en peso de benceno. Se supone que la viscosidad de la
mezcla vale aproximadamente, a K 300 ,
2 3
10 3 . 7

m s N , que la densidad del
queroseno y del benceno valen respectivamente
3
760

m kg y
3
850

m kg y sus
capacidades calorficas:
1 1
36 . 5 446

+ K Kg J T C
p
(queroseno)
1 1
60 . 4 325

+ K Kg J T C
p
(benceno)
La mezcla es introducida y extrada del depsito por una fuente conectada a su base. La
superficie de la base del depsito mide
2
1 m . El depsito tiene m 9 de altura y de l
parten tres tuberas horizontales de seccin circular y pared lisa, de m 0512 . 0 de
dimetro interno y m 10 de longitud, situadas respectivamente a m 3 , m 6 y m 9 de
altura respecto de la base del depsito. Las tuberas conectan el depsito a un sumidero
a presin atmosfrica.
La forma de modelar el depsito consiste en dividirlo en tres volmenes de control
correspondientes a los tramos de depsito situados entre dos tuberas consecutivas, es
decir, el primer volumen de control corresponde al tramo comprendido entre la base del
depsito y la primera tubera, situada a m 3 de altura, el segundo al comprendido entre
los m 3 y los m 6 de altura y el tercer depsito al tramo entre los m 6 de altura y la
parte superior del depsito. El flujo entre los volmenes de control se modela
suponiendo que es tal que la presin en la parte alta del primer volumen de control es la
misma que la presin en la base del segundo volumen de control y que la presin en la
parte superior de ste es la misma que la presin en la base del tercer volumen de
control. En la Figura 6.82 se muestra el listado del modelo y en la Figura 6.83 su
representacin Dymodraw.

model class (sourceMassSignalI) sourceController
parameter event { Instante de disparo del evento. t } ->
massFlowSP1 { Consigna para el flujo de masa. M*t**-1 } ->
massFlowSP2 { Consigna para el flujo de masa. M*t**-1 } ->
massFractionSP(nComp) { Consigna para la fraccion en masa } ->
tempSP { Consigna para la temperatura. T }
totalMassFSP = if Time < event then massFlowSP1 else massFlowSP2
286 FLUJO DE FLUIDOS


massFractSP = massFractionSP
tempFSP = tempSP
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (sourcePressLiqB) sinkPressAtm
{ Sumidero a la presion de referencia }
massL = [ 1; 0 ]
tempL = 300
pressL = 0
end

model class (valveSignalI) valveCntrl
{ Apertura de la valvula }
valveOpeningSP = 1
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (circSmoothPipeDynLiqB) pipe
parameter meanVisc { Viscosidad promedio. N*s/m**2 }
viscosity = meanVisc
end

model Tank3Exits
{ Componentes: (1) Queroseno; (2) Benceno }
constant nComp=2 { Numero de componentes }
parameter density(nComp) = [760;850] { Densidad de los componentes puros. Kg/m**3 } ->
viscosity = 7.3E-3 { Viscosidad promedio. N*s/m**2 } ->
CpCoefM(nComp,7) = [446, 5.36, 0, 0, 0, 0, 0 ; ->
325, 4.60, 0, 0, 0, 0, 0 ] { Cp en J/(Kg*K) } ->
compressCoef = 1.E-6 { Coeficiente numerico de compresibilidad } ->
Kprop = 10 { Parametro clase igualdad presiones }
{ Parametros de los volumen de control }
parameter tankVolume = 3 { Volumen. m**3 } ->
tankSection = 1 { Seccion. m**2 }
{ Parametros de las tuberias }
parameter lengthPipe = 10 { Longitud. m } ->
diameterPipe = 0.0512 { Diametro interno. m } ->
sectionPipe = 0.785398*diameterPipe**2 { Seccion interna. m**2 } ->
wettedAreaPipe = 3.14159*diameterPipe*lengthPipe { Area mojada. m**2 }
{ Parametros del controlador de la fuente }
parameter event = 1500 { Instante de disparo del evento. s } ->
massFlowSP1 = -15 { Consigna para el flujo de masa. Kg/s } ->
massFlowSP2 = 10 { Consigna para el flujo de masa. Kg/s } ->
massFractionSP(nComp) = [0.75;0.25] { Consigna para la fraccion en masa } ->
tempSP = 300 { Consigna para la temperatura. K }
{ Parametros de la curva caracteristica de la fuente }
parameter pmax = 1E5 { N/m**2 } ->
pcodo = 9E4 { N/m**2 } ->
pmin = 10 { N/m**2 } ->
peps = 5 { N/m**2 }
submodel (liquidCp6PrefVB) tankTop {* at (80,50) (100,70) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compressCoef) ->
tankCen {* at (20,0) (40,20) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compressCoef) ->
tankBot {* at (-40,-50) (-20,-30) } ->
(nComp=nComp,density=density,vesselVolume=tankVolume, ->
section=tankSection,CpCoefM=CpCoefM,compressCoef=compressCoef)
submodel (sourceMassLiqFB) liqSource {* at (-50,-70) (-70,-50) } ->
(nComp=nComp,CpCoefM=CpCoefM,pmax=pmax,pcodo=pcodo, ->
pmin=pmin,peps=peps)
submodel (sourceController) sourceCntrl {* at (-70,-100) (-50,-80) } ->
(nComp=nComp,event=event,massFlowSP1=massFlowSP1,tempSP=tempSP, ->
massFlowSP2=massFlowSP2,massFractionSP=massFractionSP)
submodel (pressEqLiqB) eqCenTop {* at (50,30) (70,50) } ->
(nComp=nComp,Kprop=Kprop,CpCoefM=CpCoefM) ->
eqCenBot {* at (-10,-20) (10,0) } ->
(nComp=nComp,Kprop=Kprop,CpCoefM=CpCoefM)
submodel (pipe) pipeBot {* at (-50,-20) (-70,0) } ->
(nComp=nComp,length=lengthPipe,section=sectionPipe,CpCoefM=CpCoefM, ->
density=density,wettedArea=wettedAreaPipe,meanVisc=viscosity) ->
pipeCen {* at (10,30) (-10,50) } ->
(nComp=nComp,length=lengthPipe,section=sectionPipe,CpCoefM=CpCoefM, ->
density=density,wettedArea=wettedAreaPipe,meanVisc=viscosity) ->
pipeTop {* at (70,80) (50,100) } ->
(nComp=nComp,length=lengthPipe,section=sectionPipe,CpCoefM=CpCoefM, ->
density=density,wettedArea=wettedAreaPipe,meanVisc=viscosity)
submodel (sinkPressAtm) sink {* at (-80,-20) (-100,0) } (nComp=nComp)
submodel (valveCntrl) valveCntrl {* at (-70,-45) (-50,-25) }
connect tankBot:inMassBot at liqSource:inMass ->
{* via (-30,-50) (-30,-60) (-50,-60) color=3 }
connect tankBot:inMassTop at eqCenBot:inMass ->
CONDICIN DE IGUALDAD DE PRESIONES DE JARA v 1.0 287

{* via (-30,-30) (-30,-10) (-10-10) color=3 }
connect tankCen:inMassBot at eqCenBot:outMass ->
{* via (30,0) (30,-10) (10,-10) color=3 }
connect tankCen:inMassTop at eqCenTop:inMass ->
{* via (30,20) (30,40) (50,40) color=3 }
connect tankTop:inMassBot at eqCenTop:outMass ->
{* via (90,50) (90,40) (70,40) color=3 }
connect tankBot:inMassTop at pipeBot:inMass ->
{* via (-30,-30) (-30,-10) (-50,-10) color=3 }
connect pipeBot:outMass at sink:inMass ->
{* color=3 }
connect tankCen:inMassTop at pipeCen:inMass ->
{* via (30,20) (30,40) (10,40) color=3 }
connect pipeCen:outMass at sink:inMass ->
{* via (-10,40) (-75,40) (-75,-10) (-80,-10) color=3 }
connect tankTop:inMassTop at pipeTop:inMass ->
{* via (90,70) (90,90) (70,90) color=3 }
connect pipeTop:outMass at sink:inMass ->
{* via (50,90) (-40,90) (-40,40) (-75,40) (-75,-10) (-80,-10) color=3 }
connect liqSource:setPointSignal at sourceCntrl:setPointSignal {* color=0 }
connect valveCntrl:setPointSignal at pipeBot:setPointSignal {* color=0 }
connect valveCntrl:setPointSignal at pipeCen:setPointSignal ->
{* via (-60,-25) (-60,-23) (-45,-23) (-45,20) (0,20) (0,30) color=0 }
connect valveCntrl:setPointSignal at pipeTop:setPointSignal ->
{* via (-60,-25) (-60,-23) (-45,-23) (-45,70) (60,70) (60,80) color=0 }
end

Figura 6.82 Modelo del depsito del cual parten tres tuberas a diferente altura.













































Figura 6.83 Representacin Dymodraw del sistema.
En la Figura 6.84 se muestra la evolucin del volumen del lquido contenido en los tres
volmenes de control en que se ha dividido el depsito. El valor del coeficiente
numrico de compresibilidad, compressCoef =1.E-6, se ha escogido de modo que el
288 FLUJO DE FLUIDOS


error cometido en el volumen del fluido cuando el depsito se encuentra lleno sea el
mximo admisible (en este caso aproximadamente del 2%).



























Figura 6.84 Volumen de la mezcla en cada volumen de control.
Para modelar el flujo de la mezcla en las conducciones se ha planteado el balance
dinmico de momento lineal, es decir: epsMomentum=1. En la Figura 6.85 se muestra el
momento lineal del lquido contenido en las conducciones.


























Figura 6.85 Momento lineal de la mezcla contenida en las conduccines.
El parmetro Kprop de la clase que modela la condicin de igualdad de presiones debe
ajustarse de modo que el error cometido al considerar que la diferencia de presiones
entre los dos puntos entre los cuales modela el flujo es nula es el mayor admisible. En
este modelo se ha asignado Kprop=10, dando lugar al error relativo mostrado en la
Figura 6.86.
CONCLUSIONES 289



























Figura. 6.86 Error relativo cometido al considerar que la diferencia de presiones es nula.
6.12 CONCLUSIONES
En este captulo se han descrito los modelos del flujo de mezclas homogeneas lquidas o
gaseosas incluidos en la versin 1.0 de JARA. Se ha discutido el modelado de las
condiciones de contorno para el flujo de materia, esto es, las fuentes de presin y de
flujo de materia. Para el modelado de las fuentes de flujo y de las bombas se ha
introducido el concepto de curva caracterstica. Se ha establecido la aproximacin de
mezcla agitada y se ha aplicado al modelado de conduciones, vlvulas, fuentes y
bombas. Todos los modelos de las conducciones y de las vlvulas se han planteado de
modo que el sentido del flujo sea reversible, pudiendo variar en tiempo de simulacin
en funcin de las presiones aplicadas en los extremos de la conduccin. En los modelos
de las conducciones se ha planteado el balance de momento lineal tanto dinmico como
en el estacionario, se han discutido las dificultades a que da lugar la formulacin en el
estacionario y se ha propuesto una solucin. Tambin se han expuesto las dificultades
que pueden estar asociadas a las transiciones de regimen del flujo, se han mostrado
ejemplos y se han propuesto formulaciones alternativas.
La estrategia adoptada en JARA v. 1.0 para el modelado del retardo en el transporte es
la aconsejada por MMS [MMS84]: la divisin del camino de flujo en volmenes de
control y el modelado del transporte del fluido entre ellos. Se han mostrado algunos
ejemplos muy sencillos de intercambiadores de calor, que han pretendido ilustrar la
aplicacin conjunta de las clases de JARA v. 1.0 que modelan el flujo de fluidos y las
que modelan el flujo de calor.
Para resolver el problema de la conexin en serie de clases que modelan fenmenos de
transporte o el problema de la bifurcacin del flujo se definen en JARA v. 1.0 modelos
de nodos de conexin. Los nodos de conexin para el flujo de calor se definieron en el
Captulo 5 y los nodos de conexin para el flujo de mezclas gaseosas o lquidas se han
definido el Captulo 6. Finalmente se ha descrito y se han mostrado ejemplos de la
forma en que se ha modelado en JARA v. 1.0 la condicin de igualdad de presin.

291

Captulo 7
TRANSFERENCIA DE MATERIA
7.1. INTRODUCCIN
En el Captulo 5 se han discutido los modelos del flujo de calor contenidos en la versin
1.0 de JARA y en el Captulo 6 los modelos del flujo por conveccin de mezclas
lquidas o gaseosas. En este captulo se discuten los modelos de la transferencia de
materia por difusin y por cambio de fase.
Se ha modelado la difusin nicamente en el caso de mezclas binarias de gases
semiperfectos. En el Apartado 7.2 se exponen las hiptesis de modelado, se describe el
modelo y se muestra un ejemplo sencillo que pretende ilustrar el empleo conjunto de
algunas de las clases de JARA v. 1.0 que modelan el flujo de materia por conveccin, el
flujo de calor y la transferencia de materia por difusin. Se emplea el ejemplo para
discutir el modelo de la condicin de que la presin parcial de un componente de la fase
vapor en contacto con su lquido tenga un valor determinado. La clase que modela esta
condicin se encuentra en la librera phase.lib.
Las reglas de diseo de JARA v. 1.0 sientan las bases para la ampliacin de las libreras
gas.lib y liq.lib con otros modelos para la difusin: difusin en mezclas gaseosas
multicomponentes (empleando, por ejemplo, las ecuaciones de Stefan-Maxwell
[Bird75] [Cutl99]), difusin en mezclas lquidas, etc.
En el Apartado 7.3 se completa la descripcin de los modelos contenidos en la librera
phase.lib. Estos son: la ebullicin de una mezcla lquida y la condensacin de una
mezcla gaseosa. Como ejemplo se discute un modelo sencillo de un evaporador
destinado a la generacin de vapor (Apartado 7.3.3).
La versin 1.0 de JARA no contiene modelos de la condicin de equilibrio lquido-
vapor, los cuales pueden ser tiles para el modelado, por ejemplo, de platos de
destilacin [Desh85]. La inclusin de estos modelos en la librera phase.lib se realizar
en posteriores versiones de JARA.
En el Apartado 7.4 se muestran las conclusiones.
292 TRANSFERENCIA DE MATERIA


7.2. DIFUSIN ORDINARIA EN MEZCLAS BINARIAS DE
GASES SEMIPERFECTOS
7.2.1 Hiptesis de modelado de JARA v. 1.0
Sean dos volmenes de control, A y B , en contacto mediante un plano de control
comn a ambos. En cada uno de los volmenes de control se encuentra una mezcla
gaseosa homognea ideal binaria de gases semiperfectos. Se supone que el flujo que se
establece para cada componente por difusin ordinaria entre las dos mezclas, a travs de
la superficie de contacto
AB
S entre los dos volmenes de control, debido a la diferencia
de concentraciones, viene determinado por la primera ley de Fick [Bird75] [Ram89].
La primera ley de Fick establece que el flujo molar por unidad de superficie del
componente i de una mezcla binaria debido a la difusin ordinaria es igual a la
concentracin molar total de la mezcla, c , multiplicada por el coeficiente de difusin
binario,
2 , 1
D , y por el gradiente de la fraccin molar del componente,
n
i
x [Bird75].
n
i
n
i
x D c F
2 , 1

~

Primera ley de Fick de la difusin para un sistema
binario.

Se realizan las tres siguientes hiptesis de modelado:
1. El flujo neto por difusin ordinaria de cada componente entre las mezclas de
gases de los volmenes de control A y B se considera igual al flujo del
componente que va del volumen de control A a un volumen de control como
B , pero vaco, menos el que va del volumen de control B a un volumen de
control igual que A, pero vaco.
2. El coeficiente de difusin binario puede depender, en general, de la presin, la
temperatura y la composicin.
3. Las propiedades del flujo por difusin entre el volumen de control A y el vaco
se calcula de las propiedades de la mezcla en A. Igualmente, las propiedades del
flujo por difusin entre el volumen de control B y el vaco se calcula de las
propiedades de la mezcla en B .
Para discretizar el gradiente de la fraccin molar es preciso definir una distancia, L ,
entre los dos volmenes de control, de modo que el gradiente se aproxima por la
fraccin molar en un volumen de control menos la del otro, dividido todo ello por la
distancia L .
2 , 1 : , i
V
n
c
V
n
c
B
B
i B
i
A
A
i A
i

Concentraciones molares en los componentes en
los volmenes de control A y B .
DIFUSIN ORDINARIA EN MEZCLAS BINARIAS DE GASES SEMIPERFECTOS 293

( )
( )
B B
B B
B
A A
A A
A
c c p T D D
c c p T D D
2 1 2 , 1 2 , 1
2 1 2 , 1 2 , 1
, , ,
, , ,


Se supone que el coeficiente de difusin binario
depende de la temperatura, la presin, y la
composicin.
( )
( )
B
B
B
A
A
A
n
B
n
A
AB
n
B A
AB
B
B
B
A
A
A
n
B
n
A
AB
n
B A
AB
V
n
D
V
n
D
F F
S
L
F
S
L
V
n
D
V
n
D
F F
S
L
F
S
L
2
2 , 1
2
2 , 1
vacio , 2 vacio , 2 , 2
1
2 , 1
1
2 , 1
vacio , 1 vacio , 1 , 1





Adaptacin de la primera ley de Fick. Flujo neto
por difusin de un gas ideal binario, con
componentes 1 y 2 , entre el volumen de control
A y el B . El flujo se considera positivo cuando
sale de A y entra en B .

Se asume que el flujo por difusin del volumen de control A al vaco se encuentra a la
temperatura de A, mientras que el flujo de B a vaco se encuentra a la temperatura de
B . En consecuencia, el flujo neto de entalpa entre las mezclas binarias de gases ideales
A y B es:
( )

,
_

,
_

,
_

+
+

,
_


B
ref
B
ref
A
ref
A
ref
T
T
p ref
B
B
B
T
T
p ref
B
B
B
T
T
p ref
A
A
A
T
T
p ref
A
A
A
H
B
H
A
AB
H
B A
AB
dT C h
V
n
D
dT C h
V
n
D
dT C h
V
n
D
dT C h
V
n
D
F F
S
L
F
S
L
2 , 2 ,
2
2 , 1
1 , 1 ,
1
2 , 1
2 , 2 ,
2
2 , 1
1 , 1 ,
1
2 , 1
vacio vacio





Flujo de entalpa asociado al flujo de
materia por difusin. El flujo de entalpa
se considera positivo cuando sale del
volumen de control A y entra en el B .

7.2.2 Descripcin del modelo de JARA v. 1.0
La clase diffSemiPerfGasBinCp6B, contenida en la librera gas.lib, modela el flujo por
difusin de una mezcla binaria entre dos volmenes de control. La interfaz de la clase,
gasFlow2I, del tipo fenmeno de transporte, posee dos cuts resistivos de flujo de gas.
Cada uno de ellos debe conectarse al cut capacitivo de flujo de gas de la clase que
modela el volumen de control conteniendo la mezcla gaseosa.
La clase diffSemiPerfGasBinCp6B contiene expresiones para evaluar el flujo molar y de
entalpa entre las mezclas gaseosas por difusin como funcin explcita de las variables
across de sus cuts de flujo de gas: nmero de moles de cada componente, presin y
294 TRANSFERENCIA DE MATERIA


temperatura. Se supone que la capacidad calorfica de los componentes semiperfectos de
la mezcla binaria puede escribirse como un polinomio de grado seis o inferior de la
temperatura. Las ecuaciones de la clase deben ser completadas con expresiones para el
clculo de las dos siguientes variables:
El coeficiente binario de difusin,
2 , 1
D .
El rea de contacto para la difusin entre los dos volmenes de control,
AB
S . Si
AB
S es funcin de las variables across de la interfaz, del tiempo y de las
variables locales de la clase, la expresin no dar lugar al establecimiento de un
lazo algebraico. Si, por el contrario, es funcin tambin de las variables through
de la interfaz la expresin intervendr en un lazo algebraico.
La causalidad computacional de las ecuaciones de la clase diffSemiPerfGasBinCp6B,
supuesto que son conocidas las variables across de la interfaz, es la siguiente:
[ ] ( ) Time across S S
AB
,
Expresin para la superficie de
contacto para la difusin.
[ ]
[ ]
B
B
B B
A
A
A A
RT n V p
RT n V p




El volumen de cada una de las
mezclas se calcula de su ecuacin de
estado.
[ ]
[ ]

,
_

,
_

, , ,
, , ,
2 1
2 , 1 2 , 1
2 1
2 , 1 2 , 1
B
B
B
B
B B
B
A
A
A
A
A A
A
V
n
V
n
p T D D
V
n
V
n
p T D D

El coeficiente de difusin binario
depende, en general, de la
temperatura, la presin, y la
concentracin.
[ ]
[ ]
B
B
B
A
A
A n
AB
B
B
B
A
A
A n
AB
V
n
D
V
n
D F
S
L
V
n
D
V
n
D F
S
L
2
2 , 1
2
2 , 1 2
1
2 , 1
1
2 , 1 1



Adaptacin de la primera ley de Fick.
Flujo neto por difusin de cada
componente entre el volumen de
control A y el B .
[ ]
( )
( )
( )
( )
,
_

+
+

,
_

+
+

,
_

+
+
+
,
_

+
+

+ +
+ +
+ +
+ +

1 1
6
0 :
, 2
2 ,
2
2 , 1
1 1
6
0 :
, 1
1 ,
1
2 , 1
1 1
6
0 :
, 2
2 ,
2
2 , 1
1 1
6
0 :
, 1
1 ,
1
2 , 1
1

k
ref
k
B
k
k
ref
B
B
B
k
ref
k
B
k
k
ref
B
B
B
k
ref
k
A
k
k
ref
A
A
A
k
ref
k
A
k
k
ref
A
A
A
H
AB
T T
k
c
h
V
n
D
T T
k
c
h
V
n
D
T T
k
c
h
V
n
D
T T
k
c
h
V
n
D
F
S
L

Flujo de entalpa asociado al flujo de
materia por difusin. Se considera
positivo el flujo en entalpa cuando
sale del volumen de control A y entra
en el B .
DIFUSIN ORDINARIA EN MEZCLAS BINARIAS DE GASES SEMIPERFECTOS 295

7.2.3 Ejemplo. Difusin de un gas binario en un tubo de Stefan
Considrese un tubo cilndrico de Stefan con metanol lquido en el fondo (ver Figura
7.1). La velocidad de evaporacin es relativamente lenta, con lo cual puede asumirse
que el nivel de la superficie del lquido es constante. Un flujo de aire seco pasa por
encima de la boca del tubo. Se supone que el aire, que se encuentra en reposo dentro del
tubo, es insoluble en el metanol. El metanol se difunde desde la superficie del lquido, a
travs del aire, hacia la parte superior del tubo [Cutl99].












Figura 7.1.Tubo de Stefan. Discretizacin del camino de difusin.
Las condiciones de contorno del problema son el valor de la fraccin molar del metanol
en ambos extremos del camino de difusin:
Justo sobre la superficie del lquido, 0 z , a una temperatura de K 5 . 328 , la
presin de vapor del metanol vale KPa 4 . 68 . Conocida la presin total,
KPa 4 . 99 , se puede calcular la fraccin molar de metanol como el cociente de
su presin de vapor por la presin total.
A una distancia de m z 238 . 0 de la superficie del lquido el flujo de aire
arrastra el vapor de metanol, con lo cual puede suponerse que su fraccin molar
es cero.
Para estimar la concentracin de metanol en funcin de la altura en el tubo puede
dividirse ste en un determinado nmero N de volmenes de control, de modo que el
ms prximo al lquido posea una cantidad de vapor de metanol tal que su presin sea
igual a la presin de vapor a la temperatura dada y de modo que el ms alejado del
lquido, situado justo bajo la boca del tubo, posea una concentracin nula de vapor de
metanol. Se han establecido cinco nodos equiespaciados en el camino de difusin
( 5 N ), de modo que el primero se encuentra justo sobre la superficie del lquido y el
quinto en la boca del tubo. La parte del tubo no ocupada por el lquido se divide en
cinco volmenes de control, tal como se muestra en la Figura 7.1, de modo que los
volmenes de control extremos poseen la mitad de volumen que los internos.
Se supone que el flujo de gas entre cada pareja de volmenes de control contiguos se
debe a la difusin ordinaria y a la conveccin. El flujo por conveccin se modela
imponiendo que sea tal que haga que en todo momento la presin en los dos volmenes
de control sea la misma.
metanol
Flujo
de aire
z
metanol
Flujo
de aire
d
2 V
d S V
296 TRANSFERENCIA DE MATERIA


El coeficiente de difusin binario del metanol en aire a K 5 . 328 vale aproximadamente
s m D / 10 991 . 1
2 5
12

. La variacin del coeficiente de difusin binario con la
temperatura se modela, conocido a una temperatura
*
T , de la forma siguiente [Cutl99]:
75 . 1
*
2 , 1 2 , 1 *

,
_

T
T
D D
T

Dependencia del coeficiente de difusin binario con
la temperatura.

Se sabe que la temperatura dentro del tubo de Stefan vara linealmente desde K 5 . 328
en la superficie del metanol hasta K 295 en el flujo de aire en la boca del tubo. Una
forma posible de modelar esta ligadura sobre la temperatura del gas contenido en cada
volumen de control es conectar el volumen de control a una fuente trmica a la
temperatura deseada por medio de una resistencia trmica de valor muy pequeo. Se
considera que la capacidad calorfica del aire vale ( ) K Kg KJ C
p
/ 1 y la del metanol
( ) K mol J T C
p
+ / , * 07113 . 0 598 . 22 [Cutl99].
Las condiciones de contorno del problema imponen que la presin parcial de metanol en
un volumen de control tome un determinado valor, con independencia del flujo de gas
establecido entre este volumen de control y el entorno. La forma de modelar esta
condicin consiste en considerar que es irrelevante la forma en que la presin de vapor
del componente tiende a su valor de consigna siempre y cuando lo haga suficientemente
rpido como para poderse considerar, para el problema en concreto, que lo hace de
forma "instantnea".
La clase vapPressB, contenida en la librera phase.lib, modela esta condicin. Para ello
se supone que el flujo molar del componente es proporcional a la diferencia entre la
presin real de vapor del componente y su valor de consigna. El valor de la constante de
proporcionalidad debe escogerse lo suficientemente grande (pero no ms) como para
que la dinmica a que da lugar pueda considerarse instantnea para el propsito del
modelo.
Para describir las ecuaciones que componen la clase vapPressB, se supone que el
volumen de control, sobre el que impone el valor de la presin parcial de un
componente, contiene una mezcla gaseosa de
comp
N componentes, con nmero de moles
comp
N
n n ,...,
1
, a una presin p y con una temperatura T . El valor de consigna para la
presin parcial de un determinado componente i ,
i
p , en el volumen de control es
SP
i
p .
Cuando la presin de consigna sea mayor que la presin parcial del componente, deber
introducirse un determinado flujo del mismo en el volumen de control. La temperatura
del flujo debe especificarse,
SP
T . Cuando el componente deba extraerse del volumen de
control, por superar su presin parcial a la de consigna, se supone que la temperatura de
este flujo,
flow
T , es la misma que la de la mezcla gaseosa dentro del volumen de control.
Se considera que las variables across de la interfaz de la clase son conocidas,
T p n n
comp
N
, , ,...,
1
, as como el valor de consigna para la presin parcial,
SP
i
p , y la
temperatura del componente cuando es introducido en el volumen de control que
DIFUSIN ORDINARIA EN MEZCLAS BINARIAS DE GASES SEMIPERFECTOS 297

contiene la mezcla,
SP
T . De las ecuaciones de la clase deben calcularse las variables
through de su interfaz,
H n
N
n
F F F
comp
, ,...,
1
. Las ecuaciones de la clase vapPressB, con la
causalidad computacional sealada, son las siguientes:
[ ]
n
n
p p
i
i

Presin parcial de un componente de una mezcla
de gases semiperfectos.
[ ]
i
SP
i error
p p p
Diferencia entre el valor de consigna y el valor
real de la presin parcial del componente i .
[ ]
comp
error prop
n
j
,...,N j:
j i
j i p K
F 1 ,
si 0
si

'



Flujo molar de los componentes de la mezcla.
Se considera positivo cuando sale del volumen de
control que contiene la mezcla.
[ ]

'

>
<

SP
i i
SP
i
SP
i i
flow
p p T
p p T
T
si
si

Temperatura del flujo del componente.
[ ] ( )

'

+

7
1 :
, , ,

j
j
ref
j
flow j i p i ref
n
i
H
T T C h F F
Flujo de entalpa asociado al flujo del
componente.

El objetivo de la simulacin es calcular la concentracin de metanol en el estacionario
en funcin de la altura dentro del tubo. Para ello se parte de un estado inicial en el cual
el tubo se encuentra vaco. Se hace evolucionar el sistema de modo que tienda a
satisfacer las ligaduras impuestas en el planteamiento del problema:
Se introduce en los volmenes de control extremos un flujo de los componentes de
la mezcla de modo que tienda a satisfacerse la ligadura sobre la presin parcial de
los mismos. La velocidad con que se alcanza esta condicin depende del valor que
se asigne al parmetro Kprop en las instanciaciones de la clase vapPressB. Se
escoge Kprop de modo que la dinmica a que da lugar sea aproximadamente dos
rdenes de magnitud ms rpida que la dinmica asociada a la difusin.
Se introduce en cada volumen de control un flujo de calor, a travs de una
resistencia trmica conectada a una fuente que se encuentra a temperatura deseada,
de modo que la temperatura de la mezcla tienda a satisfacer la condicin sobre el
perfil de temperatura a lo largo del camino de difusin. La velocidad con que la
temperatura de la mezcla contenida en el volumen de control alcanza la temperatura
a la que se encuentra la fuente depende del valor asignado a la resistencia trmica.
Una de las hiptesis de modelado es que el gas se encuentra a la misma presin en
todos los puntos del tubo. Las instanciaciones de la clase pressEqGasB establecen
un flujo entre los volmenes de control que tiende a anular esta diferencia. La
magnitud de este flujo (la velocidad a la que tienden a igualarse las presiones)
depende del valor que se asigne al parmetro Kprop. En este ejemplo se le da un
valor que haga que la dinmica de las presiones tendente a alcanzar el equilibrio sea
aproximadamente dos rdenes de magnitud mayor que la dinmica de la difusin.
298 TRANSFERENCIA DE MATERIA


El tiempo de simulacin se escoge lo suficientemente largo como para permitir que el
sistema alcance un estado lo suficientemente prximo al estacionario. En la Figura 7.2
se muestra el listado del modelo y en Figura 7.3 su representacin Dymodraw.

model class pressVapCntrl
parameter vapPressSP { Consigna para la presion parcial. M*L**-1*t**-2 } ->
tempSP { Consigna para la temperatura. T }
cut setPointSignal {* cutEmitter at (80,-10) (100,10) } ->
(vaporPressSP,tempEvapSP)
vaporPressSP = vapPressSP
tempEvapSP = tempSP
{* layer icon }
{* rectangle (-80,-80) (80,80) color=0 }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (diffSemiPerfGasBinCp6B) methaneAirDiff
parameter diffusionSection { Seccion de difusion. L**2 }
parameter diffCoefTempA { Coef. binario de difusion a una temp. L**2*t**-1 } ->
tempA { Temperatura a la que de conoce el coef. dif. T }
diffArea = diffusionSection
diffCoefI = diffCoefTempA * ( ( tempGI + eps ) / tempA ) ** 1.75
diffCoefO = diffCoefTempA * ( ( tempGO + eps ) / tempA ) ** 1.75
end

model class (sourceTempB) sourceTemp
parameter tempSetPoint { Valor de consigna para la temperatura. T }
sourceTemp = tempSetPoint
end

model StefanTube
{ Component (1): Aire ; Component (2): Metanol }
constant nComp = 2 { Numero de componentes de la mezcla } ->
nVolCntrl = 5 { Numero de volumenes de control } ->
compAir = 1 { Numero del componente aire } ->
compMethanol = 2 { Numero del componente metanol } ->
pi = 3.1415927 { Numero pi. }
parameter CpCoefN(nComp,7) = [ 1000, 0, 0, 0, 0, 0, 0; ->
3500, 0, 0, 0, 0, 0, 0 ] { Cp en J/(Kg*K) } ->
pressMethanol = 68.4E3 { Presion de vapor del metanol a 328.5 K. Pa } ->
pressTotal = 99.4E3 { Presion total. Pa } ->
tempEvap = 328.5 { Temperatura sobre la superficie del metanol. K } ->
tempAir = 295 { Temp. del flujo de aire en la boca del tubo. K } ->
incTemp = ( tempAir - tempEvap ) / ( nVolCntrl - 1 )
parameter diffCoefTempA = 1.991E-5 { Coef. de difusion a una temp. L**2*t**-1 } ->
tempA = 328.5 { Temperatura a la que de conoce el coef. dif. T }
parameter perfGasConst = 8.31 { Constante de los gases perfectos. J/(mol*K) }
parameter tubeRadius = 3E-2 { Radio del tubo. m } ->
tubeSection = pi*tubeRadius**2 { Tube section. m**2 } ->
tubeLength = 0.238 { Longitud del camino de difusion. m } ->
diffLength = tubeLength/(nVolCntrl-1) { Distancia entre los centros de volumenes
de control consecutivos. m } ->
volElemV = tubeSection * diffLength { Volumen del volumen de control. m**3 }
parameter ThermRes = 1E-3 { Resistencia termica. K*s*J**-1 }
parameter Kprop = 1E-6 { Constante de proporcionalidad entre el flujo molar y la
diferencia de presiones. mol*s**-1*Pa**-1 }
submodel (semiPerfGasCp6VB) gas1 {* at (0,-70) (20,-50) } ->
(nComp=nComp,perfGasConst=perfGasConst,CpCoefN=CpCoefN, ->
vesselVolume=(volElemV/2)) ->
gas2 {* at (0,-40) (20,-20) } ->
(nComp=nComp,perfGasConst=perfGasConst,CpCoefN=CpCoefN, ->
vesselVolume=volElemV) ->
gas3 {* at (0,-10) (20,10) } ->
(nComp=nComp,perfGasConst=perfGasConst,CpCoefN=CpCoefN, ->
vesselVolume=volElemV) ->
gas4 {* at (0,20) (20,40) } ->
(nComp=nComp,perfGasConst=perfGasConst,CpCoefN=CpCoefN, ->
vesselVolume=volElemV) ->
gas5 {* at (0,50) (20,70) } ->
(nComp=nComp,perfGasConst=perfGasConst,CpCoefN=CpCoefN, ->
vesselVolume=(volElemV/2))
submodel (vapPressB) pressVapLiq {* at (-40,-75) (-60,-55) } ->
(nComp=nComp,evapComp=compMethanol,Kprop=Kprop, ->
CpCoefN=CpCoefN(compMethanol,:)) ->
pressVapZero {* at (-40,80) (-60,100) } ->
(nComp=nComp,evapComp=compMethanol,Kprop=Kprop, ->
CpCoefN=CpCoefN(compMethanol,:)) ->
pressAir {* at (-10,80) (-30,100) } ->
(nComp=nComp,evapComp=compAir,Kprop=Kprop, ->
CpCoefN=CpCoefN(compAir,:))
submodel (pressVapCntrl) pressVapCntrlLiq {* at (-75,-100) (-55,-80) } ->
DIFUSIN ORDINARIA EN MEZCLAS BINARIAS DE GASES SEMIPERFECTOS 299

(vapPressSP=pressMethanol,tempSP=tempEvap) ->
pressVapCntrlZero {* at (-75,57) (-55,77) } ->
(vapPressSP=0,tempSP=tempAir) ->
pressAirCntrl {* at (-45,57) (-25,77) } ->
(vapPressSP=pressTotal,tempSP=tempAir)
submodel (pressEqGasB) eq12 {* at (-60,-55) (-40,-35) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,Kprop=Kprop) ->
eq23 {* at (-60,-25) (-40,-5) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,Kprop=Kprop) ->
eq34 {* at (-60,5) (-40,25) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,Kprop=Kprop) ->
eq45 {* at (-60,35) (-40,55) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,Kprop=Kprop)
submodel (methaneAirDiff) dif12 {* at (-30,-55) (-10,-35) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,diffLength=diffLength, ->
perfGasConst=perfGasConst,diffusionSection=tubeSection, ->
diffCoefTempA=diffCoefTempA,tempA=tempA) ->
dif23 {* at (-30,-25) (-10,-5) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,diffLength=diffLength, ->
perfGasConst=perfGasConst,diffusionSection=tubeSection, ->
diffCoefTempA=diffCoefTempA,tempA=tempA) ->
dif34 {* at (-30,5) (-10,25) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,diffLength=diffLength, ->
perfGasConst=perfGasConst,diffusionSection=tubeSection, ->
diffCoefTempA=diffCoefTempA,tempA=tempA) ->
dif45 {* at (-30,35) (-10,55) rotation=90 } ->
(nComp=nComp,CpCoefN=CpCoefN,diffLength=diffLength, ->
perfGasConst=perfGasConst,diffusionSection=tubeSection, ->
diffCoefTempA=diffCoefTempA,tempA=tempA)
submodel (RthConstB) Rthermal1 {* at (50,-61) (30,-41) } (nCompO=nComp,Rth=ThermRes) ->
Rthermal2 {* at (50,-31) (30,-11) } (nCompO=nComp,Rth=ThermRes) ->
Rthermal3 {* at (50,-1) (30,19) } (nCompO=nComp,Rth=ThermRes) ->
Rthermal4 {* at (50,29) (30,49) } (nCompO=nComp,Rth=ThermRes) ->
Rthermal5 {* at (50,59) (30,79) } (nCompO=nComp,Rth=ThermRes)
submodel (sourceTemp) sourceTemp1 {* at (60,-61) (80,-41) } ->
(tempSetPoint=tempEvap) ->
sourceTemp2 {* at (60,-31) (80,-11) } ->
(tempSetPoint=(tempEvap+incTemp)) ->
sourceTemp3 {* at (60,-1) (80,19) } ->
(tempSetPoint=(tempEvap+2*incTemp)) ->
sourceTemp4 {* at (60,29) (80,49) } ->
(tempSetPoint=(tempEvap+3*incTemp)) ->
sourceTemp5 {* at (60,59) (80,79) } ->
(tempSetPoint=tempAir)
connect gas1:inMol at pressVapLiq:inMol {* color = 5 }
connect pressVapLiq:setPointSignal at pressVapCntrlLiq:setPointSignal ->
{* via (-50,-75) (-50,-90) (-55,-90) color = 0 }
connect gas1:inMol at eq12:inMol {* color = 5 }
connect gas2:inMol at eq12:outMol {* color = 5 }
connect gas1:inMol at dif12:inMol {* color = 5 }
connect gas2:inMol at dif12:outMol {* color = 5 }
connect gas2:inMol at eq23:inMol {* color = 5 }
connect gas3:inMol at eq23:outMol {* color = 5 }
connect gas2:inMol at dif23:inMol {* color = 5 }
connect gas3:inMol at dif23:outMol {* color = 5 }
connect gas3:inMol at eq34:inMol {* color = 5 }
connect gas4:inMol at eq34:outMol {* color = 5 }
connect gas3:inMol at dif34:inMol {* color = 5 }
connect gas4:inMol at dif34:outMol {* color = 5 }
connect gas4:inMol at eq45:inMol {* color = 5 }
connect gas5:inMol at eq45:outMol {* color = 5 }
connect gas4:inMol at dif45:inMol {* color = 5 }
connect gas5:inMol at dif45:outMol {* color = 5 }
connect gas5:inMol at pressVapZero:inMol {* color = 5 }
connect gas5:inMol at pressAir:inMol {* color = 5 }
connect pressVapZero:setPointSignal at pressVapCntrlZero:setPointSignal ->
{* via (-50,80) (-50,67) (-55,67) color = 0 }
connect pressAir:setPointSignal at pressAirCntrl:setPointSignal ->
{* via (-20,80) (-20,67) (-25,67) color = 0 }
connect sourceTemp1:inHeat at Rthermal1:inHeat {* color = 1 }
connect gas1:inHeat at Rthermal1:outHeat {* color = 1 }
connect sourceTemp2:inHeat at Rthermal2:inHeat {* color = 1 }
connect gas2:inHeat at Rthermal2:outHeat {* color = 1 }
connect sourceTemp3:inHeat at Rthermal3:inHeat {* color = 1 }
connect gas3:inHeat at Rthermal3:outHeat {* color = 1 }
connect sourceTemp4:inHeat at Rthermal4:inHeat {* color = 1 }
connect gas4:inHeat at Rthermal4:outHeat {* color = 1 }
connect sourceTemp5:inHeat at Rthermal5:inHeat {* color = 1 }
connect gas5:inHeat at Rthermal5:outHeat {* color = 1 }
end

Figura 7.2 Modelo de la difusin de una mezcla binaria de aire y metanol en un tubo de Stefan.
300 TRANSFERENCIA DE MATERIA
















































Figura 7.3 Representacin Dymodraw del modelo.
En la Figura 7.4 y 7.5 el nmero de moles de aire y metanol respectivamente contenidos
en cada volumen de control.

























Figura 7.4 Nmero de moles de aire en cada volumen de control.
CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 301


























Figura 7.5 Nmero de moles de metanol en cada volumen de control.
7.3. CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN
7.3.1 Modelo del transporte de materia y energa por cambio fase de
JARA v. 1.0
Sean dos volmenes de control conteniendo una mezcla de
comp
N componentes, de
modo que en un volumen de control la mezcla se encuentra en fase lquida y en el otro
en fase vapor. Se supone que, producto del cambio de fase, se produce un flujo de
materia entre los dos volmenes de control. En todo momento, la cantidad de materia de
cada componente que abandona uno de los volmenes de control por unidad de tiempo
debe ser igual a la que entra en el otro volumen de control por unidad de tiempo. Se
adopta el criterio de signos de considerar positivos los flujos cuando salen de la mezcla
lquida y entran en la gaseosa.
Se aplica la hiptesis de mezcla agitada a la temperatura del flujo,
f
T , entre los
volmenes de control. Si se produce transferencia de materia entre la fase lquida y el
vapor, el vapor saliente de la fase lquida y entrante a la fase vapor se encuentra a la
temperatura del lquido. Igualmente, si se produce transferencia de materia entre la fase
vapor y la fase lquida, el lquido saliente de la fase vapor y entrante a la fase lquida se
encuentra a la misma temperatura que el vapor contenido en el volumen de control del
cual parte el flujo.
De las hiptesis anteriores, el flujo de entalpa entre los dos volmenes de control
debido al cambio de fase puede escribirse, en funcin de que el flujo lleve sentido
entrante a la mezcla gaseosa y saliente de la lquida ( True t flowIsPosi ) o el sentido
inverso ( False t flowIsPosi ), de la forma siguiente:
302 TRANSFERENCIA DE MATERIA


i
m
i n
i
M
F
F
Relacin entre el flujo de materia del componente
simo i expresado en moles por unidad de
tiempo y en masa por unidad de tiempo.

'

t flowIsPosi not T
t flowIsPosi T
T
vap
liq
f
si
si

La temperatura del flujo es igual a la del fluido
almacenado en el volumen de control del cual parte.
( )
( )

'

t flowIsPosi not T h F
t flowIsPosi T h F
F
comp
comp
N
i
f i liq
m
i
N
i
f i vap
n
i
H
si
si

1 :
,
1 :
,

Flujo total de entalpa entre la fase lquida y la fase
vapor debido al cambio de fase. Se indica
explcitamente la dependencia respecto de la
temperatura de la entalpa molar y de la entalpa por
unidad de masa de los componentes.

En la expresin anterior para el flujo de entalpa, las entalpas molares de los
componentes en fase vapor,
i vap
h
,

, y las entalpas por unidad de masa de los


componentes en fase lquida,
i liq
h
,
, estn evaluadas a la temperatura del flujo,
f
T . Como
en modelos anteriores, se considera que los calores especficos pueden escribirse como
polinomios de grado seis (a lo sumo) de la temperatura.
El calor necesario para producir el cambio de fase, a la temperatura
f
T , de una unidad
de masa puede calcularse de la entalpa de los componentes en la fase lquida y en la
fase vapor y de la composicin del flujo de materia por cambio de fase. El incremento
en la entalpa por unidad de masa del componente i debido al cambio de la fase lquida
a la fase vapor es
i liq
i
i vap
i eb
h
M
h
h
,
,
,

[Rami89]. Se ha adoptado el criterio de signos de


considerar el calor positivo cuando la entalpa del estado final es mayor que la entalpa
en el estado inicial.
( )



comp
comp
N
j
m
j
N
i
i liq
m
i i vap
n
i
eb
F
h F h F
h
1 :
1 :
, ,


El calor de cambio de fase por unidad de
masa fluyente, a la temperatura y para la
composicin del flujo debido al cambio de
fase.

La clase bsica phaseChgB, contenida en la librera phase.lib, contiene las ecuaciones
anteriores para describir el flujo de entalpa asociado al cambio de fase y servir de
superclase de las clases que modelan la ebullicin y la condensacin. Posee una interfaz
del tipo fenmeno de transporte (la clase heteroFlow2I), con dos cuts resistivos de flujo
de materia: uno de flujo de gas, que debe conectarse al cut capacitivo de la clase que
modela el volumen de control que contiene el vapor, y otro de flujo de lquido, que debe
conectarse a uno de los cuts capacitivos (al cut inMassTop o al cut inMassBot) de la
clase que modela el volumen de control que contiene la mezcla lquida.
CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 303

7.3.2 Modelo de la ebullicin de una mezcla lquida de JARA v. 1.0
Sea una mezcla lquida en ebullicin en un recipiente abierto o cerrado. Para mezclas, la
temperatura de ebullicin es funcin de la presin del gas sobre la superficie del lquido
y de la composicin de la mezcla lquida. Dado que el vapor es ms rico en las
sustancias ms voltiles (aquellas con mayor presin de vapor) que el lquido, al
progresar la ebullicin en el tiempo la composicin del fluido cambia y, con ella, la
temperatura de ebullicin [Ram89] [Desh85].
Se supone que se conoce:
La dependencia entre la temperatura de ebullicin, la presin que ejerce el vapor
sobre la superficie del lquido y la composicin de la mezcla lquida,
( )
liq vap eb
m p f T , .
La relacin existente entre la composicin del vapor producido en la ebullicin y
la composicin de la mezcla liquida, ( ) 1 ,..., 1 : ,
1 :
,
,

comp liq i N
j
m
j eb
m
i eb
N i m f
F
F
comp
.
Se modela el fenmeno de la ebullicin del siguiente modo: mientras la temperatura del
lquido sea inferior a su temperatura de ebullicin, en las condiciones de presin y
composicin dadas, no se produce intercambio de materia entre las fases lquida y
vapor. Si se calienta la mezcla lquida, aumentar su temperatura hasta que alcance la
temperatura de ebullicin, instante a partir del cual todo el calor adicional se invertir en
producir el cambio de fase, manteniendo la mezcla lquida la temperatura de ebullicin.
Durante la ebullicin, la temperatura de la mezcla lquida es igual a su temperatura de
ebullicin. En consecuencia, el flujo de materia que cambia de fase viene determinado
de imponer en el balance de energa de la mezcla lquida que su temperatura sea igual a
la de ebullicin [Rami89].
Puede considerarse el sistema como un autmata con dos estados posibles: ebullicin y
no-ebullicin, de modo que las condiciones de cambio de estado son (ver Figura 7.6):
1. Si se encuentra en el estado no-ebullicin y su temperatura alcanza la
temperatura de ebullicin, pasa al estado ebullicin.
2. Si se encuentra en el estado ebullicin y para satisfacer la condicin de que la
temperatura de la mezcla lquida sea igual a la temperatura de ebullicin es
preciso que el flujo de materia por cambio de fase tenga sentido entrante a la
mezcla lquida, entonces se produce el cambio al estado no-ebullicin. Tambin
se produce el cambio al estado no-ebullicin cuando la masa del lquido no sea
mayor que cero.
304 TRANSFERENCIA DE MATERIA















Figura. 7.6 Autmata con dos estados: ebullicin y no ebullicin.
Mientras el sistema se encuentra en el estado no-ebullicin, las
comp
N componentes del
flujo debido al cambio de fase se calculan de las
comp
N ecuaciones que imponen que su
valor sea cero y la derivada de la temperatura de la mezcla lquida se calcula del balance
de energa de la misma. Por el contrario, cuando el sistema se encuentra en el estado
ebullicin, la temperatura del lquido se calcula de la ecuacin que impone que valga lo
mismo que la temperatura de ebullicin y las
comp
N componentes del flujo por cambio
de fase se calculan de las 1
comp
N ecuaciones para la composicin del flujo por cambio
de fase y del balance de energa de la mezcla lquida. En consecuencia, las ecuaciones
de la clase que modela la ebullicin (subclase de phaseChgB) son las siguientes:
Estado ebullicin Estado no-ebullicin
True t flowIsPosi True t flowIsPosi
( )
liq vap eb
m p f T , ( )
liq vap eb
m p f T ,
( ) 1 ,..., 1 : , ,
1 :
,
,

comp vap liq i N


j
m
j eb
m
i eb
eb liq
N i p m f
F
F
T T
comp

comp
m
i eb
N i F ,..., 1 : , 0
,


Plantear el modelo de la clase mediante el conjunto anterior de ecuaciones hace que no
se satisfagan las reglas de causalidad para los cuts resistivos de flujo de materia,
conduciendo a que, cuando el sistema se encuentre en el estado ebullicin, el problema
tenga ndice superior: la temperatura del lquido aparece derivada en la clase que
modela el volumen de control que contiene el lquido y es evaluada en la clase que
modela la ebullicin. En el estado no-ebullicin, de las ecuaciones de la clase que
modela la ebullicin, se evala el flujo de materia y de entalpa (ambos son nulos) con
lo cual el problema no tiene ndice superior.
no-ebullicin ebullicin
( )
vap liq eb liq
p m T T not , <
0 0
1 :
,
1 :
,
> <

comp comp
N
j
j liq
N
j
m
j eb
m not or F
CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 305

Se debe reformular el modelo de modo que en todos sus estados satisfaga las reglas
acerca de la causalidad computacional de su interfaz. Para ello basta con relajar la
ligadura sobre la temperatura de la mezcla lquida en el estado ebullicin: en lugar de
imponer que la temperatura del lquido valga lo mismo que su temperatura de
ebullicin, puede imponerse que el flujo de materia debido a la ebullicin sea tal que
haga tender "rpidamente" la temperatura del lquido a su temperatura de ebullicin.
Una forma de hacerlo consiste en considerar (de forma arbitraria) que cuando el sistema
se encuentra en el estado ebullicin el flujo total de materia debido al cambio de fase es
proporcional a la diferencia entre la temperatura a la que se encuentra el lquido y su
temperatura de ebullicin en la condiciones dadas. La constante de proporcionalidad,
prop
k , debe escogerse de modo que la temperatura del lquido tienda a la temperatura de
ebullicin lo suficientemente rpido como para poder ser consideradas ambas iguales
dentro de la precisin requerida por la aplicacin en concreto. Sin embargo,
prop
k no
debe escogerse ms grande de lo estrictamente necesario para evitar que el sistema sea
stiff innecesariamente. La diferencia entre ambas temperaturas, e , puede considerarse
como una medida del error cometido en la aproximacin.
Para demostrarlo considrese el balance de energa del lquido, en el que aparecen
explcitamente los trminos debidos al cambio de fase y se han englobado en "otros
trminos" los dems trminos que posiblemente pueden intervenir (flujo de calor, flujo
de entalpa asociado a flujos de materia entrantes y/o salientes del volumen de control,
etc.). El flujo de materia y entalpa por cambio de fase se considera positivo cuando va
del lquido al vapor.
trminos otros
1 :
, ,
+

comp
N
i
i vap
m
i eb
liq
h F
dt
dH

Balance de energa planteado en el volumen de
control que contiene la mezcla lquida.

La entalpa por unidad de masa del componente simo i en la fase vapor,
i vap
h
,
, se
encuentra evaluada a la temperatura del lquido,
liq
T . La derivada de la entalpa de la
mezcla lquida puede escribirse:
( )

+ +
comp comp
N
i
liq
i liq
p i liq
N
i
i liq
m
i eb
liq
dt
dT
C m h F
dt
dH
1 :
,
,
1 :
, ,
flujos otros
Derivada de la entalpa de la
mezcla lquida.

La entalpa por unidad de masa del componente simo i en la fase lquida,
i liq
h
,
, est
tambin evaluada a la temperatura del lquido,
liq
T . Sustituyendo la expresin anterior
para la derivada de la entalpa en el balance de energa se obtiene:
( ) trminos otros flujos otros
1 :
, ,
1 :
,
,
1 :
, ,
+ + +

comp comp comp
N
i
i vap
m
i eb
N
i
liq
i liq
p i liq
N
i
i liq
m
i eb
h F
dt
dT
C m h F

306 TRANSFERENCIA DE MATERIA


Escribiendo
m
eb
m
i eb
m
i eb
F x F
, ,
, donde
m
i eb
x
,
es la fraccin en masa del componente
simo i en el flujo de materia por ebullicin, y, puesto que, ( )
eb liq prop
m
eb
T T k F , se
obtiene:
( ) ( )
( ) trminos otros
flujos otros
1 :
, ,
1 :
,
,
1 :
, ,
+
+ +


comp
comp comp
N
i
i vap
m
i eb eb liq prop
N
i
liq
i liq
p i liq
N
i
i liq
m
i eb eb liq prop
h x T T k
dt
dT
C m h x T T k

Balance de energa
planteado en el
volumen de control que
contiene la mezcla
lquida.

Si se escoge el parmetro
prop
k lo suficientemente grande, la dinmica de la temperatura
del lquido tendiendo a la temperatura de ebullicin puede considerarse instantnea
comparada con el resto de las dinmicas de la temperatura del lquido. En este caso,
cuando la temperatura del lquido difiera apreciablemente de su temperatura de
ebullicin (en las condiciones de concentracin y presin dadas), el balance de energa
puede escribirse de la siguiente forma aproximada:
( ) ( )


comp comp
N
i
i liq i vap
m
i eb eb liq prop
N
i
liq
i liq
p i liq
h h x T T k
dt
dT
C m
1 :
, , ,
1 :
,
,

Expresin aproximada para el
balance de energa aplicado al
volumen de control que contiene
la mezcla lquida.

Como se ve, en el estacionario se satisface
eb liq
T T y la constante de tiempo,
( )

comp
comp
N
i
i liq i vap
m
i eb prop
N
i
i liq
p i liq
h h x k
C m
1 :
, , ,
1 :
,
,
, es tanto menor cuanto mayor es
prop
k .
En consecuencia, pueden escribirse las ecuaciones para el flujo de materia de los
componentes, debido al cambio de fase, en cada uno de los dos estados del sistema, de
la forma siguiente:
Estado ebullicin Estado no-ebullicin
( ) 1 ,..., 1 : , ,
1 :
,
,
prop
1 :
,

comp vap liq i N


j
m
j eb
m
i eb
N
j
m
j eb
eb liq
N i p m f
F
F
e k F
T T e
comp
comp

comp
m
i eb
N i F ,..., 1 : , 0
,


CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 307

La clase que modela la ebullicin de acuerdo con las aproximaciones anteriores,
boilingB, se encuentra en la librera phase.lib. La clase debe ser completada con
expresiones que permitan evaluar la temperatura de ebullicin, tempBoiling y la
composicin del vapor producido en la ebullicin, compVaporBoil.
La construccin del modelo a partir de una mquina determinista de estado finito puede
realizarse definiendo una variable booleana para cada estado de la mquina y usando la
siguiente regla de transformacin [Elmq93a]:
new(estado) = pre-estado-1 and in-condicin-1 or ->
pre-estado-2 and in-condition-2 or ->
... or ->
estado and not ( out-condicin-1 or ->
out-condicin-2 or ->
... )
Donde in-condicin-i representa la condicin de paso de pre-estado-i a estado y
out-condicin-1, out-condition-2, ... representan las condiciones de paso de
estado a los otros estados del sistema.
7.3.3 Ejemplo. Modelo de un evaporador destinado a la generacin
de vapor
Sea un evaporador de una planta qumica destinado a la generacin de vapor para la
obtencin de energa. El evaporador tiene un volumen de
3
66 . 5 m y se supone que
inicialmente contiene un volumen de agua igual a
3
84 . 2 m . El evaporador posee una
entrada de lquido en su base y una salida de vapor en su parte superior, dotada de una
vlvula con la siguiente ecuacin constitutiva [Rami89]:
( ) ( ) ( )
0
2 7
/ / 10 1 . 1 p p p m N s Kg F
m



La planta normalmente opera con una presin a la salida de la vlvula
2 6
0
/ 10 14 . 1 m N p . Se desea simular la evolucin en el sistema producida por una
disminucin brusca de la presin al valor
2 6
0
/ 10 03 . 1 m N p .
El flujo de alimentacin de agua tiene un caudal de s m / 10 82 . 2
3 4
y una temperatura
de K 294 . El agua contenida en el evaporador se calienta continuamente por un flujo
de calor de s J / 10 86 . 5
3
. Se considera que la capacidad calorfica del agua en estado
lquido vale ( ) K Kg J C
p
/ 10 18 . 4
3
y en estado vapor
) /( , 10 24 . 54 486 . 55

3
K mol J T C
p
+

. La entalpa de formacin del agua en
estado lquido vale Kg J / 10 88 . 15
6
y en estado vapor mol J / 10 8322 . 241
3
. La
relacin de ebullicin es:

,
_

+
+

x
x x
p
m N
2
2 2 5
10
10 38 . 1 1
10 14 . 4 346 . 3
499
/ 10 89 . 220
log
donde K T x , 27 . 647 .
308 TRANSFERENCIA DE MATERIA



model class (boilingB) waterBoil
local x = 373 , y
compVaporBoil = 1
ln( 220.89E5 / pressG ) / ln(10) = x * y / ( 1 + 1.38E-2 * x)
x = 647.27 - tempBoiling
y = ( 3.346 + 4.14E-2 * x ) / 499
end

model class (sourceHeatSignalI) heatSourCntrl
parameter heatFlowSP
heatFSP = heatFlowSP
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (convecGasFlowB) valve
local Kvalve { Coeficiente de la valvula. mol*L*t*M**-1 }
parameter Kv { Coeficiente de la valvula. mol*L*t*M**-1 } ->
Time0 { Instante de disparo del evento. s }
{ Constante de proporcionalidad de la valvula }
Kvalve = if Time < Time0 then 0 else Kv
{ Relacion constitutiva de la valvula }
totalMolF = if pressGI > pressGO ->
then Kvalve * sqrt( abs( pressGI * ( pressGI - pressGO) ) ) ->
else - Kvalve * sqrt( abs( pressGO * ( pressGO - pressGI) ) )
{* layer icon }
{* rectangle (-40,-40) (40,40) color=7 fill_color=7 }
{* line (-40,-40) (40,40) (40,-40) (-40,40) (-40,-40) thickness=2 color=0 }
{* line (0,0) (0,60) thickness=2 color=0 }
{* line (-40,60) (40,60) thickness=3 color=0 }
end

model class (sourcePressGasB) pressDownStream
parameter press1 { Presion. M*L**-1*t**-2 } ->
press2 { Presion. M*L**-1*t**-2 } ->
Time0 { Instante de disparo del evento. t }
molG = 1
pressG = if Time < Time0 then press1 else press2
tempG = 294
end

model class (sourceVolLiqSignalI) sourceLiqCntrl
parameter flowVSP { Consigna para el flujo en volumen. L**3*t**-1 } ->
tempSP { Consigna para la temperatura del flujo. T }
totalVolFSP = flowVSP
volFractSP = 1
tempFSP = tempSP
{* layer icon }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model steamPowerBoiler
parameter perfGasConst = 8.31 { Constante de los gases ideales. J/(mol*K) } ->
CpCoefML(1,7) = [ 4.18E3, 0, 0, 0, 0, 0, 0 ] ->
{ Capacidad calorifica por unidad de masa del liquido [Cp]: J/(Kg*K) } ->
CpCoefNG(1,7) = [ 55.486, 54.24E-3, 0, 0, 0, 0, 0 ] ->
{ Capac. calorif. molar a presion cte. del vapor. [Cp]:J/(mol*K) } ->
molecWeigth = 18E-3 { Peso molecular del agua. Kg/mol } ->
density = 1E3 { Densidad del agua liquida. Kg/m**3 }
parameter molEnthalpyGRef = -241.8322E3 { Entalpia molar de referencia del vapor. J/mol } ->
massEnthalpyLRef = - 15.88E6 { Entalpia de referencia por unidad de masa del
liquido. J/Kg } ->
tempRef = 298 { Temperatura de referencia para la entalpia. K }
parameter Kprop = 10 { Constante proporcionalidad modelo ebullicion. Kg/(s*K) }
parameter Kvalve = ( 1.1E-7 / molecWeigth ) { Coeficiente de la valvula. mol/(s*N/m**2) }
parameter press1 = 1.14E6 { Presion de salida. N/m**2 } ->
press2 = 1.03E6 ->
Time0 = 10 { Instante de apertura de la valvula. s } ->
Time1 = 5000 { Instante de cambio en la presion de salida. s }
parameter section = 1 { Seccion del evaporador. m**2 } ->
vesselVolume = 5.66 { Volumen de evaporador. m**3 }
parameter flowVolLiqInSP = - 2.82E-4 { Flujo entrante de agua liquida. m**3/s } ->
tempLiqIn = 294 { Temperatura de entrada del agua liquida. K }
parameter heatFlowSP = - 5.86E5 { Flujo de calor. J/s }
submodel (semiPerfGasCp6B) vapor {* at (-15,15) (15,45) } ->
(perfGasConst=perfGasConst,CpCoefN=CpCoefNG,tempRef=tempRef, ->
molEnthalpyRef=molEnthalpyGRef)
submodel (liquidCp6B) water {* at (-15,-45) (15,-15) } ->
(CpCoefM=CpCoefML,massEnthalpyRef=massEnthalpyLRef,tempRef=tempRef, ->
density=density,section=section)
submodel (vesselLiqB) vessel {* at (25,-15) (55,15) } (vesselVolume=vesselVolume)
submodel (waterBoil) boil {* at (-45,-10) (-15,20) } ->
(CpCoefML=CpCoefML,CpCoefNG=CpCoefNG,Kprop=Kprop, ->
molecWeigth=molecWeigth,molEnthalpyGRef=molEnthalpyGRef, ->
massEnthalpyLRef=massEnthalpyLRef,tempRef=tempRef)
CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 309

submodel (sourceHeatFB) heatSource {* at (-45,-45) (-75,-15) }
submodel (heatSourCntrl) heatSourceCntrl {* at (-75,-80) (-45,-50) } ->
(heatFlowSP=heatFlowSP)
submodel (valve) valve {* at (15,45) (45,75) } ->
(Kv=Kvalve,CpCoefN=CpCoefNG,molEnthalpyRef=molEnthalpyGRef, ->
tempRef=tempRef,Time0=Time0)
submodel (pressDownStream) outValvePress {* at (55,45) (85,75) } ->
(press1=press1,press2=press2,Time0=Time1)
submodel (sourceVolLiqFB) liqSource {* at (15,-65) (45,-35) } ->
(density=density,CpCoefM=CpCoefML,tempRef=tempRef,pmax=1E8, ->
pcodo=9.5E7,massEnthalpyRef=massEnthalpyLRef)
submodel (sourceLiqCntrl) sourceLiqCntrl {* at (15,-100) (45,-70) } ->
(flowVSP=flowVolLiqInSP,tempSP=tempLiqIn)
{ Flujo de masa }
connect vapor:inMol at boil:outMol ->
{* via (-10,30) (-30,30) (-30,25) color=5 }
connect water:inMassTop at boil:inMass ->
{* via (0,0) (0,-10) (-30,-10) color=3 }
connect vapor:inMol at valve:inMol ->
{* via (-15,45) (-15,60) (20,60) color=5 }
connect outValvePress:inMol at valve:outMol {* color=5 }
connect liqSource:inMass at water:inMassBot ->
{* via (15,-50) (0,-50) (0,-45) color=3 }
{ Ligadura sobre el volumen }
connect vapor:constraintV at vessel:constraintV {* color=0 }
connect water:constraintV at vessel:constraintV {* color=0 }
{ Flujo de calor }
connect heatSource:inHeat at water:inHeat {* color=1 }
{ Sen-ales de control }
connect heatSource:setPointSignal at heatSourceCntrl:setPointSignal {* color=0 }
connect liqSource:setPointSignal at sourceLiqCntrl:setPointSignal {* color=0 }
end

Figura 7.7 Listado del modelo.









































Figura 7.8 Representacin Dymodraw del modelo.
En la Figura 7.9 se muestra la evolucin de la temperatura de ebullicin del lquido, de
la temperatura del lquido y del vapor. En la Figura 7.10 se muestra el flujo molar entre
310 TRANSFERENCIA DE MATERIA


el lquido y el vapor debido a la ebullicin y el flujo molar de vapor a travs de la
vlvula debido a la diferencia de presiones entre sus extremos. En el instante 5000 s se
produce la cada de presin a la salida de la vlvula, producindose un salto escaln en
el flujo.
























Figura 7.9 Temperatura de ebullicin del lquido y temperaturas del lquido y del vapor.
























Figura 7.10 Flujo molar por ebullicin y flujo de vapor a travs de la vlvula.
7.3.4 Modelo de la condensacin de una mezcla gaseosa de JARA v.
1.0
Se supone que la temperatura de condensacin de una mezcla gaseosa es funcin de su
presin y de su composicin y que esta relacin es conocida, ( )
vap vap cond
n p f T , y
adems que se conoce la relacin existente entre la composicin de la mezcla gaseosa y
CAMBIOS DE FASE: EVAPORACIN Y CONDENSACIN 311

la composicin del lquido obtenido por condensacin
( ) 1 ,..., 1 : ,
1 :
,
,

comp vap i N
j
n
j cond
n
i cond
N i n f
F
F
comp
.
Se asume que el fenmeno de la condensacin puede modelarse del siguiente modo:
mientras la temperatura del vapor sea superior a su temperatura de condensacin, para
las condiciones de presin y composicin dadas del mismo, no se produce intercambio
de materia entre las fases lquida y vapor. Si se enfra la mezcla gaseosa, disminuir su
temperatura hasta que alcance la temperatura de condensacin, instante a partir del cual
todo el calor extrado del vapor ser a expensas del calor obtenido por condensacin,
manteniendo la mezcla gaseosa su temperatura de condensacin [Rami89].
Puede considerarse el sistema como un autmata con dos estados posibles:
condensacin y no-condensacin, de modo que las condiciones de cambio de estado son
(ver Figura 7.11):
1. Si se encuentra en el estado no-condensacin y la temperatura del vapor
desciende hasta la temperatura de condensacin, pasa al estado condensacin.
2. Si se encuentra en el estado condensacin y para satisfacer la condicin de que
la temperatura de la mezcla gaseosa sea igual a la temperatura de condensacin
es preciso que el flujo de materia por cambio de fase tenga sentido entrante a la
mezcla gaseosa, entonces se produce el cambio al estado no-condensacin.
Tambin se conmuta al estado no-condensacin si la masa de vapor no es mayor
que cero.













Figura 7.11. Autmata con dos estados: condensacin y no-condensacin.
Mientras el sistema se encuentra en el estado no-condensacin, las
comp
N componentes
del flujo debido al cambio de fase se calculan de las
comp
N ecuaciones que imponen que
su valor sea cero y la derivada de la temperatura de la mezcla lquida se calcula del
balance de energa de la misma.
Cuando el sistema se encuentra en el estado condensacin, la temperatura del vapor
debera calcularse de la ecuacin que impone que valga lo mismo que la temperatura de
condensacin y las
comp
N componentes del flujo por cambio de fase de las 1
comp
N
no-condensacin condensacin
( )
vap vap cond vap
p n T T not , >
0 0
1 :
,
1 :
,
> >

comp comp
N
j
j vap
N
j
n
j cond
n not or F
312 TRANSFERENCIA DE MATERIA


ecuaciones para la composicin del flujo producido por condensacin y del balance de
energa de la mezcla gaseosa. Sin embargo, a fin de satisfacer las reglas de causalidad
computacional de la interfaz (evitando en este caso que el problema tenga ndice
superior) se relaja la ligadura del mismo modo que se hizo en el modelo de la
ebullicin: en lugar de imponer que la temperatura del vapor valga lo mismo que su
temperatura de condensacin, se impone que el flujo de materia debido a la
condensacin sea tal que haga tender "rpidamente" la temperatura del vapor a su
temperatura de condensacin.
Para ello se procede del mismo modo que en el modelo de la ebullicin: se considera
(arbitrariamente) que cuando el sistema se encuentra en el estado condensacin el flujo
total de materia debido al cambio de fase es proporcional a la diferencia entre la
temperatura a la que se encuentra el vapor y su temperatura de condensacin. El
parmetro de proporcionalidad,
prop
k , deben escogerse de modo que la temperatura del
vapor tienda a la temperatura de condensacin lo suficientemente rpido (pero no ms)
como para poder ser consideradas ambas iguales dentro de la precisin requerida por la
aplicacin en concreto. La diferencia entre ambas, e , puede considerarse como una
medida del error cometido en la aproximacin. El flujo debido al cambio de fase se
considera positivo cuando va de la mezcla lquida a la gaseosa.
Estado condensacin Estado no-condensacin
False t flowIsPosi False t flowIsPosi
( )
vap vap cond
n p f T , ( )
vap vap cond
n p f T ,
( ) 1 ,..., 1 : ,

1 :
,
,
prop
1 :
,

comp vap i N
j
n
j cond
n
i cond
N
j
n
j cond
cond vap
N i n f
F
F
e k F
T T e
comp
comp

comp
n
i cond
N i F ,..., 1 : , 0
,


La clase bsica condensB, subclase de phaseChgB y contenida en la librera phase.lib,
modela el flujo de materia y de entalpa, entre el volumen de control que contiene la
mezcla gaseosa y el que contiene la mezcla lquida, debido a la condensacin del vapor.
La clase debe completarse con expresiones para evaluar la temperatura de condensacin
y la composicin del condensado, a partir de la presin y composicin de la mezcla en
fase vapor.
CONCLUSIONES 313

7.4. CONCLUSIONES
En este captulo se han discutido los modelos de la transferencia de materia por difusin
y por cambio de fase contenidos en la versin 1.0 de JARA. El nico fenmeno de
difusin molecular modelado ha sido la difusin de mezclas binarias de gases
semiperfectos. Se han expuesto las hiptesis de modelado, se ha descrito el modelo y se
ha mostrado un ejemplo sencillo en el cual se han empleado algunas de las clases de
JARA v. 1.0 que modelan el flujo de materia por conveccin, el flujo de calor y la
transferencia de materia por difusin y cambio de fase.
En el Apartado 7.3 se ha descrito el modelo de la ebullicin de una mezcla lquida y el
modelo de la condensacin de una mezcla gaseosa. Como ejemplo de aplicacin se ha
discutido un modelo sencillo de un evaporador destinado a la generacin de vapor.


315

Captulo 8
REACCIONES QUMICAS
8.1 INTRODUCCIN
En este apartado se discuten los modelos de algunos tipos de reacciones qumicas que se
producen en el seno de mezclas homogneas lquidas o gaseosas. En el Apartado 8.2 se
expone la finalidad de los modelos y las aproximaciones de modelado. El Apartado 8.3
contiene una breve recopilacin bibliogrfica de algunos conceptos tericos bsicos
sobre los que se fundamentan los modelos de reacciones qumicas contenidos en la
versin 1.0 de JARA. El Apartado 8.4 est dedicado a la descripcin de estos modelos,
contenidos en la librera chReac.lib, y los Apartados 8.5 y 8.6 a mostrar su aplicacin en
dos ejemplos sencillos. Finalmente, en el Apartado 8.7 se muestran las conclusiones.
La librera chReac.lib puede ser ampliada con clases que modelen otros tipos de
reacciones. Por ejemplo, pueden modelarse de forma sencilla las reacciones en fase
gaseosa en las cuales algunos de los productos de la reaccin sean lquidos y las
reacciones en fase lquida en las cuales algunos de los productos sean gaseosos. La
interfaz de estas clases puede ser la clase heteroProcessFlow2I (ver Apartado 3.5), de
modo que el cut de flujo de lquido de la clase se conecte al volumen de control que
contiene la mezcla lquida de productos o reactivos y el cut de flujo de gas se conecte al
volumen de control que contiene la mezcla gaseosa de reactivos o productos.
8.2 ALCANCE Y APROXIMACIONES DEL MODELADO DE
JARA v. 1.0
Las clases que modelan las reacciones qumicas se encuentran en la librera ChReac.lib.
De la gran variedad de reacciones qumicas existentes slo se consideran dos tipos de
conjuntos de reacciones irreversibles (las reacciones reversibles se modelan como suma
de reacciones irreversibles). Estas son:
1. En un volumen de control que contiene una mezcla lquida ideal homognea se
produce un conjunto de reacciones qumicas irreversibles en las cuales todos los
reactivos y todos los productos son componentes de la mezcla. La clase chReacLiqB
modela el conjunto de reacciones.
316 REACCIONES QUMICAS


2. En un volumen de control que contiene una mezcla ideal homognea de gases
semiperfectos se produce un conjunto de reacciones qumicas irreversibles en las
cuales todos los productos y todos los reactivos son componentes de la mezcla. La
clase chReacGasB modela el conjunto de reacciones.
La clase que modela la reaccin extrae del volumen de control que contiene la mezcla
reactiva un flujo de materia igual a los reactivos consumidos por unidad de tiempo e
introduce un flujo igual a los productos generados por unidad de tiempo. Este flujo de
materia corresponde con el trmino
m
G o
n
G del balance de materia (ver Apartado
4.3).
Obsrvese que en el balance de energa planteado en el volumen de control que contiene
la mezcla, Q F
dt
dU
H
+ , no aparece de forma explcita el calor de reaccin. El calor
de reaccin est contenido en el balance, pero de forma implcita [Bird75] [Rami89].
La interfaz de la clase que modela estos conjuntos de reacciones qumicas en fase
gaseosa posee un cut de flujo de gas. De las ecuaciones de la clase se calculan las
variables through del cut, por ello el cut es de tipo resistivo (interfaz gasFlow1I). Este
cut resistivo debe conectarse al cut capacitivo de flujo de gas de la clase que modela el
volumen de control que contiene la mezcla reactiva. Anlogamente, la clase que modela
el conjunto de reacciones en fase lquida posee un cut resistivo de flujo de lquido
(interfaz liqFlow1I) que debe conectarse a cualquiera de los dos cuts capacitivos de la
clase que modela el volumen de control que contiene la mezcla lquida reactiva.
8.3 ALGUNOS CONCEPTOS BSICOS
La matriz de coeficientes estequiomtricos
Considrese una mezcla homognea gaseosa o lquida de
comp
N componentes, contenida
en un volumen de control, en la que se producen
reac
N reacciones qumicas
irreversibles. Todos los productos y reactivos son componentes de la mezcla. Pueden
existir componentes que no intervengan en ninguna reaccin y componentes cuya masa
sea cero en determinados intervalos de tiempo de la simulacin.
La matriz de coeficientes estequiomtricos, , est compuesta por tantas filas como
reacciones irreversibles se produzcan en el volumen de control y tantas columnas como
componentes tenga el fluido contenido en el mismo. Si un componente no interviene en
ninguna de las reacciones qumicas, su columna deber rellenarse con ceros. Se adopta
el criterio de asignar signo negativo a los coeficientes estequiomtricos de los reactivos
y signo positivo a los de los productos.
ij
representa el coeficiente estequiomtrico del
componente j en la reaccin qumica i . Las ecuaciones estequiomtricas de las
reac
N
reacciones pueden representarse e 0 , donde e representa el vector de las especies
que componen la mezcla [From79].
Por ejemplo, considrense las siguientes reacciones:
ALGUNOS CONCEPTOS BSICOS 317

'


A B
B A
B A
La mezcla contiene tres componentes: A, B y C . La matriz es

,
_


0 1 - 1
0 1 1 -
. Las
ecuaciones estequiomtricas son

,
_

,
_

C
B
A
0 1 - 1
0 1 1 -
0 .
Velocidad de la reaccin
La velocidad instantnea de la reaccin qumica irreversible sima i , en la que
intervienen
especies
N , se define habitualmente de la forma siguiente [From79]:
especies
i
j
ij
i
,...,N j:
dt
dn
V
r 1 ,
1
Reaccin

,
_


Velocidad de la reaccin
qumica irreversible i .

V representa el volumen de la mezcla reactiva. La variacin total en el nmero de
moles de los componentes debido a las
reac
N reacciones es r V G
t n
. En general, la
velocidad de una reaccin homognea depende de la concentracin de las especies, la
temperatura, la presin, etc. En el caso de una reaccin simple irreversible, la velocidad
de la reaccin puede escribirse de la forma siguiente [Perr84]:
*
1 :
ij
reactivos
j
j
i i
V
n
k r

,
_


Velocidad de la reaccin simple e irreversible i .
RT
E
Ae k


Ecuacin de Arrhenius.

Los exponentes en la expresin de la velocidad de reaccin pueden ser o no nmeros
enteros y pueden coincidir o no con los coeficientes estequiomtricos. El orden de la
reaccin es la suma de estos exponentes.
Conversin fraccional de una especie qumica
En la literatura se hace frecuentemente mencin a la conversin fraccional de una
especie qumica. Se define de la forma siguiente [From79]:
( )
( )
0
0
t n
n t n
j
j j
j


Conversin fraccional de la especie qumica j .
318 REACCIONES QUMICAS


Calor de reaccin
El criterio de signos habitual es considerar el calor de reaccin,
reac
q (energa por mol),
negativo para una reaccin exotrmica y positivo para una endotrmica [From79],
[Luyb73]. La potencia calorfica generada por
reac
N reacciones qumicas es:
r q V G
t
reac
Q

Calor por unidad de tiempo generado por el conjunto de las
reac
N reacciones qumicas.

8.4 DESCRIPCIN DE LOS MODELOS DE JARA v. 1.0
El volumen del medio reactivo, V , se calcula de la forma siguiente. Cuando el medio
reactivo es gaseoso (chReacGasB), de la ecuacin de estado de los gases ideales, a partir
del nmero de moles, la presin y la temperatura de la mezcla gaseosa. Si el medio
reactivo es lquido (chReacLiqB), su volumen de calcula a partir de la masa de cada
componente de la mezcla y de su densidad en estado puro (considerada constante),
aplicando la ley de Amagat.
La ligadura sobre el volumen del fluido contenido en un volumen de control se impone
al realizar la conexin de la clase que modela el volumen de control a la clase que
modela el recipiente. Estas ligaduras condicionan el valor de las variables across de la
clase que modela el volumen de control y, por tanto, el volumen del medio reactivo,
calculado en la clase que modela la reaccin qumica, a partir de estas variables across,
satisface las ligaduras sobre el volumen.
En las clases chReacGasB, chReacLiqB debe darse valor a la matriz de coeficientes
estequiomtricos, , definida como una matriz de parmetros de la clase. Las clases
deben ser completadas con expresiones que permitan el clculo del calor de cada una de
las
reac
N reacciones qumicas,
reac
q , y el clculo de la velocidad de las reacciones, r . El
calor y la velocidad de la reaccin dependen del tipo de reaccin en cuestin, con lo
cual incluir en las clases bsicas expresiones para su clculo supondra reducir la
aplicabilidad de stas. Para cada conjunto de reacciones pueden definirse clases
especficas, que tengan como superclase a una de las dos clases bsicas anteriores y que
contengan expresiones para evaluar el calor y la velocidad de las reacciones.
A continuacin se muestran los modelos de las dos clases. Las expresiones para el
clculo de
n
G y
m
G se formulan con el mismo criterio de signos que aparecen estas
variables en los balances materia de las mezclas homogneas lquidas y gaseosas. Por
ello, los signos de estas expresiones y los de las expresiones de las clases que modelan
las reacciones qumicas son opuestos. El flujo de energa que intercambia la clase que
modela el conjunto de reacciones qumicas con la clase que modela el volumen de
control que contiene la mezcla reactiva es nulo.
EJEMPLO. DESCOMPOSICIN GASEOSA EN UN REACTOR DISCONTINUO 319

Modelo de la clase chReacGasB Modelo de la clase chReacLiqB
( )
gas gas gas gas
RT n V p +
r V G
t
gas
n
gas

liq comp
N
i
puro
i liq
i liq
liq
m
V
,
1 : ,
,


r V G
t
liq
n
liq

liq comp
n
j liq j
m
j liq
N j G M G
, , ,
,..., 1 :

8.5 EJEMPLO. DESCOMPOSICIN GASEOSA EN UN
REACTOR DISCONTINUO
La descomposicin en fase gaseosa S R A + se lleva a cabo, partiendo de una
temperatura inicial de K 300 y de una presin de atm 5 , en un recipiente con volumen
3
m 5 . 0 V . De acuerdo con esas condiciones, el nmero inicial de moles de A es
mol 6 . 101 . El calor de la reaccin, J/mol 6276 , se considera, en el rango de
aplicacin del modelo, independiente de la temperatura. La capacidad calorfica de los
componentes gaseosos A, R y S es 5 . 125 , 6 . 104 y ( ) K mol J / 3.7 8
respectivamente. El coeficiente de la velocidad de reaccin es

10000
exp 10 78 . 2
10

,
_


T
k , expresado en segundos a la menos uno [From79].
Se desea calcular mediante simulacin el factor de conversin en funcin del tiempo
considerando el sistema adiabtico e isotermo. La forma en que se ha modelado la
condicin de temperatura constante es conectando el volumen de control que contiene la
mezcla gaseosa a una fuente de temperatura por medio de una resistencia trmica de
valor lo suficientemente pequeo. En la Figura 8.1 se muestra el listado del modelo en
el caso isotermo y en la Figura 8.2 la representacin Dymodraw del modelo en los casos
adiabtico e isotermo. Las Figuras 8.3 y 8.4 muestran la velocidad de reaccin y la
conversin en ambos casos.

model class (chReacGasB) AtoRyS
{ Descomposicion en fase gaseosa A -> R + S
Componentes: (1) A; (2) R; (3) S }
parameter kCoef(2) { Coeficientes de la velocidad de reaccion.
(1): t**-1; (2): T } ->
mol1Initial { Moles de A en el instante inicial. mol }
local kReactionRate { Dependencia respecto de la temperatura de la
velocidad de la reaccion. t**-1 } ->
concMol(nComp) { Concentracion molar. mol*L**-3 } ->
conversion { Conversion fraccional }
{ Expresion de Arrhenius para la dependencia de la velocidad con la temperatura }
kReactionRate = kCoef(1) * exp( kCoef(2) / ( tempG + eps ) )
{ Concentracion molar de los componentes }
concMol = molG / ( gasV + eps )
{ Conversion fraccional }
conversion = ( mol1Initial - molG(1) ) / mol1Initial
{ Velocidad de la reaccion }
reactionRate = kReactionRate * concMol(1)
end

model class (sourceTempB) tempEnviron
parameter tempEnv { Temperatura del entorno. T }
sourceTemp = tempEnv
end
320 REACCIONES QUMICAS



model vaporPhDescomp
{ Componentes: (1) A; (2) R; (3) S }
constant nComp = 3 { Numero de componentes } ->
numChR = 1 { Numero de reacciones quimicas }
parameter CpCoefN(nComp,7) = [ 125.5, 0, 0, 0, 0, 0, 0; ->
104.6, 0, 0, 0, 0, 0, 0; ->
83.7, 0, 0, 0, 0, 0, 0 ] { J/(mol*K) }
parameter vesselV = 0.5 { Volumen del reactor. m**3 }
parameter stoichCoef(numChR,nComp) = [-1, 1, 1] { Coeficientes estequiometricos } ->
kCoef(2) = [ 2.78E10; -1E4 ] { Coef. velocidad. reac. [s**-1,K] } ->
perfGasConst = 8.3144 { Cte. gases perfectos. J/(mol*K) }
parameter molEnthalpyRef(nComp) = [ 6276-perfGasConst*300; ->
0; ->
0 ] { Entalpia molar de los componentes
a la temperatura de referencia. J/mol } ->
tempRef = 300 { Temperatura de referencia para la entalpia. K }
parameter tempEnv = 300 { Temp. del entorno. K } ->
Rtherm = 1E-4 { Resistencia termica. T*M**-1*L**-2*t**3 }
submodel (semiPerfGasCp6VB) gas {* at (-10,-60) (-60,-10) } ->
(nComp=nComp,CpCoefN=CpCoefN,perfGasConst=perfGasConst, ->
vesselVolume=vesselV,molEnthalpyRef=molEnthalpyRef, ->
tempRef=tempRef)
submodel (AtoRyS) chRAtoRyS {* at (10,-60) (60,-10) } ->
(nComp=nComp,numChR=numChR,stoichCoef=stoichCoef, ->
kCoef=kCoef,perfGasConst=perfGasConst)
submodel (RthConstB) resistTherm {* at (-25,0) (25,50) } (nCompI=nComp,Rth=Rtherm)
submodel (tempEnviron) tempEnvir {* at (45,0) (95,50) } (tempEnv=tempEnv)
{ Conexion de la reaccion quimica }
connect gas:inMol at chRAtoRyS:inMol {* color=5 }
{ Transferencia de calor }
connect gas:inHeat at resistTherm:inHeat ->
{* via (-35,-10) (-35,25) (-25,25) color=1 }
connect tempEnvir:inHeat at resistTherm:outHeat {* color=1 }
end

Figura 8.1 Listado del modelo. Caso isotermo.



































Figura 8.2 Representacin Dymodraw. Caso adiabtico e isotermo respectivamente.



















Figura 8.3 Velocidad de reaccin en el caso adiabtico e isotermo respectivamente.
EJEMPLO. REACCIN EN FASE LQUIDA EN UN REACTOR DISCONTINUO 321




















Figura 8.4 Conversin en el caso adiabtico e isotermo respectivamente.
8.6 EJEMPLO. REACCIN EN FASE LQUIDA EN UN
REACTOR DISCONTINUO
En un reactor con volumen
3
m 5 V se produce la reaccin qumica exotrmica
P A en la fase lquida, J/mol H
3
10 167 . La velocidad de reaccin es
A A
kC r , donde k depende de la temperatura de la forma:

,
_


T
k
7900
exp 10 * 4
6

expresado con unidades de segundo a la menos uno [From79]. El reactivo, A, se
introduce en el reactor disuelto en agua con una concentracin del % 10 en volumen.
El reactor contiene un intercambiador de calor de rea
2
m 3 . 3
k
A que puede operar de
dos modos:
1. Usando vapor como elemento calentador: C 120 T , ( ) K m W/ h
2
T
1360 .
2. Usando agua como refrigerante: C 15 T , ( ) K m W/ h
2
T
1180 .
La temperatura inicial de la mezcla reactiva son C 20 y la temperatura mxima
admisible de reaccin son C 5 9 . El tiempo necesario para llenar al % 80 de su
capacidad el tanque son 10 minutos. El peso molecular de A y P es el mismo,
g/mol M 100 , as como, de forma aproximada, su capacidad calorfica,
( ) K Kg J/ C
p
10 * 5 . 4
3
. La capacidad calorfica del agua vale aproximadamente
( ) K Kg J/ C
p
10 * 2 . 4
3
. Se considera que las densidades de A y P son iguales a la
del agua,
3 3
10 kg/m .
La conversin deseada es 9 . 0
Af
x . Se desea calcular el tiempo de proceso y el
consumo de agua y vapor para la siguiente estrategia: calentar a C 55 , dejar que la
reaccin proceda adiabticamente, comenzar a refrigerar cuando o bien la temperatura
alcance C 95 o bien cuando 9 . 0
Af
x . Enfriar hasta C 45 .
322 REACCIONES QUMICAS


La Figura 8.5 contiene un listado del programa. Se ha modelado el intercambiador de
calor mediante una clase compuesta constituida por la conexin de las clases bsicas
que modelan la resistencia trmica y la fuente de temperatura. En la Figura 8.6 se
muestra la representacin Dymodraw del modelo completo y de la clase compuesta
heatExchanger.

model class (chReacLiqB) chReacAtoP
{ Reaccion en fase liquida A -> P
[1]: A, [2]: agua, [3]: P }
terminal conversion { Conversion fraccional }
parameter kCoef(2) { Coeficientes de la velocidad de reaccion.
(1): t**-1; (2): T }
parameter time0 { Instante inicial para el calculo de la conversion. t } ->
eps = 1E-8 { Pequen-a constante para evitar la division por cero }
local kReactionRate { Dependencia respecto de la temperatura de la
velocidad de la reaccion. t**-1 } ->
concMolL(nComp) { Concentracion molar. mol*L**-3 } ->
molL(nComp) { Numero de moles de cada componente. mol } ->
massL1Initial = 1 { Masa de A en el instante inicial time0 }
cut sensorSignal {* cutEmitter at (80,-10) (100,10) } ->
(tempL,conversion)
{ Numero de moles de los componentes }
massL = diag(molecWeigth) * molL
{ Expresion de Arrhenius para la dependencia de la velocidad con la temperatura }
kReactionRate = kCoef(1) * exp( kCoef(2) / ( tempL + eps ) )
{ Concentracion molar de los componentes }
concMolL = molL / ( fluidV + eps )
{ Conversion }
when Time > time0 then
new(massL1Initial) = massL(1)
endwhen
conversion = if Time < time0 then 0 else ( massL1Initial - massL(1) ) / massL1Initial
{ Velocidad de la reaccion }
reactionRate = kReactionRate * concMolL(1)
end

model class (sourceTempB) sourceTemp
terminal isHeater = True { True: intercambiador usado como calentador
False: intercambiador usado como refrigerador } ->
isChiller = False { True: intercambiador usado como refrigerador
False: intercambiador usado como calentador }
parameter tempHeat { Temperatura de la fuente cuando actua como calentador. T } ->
tempCool { Temperatura de la fuente cuando actua como refrigerador. T }
cut setPointSignal {* cutReceiver at (-10,-100) (10,-80) } ->
(isHeater,isChiller)
{ Temperatura de la fuente }
new(sourceTemp) = if isHeater then tempHeat else tempCool
end

model class (resistThermB) thermalResist
terminal isHeater = False { True: intercambiador usado como calentador
False: intercambiador usado como refrigerador } ->
isChiller = False { True: intercambiador usado como refrigerador
False: intercambiador usado como calentador }
parameter RthHeater { Resistencia termica como calentador. T*M**-1*L**-2*t**3 } ->
RthCooler { Resistencia termica como refrigerador. T*M**-1*L**-2*t**3 } ->
RthOff = 1E20 { Resistencia termica desconectado. T*M**-1*L**-2*t**3 }
cut setPointSignal {* cutReceiver at (-10,-100) (10,-80) } ->
(isHeater,isChiller)
new(Rtherm) = if isHeater then RthHeater else if isChiller then RthCooler else RthOff
end

model class (heatFlow1I) heatExchanger
terminal isHeater = False { True: intercambiador usado como calentador
False: intercambiador usado como refrigerador } ->
isChiller = False { True: intercambiador usado como refrigerador
False: intercambiador usado como calentador }
parameter tempHeat { Temperatura de la fuente cuando actua como calentador. T } ->
tempCool { Temperatura de la fuente cuando actua como refrigerador. T }
parameter RthHeater { Resistencia termica como calentador. T*M**-1*L**-2*t**3 } ->
RthCooler { Resistencia termica como refrigerador. T*M**-1*L**-2*t**3 }
local consumHeater { Consumo de fluido normalizado como calentador } ->
consumChiller { Consumo de fluido normalizado como refrigerador }
cut setPointSignal {* cutReceiver at (-10,-100) (10,-80) } ->
(isHeater,isChiller)
submodel (thermalResist) resistTherm {* at (-70,-30) (-10,30) } ->
(nCompI=nComp,RthHeater=RthHeater,RthCooler=RthCooler)
submodel (sourceTemp) fluidTemp {* at (10,-30) (70,30) } ->
(tempHeat=tempHeat,tempCool=tempCool)
{ Consumo de fluido normalizado }
EJEMPLO. REACCIN EN FASE LQUIDA EN UN REACTOR DISCONTINUO 323

der(consumHeater) = if isHeater then 1 else 0
der(consumChiller) = if isChiller then 1 else 0
{ Conexiones de control }
connect fluidTemp:setPointSignal at setPointSignal {* color=0 }
connect resistTherm:setPointSignal at setPointSignal {* color=0 }
{ Transferencia de calor }
connect inHeat at resistTherm:inHeat ->
{* via (-80,0) (-68,0) color=1 }
connect fluidTemp:inHeat at resistTherm:outHeat ->
{* via (15,0) (-10,0) color=1 }
{* layer icon }
{* line (-70,0) (-50,0) thickness =2 color=1 }
{* line (-50,0) (-40,25) thickness =2 color=1 }
{* line (-40,25) (-20,-25) thickness =2 color=1 }
{* line (-20,-25) (0,25) thickness =2 color=1 }
{* line (0,25) (20,-25) thickness =2 color=1 }
{* line (20,-25) (30,0) thickness =2 color=1 }
{* line (30,0) (40,0) thickness =2 color=1 }
{* ellipse (40,-20) (80,20) color=1 fill_color=1 gradient=3 }
{* text "T" (45,-15) (75,15) color=0 }
end

model class heatExchCntrl
terminal isHeater = False { True: intercambiador usado como calentador
False: intercambiador usado como refrigerador } ->
isChiller = False { True: intercambiador usado como refrigerador
False: intercambiador usado como calentador }
terminal conversion { Conversion fraccional } ->
tempL { Temperatura de la mezcla liquida. T }
parameter time0 { Instante de encendido del calentador. t }
local cooled = False { True cuando isChiller = True por primera vez }
cut cntrlSignal {* cutReceiver at (80,-10) (100,10) } ->
(tempL,conversion)
cut manipSignal {* cutEmitter at (-10,80) (10,100) } ->
(isHeater,isChiller)
new(isHeater) = Time > time0 and tempL < (273 + 55) and not cooled
when isChiller then
new(cooled)=True
endwhen
when tempL > (273+95) or conversion>0.9 and not isChiller or ->
tempL < (273+45) and isChiller then
new(isChiller) = not isChiller
endwhen
{* layer icon }
{* rectangle (-80,-80) (80,80) color=0 }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model class (sourceVolLiqSignalI) sourceCntrl
parameter fillTime { Tiempo de llenado. t } ->
volFSP { Consigna para el flujo en volumen. L**3*t**-1 } ->
flowTempSP { Consigna para la temperatura del flujo. T } ->
flowVolConcSP(nComp) { Consigna para la fraccion en volumen }
totalVolFSP = if Time < fillTime then volFSP else 0
volFractSP = flowVolConcSP
tempFSP = flowTempSP
{* layer icon }
{* rectangle (-80,-80) (80,80) color=0 }
{* text "cntrl" (-60,-60) (60,60) color=0 }
end

model batchReacLiqAtoP
{ [1]: A, [2]: agua, [3]: P }
constant nComp = 3 { Numero de componentes } ->
numChR = 1 { Numero de reacciones quimicas irreversibles }
parameter CpCoefM(nComp,7) = [ 4.5E3, 0, 0, 0, 0, 0, 0; ->
4.2E3, 0, 0, 0, 0, 0, 0; ->
4.5E3, 0, 0, 0, 0, 0, 0 ] { J/(Kg*K) }
parameter massEnthalpyRef(nComp) = [167E4; ->
0; ->
0] { Entalpia por unidad de masa a la
temperatura de referencia. J/Kg } ->
tempRef = 300 { Temperatura de referencia para la entalpia. T }
parameter molecWeigth(nComp) = [0.1; 0.018; 0.1] { Peso molecular. Kg/mol } ->
density(nComp) = [1E3; 1E3; 1E3] { Densidad de los componentes puros. Kg/m**3 }
parameter vesselV = 5 { Volumen del reactor. m**3 } ->
vesselS = 2 { Seccion del reactor. m**2 }
parameter stoichCoef(numChR,nComp) = [-1, 0, 1] { Coeficientes estequiometricos } ->
kCoef(2) = [ 4E6; -7.9E3 ] { Coef. velocidad reaccion. [s**-1,K] }
parameter heatExchArea = 3.3 { Area del intercambiador. m**2 } ->
hTSteam = 1360 { Coef. transf. calor vapor. W/(m**2*K) } ->
hTWater = 1180 { Coef. transf. calor agua. W/(m**2*K) } ->
RthSteam = 1/(heatExchArea*hTSteam) { Resistencia termica vapor. K/W } ->
RthWater = 1/(heatExchArea*hTWater) { Resistencia termica agua. K/W } ->
tempSteam = 393 { Temperatura vapor. K } ->
tempWater = 288 { Temperatura agua. K }
324 REACCIONES QUMICAS


parameter pmax = 1.0E10 { Parametros caracteristicos de la curva de la fuente } ->
pcodo = 9.5E9 ->
pmin = 1 ->
peps = 0.2
parameter fillTime = 600 { Tiempo de llenado. s } ->
volFSP = - 0.8*vesselV/fillTime { Consigna flujo fuente. m**3 / s } ->
flowTempSP = 293 { Consigna temp. flujo fuente. K } ->
flowVolConcSP(nComp) = [ 0.1; 0.9; 0 ] { Consigna frac. volumen fuente }
submodel (liquidCp6PrefVB) liq {* at (20,-20) (-20,20) } ->
(nComp=nComp,CpCoefM=CpCoefM,vesselVolume=vesselV,density=density, ->
section=vesselS,massEnthalpyRef=massEnthalpyRef,tempRef=tempRef)
submodel (chReacAtoP) chRAtoP {* at (30,-70) (70,-30) } ->
(nComp=nComp,numChR=numChR,stoichCoef=stoichCoef,kCoef=kCoef, ->
molecWeigth=molecWeigth,density=density,time0=fillTime)
submodel (heatExchanger) heatEx {* at (30,30) (70,70) } ->
(nComp=nComp,tempHeat=tempSteam,tempCool=tempWater, ->
RthHeater=RthSteam,RthCooler=RthWater)
submodel (heatExchCntrl) heatExCntrl {* at (30,-20) (70,20) } (time0=fillTime)
submodel (sourceVolLiqFB) liqSource {* at (-30,-45) (-70,-5) } ->
(nComp=nComp,density=density,CpCoefM=CpCoefM, ->
pmax=pmax,pcodo=pcodo,pmin=pmin,peps=peps, ->
massEnthalpyRef=massEnthalpyRef,tempRef=tempRef)
submodel (sourceCntrl) sourceCntrl {* at (-70,-95) (-30,-55) } ->
(nComp=nComp,fillTime=fillTime,volFSP=volFSP,flowTempSP=flowTempSP, ->
flowVolConcSP=flowVolConcSP)
{ Flujo de liquido }
connect liqSource:inMass at liq:inMassBot {* via (-30,-25) (0,-25) (0,-20) color=3 }
{ Reaccion quimica }
connect liq:inMassBot at chRAtoP:inMass {* via (0,-20) (0,-50) (30,-50) color=3 }
{ Flujo de calor }
connect liq:inHeat at heatEx:inHeat {* via (20,0) (25,0) (25,50) (30,50) color=1 }
{ Control }
connect heatExCntrl:manipSignal at heatEx:setPointSignal {* color=0 }
connect heatExCntrl:cntrlSignal at chRAtoP:sensorSignal {* color=0 }
connect sourceCntrl:setPointSignal at liqSource:setPointSignal {* color=0 }
end

Figura 8.5 Listado del modelo.


































Figura 8.6 Representacin Dymodraw del modelo y de la clase heatExchanger.
En la Figura 8.7 se muestra la evolucin de la masa del reactivo A, mass_1, y del
producto P , mass_3, as como la temperatura de la mezcla. Inicialmente el reactor se
encuentra vaco. La fuente introduce en el reactor una mezcla compuesta por un % 10
en volumen de reactivo disuelto en agua. En el instante time0 el reactor se encuentra al
% 80 de su volumen, cesando el flujo de la fuente y activndose el intercambiador de
EJEMPLO. REACCIN EN FASE LQUIDA EN UN REACTOR DISCONTINUO 325

calor en modo calentador. El calor generado por la reaccin qumica ms el cedido por
el intercambiador hace que la temperatura de la mezcla suba desde la temperatura inicial
de entrada del reactivo, K 293 , hasta K 28 3 . Una vez alcanzados los K 28 3 se
desconecta el intercambiador (modelado haciendo muy elevada la resistencia trmica) y
se deja que la reaccin proceda adiabticamente.
































Figura 8.7 Masa de A y P. Temperatura de la mezcla lquida.
Como se muestra en la Figura 8.8, cuando la conversin llega a 9 . 0 se activa el
intercambiador en modo refrigerador. En ese instante la temperatura de la mezcla es
aproximadamente K 7 . 0 6 3 . El intercambiador enfra la mezcla hasta C 45 .



























Figura 8.8 Conversin. Seales de activacin del intercambiador en modo calentador y refrigerador.
En la Figura 8.9 se muestran la evolucin de la velocidad de la reaccin y los consumos
normalizados de fluido del intercambiador. De acuerdo con la figura, el intercambiador
est activo en modo calentador durante aproximadamente s 1479 y en modo
refrigerador durante aproximadamente s 059 4 . Para calcular el consumo de fluido en
cada caso basta con multiplicar por el valor del flujo.
326 REACCIONES QUMICAS




















Figura 8.9 Velocidad de la reaccin. Consumos de fluido normalizados.
8.7 CONCLUSIONES
En este apartado se han discutido los modelos, contenidos en la versin 1.0 de JARA,
de las reacciones qumicas homogneas producidas en el seno de mezclas lquidas o
gaseosas. Se han expuesto el alcance y las aproximaciones de modelado y se ha hecho
una breve introduccin terica a la explicacin de los modelos. Finalmente se han
mostrado dos ejemplos sencillos de aplicacin.
Con ello se ha completado la descripcin de las clases que componen la versin 1.0 de
JARA. Como se indic en el Apartado 1.3, en la exposicin de los objetivos de la tesis,
la finalidad de la versin 1.0 de JARA no ha sido generar un conjunto muy numeroso de
clases que cubran un amplio abanico de situaciones, sino establecer un marco unificado
y coherente en el cual diferentes usuarios puedan hacer uso libremente de las clases de
JARA y ampliar JARA con nuevas clases, adecuadas a sus aplicaciones especficas, de
modo que estas nuevas clases puedan ser reutilizadas en posteriores aplicaciones y por
otros usuarios. Para ello es preciso que se respeten las reglas de diseo de la versin 1.0
de JARA y que se amplen de forma coherente cuando sea preciso. La incorporacin de
nuevas clases, dando lugar a nuevas versiones de JARA, y la ampliacin de las reglas de
diseo son tareas que deben estar bajo la supervisin del administrador de JARA.
La utilidad que demuestre JARA en la prctica y lo que se extienda su uso sern
indicativos de la medida en que he alcanzado este objetivo.

327


DESCRIPCIN ORIENTADA A
OBJETOS Y SIMULACIN DE
MODELOS DINMICOS
HBRIDOS CON ALGUNOS
PARMETROS Y
CONDICIONES INICIALES
ALEATORIAS

329

Captulo 9
DESCRIPCIN DE MODELOS
HBRIDOS CON PARMETROS
ALEATORIOS
9.1 INTRODUCCIN
Los lenguajes actuales de modelado orientado a objetos de sistemas dinmicos hbridos
nicamente soportan la descripcin y simulacin de modelos con todos sus parmetros y
condiciones iniciales deterministas. La simulacin de las incertidumbres de los Tipos A y
C (ver Apartado 2.13) se realiza repitiendo la simulacin para cada conjunto de valores,
obtenido mediante generadores adecuados de nmeros aleatorios, de los parmetros
aleatorios y/o de las condiciones iniciales aleatorias. Los lenguajes de modelado suelen
poseer funciones para la generacin, en tiempo de simulacin, de nmeros aleatorios
distribuidos de forma uniforme, normal, etc., que pueden resultar tiles para simular
incertidumbres del Tipo B.
Cada parmetro aleatorio del modelo (incertidumbre del Tipo A) y el valor inicial
aleatorio de cada variable de estado (incertidumbre del Tipo C) est definido mediante su
propia probabilidad. El propsito de la simulacin de las incertidumbres A y C es
obtener, en cada instante de comunicacin, informacin acerca de la probabilidad de cada
una de las variables aleatorias del modelo (aquellas que son funcin de los parmetros
aleatorios) y el valor de las variables deterministas (aquellas que no son funcin de los
parmetros aleatorios).
El objetivo del trabajo descrito en los Captulos 9 y 10 consiste en aadir, a todas las
capacidades de los lenguajes actuales de modelado orientado a objetos, la posibilidad de
permitir la descripcin y simulacin de modelos hbridos con algunos de sus parmetros
y/o condiciones iniciales aleatorias. Esto permite la simulacin de las incertidumbres del
Tipo A y C de una forma alternativa a la tradicional. La simulacin de incertidumbres del
Tipo B no entra dentro de los objetivos de este trabajo (a menos que, como sucede en
ocasiones, sean reformuladas como incertidumbres del Tipo A).
En el presente captulo se propone un procedimiento para definir los parmetros
aleatorios, compatible con la descripcin orientada a objetos del modelo y del
experimento de los lenguajes de modelado y que resulta transparente para stos. El
lenguaje de modelado interpreta los parmetros aleatorios como deterministas, no
330 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


interfiriendo la definicin de stos en las operaciones del lenguaje de modelado
(obtencin del conjunto completo de ecuaciones del modelo, reduccin de ndice,
particin, tearing, etc.). Tambin se propone un procedimiento para almacenar la
informacin relativa a la probabilidad de los parmetros aleatorios del modelo y a la
probabilidad, total y condicionada, de las variables aleatorias.
9.2 DEFINICIN DE LOS PARMETROS ALEATORIOS DE
ENTRADA
Introduccin
Se denominan parmetros aleatorios de entrada a aquellos parmetros aleatorios del
modelo que no son calculados de operar otros parmetros aleatorios, sino de los cuales
se especifica su funcin de probabilidad. Por definicin, los parmetros aleatorios de
entrada son independientes estadsticamente entre s. Se emplea el trmino general
parmetros aleatorios para designar tanto a los parmetros aleatorios de entrada como a
los parmetros que son evaluados de operar aquellos. Todas las variables dependientes
de los parmetros aleatorios de entrada son variables aleatorias. Las variables aleatorias
del modelo pueden clasificarse como pertenecientes, al menos, a uno de los dos
siguientes grupos:
1. Variables aleatorias de salida. El objetivo del problema de simulacin es la
estimacin de su probabilidad (total o condicionada a un determinado conjunto
de parmetros aleatorios de entrada) en los instantes de comunicacin.
2. Variables aleatorias auxiliares. Son todas aquellas variables aleatorias que no
son parmetros aleatorios de entrada y a partir de las cuales se evalan otras
variables. Dependiendo de cmo vayan a ser operadas es preciso el clculo de su
probabilidad condicionada a un subconjunto u otro del conjunto de los
parmetros aleatorios de entrada de los que dependen estadsticamente. Una
variable puede ser simultneamente de salida y auxiliar.
La sintaxis para la definicin de los parmetros aleatorios de entrada, aplicable a
cualquier lenguaje de modelado que soporte la notacin vectorial, satisface los siguientes
tres requisitos:
1. Los parmetros aleatorios de entrada pueden ser, dependiendo del tipo de dato
que almacenen, reales o Booleanos. Los parmetros aleatorios reales deben ser
variables aleatorias reales tales que su conjunto de valores posibles sea un
intervalo cerrado de la recta real. Los parmetros aleatorios de entrada
Booleanos son variables aleatorias que slo pueden tomar los valores true y false.
2. La informacin acerca de si un parmetro es determinista o aleatorio y acerca de
su valor o probabilidad puede especificarse indistintamente o bien en el modelo o
bien al definir el experimento. Un parmetro que es definido como aleatorio en el
modelo puede ser redefinido en el experimento como determinista y viceversa.
3. Un mismo parmetro de una clase puede ser determinista para determinadas
instanciaciones de la clase y aleatorio para otras.
DEFINICIN DE LOS PARMETROS ALEATORIOS DE ENTRADA 331


9.2.1 Parmetros aleatorios Booleanos de entrada
Algunos lenguajes de modelado no permiten la definicin de parmetros Booleanos, es
decir, de parmetros a los que se asigne el valor true o false. Este es el caso, por
ejemplo, de Dymola [Elmq96, p.115]. Esto es debido a que el tipo de dato que espera
encontrar Dymosim al leer el valor de los parmetros en el fichero de descripcin del
experimento (dsin.txt) es real. Sin embargo, en la prctica esto no supone ninguna
limitacin, ya que a cualquier parmetro o variable real que intervengan en una expresin
Booleana se le asigna el valor false si vale cero y true en caso contrario. As, por
ejemplo, se asigna el valor true (valor numrico uno) a la variable y, definida de la forma
siguiente:
parameter a = 0.3
local y
y = not (not a)
Los parmetros aleatorios Booleanos de entrada poseen determinada probabilidad de
valer true y la complementaria de valer false, es decir, son variables aleatorias discretas
de Bernoulli [Law91]. Se definen empleando la funcin Bernoulli( ). Por ejemplo, en un
modelo escrito en Dymola:
parameter prob_L ->
L = Bernoulli(prob_L)
El valor del parmetro determinista que interviene como argumento de la funcin
Bernoulli( ) puede ser asignado en el modelo o al definir el experimento, debe estar
comprendido entre 0 y 1 y representa la probabilidad de que el parmetro al que se iguala
la funcin Bernoulli( ) valga true. El parmetro aleatorio es convertido en determinista si
se asigna al argumento de la funcin el valor cero (false) o uno (true).
9.2.2 Parmetros aleatorios reales de entrada
La funcin de probabilidad de un parmetro aleatorio real de entrada P se especifica
mediante un conjunto ordenado de
P
N pares de valores, ( ) { }
P
N k
k k P k
p F p
:
1 :
, ,
satisfaciendo:
( ) ( )
( ) ( )

'


< <
+ +
1 , 0
1 1 para ,
1
1 1
p
N P P
p k P k P k k
p F p F
N k p F p F p p

De este conjunto de pares de valores se obtiene la funcin de probabilidad acumulada,
( ) p F
P
, mediante interpolacin lineal [Brat87], [Law91]. El nmero de pares de valores,
P
N , puede diferir de un parmetro aleatorio real de entrada a otro. El intervalo de
valores posibles de P es [ ]
P
N
p p ,
1
.
La forma de especificar en el cdigo del modelo los pares de valores ( ) { }
P
N k
k k P k
p F p
:
1 :
,
consiste en almacenarlos en un parmetro vectorial, de modo que el valor de
k
p sea el
332 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


elemento ( ) 1 , k y ( )
k P
p F sea el elemento ( ) 2 , k . De esta forma pueden ser modificados
en el experimento o al reutilizar la clase o puede redefinirse el parmetro como
determinista asignando a todos los
k
p , con
P
N k 1 , el valor del parmetro
determinista. En este ltimo caso, cuando el conjunto de valores posibles de un
parmetro aleatorio real es un punto, no es considerado aleatorio, sino determinista.
El parmetro aleatorio real de entrada se define igualndolo a la funcin cdf()
(cumulative distribution function) con argumento el parmetro vectorial en el que se
define el conjunto de pares de valores ( ) { }
P
N k
k k P k
p F p
:
1 :
, . Por ejemplo, en un modelo
escrito en Dymola:
constant Np = 5
parameter Fp(Np,2) = [ 0 , 0.00 ; ->
1 , 0.25 ; ->
3 , 0.50 ; ->
8 , 0.75 ; ->
9 , 1.00 ] ->
p = cdf(Fp)

Asimismo, se facilita la sintaxis para la definicin de las distribuciones de probabilidad
ms habituales. A modo de ejemplo, la Tabla 9.1 muestra la sintaxis para las
distribuciones uniforme, triangular, exponencial truncada y normal truncada, aplicada a
Dymola. El parmetro se convierte en determinista haciendo coincidir el valor de los
extremos de su intervalo de valores posibles.
P , distribuido uniformemente en el intervalo
[ ]
Max min
p p , , ( )
Max min
p p U P , ~ .
parameter pmin, pMax ->
p = Unif(pmin,pMax)
P , distribuido triangularmente en el intervalo
[ ]
Max min
p p , y con parmetro de forma
f
p ,
( )
f Max min
p p p triang P , , ~ .
parameter pmin, pMax, pf ->
p = triang(pmin,pMax,pf)
P , distribuido de forma normal truncada en el
intervalo [ ]
Max min
p p , , ( )
2
, ~ N P .
parameter pmin, pMax, pmed, pvar ->
p = Normal(pmin,pMax,pmed,pvar)
P , distribuido de forma exponencial truncada
en el intervalo [ ]
Max min
p p , , ( ) o P exp ~ .
parameter pmin, pMax, pbeta ->
x = expo(pmin,pMax,pbeta)
Tabla 9.1 Ejemplo de la sintaxis para la definicin de algunas funciones de probabilidad comunes.
La densidad de probabilidad truncada al intervalo [ ]
Max min P
p p I , , ( ) p f
P
, puede
definirse, a partir de la densidad de probabilidad, ( ) p f
P
*
, de la forma [Law91]:

( ) ( )

'


caso otro cualquier en 0
si
) (
) (
) (
) (
* *
*
*
*
Max min
min P Max P
X
p
p
P
P
P
p p p
p F p F
p f
dp p f
p f
p f
Max
min

de donde, la funcin de probabilidad truncada se define de la forma siguiente:
REPRESENTACIN INTERNA DE LA PROBABILIDAD 333


( )
( ) ( )
( ) ( )

'


Max
Max min
min P Max P
min P P
min
p
P P
p>p
p p p
p F p F
p F p F
p<p
dp p f p F
si 1
si
si 0
) (
* *
* *

Imponer que el conjunto de valores posibles de un parmetro aleatorio real de entrada
deba ser un intervalo cerrado de la recta real no supone ninguna limitacin prctica, ya
que puede definirse un parmetro aleatorio real con un conjunto de valores posibles no
conexos, igual a la unin de cierto nmero finito de intervalos cerrados, empleando la
estructura if-then-else de los lenguajes de modelado. Por ejemplo, usando la sintaxis de
Dymola:
parameter prob_t ->
t = Bernoulli(prob_t)
parameter p1min, p1Max ->
p1 = Unif(p1min,p1Max)
parameter p2min, p2Max ->
p2 = Unif(p2min,p2Max)
parameter p = if t then p1 else p2
Los parmetros aleatorios reales de entrada son variables aleatorias continuas, ya que su
intervalo de valores posibles es un intervalo cerrado. Cabe, sin embargo, la posibilidad de
definir parmetros aleatorios reales discretos o parmetros aleatorios en parte discretos y
en parte continuos usando la estructura if-then-else. Por ejemplo, usando la sintaxis de
Dymola:
parameter prob_t ->
t = Bernoulli(prob_t)
parameter p1min, p1Max ->
p1 = Unif(p1min,p1Max)
parameter p2, p3
parameter p4 = if t then p1 else p2
parameter p5 = if t then p2 else p3
9.3 REPRESENTACIN INTERNA DE LA PROBABILIDAD
Introduccin
La informacin acerca de la probabilidad de los parmetros aleatorios y acerca de la
probabilidad total y condicionada de todas las variables aleatorias del modelo se
representa en un formato, denominado representacin interna, especialmente concebido
para posibilitar la computacin de las operaciones en que intervienen variables aleatorias.
La Tabla 9.2 contiene un resumen del espacio de memoria necesario para almacenar la
representacin interna de los distintos tipos de variables aleatorias. El Apartado 9.3 est
dedicado a la descripcin de la representacin interna, de la cual surge la justificacin a
estas expresiones.
334 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Probabilidad total de una variable
aleatoria real, X .
( ) ( ) ( )
X I
i N x x + + 2 dim dim
Probabilidad de una variable aleatoria
real, X , condicionada a ( )
X
P

dim
parmetros reales de entrada y a ( )
X
Q

dim
parmetros Booleanos de entrada.
{ }
( )
{ }
( )
{ }
[ ]
( ) ( )
( ) 2 , ... ...
dim dim
N
1 : 1 :
2
1 :
2
1 :

,

,

1
dim 1
dim
+
+

N k i
x x
k
N
k
Q P
X
Q P
I
Q P
X
P
X
Q
X X
X X X X


Probabilidad total de una variable
aleatoria lgica, L .
( ) 1 T dim
L

Probabilidad de una variable aleatoria
lgica, L , condicionada a ( )
X
P

dim
parmetros reales de entrada y a ( )
X
Q

dim
parmetros Booleanos de entrada.
{ }
( )
( ) ( )
L L L L
Q P Q P
L
N

dim

dim

2 T dim
Tabla 9.2 Memoria ocupada por representacin interna de una variable aleatoria.
9.3.1 Parmetros aleatorios Booleanos de entrada y probabilidad total
de las variables aleatorias Booleanas
La representacin interna de la probabilidad de un parmetro aleatorio lgico de entrada,
Q, es una variable real,
Q
, que contiene la probabilidad de que el parmetro aleatorio
valga true, { } { } 1 false Q P true Q P
Q
.
Anlogamente, la representacin interna de la probabilidad total (no condicionada a
ningn parmetro aleatorio de entrada) de una variable aleatoria Booleana, L , es una
variable real,
L
, que almacena la probabilidad de que L valga true,
{ } { } 1 false L P true L P
L
.
9.3.2 Parmetros aleatorios reales de entrada
La representacin interna de un parmetro aleatorio real de entrada es un vector de
1 + N elementos construido (mediante interpolacin lineal) a partir de la informacin
suministrada en el modelo o en el experimento acerca de su funcin de probabilidad
acumulada. El valor del entero N , comn a todas las variables aleatorias, se escoge,
independientemente de la descripcin del modelo y de la asignacin de valor a sus
parmetros deterministas o aleatorios. Como se ver ms adelante, la dimensin de los
vectores representacin interna de cualquier variable aleatoria auxiliar o de salida del
modelo es funcin de N . El valor de N determina la cantidad y la precisin de la
informacin acerca de la probabilidad de las variables de salida obtenida mediante la
simulacin y tambin la carga computacional de la misma.
REPRESENTACIN INTERNA DE LA PROBABILIDAD 335


La representacin interna de un parmetro aleatorio real de entrada P , con un conjunto
de valores posibles [ ]
Max min P
p p I , , es un vector p , de dimensin 1 + N , definido de
la forma siguiente:
{ }

'

] 1 [
2 para
1
] [
] 1 [
Max
min
p N p
N k
N
k
k p P P
p p

Por definicin, la probabilidad del evento [ ] [ ] { } 1 + < k p P k p
k
I
P
, para cualquier
N k ,..., 1 : , vale { }
N
P
k
I
P
1
. Dado que el conjunto de valores posibles de P es un
intervalo cerrado, [ ]
Max min P
p p I , , su funcin de probabilidad acumulada, ( ) p F
P
, es
montona creciente en este intervalo, con lo cual las componentes del vector p quedan
unvocamente definidas.
El clculo de la representacin interna a partir de la descripcin de la funcin de
probabilidad dada en el modelo puede hacerse, o bien mediante interpolacin lineal a
partir de los pares de valores ( ) { }
1 :
1 :
,
+
P
N k
k k P k
p F p , o bien empleando expresiones
especficas para cada tipo de distribucin. A modo de ejemplo, se calcula a continuacin
la representacin interna de los parmetros distribuidos de forma uniforme, triangular,
exponencial y normal.
Ejemplo 1. ( )
Max min
,p p P~U . [ ]
Max min P
p , p I
( )

'

>

<

Max
Max min
min Max
min
min
P
p p
p p p
p p
p p
p p
p F
si 1
si
si 0

Funcin de probabilidad
acumulada.
[ ] ( )
N
k
p p p k p
min Max min
1

+ para 1 ,..., 1 : + N k
Vector representacin interna, p .

336 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Ejemplo 2. ( ) ,
f Max min
p ,p p P~triang . [ ]
Max min P
p , p I
( )
( )
( )( )
( )
( )( )

'

<

<

<

Max
Max f
f Max min Max
Max
f min
min f min Max
min
min
P
p p
p p p
p p p p
p p
p p p
p p p p
p p
p p
p F
si 1
si 1
si
si 0
2
2

Funcin de
probabilidad
acumulada.
[ ]
( )( )
( )( )

'

>

,
_

min Max
min f
f Max min Max Max
min Max
min f
min f min Max min
p p
p p
N
k
p p p p
N
k
p
p p
p p
N
k
p p p p
N
k
p
k p
1
si
1
1
1
si
1

para 1 ,..., 1 : + N k .
Vector
representacin
interna, p .
Ejemplo 3. ( ) , exp
Max min
,p p o P~ . [ ]
Max min P
p , p I

'

,
_

,
_



Max
Max min
p p
p p
min
P
p>p
p p p
e e
e e
p<p
p F
Max min
min
si 1
si
si 0
) (



Funcin de
probabilidad
acumulada
( ) exp o
truncada al
intervalo de
valores
posibles
P
I .
[ ]

,
_

,
_

Max min
p p
e
N
k
e
N
k
k p
- -

1

1
1 ln - = para 1 ,..., 1 : + N k .
Vector
representacin
interna, p .
Ejemplo 4. ( ) , ,
2
Max min
,p p P~N . [ ]
Max min P
p , p I
La funcin de probabilidad acumulada de una variable distribuida normal ( )
2
, N ,
puede obtenerse teniendo en cuenta que si P est distribuida ( )
2
, N , entonces

P
Z est distribuida ( ) 1 , 0 N [Ross91], con lo cual:
( ) { }

,
_

'

'

p
F
p
Z P
p P
P p P P p F
Z P
* *

REPRESENTACIN INTERNA DE LA PROBABILIDAD 337

'

,
_

,
_

,
_

,
_

Max
Max min
min
Z
Max
Z
min
Z Z
min
P
p>p
p p p
p
F
p
F
p
F
p
F
p<p
p F
si 1
si
si 0
) (
* *
* *


Funcin de probabilidad
acumulada ( ) ,
2
N
truncada al intervalo de
valores posibles
P
I .
[ ]
,
_

,
_

,
_

,
_


min
Z
Max
Z Z
p
F
N
k p
F
N
k
F k p
* *
1
*
1
1
1

para 1 ,..., 1 : + N k .
Vector representacin
interna, p .
9.3.3 Probabilidad total de las variables aleatorias reales
A diferencia de los parmetros aleatorios reales de entrada, cuyo conjunto de valores
posibles es, por definicin, un intervalo cerrado (diferente, en general, para cada uno),
una variable aleatoria real, X , pueden tener un conjunto de valores posible,
X
I , no
conexo, que puede escribirse como la unin de cierto nmero i
X
finito de intervalos
cerrados disjuntos [ ]
U
X
i
j
X X
j I I
1 :
. Cada uno de los intervalos cerrados se representa
como [ ] [ ] [ ] [ ] j x j x j I
Max min X
, , para
X
i j ,..., 1 : , satisfacindose [ ] [ ] 1 + < j x j x
min Max

para todo j i
X
: ,..., 1 1 . Puede suceder que los dos extremos de algn intervalo
coincidan, [ ] [ ] j x j x
Max min
para algn j tal que
X
i j 1 , definiendo de esta forma
un punto. El conjunto de valores posibles de cualquier variable aleatoria real es siempre
un conjunto acotado.
Puesto que una funcin continua transforma conjuntos conexos en conjuntos conexos
[Apos60, th.8-32], slo mediante una funcin discontinua puede obtenerse una variable
aleatoria real con un conjunto de valores posibles no conexo a partir de variables
aleatorias reales con conjuntos de valores posibles conexos (por ejemplo, cualquiera de
los parmetros aleatorios reales de entrada). Este es el caso de las construcciones if-then-
else cuando de ellas se evala una variable aleatoria real, la condicin es una variable
aleatoria Booleana y los conjuntos de valores posibles de las variables aleatorias reales
obtenidas de evaluar las dos ramas son disjuntos.
La representacin interna de la probabilidad de una variable aleatoria real, X , consta de
los dos siguientes vectores:
El vector
I
x , de i
X
componentes, almacena la probabilidad de que X se encuentre
en cada uno de los intervalos cerrados [ ] j I
X
. [ ]
[ ]
{ }
X j I I
i j P j x
X
,..., 1 : para
338 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


El vector bidimensional x , de ( )
X
i N +1 componentes, almacena la informacin de
la funcin de probabilidad acumulada de X condicionada a que se encuentre en cada
uno de los i
X
intervalos [ ] j I
X
. El vector x se define de la forma siguiente:
[ ]
[ ]
{ } [ ] [ ]
[ ] [ ] [ ]
[ ]

'

'

'


<

X Max
X
Max min min
Max min j I
X min
i j j x j N x
i j
N n
j x j x j x j n x
j x j x
N
n
j n x X P
i j j x j x
X
,..., 1 : para ] , 1 [

,..., 1 :
,..., 1 :
para
si ] , [
si
1
] , [
,..., 1 : para ] , 1 [

Por definicin, si [ ] [ ] j x j x
Max min
< , se cumple, para cualquier n y j , tales que
N n 1 y
X
i j 1 , que
[ ]
{ }
N
j n x X j n x P
j I
X
1
] , 1 [ ] , [ + < . La funcin de
probabilidad acumulada condicionada
[ ]
( )
j I X
X
x F es montona creciente si
[ ] [ ] j x j x
Max min
< , ya que, por definicin de [ ] j I
X
:
[ ]
( ) 0
j I X
X
x f
[ ] [ ] ( ) , j x j x x
Max min
y, por ello, [ ] j n x , queda unvocamente definido mediante la
ecuacin
[ ]
( )

'


N n
i j
N
n
j n x F
X
j I X
X
,..., 2 :
,..., 1 :
para
1
] , [ .
La funcin de probabilidad puede obtenerse mediante interpolacin lineal, a partir de su
representacin interna, de la forma siguiente [Brat87], [Law91]:
[ ]
( )
1
]
1

+
+

] , [ ] , 1 [
] , 1 [ 1

j n x j n x
x j n x
n
N
x F
j I X
X
para [ ] [ ] ( ) , 1 , , j n x j n x x + .
Los intervalos [ ] j I
X
son disjuntos dos a dos y su unin es igual a
X
I , por ello los
sucesos
[ ] [ ]
X X X
i I I
,...,
1
son excluyentes y su unin es igual al espacio probabilstico
total. As pues, puede calcularse la funcin de probabilidad acumulada total de la forma
siguiente:
{ }
[ ]
{ }
[ ]
{ } [ ]
[ ]
{ } [ ] [ ]


X
X
X
X X
i
j
I j I
i
j
j I j I
j x x X P P x X P x X P
1 : 1 :

9.3.4 Probabilidad condicionada de las variables aleatorias Booleanas
Sea P el conjunto formado por todos los parmetros aleatorios reales de entrada y Q el
conjunto formado por todos los parmetros aleatorios Booleanos de entrada. Sea L una
variable aleatoria Booleana.
L
P es el conjunto de todos los parmetros aleatorios reales
de entrada de los que depende estadsticamente la variable L , P P
L
, y
L
Q es el
conjunto de todos los parmetros aleatorios Booleanos de entrada de los que depende
REPRESENTACIN INTERNA DE LA PROBABILIDAD 339


L , Q Q
L
. Sea
L
P

un subconjunto de
L
P ,
L L
P P

, y
L
Q

un subconjunto de
L
Q ,
L L
Q Q

. Los elementos del conjunto


L
P

se nombran
( )
L
P L
L
P P

,dim
1 ,

..., ,

y los del conjunto


L
Q

se nombran
( )
L
Q L
L
Q Q

,dim
1 ,

..., ,

.
La representacin interna de la probabilidad de la variable aleatoria L , condicionada a
los parmetros aleatorios de entrada
L
P

y
L
Q

, es el vector
{ }

T
L L
Q P
L
, de elementos
{ }
[ ] , T

k
L L
Q P
L
, con ( ) ( )
L L
Q P

dim

dim + dimensiones y compuesto por


( ) ( )
L L
Q P
N

dim

dim
2
elementos. Los vectores de ndices k y se definen de la forma siguiente:

( )
( )
L
P
k k k

dim
1
,..., , con N k ,..., 1 :
1
, ...,
( )
N k
L
P
,..., 1 :

dim

( )
( )
L
Q

dim
1
,..., , con false t , rue :
1
, ...,
( )
false t
L
Q
, rue :

dim

Cada uno de los ndices tiene asociado un parmetro aleatorio de entrada, perteneciente
al conjunto
L
P

o a
L
Q

, y una familia de eventos:


[ ] [ ] { } 1

E ,

,
, , , ,
,

+ <
i i L i L i i L
k
I i L i
k p P k p P k
i
i L
P
con
( )

'

N k
P i
i
L
,..., 1 :

dim ,..., 1 :

{ }
i i L
Q
i L i
Q Q
i
i L



, ,

E ,

,
,
con
( )

'

false true
Q i
i
L
, :

dim ,..., 1 :


[ ]
i i L
k p
,
representa el componente nmero
i
k del vector representacin interna del
parmetro aleatorio de entrada
i L
P
,

,
i L
p
,
. Los componentes del vector
{ }

T
L L
Q P
L
se
definen de la forma siguiente:

{ }
[ ]
( )
( )
( )
( )

'


L
Q
L
Q L
L
L
P
L
P L
P
L
P
L L
Q Q
k
I
k
I
Q P
L
true L P k

dim

,dim
1
1 ,

dim

,dim

1
1 ,

... ... ,


A continuacin se muestran algunos ejemplos.
Ejemplo 1
La variable aleatoria Booleana L depende de un nico parmetro aleatorio de entrada,
Q, que es Booleano, de la forma siguiente:

( ) 0
else then if
2 1
<

X L
Q X

La representacin interna de la probabilidad de L condicionada al parmetro Q es el
vector
{ } Q
L
T , de componentes
{ }
[ ]
Q
L
T con false true, :
340 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS



{ }
[ ] { }
{ }
[ ] { }

'

<

'

<

0 si 0
0 si 1
T
0 si 0
0 si 1
T
2
2
1
1

false Q true L P false


true Q true L P true
Q
L
Q
L

Ejemplo 2
La variable aleatoria Booleana L depende de dos parmetros aleatorios de entrada,
1
Q y
2
Q , ambos Booleanos, de la forma siguiente:

2 1
else then if Q Q L
La representacin interna de la probabilidad de L condicionada al parmetro
1
Q es el
vector
{ }
1
T
Q
L
, de componentes
{ }
[ ]
1
1
T
Q
L
con false true,
1
:

{ }
[ ] { }
{ }
[ ] { }

'

'


false
true
false Q true L P false
false
true
true Q true L P true
Q
Q
L
Q
Q
L

si T
si 0
T
si T
si 1
T
2
1
2
1
1 1
1 1

La representacin interna de la probabilidad de L condicionada a
1
Q y
2
Q es el vector
{ }
2 1
T
,Q Q
L
, de componentes
{ }
[ ]
2 1
,
, T
2 1

Q Q
L
con false true,
1
y false true,
2
:

{ }
[ ] 1

, T
2
1
2 1
,
2 1

'


true Q
true Q
true L P true true
Q Q
L

{ }
[ ]

'

'


false
true
false Q
true Q
true L P false true
Q Q
L


si 0
si 1

, T
2
1
2 1
,
2 1


{ }
[ ] 0

, T
2
1
2 1
,
2 1

'


false Q
false Q
true L P false false
Q Q
L


{ }
[ ]

'

'


false
true
true Q
false Q
true L P true false
Q Q
L


si 1
si 0

, T
2
1
2 1
,
2 1

Ejemplo 3
La variable aleatoria Booleana L depende de un parmetro aleatorio de entrada, P , que
es real, de la forma siguiente:
( ) 0 < P L
La representacin interna de la probabilidad de L condicionada a P es el vector
{ } P
L
T ,
de componentes
{ }
[ ] k
P
L
T con N k ,..., 1 :
REPRESENTACIN INTERNA DE LA PROBABILIDAD 341


{ }
[ ] [ ] [ ] { }
[ ]
[ ]
[ ] [ ]
[ ]
[ ]
[ ] 1
0 1 si 1
0 si
1
0 si 0
1 T +

'

< +
<
+

+ < k p
k p
k p
k p k p
k p
k p
k p P k p true L P k
P
L

9.3.5 Probabilidad condicionada de las variables aleatorias reales
X
P representa el conjunto de los parmetros aleatorios reales de entrada de los que
depende estadsticamente la variable aleatoria real X , P P
X
, y
X
Q el conjunto de los
parmetros aleatorios Booleanos de entrada de los que depende X , Q Q
X
. Sea
X
P


un subconjunto de
X
P ,
X X
P P

, y
X
Q

un subconjunto de
X
Q ,
X X
Q Q

. Los
elementos del conjunto
X
P

se nombran
( )
X
P X
X
P P

,dim
1 ,

..., ,

y los del conjunto


X
Q

,
( )
X
Q X
X
Q Q

,dim
1 ,

..., ,

.
Los vectores de ndices k y , asociados a los conjuntos
X
P

y
X
Q

respectivamente, se
definen de la misma forma que en el caso de las variables lgicas:

( )
( )
X
P
k k k

dim
1
,..., , con N k ,..., 1 :
1
, ...,
( )
N k
X
P
,..., 1 :

dim

( )
( )
X
Q

dim
1
,..., , con false t , rue :
1
, ...,
( )
false t
X
Q
, rue :

dim

Cada ndice tiene asociado uno de los elementos de los conjuntos
X
P

y
X
Q

y una
familia de eventos:
[ ] [ ] { } 1

E ,

,
, , , ,
,

+ <
i i X i X i i X
k
I i X i
k p P k p P k
i
i X
P
con
( )

'

N k
P i
i
X
,..., 1 :

dim ,..., 1 :

{ }
i i X
Q
i X i
Q Q
i
i X



, ,

E ,

,
,
con
( )

'

false true
Q i
i
X
, :

dim ,..., 1 :


El conjunto de valores posibles de X es igual a la unin de un conjunto diferente de
intervalos cerrados en funcin del valor que tomen los parmetros aleatorios de entrada
X
P

y
X
Q

. Sea
{ }
[ ] ,

k i
X X
Q P
X
el nmero de intervalos cerrados, disjuntos dos a dos, cuya
unin constituye el conjunto de valores posibles de X cuando se satisfacen los eventos
( )
( )
( )
( )
X
Q
X
Q X X
X
P
X
P X
P
X
P
Q Q
k
I
k
I

dim

,dim
1
1 ,

dim

,dim

1
1 ,


... ...

. El conjunto de valores posibles de X cuando se


producen los eventos
( )
( )
( )
( )
X
Q
X
Q X X
X
P
X
P X
P
X
P
Q Q
k
I
k
I

dim

,dim
1
1 ,

dim

,dim

1
1 ,


... ...

es
342 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ]
{ }
[ ]
U


,
1 :

,

,

, , ,
k i
j
Q P
X
Q P
X
X
Q
X
P
X
X X X X
j k I k I , donde el intervalo cerrado
{ }
[ ]
{ }
[ ]
{ }
[ ] [ ] j k x j k x j k I
X X X X X X
Q P
Max
Q P
min
Q P
X
, , , , , , ,

,

,

,

es, en general, diferente para cada


conjunto de valores de
( )
X
P
k k

dim
1
,..., , de
( )
X
Q

dim
1
,..., y de j .
La representacin interna de la probabilidad de la variable aleatoria X condicionada a
los parmetros aleatorios de entrada
X
P

y
X
Q

consta de dos vectores:



{ }
X X
Q P
x

, con
{ }
[ ]
( ) ( )
( ) 1 , ... ...
N
1 : 1 :
2
1 :
2
1 :

1
dim 1
dim
+

N k i
k
N
k
Q P
X
X
P
X
Q
X X

elementos,
{ }
[ ] j k n x
X X
Q P
, , ,

. Se define:
{ } { }
{ }
( )
( )
( )
( )
{ }
{ } { }
{ } { } { } { }
{ } { }

'

'


<

'

] , , [ ] , , , 1 [
] , , [ ] , , [ si ] , , [ ] , , , [
] , , [ ] , , [ si
1

...
...
] , , , [
] , , [ ] , , , 1 [

,

,

,

,

,

,

,

,

] , , [

,

,

dim

dim
1
1

dim

dim ,

1
1 ,

j k x j k N x
j k x j k x j k x j k n x
j k x j k x
N
n
j k n x X P
j k x j k x
X X X X
X X X X X X X X
X X X X
X
Q
X
P
X
X
Q
X
Q
X
P
X
P X
P
X
P
X X
X X X X
Q P
Max
Q P
Q P
Max
Q P
min
Q P
min
Q P
Q P
Max
Q P
min
j k I
Q Q
k
I
k
I
Q P
Q P
min
Q P




donde los ndices valen:
( )
( )
{ }
[ ]

'

N n
k i j
false t
N k k
X X
X
X
Q P
X
Q
P
,..., 2 :
, ,..., 1 :
, rue : ,...,
,..., 1 : ,...,

dim
1

dim
1


.

{ }
X X
Q P
I
x

, con
{ }
[ ]
( ) ( )

N
1 : 1 :
2
1 :
2
1 :

1
dim 1
dim
, ... ...
k
N
k
Q P
X
X
P
X
Q
X X
k i

elementos,
{ }
[ ] j k x
X X
Q P
I
, ,

.
Se define:
{ }
[ ]
{ }
( )
( )
( )
( )

'




X
Q
X
Q X X
X
P
X
P X
P
X
P
X
Q
X
P
X
X X
Q Q
k
I
k
I
j k I
Q P
I
P j k x

dim

dim ,
1
1 ,

dim

dim ,

1
1 ,


] , , [

...
...
, ,


donde los ndices valen:
( )
( )
{ }
[ ]

'


, ,..., 1 :
, rue : ,...,
,..., 1 : ,...,

dim
1

dim
1
k i j
false t
N k k
X X
X
X
Q P
X
Q
P
.
REPRESENTACIN INTERNA DE LA PROBABILIDAD 343


A continuacin se muestran algunos ejemplos.
Ejemplo 1
La variable aleatoria real X depende de un nico parmetro aleatorio de entrada, P ,
que es real. La relacin entre ambos viene dada por la expresin P X , donde es
una variable real determinista. La representacin interna de la probabilidad de X
condicionada a P se calcula de la expresin P X a partir de la representacin
interna de la probabilidad de P condicionada a P , esto es ( ) ( ) P X F P P F
P X


.
La representacin interna de la probabilidad de P condicionada a P se calcula
interpolando linealmente la representacin interna de la probabilidad total:

{ }
[ ] 1 k i
P
P
,
{ }
[ ] 1 1 , j k p
P
I
con N k ,..., 1 :

{ }
[ ] [ ] [ ] [ ] ( ) k p k p
N
n
k p j k n p
P
+

+ 1
1
1 , , con

'
+
N k
N n
,..., 1 :
1 ,..., 1 :

La representacin interna de la probabilidad de X condicionada a P es:

{ }
[ ] 1 k i
P
X
,
{ }
[ ] 1 1 , j k x
P
I
con N k ,..., 1 :

{ }
[ ]
{ }
[ ]
{ }
[ ]

'

< +

>

0 si 1 , , 2
0 si 0
0 si 1 , ,
1 , ,


j k n N p
j k n p
j k n x
P
P
P
con

'
+
N k
N n
,..., 1 :
1 ,..., 1 :

Las componentes
{ }
[ ] 1 , 1 , j k n x
P
con N n ,..., 1 : , almacenan la informacin de la
funcin de probabilidad acumulada de X cuando el parmetro P tiene una probabilidad
uniforme de tomar valores en el intervalo [ ] [ ] ( ] 2 , 1 p p . Las componentes
{ }
[ ] 1 , 2 , j k n x
P
con N n ,..., 1 : , almacenan la informacin de la funcin de
probabilidad acumulada de X cuando el parmetro P tiene una probabilidad uniforme
de tomar valores en el intervalo [ ] [ ] ( ] 3 , 2 p p . Y as sucesivamente.
Ejemplo 2
La variable aleatoria real X depende nicamente de cuatro parmetros aleatorios de
entrada: dos reales,
1
P y
2
P , y dos Booleanos,
1
Q y
2
Q . La representacin interna de la
probabilidad de X condicionada a
1
P y
1
Q son los dos vectores de componentes
{ }
[ ] j k n x
Q P
, , ,
1 1
,
y
{ }
[ ] j k x
Q P
I
, ,
1 1
,
. Para cada valor de la pareja de ndices ( ) , k , cuyos
valores posibles son N k ,..., 1 : y false true, : , los vectores almacenan la informacin
de la funcin de probabilidad acumulada de X supuesto que
1
P tiene una probabilidad
uniforme de tomar valores en el intervalo [ ] [ ] ( ] 1 ,
1 1
+ k p k p y que
1
Q vale
1
Q .
Esta funcin de probabilidad de calcula teniendo en cuenta que
1
P tiene una probabilidad
uniforme de tomar valores en el intervalo [ ] [ ] ( ] 1 ,
1 1
+ k p k p , que
2
P esta distribuido de
la forma descrita por su vector representacin interna,
2
p , y que
2
Q tiene una
probabilidad de valer true igual a
2
T
Q
y la complementaria de valer false.
344 DESCRIPCIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


9.4 CONCLUSIONES
En este captulo se ha establecido una forma de especificar la probabilidad de los
parmetros aleatorios de entrada del modelo que es compatible con la sintaxis de
cualquier lenguaje de modelado orientado a objetos que soporte la notacin vectorial. La
funcin de distribucin de los parmetros aleatorios reales de entrada debe poseer unas
caractersticas que han quedado bien definidas. Esto permite la descripcin de las
incertidumbres del Tipo A. En el Apartado 10.2.5 se establece cmo debe especificarse
la probabilidad, en el instante inicial de la simulacin, de las variables de estado aleatorias
(simulacin de incertidumbres del Tipo C).
Se ha definido la representacin interna de la probabilidad total y condicionada de los
parmetros y variables aleatorias. La representacin interna est especialmente concebida
para la realizacin de las operaciones entre variables aleatorias. La dimensin de los
vectores representacin interna est condicionada al valor que se asigne al entero N .
Cuanto mayor sea N , mayor es la precisin en la determinacin de la probabilidad y
mayor es la carga computacional de la simulacin. Con independencia del valor que se
asigne a N , la forma en que se opera la representacin interna garantiza que el conjunto
verdadero de valores posibles (desconocido) de cada variable aleatoria est contenido en
el conjunto de valores posibles estimado. Este punto se discutir en el Apartado 10.2.2.
345

Captulo 10
SIMULACIN DE MODELOS
HBRIDOS CON PARMETROS
ALEATORIOS
10.1 INTRODUCCIN
En este captulo se sientan las bases para la programacin de una herramienta software
que, partiendo del modelo obtenido como salida del lenguaje de modelado y de la
descripcin del experimento, identifique las variables aleatorias del modelo y los
parmetros aleatorios de los que depende cada una de ellas, transforme las expresiones
en que intervienen variables aleatorias en secuencias ordenadas de operaciones
elementales entre variables aleatorias e identifique respecto de qu conjuntos de
parmetros aleatorios deben condicionarse las probabilidades de cada variable aleatoria.
La herramienta sustituye en el modelo las expresiones en que intervienen variables
aleatorias por secuencias de operaciones elementales de las que se evalan las
probabilidades de las variables aleatorias. Estas operaciones elementales se clasifican en
cinco tipos y se proponen algoritmos para su realizacin. Para simular el modelo es
preciso adems modificar el DAE solver, a fin de que realice tambin llamadas a estos
algoritmos al integrar las variables de estado aleatorias, al iterar los lazos algebraicos en
que intervienen variables aleatorias y al disparar eventos activados por variables
aleatorias.
As pues, el procedimiento empleado para evaluar cualquier funcin continua de
variables aleatorias reales consiste en escribirla como composicin de operaciones
aritmticas en las que intervienen variables aleatorias (inversin, suma y producto) y de
funciones elementales aplicadas sobre una variable aleatoria (trigonomtricas,
hiperblicas, exponencial, logaritmo, etc.). La forma de evaluar cualquier expresin
Booleana en que intervienen variables aleatorias consiste en descomponerla en
operaciones de desigualdad sobre variables aleatorias (del tipo 0 < X , donde X es una
variable aleatoria real) y en operaciones elementales lgicas en que intervienen variables
aleatorias (not, and y or). Las funciones con varias ramas se definen empleando la
estructura if <condicin> then <expresin1> else <expresin2>. La condicin puede ser
una variable Booleana aleatoria o determinista. Las dos expresiones pueden ser
346 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


indistintamente variables aleatorias o deterministas, pero deben ser o bien ambas reales o
bien ambas Booleanas.
La forma de operar entre s dos variable aleatorias depende de si son dependientes o
independientes estadsticamente entre s. La dependencia o independencia estadstica se
investiga examinando el conjunto de parmetros aleatorios de entrada de los que
depende cada una: slo si la interseccin es vaca existe independencia estadstica. El
orden en que se realizan las operaciones aritmticas entre variables aleatorias puede
hacer variar la carga computacional (en funcin de dependencia estadstica de los
operandos respecto a los parmetros aleatorios de entrada), con lo cual se establecen
criterios para definirlo cuando existe libertad para ello, es decir, cuando en el modelo
aparecen expresiones en las que varias operaciones aritmticas tienen el mismo orden de
precedencia. Se considera la simulacin como una sucesin ordenada de operaciones
aritmticas y de evaluaciones de funciones elementales en las que intervienen variables
deterministas y/o aleatorias.
Para realizar una operacin aritmtica o lgica entre dos variables aleatorias es preciso
conocer la funcin de probabilidad de cada una de ellas condicionada al conjunto de
parmetros aleatorios de entrada de los que dependen ambas. Estas funciones de
probabilidad condicionadas deben obtenerse, en general, de las expresiones de las que se
evalan a su vez estas variables, y as sucesivamente y, en ltimo trmino, de la funcin
de probabilidad de los parmetros aleatorios de entrada. Se propone un algoritmo para
definir, previamente a la realizacin de la simulacin, respecto a qu subconjunto de los
parmetros aleatorios de entrada debe condicionarse la probabilidad de cada una de las
variables aleatorias del modelo (aquellas que dependen de los parmetros aleatorios de
entrada). En general, puede ser preciso calcular las funciones de probabilidad de una
determinada variable aleatoria condicionadas a diferentes subconjuntos de los parmetros
aleatorios de entrada.
Se discute un procedimiento para realizar la reduccin en el condicionamiento de la
funcin de probabilidad de una variable aleatoria: siendo conocida (por ejemplo, como
resultado de una operacin aritmtica) la funcin de probabilidad de una variable
aleatoria condicionada a un cierto conjunto de los parmetros aleatorios de entrada,
consiste en calcular su funcin de probabilidad condicionada nicamente a un
determinado subconjunto de ste. Esta operacin debe realizarse siempre que sea
posible, ya que reduce el espacio de memoria ocupado por la representacin interna de la
variable y disminuye la carga computacional de las operaciones en las que interviene.
Tambin se proponen algoritmos para la realizacin de las operaciones aritmticas y
lgicas en las que intervienen variables aleatorias, para la evaluacin de las funciones
elementales aplicadas a variables aleatorias reales y para la evaluacin de la estructura if-
then-else.
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 347


10.2 LA SIMULACIN COMO SECUENCIA DE OPERACIONES
ELEMENTALES
10.2.1 Las operaciones elementales
Considrese el siguiente ejemplo, que ilustra la dificultad de evaluar directamente una
funcin real arbitraria de variable aleatoria real. Sea X una variable aleatoria real
continua y ( ) g una funcin real de variable real. La variable Y , definida de la forma
( ) Y g X es una variable aleatoria real con funcin de probabilidad acumulada
( ) { } ( ) { } y X g P y Y P y F
Y
si se cumplen las siguientes tres condiciones
[Papo91]:
1. El dominio de la funcin ( ) g X debe incluir el rango de la variable aleatoria X , I
X
.
2. Notemos R
y
el conjunto de valores de X tales que ( ) g X y para cada valor de
Y , es decir ( )
{ }
F y P X R
Y y
. ( ) g X debe ser una funcin de Baire, es decir, R
y

debe consistir en la unin e interseccin de un conjunto contable de intervalos. Slo
entonces { } y Y es un evento.
3. Los eventos ( ) { } t X g deben tener probabilidad cero.
Para calcular ( ) F y
Y
es preciso determinar el conjunto R
y
y la probabilidad de
{ }
y
R X . Por ejemplo, en la funcin de la Figura 10.1:
( ) ( ) ( )

'


a y si 0
b y si 1
para todo , y F x b a x g
Y

( ) ( ) ( )
1 1 1 1
para x F y F x x y x g
X Y

( ) ( ) ( ) ( ) ( )
' '
2
' ' '
2
'
2 2 2 2
'
2 2
y para x F x F x F y F x x x x x y x g
X X X Y
''' ''
+ <
La determinacin del conjunto R
y
es un problema de clculo de races cuya complejidad
depende de la forma de ( ) g X : dado un valor de Y , y
i
, deben calcularse todas las races
{ }
x x x
i i
n
i
i
1 2
, ,..., de ( ) y g x
i
para x I
X
. Resolver este problema de forma general para
cualquier ( ) g X , con un error inferior a uno especificado, no es ni sencillo ni
computacionalmente barato. El problema se complica si la variable es evaluada de una
funcin de ms de una variable aleatoria, ( ) g X X
m 1
,..., . Es preciso, por tanto, abordar el
problema de forma diferente.

348 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS




















Figura 10.1 Funcin real de variable aleatoria real.
El procedimiento seguido para estimar la probabilidad de una variable aleatoria (real o
Booleana), a partir de las probabilidades conocidas de otras, supuesto que la primera sea
una funcin arbitraria de estas ltimas, es expresar la funcin como composicin de
operaciones elementales y realizar stas secuencialmente, aplicando para ello algoritmos
que permiten calcular eficientemente la representacin interna de la variable aleatoria
solucin a partir de la representacin interna de los operandos.
Se han considerado cinco tipos de operaciones elementales: (1) operaciones aritmticas
en que intervienen variables aleatorias reales (inversin, suma y producto); (2) funciones
elementales aplicadas sobre una variable aleatoria real (integracin respecto al tiempo,
trigonomtricas, hiperblicas, exponencial, logaritmo, etc.); (3) operaciones lgicas
aplicadas sobre variables aleatorias Booleanas (not, and y or); (4) estructuras if-then-
else; (5) la desigualdad (<). La exponenciacin se calcula teniendo en cuenta que
( )
1 2 2
ln
1
x x x
e x .
Las Tablas 10.1, 10.2 y 10.3 contienen las operaciones elementales en que intervienen
variables aleatorias. La funcin ( ) representa las operaciones elementales en que
intervienen variables aleatorias reales y cuyo resultado es otra variable aleatoria real (ver
Tabla 10.1) y las operaciones lgicas en que intervienen variables aleatorias Booleanas y
cuyo resultado es una variable aleatoria Booleana (ver Tabla 10.2). Se emplea la funcin
( )

para representar operaciones o funciones elementales en las cuales estn


involucradas, en los operandos o en la solucin, tanto variables aleatorias reales como
Booleanas (ver Tabla 10.3). A y L representan variables aleatorias Booleanas y
representa una variable Booleana determinista. X representa una variable aleatoria real y
una variable determinista real.
a
b
X
Y
x
1 x
2
' '
x
2
' ' '
x
2
'
y
1
y
2
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 349


Inversin Suma y producto Estructuras if-then-else Funciones
elementales
( )
X
X
1

( ) + X X,
( ) * , X X
( )
2 1 2 1
, X X X X +
( )
2 1 2 1
* , X X X X
( )
( )
2 1 2 1
2 1 2 1
else then if , ,
else then if , ,
X X X X
X X


( ) X
Tabla 10.1 Operaciones elementales en las que intervienen variables aleatorias reales.
Negacin and y or Estructuras if-then-else
( ) A not A ( ) , and A A
( ) , or A A
( )
2 1 2 1
, A and A A A
( )
2 1 2 1
, A or A A A
( )
( )
( )
( )
( )
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
else then if , ,
else then if , ,
else then if , ,
else then if , ,
else then if , ,
A A A A
A A
A A L A A L
A L A L
L L


Tabla 10.2 Operaciones elementales en las que intervienen variables aleatorias Booleanas.
Desigualdad Estructuras if-then-else
( ) ( ) 0

< X X ( )
( )
( )
2 1 2 1
2 1 2 1
2 1 2 1
else then if , ,

else then if , ,

else then if , ,

X X L X X L
X L X L
L L




Tabla 10.3 Operaciones elementales en las que intervienen variables aleatorias Booleanas y reales.
10.2.2 La dependencia estadstica
La dependencia estadstica
La forma de operar entre s dos variables aleatorias depende de si son o no
estadsticamente independientes. Puesto que la independencia fsica es indicacin
suficiente de la independencia estadstica [Carl86], dos variables aleatorias son
independientes estadsticamente si es vaca la interseccin entre el conjunto de
parmetros aleatorios de entrada de los que depende una con el conjunto de parmetros
aleatorios de entrada de los que depende la otra. En caso contrario son dependientes
estadsticamente.
En la Figura 10.2 se describe un procedimiento para identificar las variables aleatorias del
modelo (aquellas que dependen al menos de un parmetro aleatorio de entrada) y para
calcular respecto de qu conjunto de parmetros aleatorios de entrada depende
estadsticamente cada variable aleatoria y cada parmetro aleatorio. Para ello se
350 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


considera que ya se ha realizado la particin del sistema, siendo conocida la matriz BLT
de incidencia ordenada [Elmq78]. Esta matriz posee elementos distintos de cero
formando bloques cuadrados en la diagonal y todos los elementos situados por encima de
la diagonal y no pertenecientes a los bloques diagonales, iguales a cero. Las columnas
corresponden a las variables y las filas a las ecuaciones. Los parmetros y las variables de
estado del modelo no estn incluidos en la matriz BLT de incidencia ordenada.
Para aplicar el algoritmo de la Figura 10.2, la matriz BLT de incidencia ordenada debe
ampliarse aadiendo en las primeras columnas y filas la informacin referente a todos los
parmetros aleatorios del modelo y a las variables de estado. Para ello, deben seguirse
los siguientes pasos:
1. Se identifican todos los parmetros aleatorios del modelo (los de entrada y los
calculados de ellos) y se realiza su particin. Queda definido el orden en que deben
ser evaluados los parmetros aleatorios que no son de entrada.
2. Se ampla la matriz BLT de incidencia ordenada, aadiendo en las primeras columnas
los parmetros aleatorios de entrada (en cualquier orden). Por cada columna aadida,
correspondiente a un parmetro aleatorio de entrada, se aade una fila, con el mismo
nmero de orden que la columna, con todos los elementos iguales a cero excepto el
elemento de la diagonal, que es distinto de cero. Por ltimo se seala, con elementos
distintos de cero, la dependencia entre las variables del modelo y los parmetros
aleatorios de entrada. Se completa el resto de elementos con ceros. La matriz
obtenida sigue siendo una matriz BLT con bloques diagonales de dimensin mnima.
3. Se ampla la matriz BLT de incidencia ordenada, aadiendo, a continuacin de los
parmetros aleatorios de entrada, el resto de parmetros aleatorios (no de entrada).
Se aaden en el orden en que deben ser evaluados (obtenido de la particin de los
parmetros aleatorios). Por cada columna aadida correspondiente a un parmetro
aleatorio no de entrada, se aade una fila, en el mismo nmero de orden que la
columna, con todos los elementos igual a cero excepto el diagonal y los
correspondientes a los parmetros aleatorios que deban ser usados para evaluarlo.
Por ltimo se seala, con elementos distintos de cero, la dependencia entre las
variables del modelo y los parmetros aleatorios no de entrada. Se completa el resto
de elementos con ceros. La matriz obtenida sigue siendo una matriz BLT con
bloques diagonales de dimensin mnima.
4. Los integradores rompen los lazos de causalidad, pero no los de dependencia
estadstica. Por ello, se ampla la matriz BLT de incidencia ordenada, aadiendo, a
continuacin de los parmetros aleatorios, todas las variables de estado del sistema
(en cualquier orden). Por cada columna aadida, se aade una fila, en el mismo
nmero de orden que la columna, con todos los elementos iguales a cero excepto el
diagonal y el correspondiente a la derivada de la variable de estado. La matriz
obtenida, en general, ya no es BLT con los bloques diagonales de dimensin mnima:
debe repetirse la particin.
5. Se realiza la particin. La matriz obtenida se denomina se denomina matriz BLT de
incidencia ordenada ampliada con los parmetros aleatorios y las variables de
estado.
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 351


Procedimiento para identificar las variables aleatorias y para determinar los
parmetros aleatorios de entrada de los que depende cada variable aleatoria y cada
parmetro aleatorio.
Se van recorriendo en orden, empezando por el de la primera columna y primera fila, los
elementos diagonales de la matriz BLT de incidencia ordenada ampliada con los
parmetros aleatorios y las variables de estado. Cuando el elemento ( ) i i, de la diagonal
de la matriz, correspondiente a la variable o parmetro aleatorio de la columna i :
Forma parte de un bloque diagonal de dimensin uno, el conjunto de parmetros
aleatorios de entrada de los que depende estadsticamente la variable de la columna i
es igual a la unin de los parmetros aleatorios de entrada que aparecen
explcitamente en la ecuacin correspondiente a la fila i y de los conjuntos de
parmetros aleatorios de entrada de los que dependen todas aquellas variables
aleatorias, exceptuando la de la columna i (ella misma), cuya componente en la fila i
sea distinto de cero, es decir, todas aquellas que intervienen en su clculo de la
variable de la columna i .
Forma parte de un bloque diagonal de dimensin mayor que uno, que se extiende de
la fila
1
i a la fila
2
i y de la columna
1
i a la columna
2
i , el conjunto de parmetros de
entrada de los que depende estadsticamente la variable aleatoria de la columna i es
igual a la unin de los parmetros aleatorios de entrada que aparecen explcitamente
en las ecuaciones de las filas
1
i a
2
i y de los parmetros aleatorios de entrada de los
que dependen las variables, no pertenecientes al bloque diagonal, que tengan alguna
componente en las filas
1
i a
2
i distinta de cero, es decir, aquellas variables que
aparecen en las ecuaciones del lazo algebraico y que no son calculadas de l. Todas
las variables aleatorias que forman parte de un lazo algebraico dependen del mismo
conjunto de parmetros aleatorios de entrada.
Figura 10.2 Procedimiento para el clculo de los parmetros aleatorios de entrada de los que depende
cada variable aleatoria.
Condicionamiento de la probabilidad para la realizacin de las operaciones
elementales
A continuacin se consideran algunos ejemplos de secuencias de operaciones elementales
entre variables y parmetros aleatorios que permiten ilustrar el hecho de que la forma de
operar entre s dos variables aleatorias depende de si son o no estadsticamente
independientes entre s.
Problema 1. Calcular la representacin interna de la probabilidad de X
2
:

( )
( )

'

P X X
P X
,
1 2 2
1 1

. Se satisface:
{ }
{ }
{ }

'

P P
P P
P P
X
X
2
1

352 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


La secuencia de clculo es:
( ) ( )
( ) ( ) ( ) ( )
2 2 1
1
,

2
1
X F P X F P X F P P F
P X F P P F



Problema 2. Calcular la representacin interna de X
2
y de X
3
:

( )
( )
( )

'

2 1 3 3
1 1 2 2
2 1 1 1
,
,
,
P X X
P X X
P P X

. Se satisface:
{ }
{ }
{ }
{ }

'

2 1
2 1
2 1
2 1
,
,
,
,
3
2
1
P P P
P P P
P P P
P P P
X
X
X

La secuencia de clculo es:
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
3 2 3
2
1
2
2
2 1 2
1
1
1
1
2
1
2
2 1
1
1 2
1
1
,
,
,
,
3
2
1
1
X F P X F P X F P P F
X F P X F P X F P P F
P X F P P F P F
P X F P F P P F




Problema 3. Calcular la representacin interna de X
2
y de X
3
:

( )
( )
( )

'

2 2 3 3
1 1 2 2
2 1 1 1
,
,
,
P X X
P X X
P P X

. Se satisface:
{ }
{ }
{ }
{ }

'

2 1
2 1
2 1
2 1
,
,
,
,
3
2
1
P P P
P P P
P P P
P P P
X
X
X

La secuencia de clculo es:
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
3 2 3 2 2 2 2
2 2 2 1 2 2 1 1 1 1
2 1 2 1 1 1 1
2 1 1 2 2 1 1
1
1 2 1 1
,
,
,
,
,
3
2
2
1
1
X F P X F P X F P P F
P X F P P X F P P X F P P F
X F P X F P X F P P F
P P X F P P F P P F
P X F P F P P F





LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 353


Problema 4. Calcular la representacin interna de X
2
y de X
3
:

( )
( )
( )
X P P
X X P
X X X
1 1 1 2
2 2 1 1
3 3 1 2

'

,
,
,
. Se satisface:
{ }
{ }
{ }
{ }

'

2 1
2 1
2 1
2 1
,
,
,
,
3
2
1
P P P
P P P
P P P
P P P
X
X
X

La secuencia de clculo es:
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
3 1 3 2 1 3 2 1 2 2 1 1
2 1 2 2 1 1 1 1
2 1 2 1 1 1 1
2 1 1 2 2 1 1
1 1 2 1 1
,
,
,
,
,
3
2
2
1
1
X F P X F P P X F P P X F P P X F
P P X F P P X F P P F
X F P X F P X F P P F
P P X F P P F P P F
P X F P F P P F






Como se muestra en los cuatro ejemplos anteriores, para operar entre s dos variables
aleatorias estadsticamente dependientes, su representacin interna debe condicionarse, al
menos, a la interseccin de los conjuntos de parmetros aleatorios de entrada de los que
dependen. Como resultado de realizar una operacin elemental, se obtiene la
representacin interna de la solucin condicionada a la unin de los conjuntos de
parmetros respecto de los cuales se ha condicionado la representacin interna de los
operandos. Cuando se desee conocer la representacin interna de la solucin
condicionada a un subconjunto del conjunto de parmetros respecto del cual se ha
obtenido condicionada, debe realizarse la operacin de reduccin del condicionamiento.
En las Tablas 10.4, 10.5 y 10.6 se muestra respecto de qu subconjunto de parmetros
aleatorios de entrada debe condicionarse la probabilidad de los operandos a fin de
estimar, para cada tipo de operacin elemental, la representacin interna de la
probabilidad de la variable aleatoria solucin condicionada respecto de un subconjunto
dado de parmetros aleatorios de entrada (de los cuales depende).
354 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Para calcular: De la expresin: Debe conocerse: Se cumple:
( )
Y Y
Q P Y F

,
X Y
P P

,
X Y
Q Q


( ) X Y
( )

Y Y
Q P X F X Y
P P .
X Y
Q Q
( )
Y Y
Q P Y F

,
X Y
P P

,
X Y
Q Q


( ) , X Y
o bien de:
( ) , , X Y
( )

Y Y
Q P X F X Y
P P
X Y
Q Q
( )
Y Y
Q P Y F

,
2 1

X X Y
P P P
2 1

X X Y
Q Q Q
( )
2 1
, , X X Y

( )
( )

,
_


Y X
Y X
Q Q
P P
X F

1
1
1

( )
( )

,
_


Y X
Y X
Q Q
P P
X F

2
2
2

2 1
X X Y
P P P
2 1
X X Y
Q Q Q
( )
Y Y
Q P Y F

,
2 1

X X Y
P P P
2 1

X X Y
Q Q Q
( )
2 1
, X X Y
( ) ( )
( ) ( )

,
_



2 1
2 1

1
X Y X
X Y X
Q Q Q
P P P
X F
( ) ( )
( ) ( )

,
_



1 2
1 2

2
X Y X
X Y X
Q Q Q
P P P
X F
2 1
X X Y
P P P
2 1
X X Y
Q Q Q
Tabla 10.4 Operaciones elementales en que intervienen variables aleatorias reales.
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 355


Para calcular: De la expresin: Debe conocerse: Se cumple:
( )
B B
Q P B F

,
A B
P P

,
A B
Q Q


( ) A B
o bien de:
( ) , A B
o bien de:
( )
2 1
, , A B
o bien de:
( )
2
, , A B
( )

B B
Q P A F A B
P P .
A B
Q Q
( )
B B
Q P B F

,
2 1

A A B
P P P
2 1

A A B
Q Q Q
( )
2 1
, , A A B
( )
( )

,
_


B A
B A
Q Q
P P
A F

1
1
1

( )
( )

,
_


B A
B A
Q Q
P P
A F

2
2
2

2 1
A A B
P P P
2 1
A A B
Q Q Q
( )
B B
Q P B F

,
2 1

A A B
P P P
2 1

A A B
Q Q Q
( )
2 1
, A A B
o bien de:
( )
2 2 1
, , A A B

( ) ( )
( ) ( )

,
_



2 1
2 1

1
A B A
A B A
Q Q Q
P P P
A F
( ) ( )
( ) ( )

,
_



1 2
1 2

2
A B A
A B A
Q Q Q
P P P
A F
2 1
A A B
P P P
2 1
A A B
Q Q Q
( )
B B
Q P B F

,
3 2 1

A A A B
P P P P
3 2 1

A A A B
Q Q Q Q
( )
3 2 1
, , A A A B
( ) ( )
( ) ( )

,
_



3 2 1
3 2 1

1
A A B A
A A B A
Q Q Q Q
P P P P
A F
( ) ( )
( ) ( )

,
_



3 1 2
3 1 2

2
A A B A
A A B A
Q Q Q Q
P P P P
A F
( ) ( )
( ) ( )

,
_



2 1 3
2 1 3

3
A A B A
A A B A
Q Q Q Q
P P P P
A F

3 2 1
A A A B
P P P P
3 2 1
A A A
B
Q Q Q
Q


Tabla 10.5 Operaciones elementales en que intervienen variables aleatorias Booleanas.


356 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Para calcular: De la expresin: Debe conocerse: Se cumple:
( )
A A
Q P A F

,
X A
P P

,
X A
Q Q


( ) X A

( )

A A
Q P X F X A
P P .
X A
Q Q
( )
X X
Q P X F

,
A X
P P

,
A X
Q Q


( )
2 1
, ,

A X ( )

X X
Q P A F A X
P P .
A X
Q Q
( )
X X
Q P X F

,
1

X L X
P P P
1

X L X
Q Q Q
( )
2 1
, ,

X L X
( ) ( )
( ) ( )

,
_



1
1

X X L
X X L
Q Q Q
P P P
L F
( ) ( )
( ) ( )

,
_



L X X
L X X
Q Q Q
P P P
X F

1
1
1

1
X L X
P P P
1
X L X
Q Q Q
( )
X X
Q P X F

,
2 1

X X L X
P P P P
2 1

X X L X
Q Q Q Q
( )
2 1
, ,

X X L X
( ) ( )
( ) ( )

,
_



2 1
2 1

X X X L
X X X L
Q Q Q Q
P P P P
L F
( ) ( )
( ) ( )

,
_



2 1
2 1

1
X L X X
X L X X
Q Q Q Q
P P P P
X F
( ) ( )
( ) ( )

,
_



1 2
1 2

2
X L X X
X L X X
Q Q Q Q
P P P P
X F
2 1
X X L
X
P P P
P

2 1
X X L
X
Q Q Q
Q


Tabla 10.6 Operaciones elementales en que intervienen variables aleatorias reales y Booleanas.
La forma en que son operadas dos variables aleatorias estadsticamente dependientes se
basa en la siguiente aproximacin. Supngase que dos variables aleatorias, ambas reales
o ambas Booleanas, dependen estadsticamente entre s y que la interseccin entre el
conjunto de parmetros aleatorios de entrada de los que depende una de ellas con el
conjunto de parmetros aleatorios de entrada de los que depende la otra se representa
como
* * * *
Q P , con
( )
{ }
* *
dim 1 * *
,...,
P
P P P y
( )
{ }
* *
dim 1 * *
,...,
Q
Q Q Q . Para operar entre
s las dos variables aleatorias, deben operarse las representaciones internas de sus
probabilidades condicionadas, al menos, al conjunto de parmetros aleatorios de entrada
* * * *
Q P . La representacin interna de cada una de las variables condicionada a
* * * *
Q P contiene informacin de la probabilidad de la variable supuesto que se
satisfagan simultneamente los ( ) ( )
* * * *
dim dim Q P + eventos:
[ ] [ ] { } 1
1 1 1 1 1
+ < k p P k p , ...,
( ) ( )
[ ]
( ) ( ) ( )
[ ] { } 1
* * * * * * * * * *
dim dim dim dim dim
+ <
P P P P P
k p P k p
{ }
1 1
Q , ...,
( ) ( )
{ }
* * * *
dim dim Q Q
Q
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 357


Para cada una de estas
( ) ( )
* * * *
dim dim
2
Q P
N posibles combinaciones de eventos, se operan las
probabilidades condicionadas de las dos variables aleatorias, suponiendo para ello que
son independientes estadsticamente entre s (cuando de hecho no lo son), obtenindose
la probabilidad de la solucin para cada una de las
( ) ( )
* * * *
dim dim
2
Q P
N combinaciones de
eventos, es decir, condicionada a
* * * *
Q P . El error cometido con esta aproximacin es
tanto menor cuanto mayor es N . Una ventaja que tiene realizar esta aproximacin es
que garantiza, para las variables aleatorias reales, que el conjunto de valores posibles de
la solucin verdadera est contenido en el conjunto de valores posibles de la solucin
obtenida para cada una de las
( ) ( )
* * * *
dim dim
2
Q P
N combinaciones de eventos.
10.2.3 Orden de las operaciones elementales
El orden en que deben realizarse las operaciones elementales que componen el modelo
queda casi establecido una vez que, empleando el lenguaje de modelado, se ha reducido
el ndice del problema a cero o a uno, se ha realizado la particin del sistema, se ha
determinado el mtodo numrico de integracin a emplear y se han escrito
explcitamente las ecuaciones para el clculo del estado, se ha determinado el mtodo
numrico a emplear para la resolucin de los lazos algebraicos, se han escogido las
variables de tearing y las ecuaciones residuo y se han escrito explcitamente las
ecuaciones de iteracin. El orden queda completamente establecido cuando adems se
escoge el orden de las operaciones elementales que se encuentran al mismo nivel
jerrquico.
As, por ejemplo, supngase que la particin de las ecuaciones del modelo determina que
de la expresin [ ]
1
2
1 2
2
1
X
X
X X X Z + + debe evaluarse Z a partir de las variables
aleatorias
1
X e
2
X y de la variable determinista . Al haber en el primer sumando tres
variables al mismo nivel jerrquico hay una indeterminacin en el orden en que deben
realizarse las operaciones elementales. Las dos operaciones elementales que conlleva el
clculo de
2
2
1
X X pueden realizarse en el orden ( )
2 1 1
X X X o en el orden ( )
2 1 1
X X X . Lo
mismo sucede con los tres sumandos
2
2
1
X X ,
1
X y
1
2
X
X
: el orden en que se realizan las
sumas puede ser ( )
1
2
1 2
2
1
X
X
X X X + + ,

,
_

+ +
1
2
1 2
2
1
X
X
X X X o
1
1
2
2
2
1
X
X
X
X X +

,
_

+ .
Cuando se operan entre s variables deterministas es indiferente, a efectos de la carga
computacional asociada, el orden en que se realicen las operaciones que se encuentran al
mismo nivel jerrquico. Sin embargo, ste no es el caso de las variables aleatorias: la
eleccin de la secuencia de clculo a emplear debe hacerse atendiendo a la carga
computacional de cada una de ellas. La Figura 10.3 contiene una regla mnemotcnica
cuyo objetivo es calcular el menor nmero de probabilidades condicionadas y stas
condicionadas al menos nmero posible de parmetros aleatorios de entrada.

358 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Regla para determinar la secuencia en que deben operarse las variables
aleatorias y deterministas que aparecen en una expresin al mismo nivel
jerrquico.
1. Operar entre s todas las variables deterministas. Puede hacerse en cualquier
orden, ya que la carga computacional no depende del orden en que se operen.
2. Operar entre s todas las variables aleatorias. La carga computacional puede
depender del orden en que se operen.
Operar primero entre s las variables estadsticamente dependientes y por
ltimo operar entre s las independientes.
Entre variables estadsticamente dependientes, operar primero entre s
aquellas en que la interseccin entre el conjunto de parmetros aleatorios de
entrada de que depende una y de que depende la otra tenga un mayor nmero
de elementos.
3. Operar el resultado de operar las variables deterministas con el resultado de
operar las variables aleatorias.
Figura 10.3 Regla nemotcnica sobre el orden de las operaciones elementales con la misma precedencia.
Para ilustrar el hecho de que la carga computacional depende de la secuencia de clculo,
supngase que se desea calcular la representacin interna de la probabilidad de la
variable aleatoria real Y condicionada al parmetro aleatorio real de entrada P
5
,
( ) F Y P
5
, de la expresin Y X X X X
1 2 3 4
, donde { }
4 2 1
, ,
1
P P P P
X
, { }
2 1
,
2
P P P
X
,
{ }
5 3
,
3
P P P
X
y { }
3
4
P P
X
. Como se ve:
X
1
y X
2
son estadsticamente dependientes:
{ }
P P P P
X X
1 2
1 2
, .
X
3
y X
4
son estadsticamente dependientes:
{ }
P P P
X X
3 4
3
.
X
1
y X
2
son estadsticamente independientes de X
3
y X
4
:

'





4 2
3 2
4 1
3 1
X X
X X
X X
X X
P P
P P
P P
P P
.
Si se operan primero entre s las variables independientes de la expresin, debe calcularse
la probabilidad condicionada de modo que pueda posteriormente operarse con las
restantes variables, de las que con seguridad va a depender estadsticamente:
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 359


( ) ( ) ( )
( ) ( ) ( )
( ) ( )
( ) ( )
5 3 5 3 2 1 3
3 2 1 2 5 3 2 1 1 2 1 3 3
3 2 1 2 3 4 2 1 2 4 2 2 2
5 3 2 1 1 5 3 3 2 1 1 3 1 1 1
...
, :
, :
, :
3
2
1
P Y F P P P P Y F
P P P Y F P P P P Y F Y Y Y
P P P Y F P X F P P X F X X Y
P P P P Y F P P X F P P X F X X Y





En cambio, si se operan primero entre s las variables dependientes, los resultados de las
operaciones elementales tienen menos parmetros en comn con las variables que quedan
por operar, con lo cual la probabilidad de estos resultados debe calcularse condicionada a
un nmero inferior de parmetros:
( ) ( ) ( )
( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( )
5 3 5 2 1 2 1 3 3
5 2 5 3 2 3 4 5 3 3 4 3 2 2
1 1 1
2 1 1 2 1 2 2 1 1 2 1 1 1
, :
, :

, :
3
2
1
P Y F P Y F Y F Y Y Y
P Y F P P Y F P X F P P X F X X Y
Y F P Y F
P P Y F P P X F P P X F X X Y




Siguiendo esta regla mnemotcnica, la Figura 10.4 contiene el algoritmo para determinar
la secuencia en que deben operarse las variables aleatorias que aparecen en una expresin
con el mismo nivel jerrquico. A continuacin se muestra un ejemplo de aplicacin. Una
vez establecido el orden en que deben realizarse todas las operaciones elementales, la
simulacin del modelo consiste en la realizacin de una secuencia ordenada de
operaciones elementales.
Algoritmo para determinar el orden de las operaciones elementales con el mismo
nivel jerrquico
0. Sea { }
M
X X Op ,...,
1
el conjunto de las M variables aleatorias a operar.
Inicialmente, ( ) M Op dim .
1. Determinar, para cada una de las
( )
( )
( ) ( )! 2 dim ! 2
! dim
2
dim

,
_

Op
Op
Op
combinaciones
de dos en dos de los elementos del conjunto Op, el nmero de elementos que
tiene la interseccin entre sus conjuntos de parmetros. Escoger la combinacin
cuya interseccin tenga el nmero de parmetros mayor o, si la eleccin no es
nica, una cualquiera de stas.
2. Introducir una nueva variable aleatoria,
( ) Op M
Y
dim 1 +
, que es resultado de operar
las dos variables seleccionadas anteriormente. Eliminar estas dos variables del
conjunto Op , incluir en l la variable resultado de operarlas,
( ) Op M
Y
dim 1 +
.
3. Si ( ) 2 dim > Op ir a 1. Si ( ) 2 dim Op , introducir una nueva variable,
1 M
Y ,
resultado de operar las 2 variables del conjunto Op. Terminar. La secuencia en
que deben realizarse las operaciones elementales es
1 2 1
, ... , ,
M
Y Y Y .
Figura 10.4 Orden de las operaciones elementales con el mismo nivel jerrquico.
360 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Ejemplo de aplicacin del algoritmo
Como ejemplo se aplica el algoritmo de la Figura 10.4 a la determinacin del orden en
que deben realizarse la operaciones elementales que conlleva la evaluacin de la funcin
de probabilidad de la variable aleatoria Y condicionada al parmetro P
5
, ( ) F Y P
5
, a
partir de la expresin:
Y X X X X
1 2 3 4
donde:
{ }
{ }
{ }
{ }
P P P P
P P P
P P P
P P
X
X
X
X
1
2
3
4
1 2 4
1 2
3 5
3

, ,
,
,

0. Se define el conjunto de los operandos, { } Op X X X X
1 2 3 4
, , , , de 4 M
elementos.
1a. Hay
( )
4
2
4
2 4 2
6

_
,


!
! !
combinaciones de dos en dos de los elementos del
conjunto Op:
{ } { } { } { } ( )
{ } { } ( )
{ } { } ( )
{ } { } ( )
{ } { } ( )
{ } { } { } { } ( ) 1 , ,
0 , ,
0 , , ,
0 , , ,
0 , , , ,
2 , , , , , ,
3 3 3 5 3 4 3
3 2 1 4 2
5 3 2 1 3 2
3 4 2 1 4 1
5 3 4 2 1 3 1
2 1 2 1 2 1 4 2 1 2 1
4 3
4 2
3 2
4 1
3 1
2 1






P ord P P P P P P X X
ord P P P P P X X
ord P P P P P P X X
ord P P P P P P X X
ord P P P P P P P X X
P P ord P P P P P P P P P X X
X X
X X
X X
X X
X X
X X

La combinacin de variables aleatorias cuya interseccin entre sus conjuntos de
parmetros tiene un mayor nmero de elementos es X X
1 2
, .
2a. Se define la variable aleatoria
2 1 1
X X Y .
Se eliminan las variables
1
X y
2
X del conjunto Op y se incluye en l
2 1 1
X X Y : { }
1 4 3
, , Y X X Op .
{ } { } { }
4 2 1 2 1 4 2 1
, , , , ,
2 1 1
P P P P P P P P P P P
X X Y

3a. Dado que ( ) ord Op > 3 2 , ir a 1.
1b. Hay
( )
3
2
3
2 3 2
3

_
,


!
! !
combinaciones de dos en dos de los elementos del
conjunto Op:
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 361


{ } { } ( )
{ } { } ( )
{ } { } { } { } ( ) 1 , ,
0 , , ,
0 , , , ,
3 3 3 5 3 4 3
3 4 2 1 4 1
5 3 4 2 1 3 1
4 3
4 1
3 1



P ord P P P P P P X X
ord P P P P P P X Y
ord P P P P P P P X Y
X X
X Y
X Y

La combinacin de variables aleatorias cuya interseccin entre sus conjuntos de
parmetros tiene un mayor nmero de elementos es X X
3 4
, .
2b. Se define la variable aleatoria
4 3 2
X X Y .
Se eliminan las variables
3
X y
4
X del conjunto Op y se incluye en l
4 3 2
X X Y : { }
2 1
,Y Y Op .
{ } { } { }
5 3 3 5 3 4 3 2
, ,
4 3 2
P P P P P P P P X X Y
X X Y

3b. Dado que ( ) ord Op 2 se define la variable
2 1 3
Y Y Y .
Por tanto, la secuencia en que deben realizarse las operaciones elementales es:
2 1 1
X X Y , a continuacin
4 3 2
X X Y y finalmente
2 1 3
Y Y Y .
10.2.4 Condicionamiento de la probabilidad de las variables auxiliares
La simulacin del modelo consiste en la realizacin de una determinada secuencia
ordenada de operaciones elementales. El objeto de la simulacin es estimar, en los
instantes de comunicacin, el valor de las variables deterministas y la representacin
interna de la probabilidad (total y/o condicionada a algn/os conjunto/s de parmetros
aleatorios de entrada) de las variables aleatorias de salida. Conocida la secuencia de
operaciones elementales y respecto de qu conjuntos de parmetros aleatorios de entrada
desea obtenerse condicionada la funcin de probabilidad de cada variable aleatoria de
salida, puede determinarse respecto de qu conjuntos de parmetros aleatorios de
entrada debe condicionarse la probabilidad de cada variable aleatoria auxiliar. Para ello
se emplea el algoritmo, de estructura recursiva, mostrado en la Figura 10.5.
Como resultado de la aplicacin del algoritmo de la Figura 10.5 se obtiene el conjunto
S , que contiene todas las probabilidades, totales y condicionadas, que deben ser
evaluadas. Cuando es preciso calcular la probabilidad de una misma variable
condicionada a diferentes subconjuntos de parmetros aleatorios de entrada, el nmero
de elementos de S es mayor que el nmero de operaciones elementales del modelo.
Dado que todas las probabilidades de una variable aleatoria son evaluadas de la misma
operacin fundamental, se puede asociar, a cada operacin fundamental el conjunto de
probabilidades que debe ser calculado, as como el conjunto de probabilidades de los
operandos que se requiere para ello. A continuacin se muestran dos ejemplos de
aplicacin del algoritmo de la Figura 10.5.

362 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Algoritmo para determinar respecto de qu parmetros aleatorios de entrada
debe condicionarse la probabilidad de las variables auxiliares
El conjunto S se encuentra inicialmente vaco.
Aadir al conjunto S todas las probabilidades, condicionadas o no, de las variables de
salida, cuyo clculo se pretende con la realizacin de la simulacin. Por cada
probabilidad, condicionada o no, de una variable aleatoria real o Booleana que se aade
al conjunto S , se realizan las siguientes dos acciones:
1. Obtener, de la operacin elemental de la que se evala la variable aleatoria (del
tipo ( ) ( )

), respecto de qu conjunto de parmetros aleatorios de entrada


debe condicionarse la probabilidad de cada uno de los operandos aleatorios. Para
ello puede usarse la informacin de las Tablas 10.4, 10.5 y 10.6.
2. Si alguna de estas probabilidades de los operandos no pertenece ya al conjunto S
y no es la probabilidad de un parmetro aleatorio de entrada, aadirla al conjunto
S .
Figura 10.5 Algoritmo para determinar respecto de qu parmetros aleatorios de entrada debe
condicionarse la probabilidad de las variables auxiliares.
Ejemplo 1
Como ejemplo se aplica el algoritmo de la Figura 10.5 al problema consistente en
calcular la funcin de probabilidad de las variables aleatorias X
2
y X
3
tales que:

( )
( )
( )
X P P
X X P
X X X
1 1 1 2
2 2 1 1
3 3 1 2

'

,
,
,

0. S
1. Aadir ( ) F X
2
al conjunto S :
( ) { }
2
X F S
( ) ( ) ( ) ( )
2 1 2 1 1 1 1
,
2
X F P X F P X F P P F


1.1. Aadir ( ) F X P
1 1
al conjunto S :
( ) ( ) { }
1 1 2
, P X F X F S .
( ) ( ) ( )
1 1 2 1 1
,
1
P X F P F P P F


2. Aadir ( ) F X
3
al conjunto S :
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 363


( ) ( ) ( ) { }
3 1 1 2
, , X F P X F X F S
( ) ( ) ( )
( ) ( )
3 1 3
2 1 3 2 1 2 2 1 1

,
3
X F P X F
P P X F P P X F P P X F



2.1. Aadir ( )
2 1 1
P P X F al conjunto S :
( ) ( ) ( ) ( ) { }
2 1 1 3 1 1 2
, , , P P X F X F P X F X F S
( ) ( ) ( )
2 1 1 2 2 1 1
,
1
P P X F P P F P P F


2.2. Aadir ( )
2 1 2
P P X F al conjunto S :
( ) ( ) ( ) ( ) ( ) { }
2 1 2 2 1 1 3 1 1 2
, , , , P P X F P P X F X F P X F X F S
( ) ( ) ( )
2 1 2 2 1 1 1 1
,
2
P P X F P P X F P P F


Ejemplo 2
A continuacin se aplica el algoritmo de la Figura 10.5 a un sistema de tres operaciones
fundamentales con tres variables aleatorias,
1
X ,
2
X y
3
X supuesto que el lazo se itera
de la forma siguiente:
( )
( )
( )
2 1 3 3
2 1 2 2
1 3 1 1
,
,
,
X X X
P X X
P X X


De las ecuaciones del lazo se deduce que las tres variables aleatorias dependen de los dos
parmetros aleatorios de entrada: { }
2 1
,
3 2 1
P P P P P
X X X
. Se desea calcular ( )
3
X F y
( )
1 3
P X F .
0. S
1. Aadir ( )
3
X F al conjunto S :
( ) { }
3
X F S
( ) ( ) ( )
( ) ( )
3 1 3
2 1 3 2 1 2 2 1 1

,
3
X F P X F
P P X F P P X F P P X F



1.1. Aadir ( )
2 1 2
P P X F al conjunto S :
( ) ( ) { }
2 1 2 3
, P P X F X F S
( ) ( ) ( )
2 1 2 2 2 2 1 1
,
2
P P X F P P F P P X F


364 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


1.2. Aadir ( )
2 1 1
P P X F al conjunto S :
( ) ( ) ( ) { }
2 1 1 2 1 2 3
, , P P X F P P X F X F S
( ) ( ) ( )
2 1 1 1 1 2 1 3
,
1
P P X F P P F P P X F


1.3. Aadir ( )
2 1 3
P P X F al conjunto S :
( ) ( ) ( ) ( ) { }
2 1 3 2 1 1 2 1 2 3
, , , P P X F P P X F P P X F X F S
( ) ( ) ( )
2 1 3 2 1 2 2 1 1
,
3
P P X F P P X F P P X F


2. Aadir ( )
1 3
P X F al conjunto S :
( ) ( ) ( ) ( ) ( ) { }
1 3 2 1 3 2 1 1 2 1 2 3
, , , , P X F P P X F P P X F P P X F X F S
( ) ( ) ( ) ( )
1 3 2 1 3 2 1 2 2 1 1
,
3
P X F P P X F P P X F P P X F


10.2.5 La transformacin del modelo
El modelo se transforma una vez que el lenguaje de modelado ha obtenido el sistema de
ecuaciones completo del modelo, ha reducido el ndice (si procede) a cero o a uno, ha
realizado la particin, ha ordenado y manipulado simblicamente las ecuaciones y ha
hecho el tearing de los lazos. El fichero de descripcin del modelo contiene funciones
para la definicin de los parmetros aleatorios de entrada (Bernoulli, cdf, Unif, triang,
Normal, expo, etc.), que si bien son desconocidas para el lenguaje de modelado, no
interfieren en las manipulaciones que ste realiza del modelo.
En unos pasos determinados del proceso de transformacin del modelo (que se indican a
continuacin, al describir el proceso), el usuario debe aportar la siguiente informacin:
1. Especificar cules son las variables aleatorias de salida y respecto de qu conjuntos
(incluido el vaco, si procede) de parmetros aleatorios de entrada desea obtener
condicionada la probabilidad de cada una de ellas.
2. Asignar valor al entero N , que determina la dimensin de los vectores
representacin interna y repercute en la carga computacional de la simulacin.
La herramienta software realiza, de forma automtica, el siguiente proceso de
transformacin del modelo:
1. Obtencin, a partir de los ficheros de descripcin del modelo y del experimento, de la
lista completa de parmetros y variables del modelo.
2. Identificacin del conjunto de parmetros aleatorios de entrada. Son todos aquellos
que estn definidos asignndolos a las funciones reservadas Bernoulli, cdf, Unif,
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 365


triang, Normal, expo, etc. y que no han sido redefinidos como deterministas en el
modelo o en el experimento.
3. Identificacin del resto de los parmetros aleatorios. Son todos aquellos parmetros
del modelo que dependen, directa o indirectamente, de los parmetros aleatorios de
entrada. Con ello quedan clasificados todos los parmetros del modelo en aleatorios
y deterministas.
4. Construccin, a partir del fichero de descripcin del modelo generado por el lenguaje
de modelado, de la matriz BLT de incidencia ordenada ampliada con los parmetros
aleatorios y las variables de estado.
5. Identificacin de las variables aleatorias del modelo. Identificacin de los parmetros
aleatorios de entrada de los que depende cada variable aleatoria y cada parmetro
aleatorio. Para ello se aplica el algoritmo de la Figura 10.2 a la matriz BLT de
incidencia ordenada ampliada con los parmetros aleatorios y las variables de estado.
6. La herramienta muestra al usuario el conjunto de parmetros aleatorios y de variables
aleatorias del modelo, as como el conjunto de parmetros aleatorios de entrada de
que depende cada una. El usuario debe escoger las variables aleatorias de salida y el
conjunto o conjuntos de parmetros aleatorios de entrada respecto de los cuales se
desea conocer condicionada su probabilidad. De esta forma se determinan las
probabilidades de las variables de salida que deben ser evaluadas.
7. Transformacin de las expresiones en que intervienen variables aleatorias en una
sucesin de operaciones elementales, aplicadas, segn el tipo de operacin, sobre una
o dos variables aleatorias, para lo cual se introducen variables aleatorias auxiliares y
variables deterministas auxiliares. El orden en que se realizan las operaciones
elementales del mismo nivel jerrquico se determina aplicando los algoritmos de las
Figuras 10.3 y 10.4. En este punto el modelo es una secuencia ordenada de
expresiones de las que se evalan variables deterministas y de operaciones
elementales de las que de evalan variables aleatorias.
8. Se asocia, a cada una de las variables aleatorias auxiliares introducida, el conjunto de
parmetros aleatorios de entrada de los que depende. Para ello se emplea la siguiente
propiedad: el conjunto de parmetros aleatorios de entrada de que depende la
variable aleatoria solucin de una operacin elemental es igual a la unin de los
conjuntos de parmetros aleatorios de entrada de que dependen las variables
aleatorias operando. De esta forma, cada variable aleatoria y cada parmetro
aleatorio tiene asociado el conjunto de parmetros aleatorios de entrada de los que
depende.
9. Se aade, a continuacin de la ltima operacin elemental del modelo, una operacin
elemental de integracin respecto del tiempo (funcin elemental) por cada variable de
estado aleatoria, que relacione la probabilidad de la derivada de la variable de estado
con la probabilidad de la variable de estado.
10. En este punto se conoce el conjunto de probabilidades de las variables aleatorias de
salida que deben ser evaluadas, el conjunto ordenado de expresiones deterministas y
operaciones elementales que constituye el modelo y el conjunto de parmetros
366 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


aleatorios de entrada de que depende cada variable aleatoria y cada parmetro
aleatorio. Se aplica el algoritmo de la Figura 10.5, obtenindose el conjunto S , que
contiene todas las probabilidades que deben ser calculadas.
11. Se asocia, a cada operacin elemental, las probabilidades que deben ser evaluadas de
ella (condicionadas a diferentes conjuntos de parmetros aleatorios de entrada) y a
partir de qu probabilidades de sus operandos. Si el conjunto S contiene la
probabilidad de algn parmetro aleatorio de entrada condicionada a si mismo, se
aade, por cada una de estas probabilidades, delante de la primera operacin
elemental del modelo, la operacin elemental de calculo de la probabilidad del
parmetro condicionado a s mismo a partir de la probabilidad total del parmetro
12. La probabilidad de la solucin de una operacin elemental est condicionada a un
conjunto de parmetros aleatorios de entrada que contiene a la unin de los
conjuntos de parmetros aleatorios de entrada respecto de los cuales est
condicionada la probabilidad de los operandos. Cuando es preciso conocer la
probabilidad de la solucin condicionada a un subconjunto de aquel conjunto, deben
realizarse operaciones de reduccin del condicionamiento. Se asocia a cada
operacin elemental las operaciones de reduccin del condicionamiento que proceda.
13. Generacin del cdigo del modelo como una secuencia ordenada de expresiones
algebraicas, operaciones elementales y operaciones de reduccin en el
condicionamiento. Las operaciones elementales y de reduccin del condicionamiento
operan sobre la representacin interna de las variables aleatorias. Las variables
aleatorias han sido sustituidas en el modelo por su representacin interna.
14. El usuario debe escoger el valor del entero N .
15. Se calcula la representacin interna de las probabilidades de los parmetros aleatorios
de entrada que aparecen en el conjunto S .
16. Son conocidos los conjuntos de parmetros aleatorios de entrada respecto de los
cuales debe condicionarse la probabilidad de cada una de las variables de estado
aleatorias y de cada una de las variables aleatorias de tearing de los lazos algebraicos.
El usuario debe proporcionar la representacin interna de los valores iniciales de la
probabilidad de las variables de estado y de tearing aleatorias condicionadas a cada
uno de estos conjuntos de parmetros aleatorios de entrada (la herramienta le
muestra cules son stas y respecto de qu parmetros debe condicionarse la
probabilidad de cada una). La representacin interna de estos valores iniciales de la
probabilidad es exactamente igual que la de las variables aleatorias reales.
17. Generacin del cdigo del experimento. Contiene la representacin interna de los
parmetros aleatorios de entrada y el valor de los parmetros aleatorios
deterministas, la representacin interna de los valores iniciales de las variables de
estado aleatorias y de tearing aleatorias y los valores iniciales de las variables de
estado y de tearing deterministas.
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 367


Tres comentarios adicionales:
1. Es preciso adaptar el algoritmo de la simulacin para realizar la integracin inline
[Elmq96a] del sistema algebraico diferencial conteniendo variables aleatorias y para
disparar y tratar adecuadamente los eventos activados por variables Booleanas, tanto
deterministas como aleatorias. Debe modificarse el mtodo de Newton a fin de
resolver lazos algebraicos en los que intervengan variables aleatorias.
2. El criterio habitual para la suspensin de los procesos iterativos (por ejemplo, la
resolucin numrica de lazos algebraicos) es que el valor de los residuos se encuentre
comprendido en un determinado intervalo de error entorno al cero. Cuando las
variables a evaluar en el proceso iterativo son aleatorias, los residuos son tambin
variables aleatorias y el criterio para suspender la iteracin es que el conjunto de
valores posibles de cada uno de los residuos se encuentre incluido en el intervalo de
error.
3. La forma habitual en la que el algoritmo de simulacin de sistemas hbridos trata los
eventos en el estado es la siguiente [Cell79]. Una vez que se ha detectado el disparo
del evento (mediante el cambio de signo de la correspondiente funcin de cruce) se
suspende la integracin y se calcula el instante de disparo del evento. Se ejecutan las
acciones asociadas al evento y se calcula el estado de reinicio, reanudndose la
integracin (supuesto que el nuevo estado no dispara nuevos eventos). Los eventos
disparados por variables aleatorias Booleanas deben ser tratados de forma especial.
Si la condicin de una expresin if-then-else es una variable aleatoria, se suspende la
integracin y se calcula el instante de disparo del evento nicamente en los dos
siguientes casos: o bien cuando la representacin interna de su probabilidad (total o
condicionada) pasa de valer cero a tomar un valor mayor que cero o bien cuando
pasa de valer uno a tomar un valor menor que uno. En el presente trabajo no se
aborda el problema de las ecuaciones instantneas disparadas por variables aleatorias.
Ejemplo de transformacin del modelo
Se usa como ejemplo el modelo, extrado de [Ram89], de un CSTR empleado para la
descomposicin del agua oxigenada (ver Figura 10.6). La reaccin es de primer orden y
es catalizada homogneamente. El reactivo, agua oxigenada, y el catalizador, hidrxido
sdico, son alimentados en el reactor, mientras que continuamente se extrae el producto,
agua, y agua oxigenada sin reaccionar. La reaccin es exotrmica. El reactor es
refrigerado mediante agua que circula por una camisa que lo rodea.
El modelo consta de las variables y ecuaciones mostradas a continuacin. Se ha realizado
la particin del sistema. Las ecuaciones estn ordenadas y se ha sealado entre corchetes
la variable a evaluar de cada ecuacin. En el modelo se definen cuatro parmetros
aleatorios de entrada que modelan la incertidumbre en la dependencia de la velocidad de
la reaccin con la temperatura, la incertidumbre en el volumen (constante) contenido en
el reactor durante la operacin y la incertidumbre en la temperatura de entrada a la
camisa del agua refrigerante. Para ello se igualan al declararlos a las funciones reservadas
a tal fin.
368 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS




















Figura 10.6 Esquema del reactor y del lazo de control.

Parmetros Variables
Parmetros aleatorios de entrada
E . Energa de activacin.
0
k . Factor de frecuencia.
in
T . Temperatura de entrada del refrigerante.
V . Volumen de la mezcla en el reactor.
Parmetros aleatorios no de entrada
m . Masa de la mezcla en el reactor.
Parmetros deterministas
A. rea de transferencia de calor.
1
C . Constante.
2
C . Conversin de unidades (ma/K).
3
C . Salida del controlador en el estacionario (ma).
p
C . Capacidad calorfica por masa.
min
G . Seal mnima del controlador (ma).
max
G . Seal mxima del controlador (ma).
K. Ganancia proporcional del controlador.
q . Calor de reaccin (cal/mol).
1 , C
Q ,
2 , C
Q ,
3 , C
Q ,
4 , C
Q ,
5 , C
Q ,
6 , C
Q ,
7 , C
Q ,
8 , C
Q .
Caracterstica de la vlvula de control.
. Densidad.
Variables de estado
c . Concentracin de agua oxigenada (mol/vol).
T . Temperatura promedio en el reactor.
Variables algebraicas
0
c . Conc. de entrada de agua oxigenada (mol/vol).
0
F . Flujo de entrada al reactor (vol/tiempo).
g . Fraccin de apertura del controlador.
G . Seal del controlador (ma).
k . Constante de la velocidad de reaccin.
C
Q . Flujo de masa de refrigerante (masa/tiempo).
A
T . Temperatura promedio del refrigerante.
SS
T : Consigna para la temperatura en el reactor.
0
T . Temperatura de entrada del reactivo.
U . Coeficiente de transferencia de calor.

Controlador
Seal del Controlador
0 0 0
, , T C F
0
, , F C T
C
Q
in
T
T
C
Q
A
T
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 369


1
[ ] V m
Masa (constante) de la mezcla
contenida en el reactor.
2
[ ] ( ) Time f F
1 0

Propiedades del flujo entrante de
reactivo.
3
[ ] ( ) Time f c
3 0


4
[ ] ( ) Time f T
2 0


5
[ ] ( ) Time f T
SS 4

Consigna para la temperatura en el
reactor.
6
[ ] ( )
3 2
K C C T T G
SS
+
Ecuacin del controlador.
7
[ ]
min max
min
G G
G G
g


Relacin entre la fraccin de
apertura del controlador y la seal
del controlador.
8
[ ]

'


< +
< +
< + +
<

1 85 . 0 si 0
85 . 0 75 . 0 si
75 . 0 5 . 0 si
5 . 0 2 . 0 si
2 . 0 0 si
8 , 7 ,
6 , 5 ,
2
4 , 3 , 2 ,
1 ,
g
g g Q Q
g g Q Q
g g Q g Q Q
g Q
Q
C C
C C
C C C
C
C

Caracterstica de la vlvula de
control. Relacin entre el flujo de
masa de refrigerante y la fraccin de
apertura del controlador.
9
[ ]
3 / 1
1 C
Q C U
Relacin entre el coeficiente global
de transferencia de calor y el flujo de
masa de refrigerante para flujo
laminar en la camisa refrigerante.
10
[ ]
p C
in
A
C Q
UA
T T
T T
2
1+


Balance de energa de la camisa
refrigerante en el estacionario.
11
[ ]
T E
e k k
/
0


Dependencia respecto de la
temperatura de la velocidad de
reaccin. Relacin de Arrhenius.
12
( ) ( )
0 0
T T C F T T UA c qVk
dt
dT
mC
p A p

1
]
1


Balance de energa.
13
( )
0 0

c c F c Vk
dt
c d
V
1
]
1


Balance de materia.

A continuacin se muestra la matriz BLT de incidencia ordenada ampliada con los
parmetros aleatorios y las variables de estado. Se ha sealado el nmero de ecuacin a
370 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


que corresponde cada fila y el nombre de la variable a que corresponde cada columna.
Las filas aadidas al ampliar la matriz estn sin numerar. Se han recuadrado en azul los
bloques diagonales obtenidos de realizar la particin de la matriz ampliada.

E in
T
0
k V m
0
F
0
c
0
T
SS
T

c T G
g
C
Q U
A
T k c der
derT

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

Aplicando el algoritmo de la Figura 10.2 a la matriz de incidencia ampliada, se obtiene la
siguiente clasificacin de las variables del sistema:
Variables deterministas Variables aleatorias
Variables algebraicas
0
c . Conc. de entrada de agua oxigenada (mol/vol).
0
F . Flujo de entrada al reactor (vol/tiempo).
SS
T : Consigna para la temperatura en el reactor.
0
T . Temperatura de entrada del reactivo.

Variables de estado
c . Concentracin de agua oxigenada (mol/vol).
T . Temperatura promedio en el reactor.
Variables algebraicas
c der . Derivada de c .
derT . Derivada de T .
g . Fraccin de apertura del controlador.
G . Seal del controlador (ma).
k . Constante de la velocidad de reaccin.
C
Q . Flujo de masa de refrigerante (masa/tiempo).
A
T . Temperatura promedio del refrigerante.
U . Coeficiente de transferencia de calor.

El parmetro aleatorio m depende nicamente del parmetro aleatorio de entrada V .
Todas las variables aleatorias dependen de los cuatro parmetros aleatorios: V , E ,
0
k y
in
T . El usuario en este punto debe decidir qu variables aleatorias son de salidas y
respecto de qu conjunto o conjuntos de parmetros aleatorios desea conocerse
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 371


condicionada su probabilidad. En este ejemplo, las representaciones internas que se desea
evaluar son las siguientes.
Representacin interna de la probabilidad total.
( ) c F , ( ) T F , ( ) g F , ( ) G F , ( ) k F , ( )
C
Q F , ( )
A
T F , ( ) U F
Representacin interna de la probabilidad condicionada.
( ) V T k E c F
in

0
, ( ) V T k E T F
in

0
, ( ) V T k E g F
in

0
,
( ) V T k E T F
in A

0


A continuacin se muestran las expresiones en que intervienen variables aleatorias
escritas como sucesiones de operaciones elementales. Para ello se han introducido
variables auxiliares. El orden en que se realizan las operaciones elementales con el mismo
nivel jerrquico se determina aplicando los algoritmos de las Figuras 10.3 y 10.4.
Ecuacin en que intervienen variables aleatorias Operaciones elementales Tipo
[ ] V m [ ] V m ( ) , X
[ ] ( )
3 2
K C C T T G
SS
+ [ ]
[ ]
[ ]
[ ]
3 2
1 1 2
1
2 1
K
C X G
X X
T T X
C
SS
+


( )
( )
( )


,
,
,
X
X
X

[ ]
min max
min
G G
G G
g


[ ]
[ ]
[ ]
3 2
2
3
1
X g
G G
G G X
min max
min



( )
( )

,
,
X
X

[ ]

'


< +
< +
< + +
<

1 85 . 0 si 0
85 . 0 75 . 0 si
75 . 0 5 . 0 si
5 . 0 2 . 0 si
2 . 0 0 si
8 , 7 ,
6 , 5 ,
2
4 , 3 , 2 ,
1 ,
g
g g Q Q
g g Q Q
g g Q g Q Q
g Q
Q
C C
C C
C C C
C
C

[ ]
[ ]
[ ]
[ ]
[ ]
7 2 , 8
6 4 7
5 4 , 6
2
5
3 , 4
X Q X
X X X
X Q X
g X
g Q X
C
C
C
+
+


[ ]
[ ]
9 5 , 10
6 , 9
X Q X
g Q X
C
C
+


[ ]
[ ]
11 7 , 12
8 , 11
X Q X
g Q X
C
C
+


( )
( )
( )
( )
( )


,
,
,
,
,
2 1
2 1
X
X X
X
X X
X

( )
( )
2 1
,
,
X X
X



( )
( )
2 1
,
,
X X
X



372 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] ( )
[ ] ( )
[ ] ( )
[ ] ( )
[ ]
1 5
4
3
2
1
not
85 . 0
75 . 0
5 . 0
2 . 0
L L
g L
g L
g L
g L

<
<
<
<

[ ]
[ ]
[ ]
[ ]
1 , 13 5
14 8 2 13
15 10 3 14
12 4 15
else then if
else then if
else then if
0 else then if
C C
Q X L Q
X X L X
X X L X
X L X


( )
( )
( )
( )
( ) A
X
X
X
X


( )
( )
( )
( )
2 1
2 1
2 1
2 1
, ,

, ,

, ,

, ,


X L
X X L
X X L
X L

[ ]
3 / 1
1 C
Q C U
[ ] ( )
[ ]
[ ]
[ ] ( )
[ ]
18 1
17 18
16 3 17
3
16
exp
3 / 1
ln
X C U
X X
X X
Q X
C


( )
( )
( )
( )

,
,
X
X
X
X

[ ]
p C
in
A
C Q
UA
T T
T T
2
1+

[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
27
26 27
23 25 26
24 25
24
22 23
21 22
20 4 21
19 20
19
4
1
1
1
1
1
2
X T T
X X
X X X
X T X
T X
X X
X X
X X
UX X
Q X
C
A
A
in
C
p
+



( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
2 1
2 1
2 1
2 1
,
,
,
,
,
,
,
,
X X
X
X X
X X
X
X
X
X
X X
X


[ ]
T E
e k k
/
0


[ ]
[ ]
[ ]
[ ] ( )
[ ]
31 0
30 31
29 30
28 29
28
exp
1
1
X k k
X X
X X
EX X
T X


( )
( )
( )
( )
( )
2 1
2 1
,
,
,
X X
X
X
X X
X


( ) (
0
T C F T T UA c qVk
dt
dT
mC
p A p

1
]
1


[ ]
[ ]
[ ]
33 34
32 33
32

qX X
VX X
c k X

( )
( )
( )

,
,
,
2 1
2 1
X
X X
X X
( ) , X
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 373


[ ]
[ ]
[ ]
[ ]
37 38
36 37
35 36
35
1
AX X
UX X
X T X
T X
A

+

[ ]
[ ]
[ ]
39 5 40
0 5
0 39
X X
C F
T T X
p




[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
44 6
42 43 44
6
43
40 41 42
38 34 41
1
1
X derT
X X X
C
m X
X X X
X X X
p

+
+

( )
( )
( )
( )


,
,
,
,
2 1
2 1
X
X X
X X
X
( )
( )

,
,
X
X

( )
( )
( )
( )
( )

,
,
,
,
2 1
2 1
2 1
X
X X
X
X X
X X

( )
0 0

c c F c Vk
dt
c d
V
1
]
1


[ ]
[ ]
[ ]
46 47
45 46
45
1

X X
VX X
c k X

[ ]
[ ]
48 0 49
0 48

X F X
c c X


[ ]
[ ]
[ ]
51 50
51
49 47 50

1
X X c der
V X
X X X

+

( )
( )
( )
( )
( )
( )
( )
( )
2 1
2 1
2 1
2 1
,
,
,
,
,
,
,
X X
X
X X
X
X
X
X X
X X



Para asociar a cada una de las variables aleatorias auxiliares el conjunto de parmetros
aleatorios de entrada de los que depende, se tiene en cuenta que ste es igual a la unin
de los conjuntos de parmetros aleatorios de entrada de los que dependen los operandos
que intervienen en la operacin elemental de la cual se evala. En funcin del conjunto
de parmetros aleatorios de entrada de que dependen, las variables aleatorias y los
parmetros aleatorios del modelo se clasifican en los siguientes cinco grupos.

Parmetros aleatorios de entrada
respecto de los que dependen
Parmetros aleatorios y variables aleatorias
{ } E
E
{ }
0
k
0
k
{ }
in
T in
T ,
24
X
374 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ } V
V , m ,
43
X ,
51
X
{ } V T k E
in
, , ,
0

c , T , c der , derT , g , G , k ,
C
Q ,
A
T , U ,
23 1
,..., X X ,
42 25
,..., X X ,
50 44
,..., X X ,
5 1
,..., L L

Aplicando el algoritmo de la Figura 10.5 se obtiene el conjunto S , que contiene el
conjunto de toda las probabilidades que deben ser calculadas. Para ello, previamente,
deben aadirse al modelo, a continuacin de la ltima operacin elemental, una
operacin elemental de integracin respecto al tiempo por cada variable de estado
aleatoria. Esta operacin elemental relaciona la derivada de la variable de estado con la
variable de estado y permite al algoritmo de la Figura 10.5 obtener respecto de qu
conjuntos de parmetros aleatorios de entrada debe condicionarse la probabilidad de las
derivadas de las variables de estado. Se obtiene el siguiente conjunto S de aplicar el
algoritmo de la Figura 10.5 al ejemplo:
{ S ( ) E E F ,
( )
0 0
k k F ,
( )
in in
T T F , ( )
in
T X F
24
,
( ) V V F , ( ) V m F , ( ) V X F
43
, ( ) V X F
51
,
( ) V T k E c F
in

0
, ( ) V T k E T F
in

0
, ( ) V T k E c der F
in

0
,
( ) V T k E derT F
in

0
, ( ) V T k E g F
in

0
, ( ) V T k E G F
in

0
,
( ) V T k E k F
in

0
, ( ) V T k E Q F
in C

0
, ( ) V T k E T F
in A

0
,
( ) V T k E U F
in

0
, ( ) ( ) V T k E X F V T k E X F
in in

0 23 0 1
,..., ,
( ) ( ) V T k E X F V T k E X F
in in

0 42 0 25
,..., ,
( ) ( ) V T k E X F V T k E X F
in in

0 50 0 44
,..., ,
( ) ( ) } V T k E L F V T k E L F
in in

0 5 0 1
,...,
Puesto que el conjunto S contiene la probabilidad de los cuatro parmetros aleatorios
de entrada condicionadas a s mismos, debe aadirse en el modelo, delante de la primera
operacin elemental, las cuatro operaciones de calculo de la probabilidad condicionada
de los parmetros a partir de su probabilidad total. A continuacin se muestra el modelo
escrito como una secuencia de expresiones algebraicas y de operaciones elementales y de
reduccin del condicionamiento.
LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 375


1 ( ) ( ) E E F E F
2 ( ) ( )
0 0 0
k k F k F
3 ( ) ( )
in in in
T T F T F
4 ( ) ( ) V V F V F
5 ( ) ( ) V m F V V F
V
,


6
[ ]
2 1
KC
7 ( )
( )
( ) V T k E X F T V T k E T F
in
T T
SS in
SS

+
0 1 0
,
8 ( ) ( ) V T k E X F V T k E X F
in
X
in

0 2 1 0 1
,
1 1


9 ( ) ( ) V T k E G F V T k E X F
in
C X
in

+
0 3 0 2
C ,
3 2

10 ( ) ( ) ( ) ( ) ( )
0 0 0
G F E G F k E G F T k E G F V T k E G F
in in



11 ( )
( )
( ) V T k E X F -G V T k E G F
in
G G
min in
min

+
0 3 0
,
12
[ ]
min max
G G

1
2

13 ( ) ( ) V T k E g F V T k E X F
in
X
in

0 2 0 3
,
3 2


14 ( ) ( ) ( ) ( ) ( )
0 0 0
g F E g F k E g F T k E g F V T k E g F
in in



15 ( ) ( ) V T k E X F Q V T k E g F
in
g Q
C in
C

0 4 3 , 0
,
3 ,

16 ( ) ( ) ( ) V T k E X F V T k E g F V T k E g F
in
gg
in in

0 5 0 0
,
17 ( ) ( ) V T k E X F Q V T k E X F
in
X Q
C in
C

0 6 4 , 0 5
,
5 4 ,

18 ( ) ( ) ( ) V T k E X F V T k E X F V T k E X F
in
X X
in in

+
0 7 0 6 0 4
,
6 4

19 ( ) ( ) V T k E X F Q V T k E X F
in
X Q
C in
C

+
0 8 2 , 0 7
,
7 2 ,

20 ( ) ( ) V T k E X F Q V T k E g F
in
g Q
C in
C

0 9 6 , 0
,
6 ,

21 ( ) ( ) V T k E X F Q V T k E X F
in
X Q
C in
C

+
0 10 5 , 0 9
,
9 6 ,

22 ( ) ( ) V T k E X F Q V T k E g F
in
g Q
C in
C

0 11 8 , 0
,
8 ,

23 ( ) ( ) V T k E X F Q V T k E X F
in
X Q
C in
C

+
0 12 7 , 0 11
,
11 7 ,

24 ( ) ( ) V T k E L F V T k E g F
in
g
in

<
0 1
2 . 0
0

25 ( ) ( ) V T k E L F V T k E g F
in
g
in

<
0 2
5 . 0
0

26 ( ) ( ) V T k E L F V T k E g F
in
g
in

<
0 3
75 . 0
0

27 ( ) ( ) V T k E L F V T k E g F
in
g
in

<
0 4
85 . 0
0

28 ( ) ( ) V T k E L F V T k E L F
in
L
in

0 5
not
0 1

1

29 ( ) ( ) ( ) V T k E X F V T k E X F V T k E L F
in
if
in in

0 15 0 12 0 4
0 , ,
30 ( ) ( ) ( )
( ) V T k E X F
V T k E X F V T k E X F V T k E L F
in
if
in in in


0 14
0 15 0 10 0 3

, ,

31 ( ) ( ) ( )
( ) V T k E X F
V T k E X F V T k E X F V T k E L F
in
if
in in in


0 13
0 14 0 8 0 2

, ,

32 ( ) ( ) ( ) V T k E Q F Q V T k E X F V T k E L F
in C
if
C in in

0 1 , 0 13 0 5
, ,
376 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


33 ( ) ( ) ( ) ( )
( )

C
C 0 C 0 C 0 C
Q F
E Q F k E Q F T k E Q F V T k E Q F
in in



34 ( )
( )
( ) V T k E X F V T k E Q F
in
Q
in
C

0 16
ln
0 C

35
[ ] 3 1
3

36 ( ) ( ) V T k E X F V T k E X F
in
X
in

0 17 3 0 16
,
16 3


37 ( )
( )
( ) V T k E X F V T k E X F
in
X
in

0 18
exp
0 17

17

38 ( ) ( ) V T k E U F C V T k E X F
in
X C
in

0 1 0 18
,
18 1

39 ( ) ( ) ( ) ( ) ( )
0 0 0
U F E U F k E U F T k E U F V T k E U F
in in



40
[ ] ( )
p
C A 2
4

41 ( ) ( ) V T k E X F V T k E Q F
in
Q
in C
C

0 19
1
0

42 ( ) ( ) ( ) V T k E X F V T k E X F V T k E U F
in
UX
in in

0 20 0 19 0
,
19

43 ( ) ( ) V T k E X F V T k E X F
in
X
in

0 21 4 0 20
,
20 4


44 ( ) ( ) V T k E X F V T k E X F
in
X
in

+
0 22
1
0 21
1 ,
21

45 ( ) ( ) V T k E X F V T k E X F
in
X
in

0 23
1
0 22

22

46 ( ) ( )
in
T
in in
T X F T T F
in
1 ,
24
1



47 ( ) ( ) ( ) V T k E X F T X F V T k E T F
in
X T
in in

+
0 25 24 0
,
24

48 ( ) ( ) ( ) V T k E X F V T k E X F V T k E X F
in
X X
in in

0 26 0 23 0 25
,
23 25

49 ( ) ( ) V T k E X F V T k E X F
in
X
in


0 27
1
0 26
1 ,
26

50 ( ) ( ) ( ) V T k E T F V T k E X F V T k E T F
in A
X T
in in

+
0 0 27 0
,
27

51
( ) ( ) ( ) ( )
( )

A
A 0 A 0 A 0 A
T F
E T F k E T F T k E T F V T k E T F
in in



52 ( ) ( ) V T k E X F V T k E T F
in
T
in

0 28
1
0

53 ( ) ( ) ( ) V T k E X F V T k E X F E E F
in
EX
in

0 29 0 28
,
28

54 ( ) ( ) V T k E X F V T k E X F
in
X
in


0 30
1
0 29
1 ,
29

55 ( )
( )
( ) V T k E X F V T k E X F
in
X
in

0 31
exp
0 30

30

56 ( ) ( ) ( ) V T k E k F V T k E X F k k F
in
X k
in

0 0 31 0 0
,
31 0

57 ( ) ( ) ( ) ( ) ( )
0 0 0
k F E k F k E k F T k E k F V T k E k F
in in



58 ( ) ( ) ( ) V T k E X F V T k E c F V T k E k F
in
c k
in in

0 32

0 0
,
59 ( ) ( ) ( ) V T k E X F V T k E X F V V F
in
VX
in

0 33 0 32
,
32

60 ( ) ( ) V T k E X F q V T k E X F
in
qX
in

0 34 0 33
,
33

61 ( ) ( ) V T k E X F V T k E T F
in
T
in A
A


0 35
1
0
1 ,
62 ( ) ( ) ( ) V T k E X F V T k E X F V T k E T F
in
X T
in in

+
0 36 0 35 0
,
35

63 ( ) ( ) ( ) V T k E X F V T k E X F V T k E U F
in
UX
in in

0 37 0 36 0
,
36

64 ( ) ( ) V T k E X F A V T k E X F
in
AX
in


0 38 0 37
,
37

65 ( )
( )
( ) V T k E X F T V T k E T F
in
T T
in

+
0 39 0 0
,
0

66
[ ]
p
C F
0 5

LA SIMULACIN COMO SECUENCIA DE OPERACIONES ELEMENTALES 377


67 ( ) ( ) V T k E X F V T k E X F
in
X
in

0 40 5 0 39
,
37 5


68 ( ) ( ) ( ) V T k E X F V T k E X F V T k E X F
in
X X
in in

+
0 41 0 38 0 34
,
38 34

69 ( ) ( ) ( ) V T k E X F V T k E X F V T k E X F
in
X X
in in

+
0 42 0 40 0 41
,
40 41

70 ( ) ( ) V X F V m F
m

43
1

71
[ ]
p
C 1
6

72 ( ) ( ) ( ) V T k E X F V T k E X F V X F
in
X X
in

0 44 0 42 43
,
42 43

73 ( ) ( ) V T k E derT F V T k E X F
in
X
in

0 6 0 44
,
44 6


74 ( ) ( ) ( ) V T k E X F V T k E c F V T k E k F
in
c k
in in

0 45

0 0
,
75 ( ) ( ) ( ) V T k E X F V T k E X F V V F
in
VX
in

0 46 0 45
,
45

76 ( ) ( ) V T k E X F V T k E X F
in
X
in


0 47
1
0 46
1 ,
46

77 ( )
( )
( ) V T k E X F c V T k E c F
in
c c
in

+
0 48

0 0
,
0

78 ( ) ( ) V T k E X F F V T k E X F
in
X F
in


0 49 0 0 48
,
48 0

79 ( ) ( ) ( ) V T k E X F V T k E X F V T k E X F
in
X X
in in

+
0 50 0 49 0 47
,
49 47

80 ( ) ( ) V X F V V F
V

51
1

81 ( ) ( ) ( ) V T k E c der F V X F V T k E X F
in
X X
in

0 51 0 50
,
51 50

82
( ) ( ) V T k E c F V T k E c der F
in in


0 0

83 ( ) ( ) ( ) ( ) ( )
0 0 0
c F E c F k E c F T k E c F V T k E c F
in in



84
( ) ( ) V T k E T F V T k E derT F
in in


0 0

85 ( ) ( ) ( ) ( ) ( )
0 0 0
T F E T F k E T F T k E T F V T k E T F
in in




Una vez generado el cdigo del modelo, el usuario debe especificar el valor del entero
N y los valores iniciales de la probabilidad de las variables aleatorias de estado y de
tearing (la herramienta le muestra cuales son stas). En este ejemplo, el usuario debe dar
valor en el instante inicial de la simulacin a ( ) V T k E c F
in

0
y a
( ) V T k E T F
in

0
. La herramienta calcula automticamente la representacin
interna de las probabilidades de los parmetros aleatorios de entrada contenidas en el
conjunto S . Se genera entonces el cdigo del experimento, que contiene la
representacin interna de la probabilidad de los parmetros aleatorios de entrada, el valor
de los parmetros deterministas y las condiciones iniciales de las variables aleatorias y
deterministas de estado y de tearing.

378 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


10.3 REDUCCIN DEL CONDICIONAMIENTO DE LA
PROBABILIDAD
Introduccin
Se denomina reduccin del condicionamiento de la probabilidad, y se representa
mediante el smbolo , al clculo, a partir de la representacin interna de una variable
aleatoria condicionada a un determinado conjunto de parmetros aleatorios de entrada y
de la representacin interna de uno de ellos, de la representacin interna de la variable
condicionada al mismo conjunto de parmetros excepto este parmetro. En este apartado
se proponen algoritmos para realizar la reduccin del condicionamiento de la
probabilidad. Para la resolucin del problema, ste se ha dividido en los cuatro
siguientes, dependiendo de si la variable aleatoria y el parmetro de entrada son reales o
Booleanos.
( ) ( ) ( )
X X X X
Q P X F P F P Q P X F

,




Reduccin en el condicionamiento de la
probabilidad de una variable aleatoria real
respecto a un parmetro aleatorio de
entrada real.
( ) ( ) ( )
X X X X
Q P X F Q F Q Q P X F

,




Reduccin en el condicionamiento de la
probabilidad de una variable aleatoria real
respecto a un parmetro aleatorio de
entrada Booleano.
( ) ( ) ( )
A A A A
Q P A F P F P Q P A F

,




Reduccin en el condicionamiento de la
probabilidad de una variable aleatoria
Booleana respecto a un parmetro
aleatorio de entrada real.
( ) ( ) ( )
A A A A
Q P A F Q F Q Q P A F

,




Reduccin en el condicionamiento de la
probabilidad de una variable aleatoria
Booleana respecto a un parmetro
aleatorio de entrada Booleano.

10.3.1 Reduccin del condicionamiento de la probabilidad de una
variable aleatoria real respecto a un parmetro aleatorio de
entrada real
Reduccin ( ) ( ) ( ) X F P F P X F

,
Sea X una variable aleatoria real y sea P un parmetro aleatorio real de entrada del que
depende X . Considrese el problema ( ) ( ) ( ) X F P F P X F

, , es decir, el clculo de
la representacin interna de la probabilidad de X , x y
I
x , siendo conocidas tanto la
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 379


representacin interna de P , p , como la representacin interna de X condicionada a
P ,
{ }
x
P
y
{ } P
I
x . Para ello se emplea el teorema de la probabilidad total.
Teorema de la probabilidad total [Papo91]
Si
N
E ,..., E
1
es una particin del espacio probabilstico total y B un evento
arbitrario, entonces:
{ } { } { } { } { } E E ... E E
1 1 N N
P B P P B P B P + +

El orden en que se va a proceder es el siguiente: en primer lugar se van a calcular los
intervalos cerrados disjuntos cuya unin es el conjunto de valores posibles de X ,
seguidamente el vector
I
x y finalmente el vector x . A continuacin se pondr un
ejemplo de aplicacin.
Para calcular los intervalos cerrados disjuntos que componen el conjunto de valores
posibles de X debe tenerse en cuenta que el conjunto de valores posibles de X , cuando
el parmetro aleatorio real de entrada P , del que depende X , satisface
[ ] [ ] { } 1 E + < k p P k p
k
I
P
, es
{ }
[ ]
{ }
[ ]
{ }
[ ]
U
k i
j
P
X
P
X
P
X
j k I k I
1 :
, , con
{ }
[ ]
{ }
[ ]
{ }
[ ]
1
]
1

j k x j k x j k I
P
Max
P
min
P
X
, , , , . El conjunto completo de valores posibles de X es
{ }
[ ]
U
N
k
P
X X
k I I
1 :
. Se define
{ } P
X
I
S como el conjunto cuyos elementos son todos los
intervalos
{ }
[ ] j k I
P
X
, , con N k ,..., 1 : y
{ }
[ ] k i j
P
X
,..., 1 : . Se definen tambin
X
i subconjuntos
de
{ } P
X
I
S ,
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
, tales que satisfagan las siguientes tres condiciones:
1.
{ } { }
{ } { }

'

<

X
r
I
r
I
i
r
r
I I
i r r r' , r S S
S S
P
X
P
X
X
P
X
P
X
' 1 que tales enteros para todo
'
1 :
U

2. La interseccin de dos intervalos cualquiera pertenecientes a distintos
subconjuntos es vaca:

{ }
[ ]
{ }
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]

'

2 2 1 1
'
2 2
1 1
, , ' con
,
,
j k I j k I r r
S j k I
S j k I
P
X
P
X
r
I
P
X
r
I
P
X
P
X
P
X
.
3. La unin de todos los intervalos pertenecientes a un mismo subconjunto es
otro intervalo:
{ }
[ ]
{ }
[ ]
{ }
{ } P
X
S j k I
P
X
i r j k I
r
P
X
I
P
X
,..., 1 : cualquier para conexo es ,
,
U

.
380 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


La Figura 10.7 contiene un algoritmo para identificar los
X
i subconjuntos
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
a
partir de
{ } P
X
I
S .
Algoritmo para el clculo de los intervalos de valores posibles
0. Inicializacin: asignar el valor 1 al contador r , 1 r , que representa el nmero
de subconjuntos. El conjunto
{ } P
X
I
S posee inicialmente
{ }
[ ]

N
k
P
X
k i
1 :
elementos.
1. Sea el subconjunto, inicialmente vaco,
{ }
r
I
P
X
S . Descontar de
{ } P
X
I
S el elemento
(intervalo)
{ }
[ ] j k I
P
X
, que contenga valores menores de X , es decir, que tenga el
menor valor de
{ } P
min
x , e incluirlo en el conjunto
{ }
r
I
P
X
S . Si un grupo de elementos
tienen el mismo valor de
{ } P
min
x y ste es el mnimo, descontar este grupo de
elementos de
{ } P
X
I
S e incluirlo en el conjunto
{ }
r
I
P
X
S . Si
{ } P
X
I
S queda vaco, asignar
a
X
i el valor del contador r y terminar. En caso contrario, ir a 2.
2. Si la interseccin de un elemento de
{ } P
X
I
S con algn elemento de
{ }
r
I
P
X
S es no
vaca, descontar ese elemento de
{ } P
X
I
S y aadirlo a
{ }
r
I
P
X
S . Si esta operacin hace
que
{ } P
X
I
S quede vaco, terminar. En caso contrario volver a 2.
Si la interseccin de cualquier elemento de
{ } P
X
I
S con cualquier elemento de
{ }
r
I
P
X
S es vaca incrementar r y volver a 1.
Figura 10.7 Algoritmo para el clculo de los intervalos de valores posibles.
La unin de los intervalos que componen cada uno de estos subconjuntos constituye uno
de los intervalos cerrados disjuntos cuya unin es el conjunto de valores posibles de la
variable aleatoria X : [ ] [ ] [ ] [ ]
{ }
[ ]
{ }
[ ]
{ }
U
r
P
X
I
P
X
S j k I j k
P
X Max min X
j k I r x r x r I


, que tales ,
, , , con
X
i r , ... , 1 : .
Los intervalos cerrados disjuntos [ ] [ ]
X X X
i I I , ... , 1 , obtenidos de aplicar el algoritmo,
satisfacen: [ ] [ ] 1 ,..., 1 : para todo 1 + <
X min Max
i r r x r x .
Para calcular el vector
I
x debe obtenerse la probabilidad de que X se encuentre en
cada uno de estos intervalos cerrados disjuntos. La probabilidad de que X se encuentre
en la unin de los intervalos que componen el subconjunto
{ }
r
I
P
X
S ,
[ ] [ ] [ ] { } r x X r x P r x
Max min I
con
X
i r , ... , 1 : , puede escribirse, aplicando el teorema
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 381


de la probabilidad total (los N eventos
k
I
P
E , con N k ,..., 1 : , son mutuamente
excluyentes, su unin es igual al espacio probabilstico total y se cumple { }
N
P
k
I
P
1
E ):

[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
{ }
[ ]
{ } { }
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }

1
]
1


r
P
X
I
P
X
r
P
X
I
P
X
P P
P
X
r
P
X
I
P
X
P
P
X
S j k I
j k
P
I
S j k I
j k
k
I
k
I
j k I
S j k I
j k
k
I
j k I
I
j k x
N
P P P r x
,
que tales ,
,
que tales ,
,
,
que tales ,
,
,
1
E E E E E

Se ha empleado la siguiente notacin para los eventos:
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ] [ ] { } 1 E
E
,
+ <

k p P k p
k,j x X k,j x
k
I
P
Max
P
min
j k I
P
P
X

El vector x tiene ( )
X
i N +1 componentes. Para cada valor de r , con
X
i r ,..., 1 : , las
1 + N componentes [ ] [ ] r N x r x , 1 ,..., , 1 + se definen de la forma siguiente (donde
[ ] r I
X
E
representa el evento
[ ]
[ ] [ ] { } r x X r x
Max min r I
X
E ):
[ ] [ ]
[ ]
[ ]
{ }
[ ] [ ]

'

r x r N x
N , ... , n
N
n
r n x X P
r x r x
Max
r I
min
X
, 1
2 : para
1
E ,
, 1
,
En virtud del teorema de la probabilidad total, se cumple:
{ }
[ ]
{ }
{ }
[ ]
[ ]
{ }
[ ]
{ } [ ]

X
X X P
P
X
P
P
X
i
r
r I r I
k
I
j k I
k
I
j k I
P P P
1 :
, ,
E E E E E E
donde:
{ }
[ ]
[ ]
{ }
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ]
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ]

'

>

r x r x j k x j k x
r x r x j k x j k x
P
Max min
P
Max
P
min
Max min
P
Max
P
min
r I
k
I
j k I X P
P
X
, , , , si 0
, , , , si 0
E E E
,

Se define el ndice ' r ,
X
i r ' 1 , como aquel que satisface:

{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ] ' , ' , , , r x r x j k x j k x
Max min
P
Max
P
min

y tiene la propiedad de ser nico, ya que un determinado intervalo
{ }
[ ] j k I
P
X
, pertenece a
uno y slo un conjunto
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
:
382 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Pertenece al menos a uno, ya que la unin de los conjuntos
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
es
igual a
{ } P
X
I
S .
No pertenece a mas de un conjunto, ya que la interseccin de dos conjuntos
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
cualesquiera es vaca.
Con lo cual:
{ }
[ ]
{ }
{ }
[ ]
[ ]
{ }
[ ]
{ } E E E E E E
' '
, ,
r I r I
k
I
j k I
k
I
j k I X X P
P
X
P
P
X
P P P
Operando la expresin anterior se obtiene:

{ }
[ ]
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }


'
' , '
que tales ' , '
'
,
'
,
' , '
1
,
1
E
E E
E E E
r
P
X
I
P
X
X
P
P
X
X P
P
X
S j k I
j k
P
I
P
I
r I
k
I
j k I
r I
k
I
j k I
j k x
N
j k x
N
P
P
P
Se nota
{ }
[ ] j k
P
X
, la probabilidad:
{ }
[ ]
{ }
[ ]
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }


'
' , '
que tales ' , '
'
,
' , '
,
E E E ,
r
P
X
I
P
X
X P
P
X
S j k I
j k
P
I
P
I
r I
k
I
j k I
P
X
j k x
j k x
P j k
y sea, para cualquier N n ,..., 1 : :
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
[ ]

'

+ <
E
E
, , 1 , ,
,
1
,
' r I
k
I
P P
P
X
P
X
X
P
j k n x X j k n x
P j k
N
j k
La Figura 10.8 contiene un algoritmo que permite calcular, para cada valor de r , con
X
i r ,..., 1 : , las 1 N componentes [ ] r q x , , para N q ,..., 2 : , del vector x .
Algoritmo para el clculo del vector x
Si
{ }
r
I
P
X
S tiene un nico elemento,
{ }
( ) 1 dim
r
I
P
X
S , por ejemplo
{ }
[ ]
1 1
, j k I
P
X
, el
clculo es trivial, ya que, en este caso, al tomar X valores slo en ese intervalo
cuando { }
1
E
k
P
, se cumple
{ }
[ ]
{ } 1 E E
1 1
1
,

j k I
k
P
P
X
P , y, por ello:
{ }
[ ]
{ }
{ }
[ ]
{ }
1 1 1 1
1
, ,
E E E
j k I j k I
k
P
P
X
P
X
P P . As pues, si
{ }
r
I
P
X
S tiene un nico elemento, que
notaremos
{ }
[ ]
1 1
, j k I
P
X
, se cumple:
[ ]
{ }
[ ]
1 1
, , , j k n x r n x
P
para 1 ,..., 1 : + N n .
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 383


Si
{ }
r
I
P
X
S tiene ms de un elemento,
{ }
( ) 1 dim >
r
I
P
X
S , se definen tres secuencias de
parejas del tipo
{ }
[ ]
{ }
[ ] ( ) , , , , j k j k n x
P
X
P
de la forma siguiente:
1. [ ]
( )
{ }
( )
{ }
( )
{ }
{ }
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_


P
S N X
P
S N
P
X
P
r
P
X
I
r
P
X
I
x x r S
dim dim
1 1
, , ... , , es la secuencia
ordenada crecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j k n x
P
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j k j k n x
P
X
P
para
{ }
[ ]
{ }

'

+
r
I
P
X
P
X
S j k I j k
N n
, que tales ,
1 ,..., 2 :
.
2. [ ]
( )
{ }
( )
{ }
( )
{ }
{ }
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_


P
S N X
P
S N
P
X
P
r
P
X
I
r
P
X
I
x x r S
dim dim
1 1
, , ... , , la secuencia
ordenada decrecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j k n x
P
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j k j k n x
P
X
P
para
{ }
[ ]
{ }

'

r
I
P
X
P
X
S j k I j k
N n
, que tales ,
,..., 1 :
.
3. [ ]
( )
{ }
( )
{ }
( )
( )
{ }
{ }
( )
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_

+
P
S N X
P
S N
P
X
P
r
P
X
I
r
P
X
I
x x r S
dim 1 dim 1
1 1
, , ... , , la secuencia
ordenada crecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j k n x
P
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j k j k n x
P
X
P
para
{ }
[ ]
{ }

'

+
r
I
P
X
P
X
S j k I j k
N n
, que tales ,
1 ,..., 1 :
.
Debe buscarse [ ] r q x , en el intervalo
[ ] ( )
{ }
[ ] ( )
{ }
1
]
1


P
q
P
q
x x

, , donde los enteros [ ] q y
[ ] q son aquellos que satisfacen:
( )
{ }
[ ]
( )
{ }
[ ]

<
q
t
P
t X
q
t
P
t X
N
q


1 :
1
1 :
1

( )
{ }
[ ]
( )
{ }
[ ]

<
q
t
P
t X
q
t
P
t X
N
q


1 :
1
1 :
1
1
ya que:
[ ] ( )
{ }
[ ] [ ] { }
N
q
r x X r x x X P
Max min
P
q
1




384 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] ( )
{ }
[ ] [ ] { }
N
q
r x X r x x X P
Max min
P
q
1




Si se cumple
[ ] ( )
{ }
[ ] ( )
{ } P
q
P
q
x x



, entonces [ ]
[ ] ( )
{ }
[ ] ( )
{ } P
q
P
q
x x r q x



, ,
En caso contrario, se define la secuencia [ ] r q S , , [ ] [ ] r S r q S , , de modo que
contenga los elementos
{ }
[ ] j k n x
P
, , de la secuencia [ ] r S que satisfagan:

[ ] ( )
{ } { }
[ ]
[ ] ( )
{ } P
q
P P
q
x j k n x x



, ,
ordenados de la misma forma que en [ ] r S . Para calcular [ ] r q x , deben
examinarse las parejas de elementos consecutivos de la secuencia [ ] r q S , . Se
notan
( )
{ }
( )
{ }
{ } ,
1
P
s
P
s
x x
+
dos elementos consecutivos diferentes de [ ] r q S , .
La probabilidad acumulada de X , para valores
( )
{ }
( )
{ } P
s
P
s
x x x
1 +
< ,
condicionada al evento
[ ]
[ ] [ ] { } E r x X r x
Max min r I
X
es:
[ ] [ ] { }
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]

'

+ <

'

1
]
1

,
_

+
+

+
+
j k i x x j k i x
S j k I
j k
P P
P P
X
j k N x x
S j k I
j k
P
X Max min
P P
r
P
X
I
P
X
P
r
P
X
I
P
X
j k i x j k i x
x j k i x
i
N
j k
j k r x X r x x X P
, , 1 , ,
,
que tales ,
, , 1
,
que tales ,
, , , , 1
, , 1 ,
,

El valor de i se calcula, para cada trmino del segundo sumatorio, de la
condicin
{ }
[ ]
{ }
[ ] j k i x x j k i x
P P
, , 1 , , + < .
Imponiendo que la probabilidad condicionada valga
N
q 1
se obtiene un valor
de X :
[ ]
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]

'

+ <

'

+ <

'

+ <

'

1
]
1

,
_

+
+

j k i x x j k i x
S j k I
j k
P P
P
X
j k i x x j k i x
S j k I
j k
P P
P
P
X
j k i x x j k i x
S j k I
j k
P P
P
X
j k N x x
S j k I
j k
P
X
P P
r
P
X
I
P
X
P P
r
P
X
I
P
X
P P
r
P
X
I
P
X
P
r
P
X
I
P
X
j k i x j k i x
j k
j k i x j k i x
j k i x
i j k
j k i x j k i x
j k
j k N q
r q x
, , 1 , ,
,
que tales ,
, , 1 , ,
,
que tales ,
, , 1 , ,
,
que tales ,
, , 1
,
que tales ,
*
, , , , 1
,
, , , , 1
, , 1
,
, , , , 1
,
, 1
,

REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 385


que coincide con [ ] r q x , si satisface:
( )
{ }
[ ]
( )
{ } P
s
P
s
x r q x x
1
*
,
+
<
en caso contrario, debe probarse con la siguiente pareja de elementos
consecutivos diferentes
( )
{ }
( )
{ }
{ } ,
1
P
s
P
s
x x
+
de [ ] r q S , .
Figura 10.8 Algoritmo para el clculo del vector x .
A continuacin se muestran un ejemplo de reduccin en el condicionamiento de la
probabilidad de una variable aleatoria real, X , respecto a un parmetro aleatorio real de
entrada P .
Ejemplo de la reduccin ( ) ( ) ( ) X F P F P X F

,
La representacin interna de la probabilidad de X condicionada a P , con 3 N , est
compuesta por los vectores
{ } P
x y
{ } P
I
x , de componentes
{ }
[ ] j k n x
P
, , y
{ }
[ ] j k x
P
I
,
respectivamente. Estos son:
1 j 2 j 3 j
1 k
{ }
[ ] { } 1,3,5,6 1 , 1 , 4 .. 1
P
x
{ }
[ ] 7 . 0 1 , 1
P
I
x
{ }
[ ] { } 18 , 15 , 10 , 9 2 , 1 , 4 .. 1
P
x
{ }
[ ] 3 . 0 2 , 1
P
I
x

2 k
{ }
[ ] { } 5,-2,0,1 - 1 , 2 , 4 .. 1
P
x
{ }
[ ] 2 . 0 1 , 2
P
I
x
{ }
[ ] { } 8 , 6 , 4 , 3 2 , 2 , 4 .. 1
P
x
{ }
[ ] 7 . 0 2 , 2
P
I
x
{ }
[ ] { } 20 , 19 , 15 , 12 3 , 2 , 4 .. 1
P
x
{ }
[ ] 1 . 0 3 , 2
P
I
x
3 k
{ }
[ ] { } 0,2,5,7 1 , 3 , 4 .. 1
P
x
{ }
[ ] 1 1 , 3
P
I
x


Los conjuntos de valores posibles de X , en funcin del intervalo de valores de P , son:
1 k
{ }
[ ]
{ }
[ ]
{ }
[ ] [ ] [ ] 9,18 6 , 1 2 , 1 1 , 1 1
P
X
P
X
P
X
I I I
2 k
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] 12,20 3,8 1 , 5 3 , 2 2 , 2 1 , 2 2
P
X
P
X
P
X
P
X
I I I I
3 k
{ }
[ ]
{ }
[ ] [ ] 7 , 0 1 , 3 3
P
X
P
X
I I

Se aplica el algoritmo para encontrar los conjuntos
{ } { }
X
P
X
P
X
i
I I
S S ,...,
1
a partir del conjunto:
386 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { } 1 , 3 , 3 , 2 , 2 , 2 , 1 , 2 , 2 , 1 , 1 , 1
P
X
P
X
P
X
P
X
P
X
P
X
I
I I I I I I S
P
X

0.- Inicializacin
1 r
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { } 1 , 3 , 3 , 2 , 2 , 2 , 1 , 2 , 2 , 1 , 1 , 1
P
X
P
X
P
X
P
X
P
X
P
X
I
I I I I I I S
P
X

1.a.- Nuevo subconjunto
{ }
{ }
[ ] { }
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { } 1 , 3 , 3 , 2 , 2 , 2 , 2 , 1 , 1 , 1
1 , 2
1
P
X
P
X
P
X
P
X
P
X
I
P
X
I
I I I I I S
I S
P
X
P
X


2.a.- Bsqueda de los elementos del nuevo subconjunto
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ] { }

'

'




3 , 2 , 2 , 2 , 2 , 1
1 , 3 , 1 , 2 , 1 , 1
1 , 3 1 , 2
2 , 1 1 , 2
1 , 1 1 , 2
1
P
X
P
X
P
X
I
P
X
P
X
P
X
I
P
X
P
X
P
X
P
X
P
X
P
X
I I I S
I I I S
I I
I I
I I
P
X
P
X

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
{ }
{ }
[ ]
{ }
[ ] { }

'

'





3 , 2 , 2 , 1
1 , 3 , 2 , 2 , 1 , 2 , 1 , 1
3 , 2 1 , 3
2 , 1 1 , 3
3 , 2 1 , 1
2 , 2 1 , 1
1
P
X
P
X
I
P
X
P
X
P
X
P
X
I
P
X
P
X
P
X
P
X
P
X
P
X
P
X
P
X
I I S
I I I I S
I I
I I
I I
I I
P
X
P
X

{ }
[ ]
{ }
[ ] { 2 2 , 1 2 , 2 r I I
P
X
P
X

1.b.- Nuevo subconjunto
{ }
{ }
[ ] { }
{ }
{ }
[ ] { } 3 , 2
2 , 1
2
P
X
I
P
X
I
I S
I S
P
X
P
X


2.b.- Bsqueda de los elementos del nuevo subconjunto
{ }
[ ]
{ }
[ ] {
{ }
{ }
[ ]
{ }
[ ] { }
{ }

'


terminar
3 , 2 , 2 , 1
3 , 2 2 , 1
2
P
X
P
X
I
P
X
P
X
I P
X
P
X
S
I I S
I I
As pues, 2
X
i . Se calculan los intervalos de valores posibles de X y el vector
I
x .
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 387


1 r
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { } 1 , 3 , 2 , 2 , 1 , 2 , 1 , 1
1 P
X
P
X
P
X
P
X
I
I I I I S
P
X

[ ] [ ] [ ] [ ] [ ]
[ ]
[ ]

'



8 1 , 4
5 1 , 1
8 , 5 1 , 1 1
x
x
x x I
Max min X

[ ] 87 . 0
3
1 7 . 0 2 . 0 7 . 0
1
+ + +

I
x
2 r
{ }
{ }
[ ]
{ }
[ ] { } 3 , 2 , 2 , 1
2 P
X
P
X
I
I I S
P
X

[ ] [ ] [ ] [ ] [ ]
[ ]
[ ]

'


20 2 , 4
9 2 , 1
20 , 9 2 , 2 2
x
x
x x I
Max min X

[ ] 13 . 0
3
1 . 0 3 . 0
2
+

I
x

Para calcular las componentes [ ] r q x , vector x , con 3 , 2 : q y 2 , 1 r , debe calcularse
{ }
[ ] j k
P
X
, , con 3 , 2 , 1 : k y
[ ]
[ ] k i j
P
X
,..., 1 : .

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] 385 . 0
1 7 . 0 2 . 0 7 . 0
1
1 , 3
250 . 0
1 . 0 3 . 0
1 . 0
3 , 2
269 . 0
1 7 . 0 2 . 0 7 . 0
7 . 0
2 , 2
077 . 0
1 7 . 0 2 . 0 7 . 0
2 . 0
1 , 2
750 . 0
1 . 0 3 . 0
3 . 0
2 , 1
269 . 0
1 7 . 0 2 . 0 7 . 0
7 . 0
1 , 1

+ + +

+ + +

+ + +

+ + +

P
X
P
X
P
X
P
X
P
X
P
X

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
128 . 0
3
1 , 3
1 , 3
083 . 0
3
3 , 2
3 , 2
090 . 0
3
2 , 2
2 , 2
026 . 0
3
1 , 2
1 , 2
250 . 0
3
2 , 1
2 , 1
090 . 0
3
1 , 1
1 , 1

P
X P
X
P
X P
X
P
X P
X
P
X P
X
P
X P
X
P
X P
X


Clculo de [ ] 1 , 2 x y [ ] 1 , 3 x .

[ ] ( ) ( ) ( ) ( ) ( ) ( ) {
( ) ( ) ( ) ( ) ( ) ( ) } 090 . 0 , 8 , 128 . 0 , 7 , 090 . 0 , 6 , 090 . 0 , 6 , 128 . 0 , 5 , 090 . 0 , 5
, 090 . 0 , 4 , 090 . 0 , 3 , 128 . 0 , 2 , 026 . 0 , 1 , 026 . 0 , 0 , 026 . 0 , 2 1

S


[ ] ( ) ( ) ( ) ( ) ( ) ( ) {
( ) ( ) ( ) ( ) ( ) ( ) } 026 . 0 , 5 , 026 . 0 , 2 , 128 . 0 , 0 , 026 . 0 , 0 , 090 . 0 , 1 , 128 . 0 , 2
090 . 0 , 3 , 090 . 0 , 3 , 090 . 0 , 4 , 128 . 0 , 5 , 090 . 0 , 5 , 090 . 0 , 6 1

S

[ ] ( ) ( ) ( ) ( ) ( ) {
( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) } 090 . 0 , 8 , 128 . 0 , 7 , 090 . 0 , 6 , 090 . 0 , 6 , 128 . 0 , 5
090 . 0 , 5 , 090 . 0 , 4 , 090 . 0 , 3 , 090 . 0 , 3 , 128 . 0 , 2 , 026 . 0 , 1
, 090 . 0 , 1 , 128 . 0 , 0 , 026 . 0 , 0 , 026 . 0 , 2 , 026 . 0 , 5 1 S

388 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Debe buscarse [ ] 1 , 2 x en el intervalo
( )
{ }
( )
{ }
[ ] 4 , 2 ,
6 7

1
]
1


P P
x x , ya que:
( )
{ }
( )
{ }
386 . 0 333 . 0
3
1 2
296 . 0
6
1 :
5
1 :

<


t
P
t X
t
P
t X

( )
{ }
( )
{ }
706 . 0 666 . 0
3
1 2
1 578 . 0
7
1 :
6
1 :

<


t
P
t X
t
P
t X

La secuencia [ ] 1 , 2 S es: [ ] { } 2,3,4 1 , 2 S .
Se examina { } 3 , 2 :
[ ]
( )
950 . 2
2 5
385 . 0
1 3
269 . 0
2 5
5
2 385 . 0
1 3
3
1 269 . 0 077 . 0 3 1 2
1 , 2
*

1
]
1

,
_

,
_


x
Dado que [ ] 3 95 . 2 1 , 2 2
*
< x , se obtiene: [ ] 95 . 2 1 , 2 x .
Debe buscarse [ ] 1 , 3 x en el intervalo
( )
{ }
( )
{ }
[ ] 6 , 4 ,
9 4

1
]
1


P P
x x , ya que:
( )
{ }
( )
{ }
694 . 0 666 . 0
3
1 3
604 . 0
9
1 :
8
1 :

<


t
P
t X
t
P
t X

( )
{ }
( )
{ }
398 . 0 333 . 0
3
1 3
1 308 . 0
4
1 :
3
1 :

<


t
P
t X
t
P
t X

La secuencia [ ] 1 , 3 S es: [ ] { } 4,5,6 1 , 3 S .
Se examina { } 5 , 4 :

[ ]
( )
145 . 5
2 5
385 . 0
4 6
269 . 0
3 5
269 . 0
2 5
5
2 385 . 0
4 6
6
2 269 . 0
3 5
5
2 269 . 0 077 . 0 3 1 3
1 , 3
*

,
_

,
_

,
_

x

Se examina { } 6 , 5 :
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 389


[ ]
( )
096 . 5
5 7
385 . 0
4 6
269 . 0
5 6
269 . 0
5 7
7
3 385 . 0
4 6
6
2 269 . 0
5 6
6
3 269 . 0 077 . 0 3 1 3
1 , 3
*

,
_

,
_

,
_

x

As pues, [ ] 096 . 5 1 , 3 x .
Clculo de [ ] 2 , 2 x y [ ] 2 , 3 x :
[ ] ( ) ( ) ( ) ( ) ( ) ( ) { } 083 . 0 , 20 , 083 . 0 , 19 , 25 . 0 , 18 , 083 . 0 , 15 , 25 . 0 , 15 , 25 . 0 , 10 2

S
[ ] ( ) ( ) ( ) ( ) ( ) ( ) { } 25 . 0 , 9 , 25 . 0 , 10 , 083 . 0 , 12 , 083 . 0 , 15 , 25 . 0 , 15 , 083 . 0 , 19 2

S
[ ] ( ) ( ) ( ) ( ) ( ) {
( ) ( ) ( ) } 083 . 0 , 20 , 083 . 0 , 19 , 25 . 0 , 18
083 . 0 , 15 , 25 . 0 , 15 , 083 . 0 , 12 , 25 . 0 , 10 , 25 . 0 , 9 2 S

Debe buscarse [ ] 2 , 2 x en el intervalo
( )
{ }
( )
{ }
[ ] 15 , 10 ,
2 5

1
]
1


P P
x x , ya que:
( )
{ }
( )
{ }
500 . 0 333 . 0
3
1 2
25 . 0
2
1 :
1
1 :

<


t
P
t X
t
P
t X

( )
{ }
( )
{ }
749 . 0 666 . 0
3
1 2
1 499 . 0
5
1 :
4
1 :

<


t
P
t X
t
P
t X

La secuencia [ ] 2 , 2 S es: [ ] { } 15 , 12 , 10 2 , 2 S .
Se examina { } 12 , 10 :
[ ] 67 . 11
10 15
75 . 0
10 15
15
2 75 . 0 1 2
2 , 2
*

,
_


x
Por lo tanto, [ ] 67 . 11 2 , 2 x .
Debe buscarse [ ] 2 , 3 x en el intervalo
( )
{ }
( )
{ }
[ ] 18 , 15 ,
4 3

1
]
1


P P
x x , ya que:
( )
{ }
( )
{ }
833 . 0 666 . 0
3
1 3
583 . 0
4
1 :
3
1 :

<


t
P
t X
t
P
t X

( )
{ }
( )
{ }
416 . 0 3333 . 0
3
1 3
1 333 . 0
3
1 :
2
1 :

<


t
P
t X
t
P
t X

390 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


La secuencia [ ] 2 , 3 S es:
[ ] { } 18 , 15 2 , 2 S
[ ] 80 . 15
15 19
25 . 0
15 18
75 . 0
15 19
19
2 25 . 0
15 18
18
3 75 . 0 1 3
2 , 3
*

,
_

,
_


x
Con lo cual, [ ] 80 . 15 2 , 3 x .
Resumiendo los resultados obtenidos, el vector x es:

[ ]
[ ]
[ ]
[ ] 00 . 8 1 , 4
10 . 5 1 , 3
95 . 2 1 , 2
00 . 5 1 , 1


x
x
x
x

[ ]
[ ]
[ ]
[ ] 00 . 20 2 , 4
80 . 15 2 , 3
67 . 11 2 , 2
00 . 9 2 , 1

x
x
x
x

Reduccin ( ) ( ) ( )
X X X X
Q P X F P F Q P P X F

,




El problema planteado ahora es el clculo de la representacin interna de la probabilidad
de la variable aleatoria real X condicionada a los parmetros aleatorios reales de entrada
( )
{ } ,...,

dim
1
X
P
X
P P P y a los parmetros aleatorios Booleanos de entrada
( )
{ } ,...,

dim
1
X
Q
X
Q Q Q ,
{ }
X X
Q P
x

y
{ }
X X
Q P
I
x

, siendo conocidas la representacin interna


de la probabilidad del parmetro aleatorio real de entrada P , p , y la representacin
interna de la probabilidad de X condicionada a
X X
P P P

y a
X
Q

,
{ }
X X
Q P P
x

, ,

y
{ }
X X
Q P P
I
x

, ,

. Los vectores
{ }
X X
Q P
x

y
{ }
X X
Q P
I
x

tienen los componentes


{ }
[ ] j k n x
X X
Q P
, , ,

y
{ }
[ ] j k x
X X
Q P
I
, ,

respectivamente y los vectores


{ }
X X
Q P P
x

, ,

y
{ }
X X
Q P P
I
x

, ,

tienen los
componentes
{ }
[ ] j k k n x
X X
Q P P
, , , ,

, ,

y
{ }
[ ] j k k x
X X
Q P P
I
, , ,

, ,

respectivamente.
El mtodo propuesto para calcular la representacin interna de la probabilidad de X
condicionada a
X X
Q P

consiste en descomponer el problema en
( ) ( )
X X
Q P
N

dim

dim
2
problemas resolubles como los del tipo ( ) ( ) ( ) X F P F P X F

, , uno para cada


combinacin de valores de los coeficientes:
( )
( )

'

false true
N k k
X
X
Q
P
, : ,...,
,..., 1 : ,...,

dim
1

dim
1

.
Para un valor determinado cualquiera de cada uno de los ndices que componen los
vectores k y , representado como
1
k y
1
, la representacin interna
( )
X X
Q P P X F

es la representacin interna de una variable aleatoria real, por
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 391


ejemplo
1
X , condicionada a P , es decir, ( ) P X F
1
. Realizando la reduccin
( ) ( ) ( )
1 1
, X F P F P X F

, se obtiene la representacin interna ( )


1
X F , que es igual a
( )
X X
Q P X F

cuando los ndices k y valen
1
k y
1
respectivamente.
10.3.2 Reduccin del condicionamiento de la probabilidad de una
variable aleatoria real respecto a un parmetro aleatorio de
entrada Booleano
Reduccin ( ) ( ) ( ) X F Q F Q X F

,
Se pretende calcular la representacin interna de la probabilidad de la variable aleatoria
real X , x y
I
x , siendo conocidas la representacin interna de la probabilidad del
parmetro aleatorio Booleano de entrada Q,
Q
T , y la representacin interna de la
probabilidad de X condicionada a
X
Q Q ,
{ } Q
x y
{ } Q
I
x .
El conjunto de valores posibles de X cuando { } true Q es la unin de
{ }
[ ] true i
Q
X

intervalos cerrados,
{ }
[ ]
{ }
[ ]
{ }
[ ]
U
true i
j
Q
X
Q
X
Q
X
j true I true I


1 :
, , mientras que el conjunto de
valores posibles de X cuando { } false Q es la unin de
{ }
[ ] false i
Q
X
intervalos
cerrados,
{ }
[ ]
{ }
[ ]
{ }
[ ]
U
false i
j
Q
X
Q
X
Q
X
j false I false I


1 :
, . A partir de estos dos conjuntos de
intervalos cerrados deben calcularse los intervalos cerrados que componen el conjunto de
valores posibles de X , [ ]
U
X
i
j
X X
j I I
1 :
. Para ello puede aplicarse un algoritmo, anlogo al
de la Figura 10.7, al conjunto
{ } Q
X
I
S , definido como el conjunto de todos los intervalos
{ }
[ ] j I
Q
X
, , para false true, : y
{ }
[ ]
Q
X
i j ,..., 1 : . El algoritmo calcula los subconjuntos
{ }
r
I
Q
X
S , con
X
i r ,..., 1 : , tales que su unin es igual a
{ } Q
X
I
S , su interseccin es vaca y adems
los intervalos que componen cada uno de los subconjuntos cumplen que la interseccin
de dos intervalos cualquiera de distintos subconjuntos es vaca y que la unin de todos
los intervalos de un subconjunto es otro intervalo.
Una vez identificados los subconjuntos
{ }
r
I
Q
X
S , con
X
i r ,..., 1 : , se calculan los intervalos de
valores posibles de X , [ ] r I
X
y las componentes [ ] [ ] r x r x
min
, 1 y [ ] [ ] r x r N x
Max
+ , 1
del vector x . Las componentes del vector
I
x , [ ] r x
I
con
X
i r ,..., 1 : , pueden calcularse de
la expresin siguiente:
392 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ]
{ }
[ ]
{ }
[ ]
{ }
( )
{ }
[ ]
{ }
[ ]
{ }


+
r
Q
X
I
Q
X
r
Q
X
I
Q
X
S j false I
j
Q
I Q
S j true I
j
Q
I Q I
j false x - j true x r x
,
que tales
,
que tales
, T 1 , T


Para calcular las restantes componentes del vector x , es decir, [ ] r n x , con N n ,..., 2 : y
X
i r ,..., 1 : , puede emplearse una modificacin del algoritmo mostrado en la Figura 10.8.
Se define el ndice ' r ,
X
i r ' 1 , para unos determinados valores j , como aquel que
satisface:
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ] ' , ' , , , r x r x j x j x
Max min
Q
Max
Q
min
. Tiene la propiedad de ser
nico, ya que un determinado intervalo
{ }
[ ] j I
Q
X
, pertenece a uno y slo un conjunto
{ } { }
X
Q
X
Q
X
i
I I
S S ,...,
1
.
Se cumple:
{ }
[ ]
{ }
{ }
[ ]
[ ]
{ }
[ ]
{ } [ ]
{ }
[ ]
[ ]
{ }
[ ]
{ } E E E E
E E E E E E
' '
,
1 :
, ,
r I r I Q
j I
i
r
r I r I Q
j I
Q
j I
X X
Q
X
X
X X
Q
X
Q
X
P P
P P P


puesto que:
{ }
[ ]
[ ]
{ }
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ]
{ }
[ ]
{ }
[ ] [ ] [ ] [ ] [ ]

'

>

r x r x j x j x
r x r x j x j x
P
Max min
Q
Max
Q
min
Max min
Q
Max
Q
min
r I Q
j I X
Q
X
, , , , si 0
, , , , si 0
E E E
,


Operando la expresin anterior se obtiene:

{ }
[ ]
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ } E
E E
E E E
'
,
'
,
r I
Q
j I
r I Q
j I
X
Q
X
X
Q
X
P
P
P


donde:
{ }
[ ]
{ }
{ }
[ ]
{ } { }
{ }
[ ] { } E , E E E E E
, ,


Q
Q
I Q Q
j I
Q
j I
P j x P P P
Q
X
Q
X

[ ]
{ }
{ }
[ ]
{ }
{ }
[ ]
{ }
{ }
[ ]
{ } { }
{ }
[ ]
{ }
{ }
[ ] { }
{ }
[ ]
{ }



'
'
'
' , '
que tales ' , '
'
' , '
que tales ' , '
' '
' , '
' , '
que tales ' , '
'
' , '
'
E ' , '
E E E
E E
r
Q
X
I
Q
X
r
Q
X
I
Q
X
Q
X
r
Q
X
I
Q
X
Q
X
X
S j I
j
Q
Q
I
S j I
j
Q Q
j I
S j I
j
Q
j I
r I
P j x
P P
E P P


{ }

'

false T
true T
P
Q
Q
Q

si 1
si
E
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 393


Se nota
{ }
[ ] j
Q
X
, la probabilidad:
{ }
[ ]
{ }
[ ]
[ ]
{ }
{ }
[ ] { }
{ }
[ ] { }
{ }
[ ]
{ }


'
' , '
que tales ' , '
'
'
,
E ' , '
E ,
E E E ,
r
Q
X
I
Q
X
X
Q
X
S j I
j
Q
Q
I
Q
Q
I
r I Q
j I
Q
X
P j x
P j x
P j


Se define, para cualquier N n ,..., 1 : :
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
[ ]

'

+ <
E
E
, , 1 , ,
,
1
,
' r I
Q
Q Q
Q
X
Q
X
X
j n x X j n x
P j
N
j



En la Figura 10.9 se muestra un algoritmo, muy similar al de la Figura 10.8, que permite
calcular, para cada valor de r , con
X
i r ,..., 1 : , las 1 N componentes [ ] r q x , , para
N q ,..., 2 : , del vector x .
Algoritmo para el clculo del vector x
Si
{ }
r
I
Q
X
S tiene un nico elemento,
{ }
( ) 1 dim
r
I
Q
X
S , por ejemplo
{ }
[ ]
1 1
, j I
Q
X
, se
cumple: [ ]
{ }
[ ]
1 1
, , , j n x r n x
Q
, para 1 ,..., 1 : + N n .
Si
{ }
r
I
Q
X
S tiene ms de un elemento,
{ }
( ) 1 dim >
r
I
Q
X
S , se definen las siguientes tres
secuencias de parejas del tipo
{ }
[ ]
{ }
[ ] ( ) , , , , j j n x
Q
X
Q
de la forma siguiente:
1. [ ]
( )
{ }
( )
{ }
( )
{ }
{ }
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_


Q
S N X
Q
S N
Q
X
Q
r
Q
X
I
r
Q
X
I
x x r S
dim dim
1 1
, , ... , , es la secuencia
ordenada crecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j n x
Q
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j j n x
Q
X
Q
para
{ }
[ ]
{ }

'

+
r
I
Q
X
Q
X
S j I j
N n
, que tales ,
1 ,..., 2 :

.
2. [ ]
( )
{ }
( )
{ }
( )
{ }
{ }
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_


Q
S N X
Q
S N
Q
X
Q
r
Q
X
I
r
Q
X
I
x x r S
dim dim
1 1
, , ... , , la secuencia
ordenada decrecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j n x
Q
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j j n x
Q
X
Q
para
{ }
[ ]
{ }

'

r
I
Q
X
Q
X
S j I j
N n
, que tales ,
,..., 1 :

.
394 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


3. [ ]
( )
{ }
( )
{ }
( )
( )
{ }
{ }
( )
{ }
{ }

'

,
_

,
_

,
_

,
_

,
_

+
Q
S N X
Q
S N
Q
X
Q
r
Q
X
I
r
Q
X
I
x x r S
dim 1 dim 1
1 1
, , ... , , la secuencia
ordenada crecientemente, de acuerdo con el valor de los elementos
{ }
[ ] j n x
Q
, , , de las parejas
{ }
[ ]
{ }
[ ] ( ) , , , , j j n x
Q
X
Q
para
{ }
[ ]
{ }

'

+
r
I
Q
X
Q
X
S j I j
N n
, que tales ,
1 ,..., 1 :

.
Debe buscarse [ ] r q x , en el intervalo
[ ] ( )
{ }
[ ] ( )
{ }
1
]
1


Q
q
Q
q
x x

, , donde los enteros [ ] q y
[ ] q son aquellos que satisfacen:
( )
{ }
[ ]
( )
{ }
[ ]

<
q
t
Q
t X
q
t
Q
t X
N
q


1 :
1
1 :
1

( )
{ }
[ ]
( )
{ }
[ ]

<
q
t
Q
t X
q
t
Q
t X
N
q


1 :
1
1 :
1
1
ya que:
[ ] ( )
{ }
[ ] [ ] { }
N
q
r x X r x x X P
Max min
Q
q
1




[ ] ( )
{ }
[ ] [ ] { }
N
q
r x X r x x X P
Max min
Q
q
1




Si se cumple
[ ] ( )
{ }
[ ] ( )
{ } Q
q
Q
q
x x



, entonces [ ]
[ ] ( )
{ }
[ ] ( )
{ } Q
q
Q
q
x x r q x



, ,
En caso contrario, se define la secuencia [ ] r q S , , [ ] [ ] r S r q S , , de modo que
contenga los elementos
{ }
[ ] j n x
Q
, , de la secuencia [ ] r S que satisfagan:

[ ] ( )
{ } { }
[ ]
[ ] ( )
{ } Q
q
Q Q
q
x j n x x



, ,
ordenados de la misma forma que en [ ] r S . Para calcular [ ] r q x , deben
examinarse las parejas de elementos consecutivos de la secuencia [ ] r q S , . Se
notan
( )
{ }
( )
{ }
{ } ,
1
Q
s
Q
s
x x
+
dos elementos consecutivos diferentes de [ ] r q S , .
La probabilidad acumulada de X , para valores
( )
{ }
( )
{ } Q
s
Q
s
x x x
1 +
< ,
condicionada al evento
[ ]
[ ] [ ] { } E r x X r x
Max min r I
X
es:
REDUCCIN DEL CONDICIONAMIENTO DE LA PROBABILIDAD 395


[ ] [ ] { }
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]

'

+ <

'

1
]
1

,
_

+
+

+
+
j i x x j i x
S j I
j
Q Q
Q Q
X
j N x x
S j I
j
Q
X Max min
Q Q
r
Q
X
I
Q
X
Q
r
Q
X
I
Q
X
j i x j i x
x j i x
i
N
j
j r x X r x x X P
, , 1 , ,
,
que tales ,
, , 1
,
que tales ,
, , , , 1
, , 1 ,
,


El valor de i se calcula, para cada trmino del segundo sumatorio, de la
condicin:

{ }
[ ]
{ }
[ ] j i x x j i x
Q Q
, , 1 , , + <
Imponiendo que la probabilidad condicionada valga
N
q 1
se obtiene un valor
de X :
[ ]
{ }
[ ]
{ }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] { }
[ ]
{ }
{ }
[ ]
{ }
[ ]

'

+ <

'

+ <

'

+ <

'

1
]
1

,
_

+
+

j i x x j i x
S j I
j
Q Q
Q
X
j i x x j i x
S j I
j
Q Q
Q
Q
X
j i x x j i x
S j I
j
Q Q
Q
X
j N x x
S j I
j
Q
X
Q Q
r
Q
X
I
Q
X
Q Q
r
Q
X
I
Q
X
Q Q
r
Q
X
I
Q
X
Q
r
Q
X
I
Q
X
j i x j i x
j
j i x j i x
j i x
i j
j i x j i x
j
j N q
r q x
, , 1 , ,
,
que tales ,
, , 1 , ,
,
que tales ,
, , 1 , ,
,
que tales ,
, , 1
,
que tales ,
*
, , , , 1
,
, , , , 1
, , 1
,
, , , , 1
,
, 1
,


que coincide con [ ] r q x , si satisface:
( )
{ }
[ ]
( )
{ } Q
s
Q
s
x r q x x
1
*
,
+
<
en caso contrario, debe probarse con la siguiente pareja de elementos
consecutivos diferentes
( )
{ }
( )
{ }
{ } ,
1
Q
s
Q
s
x x
+
de [ ] r q S , .
Figura 10.9 Algoritmo para el clculo del vector x .
Reduccin ( ) ( ) ( )
X X X X
Q P X F Q F Q Q P X F

,




Se desea calcular la representacin interna de la probabilidad de la variable aleatoria real
X condicionada a los parmetros aleatorios reales de entrada
( )
{ } ,...,

dim
1
X
P
X
P P P y a
los parmetros aleatorios Booleanos de entrada
( )
{ } ,...,

dim
1
X
Q
X
Q Q Q ,
{ }
X X
Q P
x

y
396 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
X X
Q P
I
x

, siendo conocidas la representacin interna de la probabilidad del parmetro


aleatorio Booleano de entrada Q,
Q
T , y la representacin interna de la probabilidad de
X condicionada a
X
P

y a
X X
Q Q Q

,
{ } Q Q P
X X
x
,

y
{ } Q Q P
I
X X
x
,

.
El mtodo para resolver este problema consiste en reducir el condicionamiento respecto
al parmetro Q para cada una de las
( ) ( )
X X
Q P
N

dim

dim
2 posibles combinaciones de valores
de los vectores de ndices k y . Cada uno de estos
( ) ( )
X X
Q P
N

dim

dim
2 problemas es del
tipo ( ) ( ) ( ) X F Q F Q X F , .
10.3.3 Reduccin del condicionamiento de la probabilidad de una
variable aleatoria Booleana
Reduccin ( ) ( ) ( )
A A A A
Q P A F P F P Q P A F

,




La reduccin en el condicionamiento, respecto a un parmetro aleatorio de entrada real,
P , de la probabilidad de una variable aleatoria Booleana, A, se realiza de la forma
siguiente:

{ }
[ ]
{ }
[ ]

N
k
A A
Q P P
A A A
Q P
A
k k T
N
k T
A A A A
1 :

, ,

,

, ,
1
,
Donde los ndices toman los valores:
( )
( )

'

false true
N k k
A
A
Q A
A
P A
A
, : ,...,
,..., 1 : ,...,

,dim
1 ,

,dim
1 ,

.
Reduccin ( ) ( ) ( )
A A A A
Q P A F Q F Q Q P A F

,




La reduccin en el condicionamiento respecto a un parmetro aleatorio de entrada
Booleano, Q, de la probabilidad de una variable aleatoria Booleana A se realiza de la
forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]( )
Q A A
Q Q P
A Q A A
Q Q P
A A A
Q P
A
k k k
A A A A A A
+ 1 , false , , true , ,

, ,

, ,

,



Donde los ndices toman los valores:
( )
( )

'

false true
N k k
A
A
Q A
A
P A
A
, : ,...,
,..., 1 : ,...,

,dim
1 ,

,dim
1 ,

.
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 397

10.4 OPERACIONES ARITMTICAS SOBRE VARIABLES
ALEATORIAS REALES
10.4.1 Suma y producto de una variable determinista y una aleatoria
Suma ( ) ( )
X X
X
X X
Q P Y F Q P X F

,


+

La operacin suma con una constante real transforma un intervalo en otro intervalo y
transforma dos intervalos disjuntos en intervalos disjuntos. Adems, la probabilidad de
que X satisfaga
{ }
[ ]
{ }
[ ] { } j k n x X j k n x
X X X X
Q P Q P
, , , 1 , , ,

,

,

+ < , condicionada a que


los parmetros aleatorios de entrada
X X
Q P

satisfagan
( )
( )
( )
( )
X
Q
X
Q
X
P
X
P
P P
Q Q
k
I
k
I

dim

dim
1
1

dim

dim
1
1
E ... E E ... E

es
la misma que la probabilidad de que Y , definida como X Y + , satisfaga
{ }
[ ]
{ }
[ ] { } + + < + j k n x Y j k n x
X X X X
Q P Q P
, , , 1 , , ,

,

,

condicionada a los mismos


eventos. Por ello, la representacin interna de la probabilidad de Y condicionada a
X X
Q P

se calcula de la forma siguiente:

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]


+

j k n x j k n y
j k y j k x
k i k i
X X X X
X X X X
X X X X
Q P Q P
Q P
I
Q P
I
Q P
Y
Q P
X
, , , , , ,
, , , ,
, ,

,

,

,

,

,

,

donde:
( )
( )
{ }
[ ]

'


, ,..., 1 :
1 ,..., 1 :
, : ,...,
,..., 1 : ,...,

dim
1

dim
1
k i j
N n
false true
N k k
X X
X
X
Q P
X
Q
P

Producto ( ) ( )
X X
X
X X
Q P Y F Q P X F

,





La operacin producto por una constante real distinta de cero transforma un intervalo
en otro intervalo y transforma dos intervalos disjuntos en intervalos disjuntos. La
probabilidad de que X satisfaga
{ }
[ ]
{ }
[ ] { } j k n x X j k n x
X X X X
Q P Q P
, , , 1 , , ,

,

,

+ < ,
condicionada a que los parmetros aleatorios de entrada
X X
Q P

satisfagan
( )
( )
( )
( )
X
Q
X
Q
X
P
X
P
P P
Q Q
k
I
k
I

dim

dim
1
1

dim

dim
1
1
E ... E E ... E

, es la misma que la probabilidad de que Y , definida como


X Y y condicionada a los mismos eventos, satisfaga:

{ }
[ ]
{ }
[ ] { }
{ }
[ ]
{ }
[ ] { }

'

< < +
+ <
0 si , , , , , , 1
0 si , , , 1 , , ,

,

,

,

,



j k n x Y j k n x
j k n x Y j k n x
X X X X
X X X X
Q P Q P
Q P Q P

398 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Con lo cual, si 0 , la representacin interna de Y condicionada a
X X
Q P

se
calcula de la forma siguiente:

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ } { }
[ ] [ ]
{ }
[ ]
{ }
[ ]
{ } { }
[ ] [ ]

'

< + +
>

'

< +
>

0 si 1 , , , , 2
0 si , , ,
, , ,
0 si 1 , , ,
0 si , ,
, ,
, ,

,

,

,

,

,

,


j k i k n N x
j k n x
j k n y
j k i k x
j k x
j k y
k i k i
X X X X
X X
X X
X X X X
X X
X X
X X X X
Q P
X
Q P
Q P
Q P
Q P
X
Q P
I
Q P
I Q P
I
Q P
X
Q P
Y

Si 0 , la variable Y tiene una probabilidad igual a uno de valer cero:

{ }
[ ]
{ }
[ ]
{ }
[ ] 0 , ,
1 ,
1 ,

k n y
k y
k i
X X
X X
X X
Q P
Q P
I
Q P
Y

Los ndices pueden tomar los siguientes valores:

( )
( )
{ }
[ ]

'


, ,..., 1 :
1 ,..., 1 :
, : ,...,
,..., 1 : ,...,

dim
1

dim
1
k i j
N n
false true
N k k
X X
X
X
Q P
X
Q
P

10.4.2 Suma de dos variables aleatorias
Introduccin
En este apartado se aborda el problema del clculo de la representacin interna de una
variable aleatoria real, X , definida como suma de otras dos, X
1
y X
2
, a partir de la
representacin interna de stas. Para ello es preciso distinguir dos casos: aquel en el cual
los sumandos son estadsticamente independientes entre s y aquel en el cual son
dependientes.
Si las variables aleatorias reales X
1
y X
2
son estadsticamente independientes, pueden
plantearse los problemas 1 y 2 de la Tabla 10.7. Si son estadsticamente dependientes, los
problemas 3 y 4. En los problemas 1 y 3 se pretende calcular la probabilidad total de X ,
mientras que en los problemas 2 y 4 se pretende calcular su probabilidad condicionada.
En general, cuando los sumandos son estadsticamente dependientes, debe realizarse la
reduccin en el condicionamiento a continuacin de la suma, a fin de obtener la funcin
de probabilidad de la variable suma, X , condicionada nicamente a un determinado
subconjunto de los parmetros aleatorios de entrada de los que depende.
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 399

1 ( ) ( ) ( ) X F X F X F
X X X

+
2 1
2 1
,
( ) ( )
2 1 2 1
X X X X
Q Q P P
2
( )
( )
( )
( )
( )

2 1
2
2
1
1
2 1 X X
X X X
X X
X X
X X
X X
Q P X F
Q Q
P P
X F
Q Q
P P
X F

,
_

,
_


+

2 1

X X X X
P P P P ,
2 1

X X X X
Q Q Q Q , ( ) ( )
2 1 2 1
X X X X
Q Q P P
3
( )
( )
( )
( )
( )
( )
( ) X F
Q Q
P P
X F
Q Q
P P
X F
Q Q
P P
X F
X X
X X
X X X
X X
X X
X X
X X






,


2 1
2 1
2 1
2 1
2 1
2 1
2 1
2 1

,
_

,
_

,
_


+

( ) ( )
2 1 2 1
X X X X
Q Q P P
4
( )
( )
( )
( )
( )
( )
( )

2 1
2 1
2 1
1 2
1 2
2 1
2 1
2 1
X X
X X X
X X X
X X X
X X X
X X X
X X X
X X X
Q P X F
Q Q Q
P P P
X F
Q Q Q
P P P
X F
Q Q Q
P P P
X F

,
_

,
_

,
_

+

2 1

X X X X
P P P P ,
2 1

X X X X
Q Q Q Q , ( ) ( )
2 1 2 1
X X X X
Q Q P P
Tabla 10.7 Planteamientos de la suma de dos variables aleatorias.
La operacin suma de los problemas 2, 3 y 4 puede reducirse al problema 1, con lo cual,
resolviendo el primer problema, quedan resueltos los otros tres. A continuacin se
plantea la forma de expresar los problemas 2, 3 y 4 como una sucesin de problemas del
tipo del problema 1.
Considrese el problema 2. Se introduce la siguiente notacin:
X X X
P P P

1 1
,
X X X
Q Q Q

1 1
,
X X X
P P P

2 2
,
X X X
Q Q Q

2 2

A cada uno de estos conjuntos de parmetros aleatorios de entrada se le asocia un vector
de ndices:
1
1

k P
X
,
1
1


X
Q ,
2
2

k P
X
,
2
2


X
Q . Para cada una de las
( ) ( ) ( ) ( )
2 1 2 1

dim

dim

dim

dim
2
X X X X
Q Q P P
N
+ +
posibles combinaciones de valores de los vectores de
ndices
2 1 2 1
, , , k k , operando la representacin interna de la probabilidad de
1
X ,
400 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


condicionada a que se satisfagan los eventos especificados por los ndices
1 1
, k , con la
representacin interna de la probabilidad de
2
X , condicionada a que se satisfagan los
eventos especificados por los ndices
2 2
, k , se obtiene la representacin interna de la
probabilidad de X condicionada a que se satisfagan todos los eventos anteriores
(especificados por los ndices
2 1 2 1
, , , k k ). Cada una de estas
( ) ( ) ( ) ( )
2 1 2 1

dim

dim

dim

dim
2
X X X X
Q Q P P
N
+ +
sumas es un problema como el nmero 1 de la Tabla 10.7.
Considrese el problema 3. Se introduce la siguiente notacin:

2 1 2 1
X X X X
P P P ,
2 1 2 1
X X X X
Q Q Q
A cada uno de estos conjuntos de parmetros aleatorios de entrada se le asocia un vector
de ndices: k P
X X

2 1
,
2 1
X X
Q . Se realiza la siguiente aproximacin (es una
suposicin falsa) para sumar las dos variables. Para cada una de las
( ) ( )
2 1 2 1

dim

dim
2
X X X X
Q P
N
posibles combinaciones de valores de los vectores de ndices , k , se opera la
representacin interna de la probabilidad de
1
X , condicionada a que se satisfagan los
eventos especificados por los ndices , k , con la representacin interna de la
probabilidad de
2
X , condicionada a que se satisfagan los eventos especificados por los
ndices , k , como si se tratara de dos variables estadsticamente independientes, para
obtener la representacin interna de X condicionada a que se satisfagan los eventos
especificados por los ndices , k . Cada una de estas
( ) ( )
2 1 2 1

dim

dim
2
X X X X
Q P
N sumas es un
problema como el nmero 1 de la Tabla 10.7.
Considrese el problema 4. Se introduce la siguiente notacin:

2 1 2 1
X X X X
P P P ,
2 1 2 1
X X X X
Q Q Q
( )
2 1 1 1

X X X X X
P P P P , ( )
2 1 2 2

X X X X X
P P P P
( )
2 1 1 1

X X X X X
Q Q Q Q , ( )
2 1 2 2

X X X X X
Q Q Q Q
A cada uno de estos conjuntos de parmetros aleatorios de entrada se le asocia un vector
de ndices:
12
2 1
k P
X X
,
12
2 1

X X
Q ,
1
1

k P
X
,
1
1


X
Q ,
2
2

k P
X
,
2
2


X
Q .
Para cada una de las
( ) ( ) ( ) ( ) ( ) ( )
2 1 2 1 2 1 2 1

dim

dim

dim

dim

dim

dim
2
X X X X X X X X
Q Q Q P P P
N
+ + + +
posibles
combinaciones de valores de los vectores de ndices
12 2 1 12 2 1
, , , , , k k k , se opera la
representacin interna de la probabilidad de
1
X , condicionada a que se satisfagan los
eventos especificados por los ndices
12 1 12 1
, , , k k , con la representacin interna de la
probabilidad de
2
X , condicionada a que se satisfagan los eventos especificados por los
ndices
12 2 12 2
, , , k k , como si se tratara de dos variables estadsticamente
independientes, para obtener la representacin interna de la probabilidad de X
condicionada a que se satisfagan todos los eventos anteriores (especificados por los
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 401

ndices
12 2 1 12 2 1
, , , , , k k k ). Cada una de estas
( ) ( ) ( ) ( ) ( ) ( )
2 1 2 1 2 1 2 1

dim

dim

dim

dim

dim

dim
2
X X X X X X X X
Q Q Q P P P
N
+ + + +
sumas es un problema como el nmero 1
de la Tabla 10.7.
A continuacin se van a proponer los algoritmos necesarios para la resolucin del
problema 1: ( ) ( ) ( ) X F X F X F
X X X

+
2 1
2 1
, . En primer lugar se resolver el problema
cuando el conjunto de valores posibles de
1
X y el de
2
X ,
1
X
I e
2
X
I respectivamente,
sean ambos conexos. Seguidamente se resolver el caso general, en que
1
X
I e
2
X
I no
son conexos, empleando para ello los resultados obtenidos en el caso particular anterior.
Suma ( ) ( ) ( ) X F X F X F
X X X

+
2 1
2 1
, .
1
X y
2
X independientes.
1
X
I e
2
X
I conexos
Las variables aleatorias reales sumando X
1
y X
2
son estadsticamente independientes
entre s y poseen conjuntos de valores posibles conexos, es decir, [ ]
Max min X
x x I
, 1 , 1
,
1
e
[ ]
Max min X
x x I
, 2 , 2
,
2
. En consecuencia, la variable aleatoria X , X X X +
1 2
, puede
tomar valores en el intervalo [ ] [ ]
Max Max min min Max min X
x x x x x x I
, 2 , 1 , 2 , 1
, , + + . A
continuacin se describe el procedimiento para calcular la representacin interna de X .
Cada par de valores { } x x
1 2
, de las variables aleatorias { } X X
1 2
, puede representarse
como un punto en el plano X X
1 2
. El eje vertical corresponde a la variable X
1
y en el
horizontal a la variable X
2
. Representando en cada eje los valores de las componentes
del correspondiente vector representacin interna, se obtiene un mallado en el plano
X X
1 2
como el mostrado en la Figura 10.10. Dado que X
1
y X
2
son independientes
estadsticamente entre s, el par de valores { } x x
1 2
, de las variables aleatorias { } X X
1 2
, ,
puede estar incluido con igual probabilidad en cualquiera de los N
2
rectngulos
[ ]
[ ]
,...,N ,n n
n x X n x
n x X n x
R
n n
1 : para todo
1 ] [
1 ] [
2 1
2 2 2 2 2
1 1 1 1 1
2 1

'

+ <
+ <

y esta probabilidad es igual a:
[ ]
[ ]
[ ] { } [ ] { }
,...,N ,n n
N
n x X n x P n x X n x P
n x X n x
n x X n x
P
1 : para todo
1
1 ] [ 1 ] [
1 ] [
1 ] [
2 1 2
2 2 2 2 2 1 1 1 1 1
2 2 2 2 2
1 1 1 1 1

+ < + <

'

+ <
+ <


402 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


X
1
X
2
x N
1
1 [ ] +
x
1
4 [ ]
x
1
3 [ ]
x
1
1 [ ]
x
1
5 [ ]
x
1
6 [ ]
x
1
2 [ ]
.
.
.
x
2
1 [ ] x
2
2 [ ] x
2
3 [ ] x N
2
1 [ ] + x
2
4 [ ] x
2
5 [ ]
. . .
Rectngulos equiprobables

Figura 10.10 Rectngulos equiprobables.
La representacin grfica, en el plano X X
1 2
, del conjunto de valores { } x x
1 2
, de las
variables aleatorias { } X X
1 2
, cuya suma produce un determinado valor x de la variable
aleatoria X X X +
1 2
, es una recta de pendiente -1: x x x x x x + +
1 2 1 2
.
Se establece la siguiente notacin:
] [ ] [
2 2 1 1
2 1
n x n x vR
n n
+ Suma de las coordenadas del vrtice inferior izquierdo
del rectngulo
2 1
n n
R , { } ] [ ], [
2 2 1 1
n x n x .
] 1 [ ] 1 [
2 2 1 1
2 1
+ + + n x n x VR
n n
Suma de las coordenadas del vrtice superior derecho
del rectngulo
2 1
n n
R , { } ] 1 [ ], 1 [
2 2 1 1
+ + n x n x .

Se cumple
1 , 1
2 1 2 1
+ +

n n n n
vR VR . Definida una recta en el plano X X
1 2
, los rectngulos
equiprobables pueden clasificarse en tres tipos: los situados completamente bajo la recta,
los situados completamente sobre la recta y los cortados por la recta. Para establecer la
clasificacin se hace uso de las definiciones anteriores de las sumas de las coordenadas
de los vrtices.
Se dice que el rectngulo
2 1
n n
R :
Est completamente contenido en el semiplano, del plano X X
1 2
, situado sobre la
recta x x x
1 2
+ si y slo si x vR
n n

2 1
.
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 403

Est completamente contenido en el semiplano, del plano X X
1 2
, situado bajo la
recta x x x
1 2
+ si y slo si x VR
n n

2 1
.
Es cortado por la recta x x x
1 2
+ si y slo si
2 1 2 1
n n n n
VR x vR < < .
La recta x x x
1 2
+ divide el plano X X
1 2
en dos semiplanos. La probabilidad de
que el valor de la variable aleatoria X X X +
1 2
sea inferior a uno dado x ,
{ } ( ) P X x F x
X
, es igual a la probabilidad de que { } x x
1 2
, se encuentre en el
semiplano del plano X X
1 2
situado bajo la recta x x x
1 2
+ , que es igual a la suma
de la probabilidad de que se encuentre en los rectngulos situados completamente bajo la
recta ms la probabilidad (desconocida) de que se encuentre en la parte bajo la recta de
los rectngulos cortados por la misma. Para el clculo de estas probabilidades se
establece la siguiente notacin:
( ) x nR

Nmero de rectngulos
2 1
n n
R , con N n n ,..., 1 : ,
2 1
, completamente contenidos en
el semiplano del plano X X
1 2
situado bajo la recta x x x
1 2
+ .
( ) x nR

Nmero de rectngulos
2 1
n n
R , con N n n ,..., 1 : ,
2 1
, completamente contenidos en
el semiplano del plano X X
1 2
situado sobre la recta x x x
1 2
+ .
( ) x nR
b
Nmero de rectngulos
2 1
n n
R , con N n n ,..., 1 : ,
2 1
, cortados por la recta
x x x
1 2
+ .

La probabilidad de que el punto { } x x
1 2
, se encuentre bajo la recta x x x
1 2
+ es al
menos
( )
2
N
x nR

y a lo sumo
( ) ( )
2
N
x nR x nR
b
+

: { }
1
]
1

+


2 2
) ( ) (
,
) (
N
x nR x nR
N
x nR
x X P
b
.
A fin de realizar una primera acotacin de las componentes de x , se definen los vectores
cota superior x

y cota inferior x

como aquellos que satisfacen las siguientes


condiciones:
{ }

'

Max
min
x N x
N n
N
n
n x X P
x x
] 1 [
2 para
1
] [
] 1 [
{ }

'

Max
min
x N x
N n
N
n
n x X P
x x
] 1 [
2 para
1
] [
] 1 [

El conjunto de valores posibles de X es un intervalo cerrado, por lo cual la funcin de
probabilidad de X es creciente en el intervalo y por ello:
404 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


( )
( )
( )
( ) ( ) ( ) ] [ ] [ ] [ ] [ ] [ ] [
1
] [
1
] [
1
] [
n x n x n x n x F n x F n x F
N
n
n x F
N
n
n x F
N
n
n x F
X X X
X
X
X


es decir:

'

+ + +





Max
min
x N x N x N x
N n n x n x n x
x x x x
] 1 [ ] 1 [ ] 1 [
2 para ] [ ] [ ] [
] 1 [ ] 1 [ ] 1 [

El problema de calcular las componentes del vector cota superior ] [n x

puede
plantearse como: encontrar un ] [n x

tal que bajo la recta ] [


2 1
n x x x

+ haya al
menos ( ) 1 n N rectngulos completos. Para ello puede usarse el algoritmo descrito en
la Figura 10.11.
Algoritmo para calcular un vector cota superior
Ordenar los N
2
valores de
2 1
n n
VR en orden creciente, del ms pequeo,
VR x x
11 1 2
2 2 + [ ] [ ] , al mayor, VR x N x N
NN
+ + +
1 2
1 1 [ ] [ ]. Puede suceder que haya dos
o mas valores de la suma de las coordenadas del vrtice superior derecho de los
rectngulos que sean iguales, es decir, que satisfagan x x x
1 2
+ para un mismo valor
de x . Es indiferente como se ordenen entre s estos vrtices. Se representan
( ) ( )
( )
VR VR VR
N
1 2
2
, ,..., los valores de
2 1
n n
VR ordenados crecientemente. Un posible vector
cota superior,

x , es el definido de la forma siguiente:


( ) ( )

'

Max
n N
min
x N x
N n VR n x
x x
] 1 [
2 para ] [
] 1 [
1

Figura 10.11 Algoritmo para el clculo de un vector cota superior.
El problema de calcular un valor de las componentes ] [n x

de un vector cota inferior


puede plantearse como: encontrar un ] [n x

tal que la suma de los rectngulos


completos bajo la recta ] [
2 1
n x x x

+ mas los rectngulos cortados por ella sea, a lo
sumo, ( ) 1 n N . Esto es equivalente a: encontrar un ] [n x

tal que el nmero de


rectngulos completos sobre la recta ] [
2 1
n x x x

+ sea al menos
( ) ( ) 1 1
2
+ n N N n N N . Para calcular un vector cota inferior puede usarse el
algoritmo descrito en la Figura 10.12. Se ha tenido en cuenta que si se ordenan
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 405

decrecientemente los N
2
valores de
2 1
n n
vR , el elemento que ocupa la posicin
( ) 1 + n N N es el mismo que ocupa la posicin ( ) 1 1 + n N si se ordenan
crecientemente.
Algoritmo para calcular un vector cota inferior
Ordenar los N
2
valores de
2 1
n n
vR en orden creciente, del ms pequeo,
vR x x
11 1 2
1 1 + [ ] [ ], al mayor, vR x N x N
NN
+
1 2
[ ] [ ] . Puede suceder que haya dos o ms
valores de la suma de las coordenadas del vrtice inferior izquierdo de los rectngulos
que sean iguales. Es indiferente como se ordenen entre s estos vrtices.
( ) ( )
( )
vR vR vR
N
1 2
2
, ,..., representa los N
2
valores de
2 1
n n
vR ordenados crecientemente. Un
posible vector

x es:
( ) ( )

'

Max
n N
min
x N x
N n vR n x
x x
] 1 [
2 para ] [
] 1 [
1 1

Figura 10.12 Algoritmo para el clculo de un vector cota inferior.
A continuacin se muestra un ejemplo de aplicacin de los algoritmos para la
determinacin de los vectores cota superior y cota inferior. Supngase que las variables
aleatorias reales X
1
, X
2
pueden tomar valores en los intervalos [ ] [ ] 0 . 2 , 5 . 0 ,
, 1 , 1

Max min
x x
y [ ] [ ] 7 . 2 , 5 . 0 ,
, 2 , 2

Max min
x x respectivamente y que sus vectores representacin interna,
con 4 N , son: ( ) 0 . 2 , 6 . 1 , 3 . 1 , 0 . 1 , 5 . 0
1
x y ( ) 7 . 2 , 2 . 2 , 7 . 1 , 2 . 1 , 5 . 0
2
x . Para
calcular el vector x

de la variable aleatoria X X X +
1 2
, deben ordenarse
2 1
n n
VR
crecientemente: {2.2, 2.5, 2.7, 2.8, 3.0, 3.2, 3.2, 3.3, 3.5, 3.7, 3.7, 3.8, 4.0, 4.2, 4.3,
4.7}. Se obtiene:
[ ] [ ] { }
[ ]
( )
[ ] { }
[ ]
( )
[ ] { }
[ ]
( )
[ ] { }
[ ] [ ] { }
16
16
5 7 . 4 5
16
12
4 8 . 3 4
16
8
3 3 . 3 3
16
4
2 8 . 2 2
0 1 0 . 1 1
12
8
4










x X P x x
x X P VR x
x X P VR x
x X P VR x
x X P x x
Max
min

En la Figura 10.13 se representan los vrtices superior derecho de los rectngulos, la
suma de sus coordenadas y las rectas [ ] n x x x

+
2 1
bajo las cuales hay al menos
( ) 1 n N rectngulos completos: [ ] ( ) ( ) 1

n N n x n .
406 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


X
1
X
2
x
1
4 16 [ ] .
x
1
3 13 [ ] .
x
1
1 05 [ ] .
x
1
5 20 [ ] .
x
1
2 10 [ ] .
x
2
1 05 [ ] . x
2
2 12 [ ] . x
2
3 17 [ ] . x
2
4 22 [ ] . x
2
5 27 [ ] .
VR
14
3 2 .
0 . 1
min
x
2.8
2.5
2.2
3.7
3.3
3.0
2.7
4.2 4.7
3.8
3.5
3.2
4.3
4.0
3.7
x x
1 2
10 + . x x
1 2
28 + .
x x
1 2
33 + . x x
1 2
38 + . x x
1 2
47 + .

Figura 10.13 Ejemplo de clculo de un vector cota superior.
Para calcular el vector x

se ordena vR
ij
crecientemente: {1.0, 1.5, 1.7, 1.8, 2.1, 2.2,
2.2, 2.5, 2.7, 2.7, 2.8, 3.0, 3.2, 3.3, 3.5, 3.8}. Se obtiene:
[ ] [ ] { }
[ ]
( )
[ ] { }
[ ]
( )
[ ] { }
[ ]
( )
[ ] { }
[ ] [ ] { }
16
16
5 7 . 4 5
16
12
4 2 . 3 4
16
8
3 7 . 2 3
16
4
2 1 . 2 2
0 1 0 . 1 1
13
9
5










x X P x x
x X P vR x
x X P vR x
x X P vR x
x X P x x
Max
min

En la Figura 10.14 se representan los vrtices inferior izquierdo de los rectngulos
equiprobables en el plano X X
1 2
, la suma de sus coordenadas y las rectas
[ ] n x x x

+
2 1
tales que el nmero de rectngulos completos bajo la recta ms los
cortados por la misma vale a lo sumo ( ) 1 n N , [ ] ( ) [ ] ( ) ( ) 1 +

n N n x n n x n
b
, o,
equivalentemente, el nmero de rectngulos completos sobre la recta es
[ ] ( ) ( ) 1
2


n N N n x n .
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 407

X
1
X
2
x
1
4 16 [ ] .
x
1
3 13 [ ] .
x
1
1 05 [ ] .
x
1
5 20 [ ] .
x
1
2 10 [ ] .
x
2
1 05 [ ] . x
2
2 12 [ ] . x
2
3 17 [ ] . x
2
4 22 [ ] . x
2
5 27 [ ] .
vR
14
21 .
7 . 4
Max
x
2.8
2.5
2.2 1.5
3.3
3.0
2.7
1.8
2.2
3.8
3.5
3.2
1.0 1.7 2.7
x x
1 2
10 + . x x
1 2
21 + .
x x
1 2
27 + . x x
1 2
32 + . x x
1 2
47 + .

Figura 10.14 Ejemplo de clculo de un vector cota inferior.
Representando { } ( ) ( ) P X x F x p x F p
X X

1
, pueden resumirse los resultados
obtenidos de la forma siguiente (ver Figura 10.15):
{ } { } ( )
{ } { } ( )
{ } { } ( )
{ } { } ( )
P X P X F
P X P X F
P X P X F
P X P X F
X
X
X
X



10 0 00 10 000 10 0 0
28 0 25 21 0 25 21 0 25 28
33 050 2 7 050 2 7 050 33
38 0 75 32 0 75 32 0 75 3
1
1
1
. . . . . .
. . . . . . .
. . . . . . .
. . . . . .
,
,
,
,
{ } { } ( )
.
. . . . . .
8
4 7 100 4 7 100 47 10 P X P X F
X
,

En la Figura 10.16 se muestra un algoritmo para realizar la ordenacin creciente de la
suma de los vrtices superior derecho de los rectngulos,
2 1
n n
VR (un algoritmo anlogo
permite ordenar crecientemente la suma de las coordenadas de los vrtices inferior
izquierdo). El algoritmo hace uso de dos estructuras de almacenamiento, una lista
provisional auxiliar y una lista definitiva donde se van guardando en orden creciente los
vrtices
2 1
n n
VR .

408 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


0.00 1.0 2.0 3.0 4.0 5.0
0.25
0.50
0.75
1.00
( ) F x
X
x
3.8
3.2
3.3
2.8
2.7
2.1
4.7
1.0

Figura 10.15 Acotacin de las componentes del vector representacin interna de X .
Algoritmo para ordenar crecientemente los vrtices
2 1
n n
VR .
1 Inicializacin. Guardar VR
11
en la lista definitiva. Guardar VR
12
y VR
21
,
ordenados, en la lista provisional.
2 Escoger el
2 1
n n
VR menor de la lista provisional, aadirlo a la lista definitiva y
eliminarlo de la lista provisional.
3 Aadir a la lista provisional, ocupando en ella el orden correspondiente, el
2 1
n n
VR
situado a la derecha y el situado encima del escogido en el paso anterior,
suponiendo que existan y que no hayan sido ya incluidos en la lista. Es decir, si
en el paso anterior se movi
2 1
n n
VR de la lista provisional a la definitiva, aadir
ahora
2 1
, 1 n n
VR
+
y
1 ,
2 1
+ n n
VR a la lista provisional. Naturalmente, si alguno de ellos
no existe, no es aadido: si N n
1
,
2 1
, 1 n n
VR
+
no existe y si N n
2
,
1 ,
2 1
+ n n
VR no
existe. Si
2 1
, 1 n n
VR
+
o
1 ,
2 1
+ n n
VR ya ha sido anteriormente aadido a la lista, todava
estar en ella, ya que
2 1 2 1
, 1 , n n n n
VR VR
+
< y
1 , ,
2 1 2 1
+
<
n n n n
VR VR , no volvindose a
aadir de nuevo.
4 Si la lista provisional est vaca, terminar. En caso contrario ir a 2.
Figura 10.16 Algoritmo para ordenar crecientemente los vrtices
2 1
n n
VR .
Si no se realiza ninguna hiptesis acerca del modo en que se comportan las funciones de
probabilidad acumulada de X
1
y X
2
para valores de X
1
y X
2
en los intervalos entre
elementos consecutivos de sus vectores representacin interna, slo puede acotarse, no
estimarse, la funcin de probabilidad acumulada de la variable aleatoria, X X X +
1 2
.
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 409

Para poder calcular la representacin interna de X es necesario establecer
(arbitrariamente) el criterio de interpolacin para las funciones de probabilidad
acumulada de X
1
y X
2
. Arbitrariamente se escoge interpolar con orden cero la densidad
de probabilidad y con orden uno la funcin de probabilidad acumulada. Esto permite
estimar la probabilidad de que el punto { } x x
1 2
, est situado en una determinada fraccin
de un rectngulo
2 1
n n
R dado.
Para calcular la proporcin del rea del rectngulo
2 1
n n
R que queda bajo la recta
x x x +
2 1
, que lo corta, esto es ( ) ( ) ( ) ( ) 1 1
2 2 1 1 2 2 1 1
+ + + < < + n x n x x n x n x , se definen:
( ) ( ) ( )
2 2 1 1
2 1
n x n x x x
n n

( ) ( ) ( ) ( ) { }
2 2 2 2 1 1 1 1
1 , 1 min
2 1
n x n x n x n x d
n n
+ +
( ) ( ) ( ) ( ) { }
2 2 2 2 1 1 1 1
1 , 1 max
2 1
n x n x n x n x D
n n
+ +
La recta puede cortar el rectngulo de tres formas diferentes, que aparecen representadas
como (a), (b) y (c) en la Figura 10.17.
( ) a
( ) a
( ) b
( ) b
( ) c
( ) c

D
d

d
D


( )
( )
( )
a
b
c
:
:
:
d
d < D
D

<


Figura 10.17 Formas en que la recta puede cortar el rectngulo.
En las Figuras 10.18 a 10.20 se muestra el valor de la proporcin, S, del rea del
rectngulo que queda bajo la recta en funcin del modo en sta corte el rectngulo:

410 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS

D
d

d
D
S
Dd


2
2

Figura 10.18 Proporcin del rectngulo situado bajo la recta en el caso ( ) d : < a .

d
d d

d
d
S
d
D


2

Figura 10.19 Proporcin del rectngulo situado bajo la recta en el caso ( ) b : d < D

D
d

d
D
D
D
D d +
( )
S
D d
Dd

+
1
2
2

d
d
D d +

Figura 10.20 Proporcin del rectngulo situado bajo la recta en el caso ( ) c : D
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 411

Resumiendo, la proporcin ( ) x S
n n
2 1
del rea del rectngulo
2 1
n n
R situada bajo la recta
x x x +
2 1
, que lo corta, es:
( )
( )
( )
( )
( )
( ) ( )
( )

'

<

x
d D
x
x
x
x
d D
x
x S
n n n n
n n n n
n n n n n n
n n n n n n
n n
n n
n n
n n n n
n n n n
n n
n n
2 1 2 1
2 1 2 1
2 1 2 1 2 1
2 1 2 1 2 1
2 1
2 1
2 1
2 1 2 1
2 1 2 1
2 1
2 1
D si
2
- d + D
- 1
D < d si
D
2
d
-
d si
2
2
2

La probabilidad de que el punto { } x x
1 2
, se encuentre en el semiplano bajo la recta
x x x +
2 1
, para un determinado valor x de la variable aleatoria X es:
{ } ( ) ( )
1
1
1
]
1

cortado es
que tales ,
2
2 1
2 1
2 1
1
n n
R
n n
n n
x S x nR
N
x X P
Haciendo uso de todo lo anterior, en la Figura 10.21 se muestra un algoritmo para el
clculo del vector x .
Clculo de la representacin interna de la probabilidad de la variable suma.
1. Calcular los vectores cota inferior y superior. De este modo se calculan x[ ] 1 y
x N [ ] +1 :
Max
min
x N x N x N x
x x x x
+ + +



] 1 [ ] 1 [ ] 1 [
] 1 [ ] 1 [ ] 1 [

Se obtiene la acotacin: N n n x n x n x

2 para , ] [ ] [ ] [ .
2. Representando la suma de las coordenadas de los vrtices de los rectngulos de la
forma siguiente: ( ) ( )
2 2 1 1
2 1
n x n x V
n n
+ , con 1 1 : ,
2 1
,...,N+ n n , y ordenndolas
crecientemente,
( ) ( )
( )
( )
V V V
N
1 2
1
2
, ,...,
+

'

, encontrar
n
k , ,...,N n 2 : , tales que
( )
n
k
V y
( ) 1 +
n
k
V satisfagan:
412 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS



( )
{ }
( )
{ }
N
n
V X P
N
n
V X P
n
n
k
k
1
1
1


+
para N n ,..., 2 :
Para ello, se tiene en cuenta que si [ ] n x

corresponde con la suma de las


coordenadas que tiene nmero de orden
n
k y si [ ] n x

corresponde con la suma con


nmero de orden
n
k , es decir, si [ ]
( )

n
k
V n x y [ ]
( )

n
k
V n x , entonces puede
establecerse la siguiente acotacin para el nmero de orden,
n
k :
+
<
n n n n
k k k k
1
. Puede emplearse, por ejemplo, el mtodo de la biseccin para
determinar el nmero de orden
n
k entre aquellas sumas cuyo nmero de orden
satisface la desigualdad
+
<
n n n n
k k k k
1
. Las probabilidades se evalan
empleando la expresin:
( )
{ }
( )
( )
( )
( )
1
1
1
]
1

cortado es
que tales ,
2
2 1
2 1
2 1
1
n n
R
n n
k n n k k
V S V nR
N
V X P
3. Las infinitas rectas x x x
1 2
+ que satisfacen
( ) ( ) 1 +

n n
k k
V x V para un determinado
valor de n , N n ,..., 2 : , cortan todas el mismo conjunto de rectngulos, ya que no
existe ninguna suma de las coordenadas de los vrtices de los rectngulos V que
satisfaga:
( ) ( ) 1 +
< <
n n
k k
V V V . Adems, cada uno de los rectngulos cortados por el
conjunto de rectas x x x
1 2
+ que satisfacen
( ) ( ) 1 +

n n
k k
V x V para un determinado
valor de n , N n ,..., 2 : , es cortado por todas ellas de la misma forma: del modo (a),
(b) o (c), ya que dos rectas x x x
a 1 2
+ y x x x
b 1 2
+ , tal que x x
a b
< , cortan de
modo diferente el rectngulo
2 1
n n
R si cumplen:
( ) ( )
( ) ( )

'

+ +
+ + <
+
+
2 1
2 1
, 1 2 2 1 1
, 1 2 2 1 1
1
1
n n b
n n a
V n x n x x
V n x n x x

o bien:
( ) ( )
( ) ( )

'

+ +
+ + <
+
2 1
2 1
, 2 2 1 1
1 , 2 2 1 1
1
1
n n b
n n a
V n x n x x
V n x n x x

lo cual no es posible, ya que
( ) ( ) 1 +
<
n n
k k
V x V y no existe ninguna suma de las
coordenadas de los vrtices de los rectngulos V que satisfaga:
( ) ( ) 1 +
< <
n n
k k
V V V .
La forma de corte vara, en general, de un rectngulo a otro. As pues, si
[ ]
( ) 1 +

n
k
V n x las rectas [ ] n x x x +
2 1
y
( )
n
k
V x x +
2 1
cortan los mismos
rectngulos y adems lo hacen de la misma forma: del modo (a), (b) o (c). Esto
permite calcular [ ] n x , si [ ]
( ) 1 +

n
k
V n x , despejando de la expresin:
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 413

[ ] { } [ ] ( ) [ ] ( )
( )
1
1
1
]
1

n
k ij
V R
n n
n n
n x S n x nR
N N
n
n x X P
por cortado es
que tales ,
2
2 1
2 1
1 1

Teniendo en cuenta que: [ ] ( )
( )
( )
n
k
V nR n x nR

, se obtiene:
( )
( ) [ ] ( )
( )
1
1
1
]
1

n
k
ij
n
V
R n n
n n k
n x S V nR
N N
n
por cortado es
que tales ,
2
2 1
2 1
1 1

de donde, finalmente se obtiene la expresin de la que debe calcularse, empleando
mtodos numricos, las componentes [ ] n x , con N n ,..., 2 : :
[ ] ( )
( )
( )
( )
( )
n
n
k n n
k
V R
n n
n n
V nR n N n x S

1
por cortado es
que tales ,
2 1
2 1
2 1

Figura 10.21 Algoritmo para el clculo del vector representacin interna de X .
Caso general. ( ) ( ) ( ) X F X F X F
X X X

+
2 1
2 1
, con
1
X y
2
X independientes
El conjunto de valores posibles de las variables aleatorias sumando,
1
X y
2
X , es igual a
la unin de
1
X
i e
2
X
i intervalos cerrados respectivamente. La probabilidad de que la
variable aleatoria
1
X se encuentre en el intervalo [ ]
1
1
j I
X
es [ ]
1 , 1
j x
I
, para
1
,..., 1 :
1 X
i j , y la
probabilidad de que
2
X se encuentre en el intervalo [ ]
2
2
j I
X
es [ ]
2 , 2
j x
I
, para
2
,..., 1 :
2 X
i j .
Puesto que
1
X y
2
X son estadsticamente independientes, la probabilidad de que
1
X se
encuentre en el intervalo [ ]
1
1
j I
X
y de que simultneamente
2
X se encuentre en el
intervalo [ ]
2
2
j I
X
es igual a [ ] [ ]
2 , 2 1 , 1
j x j x
I I
.
Para cada una de las
2 1
X X
i i combinaciones dos a dos de intervalos de valores posibles,
uno de la variable
1
X y otro de
2
X , puede calcularse, empleando el procedimiento
anteriormente descrito, la representacin interna de X condicionada a que
1
X y
2
X se
encuentren en esa combinacin de intervalos. Para obtener la representacin interna de la
variable aleatoria
2 1
X X X + , a partir de los
2 1
X X
i i vectores de representacin interna
de la probabilidad de X condicionada a otras tantas combinaciones de intervalos [ ]
1
1
j I
X

e [ ]
2
2
j I
X
, pueden emplearse algoritmos anlogos a los descritos al discutir la reduccin
en el condicionamiento de la funcin de probabilidad.
414 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


10.4.3 Multiplicacin de dos variables aleatorias
Para realizar el producto de dos variables aleatorias,
2 1
X X Y , resulta ms conveniente
expresarlo como
( ) ( )
2 1
ln ln X X
e Y
+
y realizar indirectamente el clculo que aplicar
directamente algoritmos para la realizacin de la multiplicacin. Para justificar esta
afirmacin, supngase que X
1
y X
2
son dos variables aleatorias reales estadsticamente
independientes entre s y que se desea calcular la representacin interna de Y , y ,
mediante la resolucin del problema: ( ) ( ) ( ) Y F X F X F
X X Y
,
2 1
2 1


. Para simplificar
la discusin, supngase que el conjunto de valores que puede tomar X
1
y el que puede
tomar X
2
son ambos conexos: [ ]
Max min X
x x I
, 1 , 1
,
1
e [ ]
Max min X
x x I
, 2 , 2
,
2
. El
conjunto de valores posibles de la variable aleatoria Y ,
2 1
X X Y , es el intervalo
[ ]
Max min Y
y y I , , donde:
{ }
{ }
Max min min Max Max Max min min Max
Max min min Max Max Max min min min
x x x x x x x x y
x x x x x x x x y
, 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1
, 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1
, , , max
, , , min


Cada par de valores { }
2 1
, x x de las variables aleatorias { }
2 1
, X X se puede representar
como un punto en el plano X X
1 2
, tomando en el eje vertical los valores de la variable
X
1
y en el horizontal los de la variable X
2
. Por ser X
1
y X
2
estadsticamente
independientes, el par de valores { } x x
1 2
, de las variables aleatorias { } X X
1 2
, , puede
estar incluido con igual probabilidad,
1
2
N
, en cualquiera de los N
2
rectngulos
[ ]
[ ]
,...,N n , n
n x X n x
n x X n x
R
n n
1 : para
1 ] [
1 ] [
2 1
2 2 2 2 2
1 1 1 1 1

2 1

'

+ <
+ <

En la Figura 10.22 se representa el plano X X
1 2
. Sobre los ejes se han sealado las
componentes de los vectores representacin interna,
1
x y
2
x , as como los rectngulos
equiprobables definidos por stas. Se ha supuesto en este ejemplo que los conjuntos de
valores posibles de X
1
y X
2
son intervalos cerrados con parte positiva y parte negativa.
La representacin grfica, en el plano X X
1 2
, del conjunto de valores { } x x
1 2
, de las
variables aleatorias { } X X
1 2
, cuyo producto es igual a un determinado valor x , distinto
de cero, de la variable aleatoria
2 1
X X Y , es la curva y x x
2 1
que tiene una rama en
el primer cuadrante y otra en el tercero si 0 > y y una rama en el segundo cuadrante y
otra en el cuarto si 0 < y . Valores de { } x x
1 2
, sobre los ejes producen 0 y .
Los valores de { } x x
1 2
, cuyo producto es inferior a uno dado, y , son:
Si 0 > y , los situados en el primer o tercer cuadrante entre la curva y x x
2 1
y
los ejes y todos los situados en el segundo y cuarto cuadrante.
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 415

Si 0 y , todos los situados en el segundo y cuarto cuadrante.
Si 0 < y , los situados en el segundo y cuarto cuadrante en las porciones de plano
definidas por las curvas y x x
2 1
que no contienen a los ejes.
X
1
X
2
x N
1
1 [ ] +
x
1
4 [ ]
x
1
3 [ ]
x
1
1 [ ]
x
1
5 [ ]
x
1
6 [ ]
x
1
2 [ ]
.
.
.
x
2
1 [ ] x
2
2 [ ] x
2
3 [ ] x N
2
1 [ ] + x
2
4 [ ] x
2
5 [ ]
. . .
0
2 1
> y x x
0
2 1
< y x x

Figura 10.22. Representacin del producto de dos variables aleatorias reales.
Podra emplearse un algoritmo similar al de la suma, aunque algo ms complejo, para
estimar las 1 N componentes [ ] n y , con N n ,..., 2 : , del vector y . Sin embargo, el
clculo de la probabilidad de que el punto { } x x
1 2
, satisfaga y x x <
2 1
, supuesto que el
punto est incluido en un determinado rectngulo
2 1
n n
R y que ese rectngulo es cortado
por la curva y x x
2 1
(de los 4 productos de las coordenadas de sus 4 vrtices al menos
hay una que cumple y x x <
2 1
y otra que cumple y x x >
2 1
), implica el clculo del
logaritmo de cierta cantidad si se realiza una interpolacin de orden cero de la densidad
de probabilidad. Obsrvese el ejemplo de la Figura 10.23.

416 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


0
2 1
> y x x
X
1
X
2
[ ]
2 2
n x [ ] 1
2 2
+ n x
[ ]
1 1
n x
[ ] 1
1 1
+ n x
[ ] 1
1 1
+ n x
x
d
D


Figura 10.23 Clculo del rea del rectngulo bajo la curva y x x
2 1
.
De la figura:
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ]
[ ]
[ ] [ ]
[ ]
[ ]
[ ] [ ]
[ ]
[ ]
[ ] [ ]
[ ]
[ ]
[ ]
[ ]( )

,
_

,
_

+
+
+

+ +
+
+
+ +

'

+ <
+ <
<


+
+
+
+
D n x
n x
y
n x
y
dD D
n x n x
dx
n x n x
dx
n x n x
dx
n x n x
dx
n x X n x
n x X n x
y Y P
x
y
n x
n x
n x
y
n x
n x
n x
y
n x
1 1
1 1
2 2
1 1 1 1
1
1
1 2 2 2 2
2
1
1 1 1 1
1 1
2 2 2 2
2
2 2 2 2 2
1 1 1 1 1
1
1
ln
1
1 1
1 1
1
1

2
1 1
2 2
1 1
1 1
1 1
1 1
2 2

El nmero de operaciones logaritmo que debe realizarse para estimar el producto de dos
variables independientes es del orden de N
2
. Sin embargo, si se calcula el logaritmo de
las variables, se realiza la suma y posteriormente se exponencia el resultado,
2 1
ln ln
2 1
X X
e Y X X Y
+
, el nmero de operaciones logaritmo es del orden de N , si
bien para ello las variables X
1
y X
2
debe poder tomar nicamente valores positivos.
Esto puede conseguirse desplazando previamente las variables X
1
y X
2
una cantidad
constante definida, por ejemplo, de la forma: { } 1 , min
, 2 , 1
+
min min
x x . De este
OPERACIONES ARITMTICAS SOBRE VARIABLES ALEATORIAS REALES 417

modo, para realizar el clculo de
2 1
X X Y se procede de la forma indicada en la Figura
10.24.
Clculo del producto de dos variables aleatorias
1. Clculo de
$
,
$
X X
1 2
:
$
$
X X
X X
1 1
2 2
+
+


donde se calcula de la expresin { } 1 , min
, 2 , 1
+
min min
x x .
2. Clculo de
Y

:

2 1

ln

ln

X X
e Y
+

3. Clculo de
2 1
X X Y
Se cumple:
( )( ) ( )
2
2 1 2 1 2 1 2 1

+ + + + + X X X X X X X X Y
por lo que Y se calcula de la expresin:
( )
2
2 1

+ X X Y Y
Figura 10.24 Procedimiento para calcular el producto de dos variables aleatorias.
10.4.4 Inversin de una variable aleatoria real
Inversin ( ) ( ) Y F X F
X Y

/ 1



El conjunto de valores posibles de la variable aleatoria real X es la unin de
X
i
intervalos cerrados disjuntos. Las componentes del vector
I
x almacenan la probabilidad
de que X se encuentre en cada uno de estos intervalos: componentes con mayor nmero
de orden almacenan la probabilidad de intervalos con mayor valor de x . Para calcular la
inversa de X es preciso que su conjunto de valores posibles no contenga al cero. La
Figura 10.25 contiene un algoritmo para el clculo de la representacin interna de Y .
418 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Clculo de la representacin interna de Y
Comprobar si existe un valor de j tal que [ ] [ ] 1 0 + < < j x j x
min Max
. Si existe, se
denomina
*
j .
Si existe
*
j , los vectores
I
y e y se calculan de la forma siguiente:
[ ]
[ ]
[ ]

'

> + +
+

* *
* *
si 1
si 1
j j j j i x
j j j j x
j y
X I
I
I
con
X
i j ,..., 1 :
[ ]
[ ]
[ ]

'

>
+ + +

+ +

*
*
*
*
si
1 , 2
1
si
1 , 2
1
,
j j
j j i n N x
j j
j j n N x
j n y
X
con

'

+1 ,..., 1 :
,..., 1 :
N n
i j
X

Si no existe
*
j , los vectores
I
y e y se calculan de la forma siguiente:
[ ] [ ] j i x j y
X I I
+ 1 con
X
i j ,..., 1 :
[ ]
[ ] j i n N x
j n y
X
+ +

1 , 2
1
, con

'

+1 ,..., 1 :
,..., 1 :
N n
i j
X

Figura 10.25 Algoritmo para el clculo de
I
y y de y .
Inversin

,
_

,
_


Y Y
X Y
Y Y
Q P Y F Q P X F



/ 1

Para calcular la representacin interna de la probabilidad de Y condicionada al conjunto
Y Y
Q P

de parmetros aleatorios de entrada de los que depende, se aplica el algoritmo
de la Figura 10.33 a la representacin interna de la probabilidad de X condicionada a
cada una de las
( ) ( )
Y Y
Q P
N

dim

dim
2 posibles combinaciones de eventos (de valores de los
ndices k y )
( )
( )
( )
( )
Y
Q
Y
Q
Y
P
Y
P
P P
Q Q
k
I
k
I

dim

dim
1
1

dim

dim
1
1
E ,..., E , E ,..., E

, obtenindose la representacin interna de


la probabilidad de Y condicionada a estos mismos eventos.


FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 419


10.5 FUNCIONES ELEMENTALES DE UNA VARIABLE
ALEATORIA REAL
Introduccin
Los algoritmos propuestos en este apartado permiten calcular la representacin interna
de la probabilidad total de la variable aleatoria obtenida de aplicar, sobre la
representacin interna de la probabilidad total de una variable aleatoria real, una de las
siguientes funciones elementales: exponencial, logaritmo neperiano, trigonomtricas,
trigonomtricas inversas, hiperblicas e hiperblicas inversas. Para obtener la
probabilidad condicionada a un conjunto de parmetros aleatorios de entrada, deben
aplicarse los algoritmos para el clculo de la probabilidad total a la representacin interna
de la probabilidad del operando condicionada a cada una de las posibles combinaciones
de eventos definidas por el conjunto de parmetros aleatorios respecto de los cuales se
ha condicionado su probabilidad. A modo de ejemplo, se indica cmo realizar este
clculo en el caso de las funciones logaritmo neperiano y eponencial.
10.5.1 Logaritmo neperiano y exponencial
Las funciones logaritmo neperiano y exponencial son montonas crecientes y continuas,
por lo que transforman intervalos disjuntos en intervalos disjuntos. La representacin
interna de la probabilidad total y condicionada de Y puede calcularse, conocida la de X ,
de la forma siguiente:
Logaritmo neperiano, Y X ln
Exponencial, Y e
X

[ ] [ ]
[ ] [ ] ( )

'

1 ,..., 1 :
,..., 1 :
con , , ln ,
,..., 1 : con ,
N n
i j
j n x j n y
i j j x j y
i i
Y
Y I I
X Y
[ ] [ ]
[ ]
[ ]

'

1 ,..., 1 :
,..., 1 :
con , ,
,..., 1 : con ,
,
N n
i j
e j n y
i j j x j y
i i
Y j n x
Y I I
X Y

420 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ] ( )
( )
( )
{ }
[ ]

'

1 ,..., 1 :
, ,..., 1 :
, : ,...,
,..., 1 : ,...,
con
, , , ln , , ,
, , , ,
, ,

dim
1

dim
1

,

,

,

,

,

,

N n
k i j
false true
N k k
j k n x j k n y
j k x j k y
k i k i
Y Y
Y
Y
Y Y Y Y
Y Y Y Y
Y Y Y Y
Q P
Y
Q
P
Q P Q P
Q P
I
Q P
I
Q P
X
Q P
Y






{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
( )
( )
{ }
[ ]

'

1 ,..., 1 :
, ,..., 1 :
, : ,...,
,..., 1 : ,...,
con
, , ,
, , , ,
, ,

dim
1

dim
1
, , ,

,

,

,

,

N n
k i j
false true
N k k
e j k n y
j k x j k y
k i k i
Y Y
Y
Y
Y
Q
Y
P
Y Y
Y Y Y Y
Y Y Y Y
Q P
Y
Q
P
j k n x
Q P
Q P
I
Q P
I
Q P
X
Q P
Y



La funcin logaritmo neperiano est definida sobre { }
+
0 , por lo que, a fin evitar
errores numricos, debe comprobarse antes de operar que el conjunto de valores posibles
de X est incluido en { }
+
0 . Por el contrario, la funcin exponencial est definida
sobre todo .
La funcin logaritmo neperiano no produce valores numricos fuera del rango
representable mediante el tipo de dato en que se almacena el resultado si se aplica a un
nmero dentro de este rango. Por el contrario, con la funcin exponencial s es preciso
tomar precauciones frente al rebosamiento. Si max real _ es el mayor valor numrico
representable, debe comprobarse antes de calcular la exponencial que
( ) real max x
Max
_ ln < .
10.5.2 Seno
Caso particular: ( )
( )
( ) Y F X F
X

sen
con
X
I conexo
Sea X una variable aleatoria real, que puede tomar valores en el intervalo
[ ]
Max min X
x x I , . Conocida la representacin interna de la probabilidad de X , x , se
desea calcular la representacin interna de la probabilidad de la variable aleatoria Y ,
definida como ( ) Y X sen , supuesto que las unidades de X son radianes. Para ello se
har uso de las siguientes tres propiedades de la funcin seno:
Es peridica cada 2 , ( ) ( ) sen sen x x + 2 .
Cada periodo

,
_

+ + m m

2
2
3
, 2
2
, donde m representa cualquier entero,
puede dividirse en dos intervalos,

,
_

+ + m m

2
2
, 2
2
y
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 421

,
_

+ + m m

2
2
3
, 2
2
, satisfacindose que la funcin es montona creciente
en

,
_

+ + m m

2
2
, 2
2
y montona decreciente en

,
_

+ + m m

2
2
3
, 2
2
.
Es simtrica respecto a m

+
2
, donde m puede ser cualquier entero. En
concreto ( ) ( ) sen sen x x .
Para calcular la representacin interna de Y se tiene en cuenta que si x x
1 2
2 2
, ,

_
,


,
satisfacindose x x
1 2
< , la probabilidad del evento ( ) ( ) sen sen x Y x
1 2
< puede
calcularse, tal como se muestra en la Figura 10.26, de la forma siguiente:

( ) ( ) { } { }
( ) ( ) { }


+ < +
+ + < + <
:
:
1 2
:
:
2 1 2 1
1 2 1 2
2 2 sen sen
m
m
m
m
x m X x m P
m x X m x P x Y x P



x
1
x
2
x
2
x
1
x
1
2 +
x
2
2 +
x
1
x
2
X
( ) Y X sen

Figura 10.26 Intervalos de X transformados en ( ) ( )
2 1
sen sen x Y x < .
A fin de evaluar el menor nmero de veces posible la funcin seno durante la aplicacin
del algoritmo para estimar y , se sigue el siguiente procedimiento:
Se transforma el vector x en otro vector $ x tal que todas las componentes de
$ x estn contenidas en el intervalo

_
,


2 2
, y se cumpla y y $ , donde
( )
$
sen
$
Y X . Las componentes del vector $ x , [ ]

,
_


2
,
2


n x para todo
1 ,..., 1 : + N n , deben calcularse de modo que satisfagan, para N n ,..., 1 : :
422 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] [ ] { }
[ ] [ ] { }
( ) [ ] ( ) [ ] { }


+ < + + +
+ + + < +
+ <
:
:
:
:
1 2 1 1 2
2 1 2
1
1

m
m
m
m
n x m X n x m P
m n x X m n x P
N
n x X n x P


Conocido $ x , el clculo de y y $ se realiza teniendo en cuenta que la funcin
seno es montona creciente aplicada sobre el intervalo

_
,


2 2
, :
[ ] [ ] ( ) n x n y sen para 1 ,..., 1 : + N n
A continuacin se muestra cmo se realiza la transformacin del vector x a x en tres
ejemplos sencillos, que servirn de introduccin al procedimiento general expuesto
seguidamente.
Ejemplo 1. Si el intervalo de valores posibles de X es
[ ]

,
_

+ + m m x x
Max min
2
2
, 2
2
,

, para algn valor entero de m , entonces


las componentes de $ x pueden obtenerse por translacin de las de x :
[ ] [ ] m n x n x 2 , con 1 ,..., 1 : + N n .
Ejemplo 2. Si [ ]

,
_

+ + m m x x
Max min
2
2
3
, 2
2
,

para algn valor entero de


m , entonces las componentes de $ x pueden obtenerse mediante translacin y
simetra a partir de las de x : [ ] [ ] ( ) m n N x n x 2 2 + , con 1 ,..., 1 : + N n .
Ejemplo 3. Si el conjunto de valores posibles de X est incluido en uno de los
periodos [ ]

'

,
_

+ +

,
_

+ + m m m m x x
Max min

2
2
3
, 2
2
2
2
, 2
2
, ,
satisfacindose que
Max min
x m x + <

2
2
, para algn valor entero de m ,
entonces notando
*
n el nmero de componente de x anterior al cambio de
subintervalo:
[ ] [ ] 1 2
2
* *
+ + < n x m n x


e interpolando con orden cero la densidad de probabilidad, se puede escribir la
probabilidad de que X se encuentre, entre [ ]
*
n x y [ ] 1
*
+ n x , en uno o en otro
subintervalo, de la forma siguiente:
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 423


[ ]
[ ]
[ ] [ ]
* *
*
*
1
2
2
1
2
2
n x n x
n x m
N
m X n x P
+
+

'

+ <


[ ]
[ ]
[ ] [ ]
* *
*
*
1
2
2
1

1
1 2
2
n x n x
m n x
N
n x X m P
+

,
_

+ +

'

+ < +


La probabilidad de X en el intervalo

,
_

+ + m m

2
2
, 2
2
puede trasladarse al
intervalo

_
,


2 2
, , obtenindose las siguientes aportaciones a la probabilidad:
[ ] [ ] { } 1 ,..., 1 : para
1
2 1

2
*
+ <
+
n n
N
m n x X m n x P
[ ]
[ ]
[ ] [ ]
* *
*
*
1
2
2
1
2

2
n x n x
n x m
N
X m n x P
+
+

'

<
+


A esta probabilidad hay que sumar la probabilidad en el intervalo

,
_

+ + m m

2
2
3
, 2
2
llevada al intervalo

_
,


2 2
, :
[ ] ( )
[ ]
[ ] [ ]
* *
*
*
1
2
2
1
1
2

2 1
n x n x
m n x
N
X m n x P
+

,
_

+ +

'

< +
+


[ ] ( ) [ ] ( ) { } ,...,N + n n
N
m n x X m n x P
*
1 : para
1
2

2 1 < +
+

{ } P A
+
no representa la probabilidad de A, sino una aportacin a la misma.
Sumando todas las aportaciones se obtiene la probabilidad de A. A partir de la
suma de todas estas aportaciones de probabilidad en el intervalo

_
,


2 2
, se
calcula $ x . Ms adelante se discutir una forma de hacerlo.
Puede procederse anlogamente si el intervalo de valores posibles de X est contenido
en ms de un periodo: debe transformarse la probabilidad en cada semiperiodo a su
probabilidad equivalente (a efectos de la posterior transformacin por la funcin seno) en
el intervalo

_
,


2 2
, y sumarla a las aportaciones de los restantes semiperiodos. A
continuacin se expone un mtodo sistemtico de realizar estas transformaciones.
424 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Se van examinando las componentes [ ] n x con N n ,..., 1 : , del vector x . La aportacin a
la probabilidad en el intervalo

_
,


2 2
, de los valores de X comprendidos entre [ ] n x y
[ ] 1 + n x se muestran en la Tabla 10.8.
Aportaciones a la probabilidad
Si [ ] [ ]

,
_

+ + +
n n
m m n x n x

2
2
, 2
2
1 , para algn
n
m entero, su aportacin en el
intervalo

_
,


2 2
, es [ ] [ ] { }
N
m n x X m n x P
n n
1
2 1

2 + <
+
.
Si [ ] [ ]

,
_

+ + +
n n
m m n x n x

2
2
3
, 2
2
1 , para algn
n
m entero, su aportacin en el
intervalo

_
,


2 2
, es [ ] ( ) [ ] ( ) { }
N
m n x X m n x P
n n
1
2

2 1 < +
+
.
Si
[ ]
[ ]

'

,
_

+ + +

,
_

+ +
+ + 1 1
2
2
, 2
2
1
2
2
, 2
2
n n
n n
m m n x
m m n x

para
n
m ,
1 + n
n enteros, 0
1
>
+ n n n
m m m .
Entre:
[ ]

,
_

+ +
n n
m m n x

2
2
, 2
2
y
[ ] ( ) ( )

,
_

+ + + + +
n n n n
m m m m n x

2
2
, 2
2
1
hay 1 2
n
m semiperiodos completos. Las aportaciones sobre el intervalo

_
,


2 2
, son:
[ ]
[ ] ( )
[ ] [ ] n x n x
m n x
N
X m n x P
n
n
+

'

<
+
1
2
2
1
2



( )
[ ] [ ] n x n x
m
N
X P
n
+

'

<
+
1
1 2 1
2

2


[ ]
[ ]
[ ] [ ] n x n x
m n x
N
m n x X P
n
n
+
+ +

'

+ <
+
+
+
1
2
2 1
1
2 1

2
1
1


FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 425


Si
[ ]
[ ]

'

,
_

+ + +

,
_

+ +
+ + 1 1
2
2
3
, 2
2
1
2
2
3
, 2
2
n n
n n
m m n x
m m n x

para
n
m ,
1 + n
m enteros, 0
1
>
+ n n n
m m m .
Entre:
[ ]

,
_

+ +
n n
m m n x

2
2
3
, 2
2
y
[ ] ( ) ( )

,
_

+ + + + +
n n n n
m m m m n x

2
2
3
, 2
2
1
hay 1 2
n
m semiperiodos completos. Las aportaciones sobre el intervalo

_
,


2 2
, son:
[ ] ( )
[ ]
[ ] [ ] n x n x
n x m
N
m n x X P
n
n
+
+

'

<
+
1
2
2
3
1
2



( )
[ ] [ ] n x n x
m
N
X P
n
+

'

<
+
1
1 2 1
2

2


[ ] ( )
[ ]
[ ] [ ] n x n x
m n x
N
X m n x P
n
n
+

,
_

+ +

'

< +
+
+
+
1
2
2
1
1
2

2 1
1
1


Si
[ ]
[ ]

'

,
_

+ + +

,
_

+ +
+ + 1 1
2
2
3
, 2
2
1
2
2
, 2
2
n n
n n
m m n x
m m n x

para
n
m ,
1 + n
m enteros, 0
1

+ n n n
m m m .
Entre:
[ ]

,
_

+ +
n n
m m n x

2
2
, 2
2
y
[ ] ( ) ( )

,
_

+ + + + +
n n n n
m m m m n x

2
2
3
, 2
2
1
hay
n
m 2 semiperiodos completos. Las aportaciones sobre el intervalo

_
,


2 2
, son:
[ ]
[ ] ( )
[ ] [ ] n x n x
m n x
N
X m n x P
n
n
+

'

<
+
1
2
2
1
2


426 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] [ ] n x n x
m
N
X P
n
+

'

<
+
1
2 1
2

2


[ ] ( )
[ ]
[ ] [ ] n x n x
m n x
N
X m n x P
n
n
+

,
_

+ +

'

< +
+
+
+
1
2
2
1
1
2

2 1
1
1


Si
[ ]
[ ]

'

,
_

+ + +

,
_

+ +
+ + 1 1
2
2
, 2
2
1
2
2
3
, 2
2
n n
n n
m m n x
m m n x

para
n
m ,
1 + n
m enteros, 0
1
>
+ n n n
m m m .
Entre:
[ ]

,
_

+ +
n n
m m n x

2
2
3
, 2
2
y
[ ] ( ) ( )

,
_

+ + + + +
n n n n
m m m m n x

2
2
, 2
2
1
hay ( ) 1 2
n
m semiperiodos completos. Las aportaciones sobre el intervalo

_
,


2 2
, son:
[ ] ( )
[ ]
[ ] [ ] n x n x
n x m
N
m n x X P
n
n
+
+

'

<
+
1
2
2
3
1
2


( )
[ ] [ ] n x n x
m
N
X P
n
+

'

<
+
1
1 2 1
2

2


[ ]
[ ]
[ ] [ ] n x n x
m n x
N
m n x X P
n
n
+
+ +

'

+ <
+
+
+
1
2
2 1
1
2 1

2
1
1


Tabla 10.8 Aportaciones a la probabilidad en el intervalo
,
_

2
,
2

.
A continuacin se describe un procedimiento para sumar todas las aportaciones a la
probabilidad del intervalo

_
,


2 2
, . Las aportaciones pueden estar expresadas de una
de estas cuatro formas diferentes:
P X
+
<

'


2 2
$
, P x X
+
<

'

1
2
$

, P X x
+
<

'

2
2
$
,
{ }
P x X x
+
<
1 2
$

FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 427


donde x
1
, x
2
representan nmeros reales cualesquiera pertenecientes al intervalo

_
,


2 2
, .
Se define un vector auxiliar
~
x en cuyas componentes se van almacenando estos valores
x
1
, x
2
, para los cuales cambia la pendiente de la funcin de probabilidad. Las nuevas
componentes del vector se insertarn entre las ya existentes de modo que ste se
mantenga ordenado crecientemente: [ ] [ ]
2 1 2 1
~ ~
n x n x n n < < .
A cada componente de
~
x , [ ] n x
~
, se asocia la componente [ ] n p
x
~ del vector p
x
~ , donde
se almacena la probabilidad, debida a las aportaciones consideradas hasta ese momento,
de que X , transformado al intervalo

_
,


2 2
, , sea menor o igual que [ ] n x
~
. En la
Figura 10.27 se describe el algoritmo para calcular los vectores
~
x y p
x
~ . Como se ver,
a partir de ellos puede calcularse x .
Algoritmo para calcular
~
x y p
x
~
Inicializacin. Inicialmente los vectores
~
x y p
x
~ no tienen ninguna componente.
Con cada tipo de aportacin a la probabilidad se actualizan los vectores
~
x y p
x
~ de la
forma siguiente:
Aportacin del tipo P X
+
<

'

2 2
$
:
Si el vector
~
x posee una componente con valor

2
, no se aaden nuevas componentes
ni a
~
x ni a p
x
~ .
Por el contrario, si el vector
~
x no posee una componente con valor

2
, se aade a
~
x
una nueva componente: [ ]
~
x i

2
(se supone que el vector
~
x tena i 1 componentes).
Adems se aade a p
x
~ una nueva componente, [ ] p i
x
~ , con valor:
[ ]
[ ]
p i
i
p i i
x
x
~
~


>

'

0 1
1 1
si
si

En cualquier caso, se actualizan las componentes de p
x
~ de la forma siguiente:
428 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] [ ]
[ ]
i n
n x
n p n p
x x
,..., 1 : con
2
~
~ ~

+
+
Aportacin del tipo P X x
+
<

'

2
2
$
:
Si una componente de
~
x , que llamaremos [ ]
~
x i , satisface [ ]
~
x i x
2
, entonces no se
aaden nuevas componentes a los vectores
~
x y p
x
~ .
Por el contrario, si no hay ninguna componente de
~
x con valor x
2
, se inserta una nueva
componente del vector
~
x , con valor x
2
, de modo que el vector
~
x quede ordenado
crecientemente. Se supone que la nueva componente es la i-sima: [ ]
~
x i x
2
. Tambin
se inserta la correspondiente componente de p
x
~ , [ ] p i
x
~ , calculando su valor mediante
interpolacin:
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ] ( ) p i p i
p i p i
x i x i
x i x i
x x
x x
~ ~
~ ~
~ ~
~ ~
+
+
+
1
1 1
1 1
1
En cualquier caso, el valor de las componentes del vector p
x
~ se actualiza de la forma:
[ ] [ ]
[ ]
[ ]

'

>

+
+
+
i n
i n
i x
n x
n p n p
x x
para
para
2
~
2
~
~ ~


Aportacin del tipo P x X
+
<

'


1
2
$

:
Si una componente de
~
x , que llamaremos [ ]
~
x i , satisface [ ]
~
x i x
1
, entonces no se
aaden nuevas componentes a los vectores
~
x y p
x
~ .
Por el contrario, si ninguna de las componentes de
~
x vale x
1
, se inserta una nueva
componente de
~
x , de modo que el vector
~
x quede ordenado crecientemente. Se
supone que la nueva componente es la i-sima: [ ]
~
x i x
1
. Adems se inserta la
correspondiente componente de p
x
~ , calculando su valor mediante interpolacin:
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ] ( ) p i p i
p i p i
x i x i
x i x i
x x
x x
~ ~
~ ~
~ ~
~ ~
+
+
+
1
1 1
1 1
1
En cualquier caso, se actualizan los valores de las componentes del vector p
x
~ de la
forma siguiente:
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 429


[ ]
[ ]
[ ]
[ ] [ ]
[ ]

'

>

i n
i x
i x n x
n p
i n n p
n p
x
x
x para
~
2
~ ~
para
~
~
~


Aportacin del tipo { } P x X x
+
<
1 2
$

Si el vector
~
x tiene componentes, que llamaremos [ ]
~
x i
1
, [ ]
~
x i
2
, tales que [ ]
~
x i x
1 1
,
[ ]
~
x i x
2 2
, entonces no se aaden nuevas componentes ni al vector
~
x ni al vector p
x
~ .
Por el contrario, si el vector
~
x no tiene una componente con valor x
1
y otra con valor
x
2
, entonces se inserta en el vector
~
x la (si ya exista la otra) o las nuevas
componentes, con valor x
1
y/o x
2
, de modo que el vector
~
x quede ordenado
crecientemente. Por cada nueva componente [ ]
~
x i x
1
, debe insertarse la
correspondiente componente de p
x
~ . Su valor se calcula mediante interpolacin:
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ] ( ) p i p i
p i p i
x i x i
x i x i
x x
x x
~ ~
~ ~
~ ~
~ ~
+
+
+
1
1 1
1 1
1
En cualquier caso, se actualiza el valor de las componentes del vector p
x
~ :
[ ]
[ ]
[ ]
[ ] [ ]
[ ] [ ]
[ ]

'

+
< <

2
~
2 1
1 2
1
~
1
~
~
para
para
~ ~
~ ~
para
i n n p
i n i
i x i x
i x n x
n p
i n n p
n p
x
x
x
x


Figura 10.27 Algoritmo para calcular x
~
y
x
p~ .
Una vez sumada la aportacin de todas las contribuciones, se puede, a partir de los
vectores
~
x y p
x
~ , calcular el vector $ x . n
x
~ representa el nmero de componentes del
vector
~
x , que es el mismo nmero de componentes que tiene el vector p
x
~ . Interpolando
con orden cero la densidad de probabilidad, las componentes de $ x pueden calcularse de
la forma siguiente:

[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ]
[ ] [ ]
[ ] [ ]
x
x x
x
x x
n x N x
j p
N
n
j p j
N n j p
N
n
j p j p
j x j x
j x n x
x x
~
~ ~
~
~ ~
~
1
1
1
que tal es donde
,..., 2 : para
1
1
~
1
~
~

1
~
1
+
+ <

,
_

+
+
+


430 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Puesto que la funcin seno es creciente y continua en el intervalo

,
_

2
,
2

, la
representacin interna de la funcin de probabilidad de Y se calcula a partir de la de X


de la forma siguiente: [ ] [ ] ( ) 1 ,..., 1 : para sen + N n n x n y .
Problema general ( )
( )
( ) Y F X F
X

sen

En general, el conjunto de valores posibles de X no es el intervalo cerrado [ ]
Max min
x x , ,
sino la unin de
X
i intervalos cerrados disjuntos. Aplicando los algoritmos anteriores a
cada uno de los
X
i intervalos por separado se obtienen
X
i intervalos (no hay garantas
de que sigan siendo disjuntos) contenidos en

,
_

2
,
2

. Aplicando un algoritmo similar
al de la reduccin del condicionamiento de la funcin de probabilidad se obtiene la
representacin interna de X

, x y
I
x . El conjunto de valores posibles de X

es la unin
de
X
i

intervalos cerrados disjuntos contenidos en

,
_

2
,
2

. La representacin interna
de la funcin de probabilidad de Y se calcula a partir de la de X

de la forma siguiente:
[ ] [ ]
[ ] [ ] ( )

'

1 ,..., 1 :
,..., 1 :
para , sen ,
,..., 1 : para

N n
i j
j n x j n y
i j j x j y
i i
X
X
I I
X
Y

10.5.3 Coseno, tangente y cotangente
El clculo de la representacin interna de la probabilidad del coseno, la tangente y la
cotangente de una variable aleatoria real se realiza de forma anloga al clculo del seno:
Coseno, El mtodo de clculo de la representacin interna de X

es totalmente
anlogo al empleado para la funcin seno, con la diferencia de que en este caso las
componentes de $ x deben estar contenidas en el intervalo [ ) ,0 . Conocido $ x y
I
x , el clculo de la representacin interna de Y se realiza teniendo en cuenta que la
funcin seno es montona creciente aplicada sobre el intervalo [ ) ,0 .
Tangente. La funcin tangente es montona creciente y continua en

,
_

+ + m m

2
,
2
, para cualquier valor entero de m : se calcula X

transformando
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 431


X al intervalo

,
_

2
,
2

. La tangente no est definida para valores de X iguales a
m

+
2
, para cualquier m entero.
Cotangente. La funcin cotangente es montona decreciente y continua en
( ) ( ) 1 , + m m , para cualquier m entero: se calcula X

transformando X al intervalo
( ) 0 , . La cotangente no est definida para valores de X iguales a m , para
cualquier m entero.
10.5.4 Funciones trigonomtricas inversas
Arco seno, ( )
( )
( ) Y F X F
X

arcsen

X
I debe satisfacer [ ] 1 , 1
X
I . Si la imagen de la funcin arco seno es el intervalo

1
]
1

2 2
, , entonces la funcin arco seno es continua, est monovaluada y es montona
creciente, con lo cual:
[ ] [ ]
[ ] [ ] ( )

'

1 ,..., 1 :
,..., 1 :
para , arcsen ,
,..., 1 : para
N n
i j
j n x j n y
i j j x j y
i i
X
X I I
X Y

Arco coseno, ( )
( )
( ) Y F X F
X

arccos

X
I debe satisfacer [ ] 1 , 1
X
I . Si la imagen de la funcin arco coseno es el intervalo
[ ] 0, , entonces la funcin arco coseno es continua, est monovaluada y es montona
decreciente, con lo cual:
[ ] [ ]
[ ] [ ] ( )

'

+
+ +
+

1 ,..., 1 :
,..., 1 :
para 1 , 2 arccos ,
,..., 1 : para 1
N n
i j
j i n N x j n y
i j j i x j y
i i
X
X
X X I I
X Y

Arco tangente, ( )
( )
( ) Y F X F
X

arctg

Si la imagen de la funcin arco tangente es el intervalo

1
]
1

2 2
, , entonces la funcin
arco tangente es continua, est monovaluada y es montona creciente, con lo cual:
432 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] [ ]
[ ] [ ] ( )

'

1 ,..., 1 :
,..., 1 :
para , arctg ,
,..., 1 : para
N n
i j
j n x j n y
i j j x j y
i i
X
X I I
X Y

Arco cotangente, ( )
( )
( ) Y F X F
X g arc

cot

Si la imagen de la funcin arco cotangente es el intervalo [ ] 0, , entonces la funcin arco
cotangente es continua, est monovaluada y es montona decreciente, con lo cual:
[ ] [ ]
[ ] [ ] ( )

'

+
+ +
+

1 ,..., 1 :
,..., 1 :
para 1 , 2 arccotg ,
,..., 1 : para 1
N n
i j
j i n N x j n y
i j j i x j y
i i
X
X
X X I I
X Y

10.5.5 Coseno hiperblico
Caso particular: ( )
( )
( ) Y F X F
X ch
con
X
I conexo
Sea X una variable aleatoria real que puede tomar valores en el intervalo [ ]
Max min
x x , .
Se conoce la representacin interna de su probabilidad y se desea calcular la
representacin interna de la probabilidad de la variable aleatoria Y , definida como
( ) Y ch X . Para ello se hace uso de las siguientes propiedades de la funcin coseno
hiperblico: la funcin coseno hiperblico es continua, simtrica respecto al origen,
( ) ( ) ch x ch x , creciente para x > 0 y decreciente para x < 0. Como se muestra en la
Figura 10.28, se cumple: ( ) { } { } { } P Y ch x P X x P X x .
Y chX
X
1
0 x x

Figura 10.28 Funcin coseno hiperblico.
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 433


Para calcular la representacin interna de Y , y , es preciso diferenciar los siguientes tres
casos:
1 [ ] [ ] ( ) 1 1 : para 0 ,...,N+ n n x ch n y x x
Max min

2 [ ] [ ] ( ) 1 1 : para 2 0 ,...,N+ n n N x ch n y x x
Max min
+
3
Max min
x x < < 0
A continuacin se estudia en detalle el clculo de y en el tercer caso: aquel en el cual el
conjunto de valores posibles de X contiene tanto reales positivos como negativos. A fin
de tener que evaluar el coseno hiperblico de un nmero real el menor nmero posible de
veces para estimar y , se transforma el vector x en otro vector $ x tal que todas las
componentes de $ x sean no negativas, esto es [ ] 0 n x para 1 1 : ,...,N+ n , y se cumpla
y y $ , donde ( )
$ $
Y ch X . Conocido $ x , el clculo de y y $ se realiza teniendo en
cuenta que la funcin coseno hiperblico es montona creciente aplicada sobre el semieje
real positivo:
[ ] [ ] ( ) 1 1 : para ,...,N+ n n x ch n y
Las componentes de $ x deben calcularse de modo que satisfagan, para ,...,N n 1 : :
[ ] [ ] { }
[ ] [ ] { } [ ] [ ] { }
N
n x X n x P n x X n x P
n x X n x P
1
1 1
1

< + + + <
+ <

Como en apartados anteriores, { } P A
+
representa una aportacin a la probabilidad de A.
Sumando todas las aportaciones se obtiene la probabilidad de A, { } P A . En la Figura
10.29 se muestra un mtodo sistemtico de transformar la representacin interna de X
al semieje positivo, obteniendo las aportaciones a la probabilidad de X

.
Aportaciones a la probabilidad
Se van examinando las componentes del vector x , [ ] n x para N n ,..., 1 : , obtenindose
las aportaciones a la probabilidad de
$
X .
1 Si [ ] 0 1 + n x , el intervalo [ ] [ ] [ ] 1 , + n x n x est contenido en el semieje
real negativo:
[ ] [ ] { }
N
n x X n x P
1

1 < +
+

2 Si [ ] n x 0 , el intervalo [ ] [ ] [ ] 1 , + n x n x est contenido en el semieje
434 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


real positivo:
[ ] [ ] { }
N
n x X n x P
1
1

+ <
+

3 Si [ ] [ ] 1 0 + < < n x n x , el intervalo [ ] [ ] [ ] 1 , + n x n x contiene el origen:

[ ] { }
[ ]
[ ] [ ]
[ ] { }
[ ]
[ ] [ ] n x n x
n x
N
n x X P
n x n x
n x
N
n x X P
+
+
+ <
+

<
+
+
1
1 1
1

0
1
1

0

Figura 10.29 Clculo de las aportaciones a la probabilidad de X

.
Las aportaciones a la probabilidad son todas del tipo
{ }
P x X x
+
<
1 2
$
, donde x
1
, x
2

representan nmeros reales no negativos cualesquiera. Para sumar todas las aportaciones
a la probabilidad se define un vector auxiliar
~
x en cuyas componentes se irn
almacenando estos valores x
1
, x
2
, para los cuales cambia la pendiente de la funcin de
probabilidad acumulada. Las nuevas componentes del vector se insertarn entre las ya
existentes de modo que ste se mantenga en todo momento ordenado crecientemente:
[ ] [ ]
2 1 2 1
~ ~
n x n x n n < < . A cada componente de
~
x , [ ] n x
~
, se asocia la componente
[ ] n p
x
~ del vector p
x
~ , donde se almacena la probabilidad, debida a las aportaciones
consideradas hasta ese momento, de que X transformado al semieje positivo, esto es
$
X , sea menor o igual que [ ] n x
~
. En la Figura 10.30 se describe el procedimiento para el
clculo de los vectores
~
x y p
x
~ .
Clculo de los vectores
~
x y p
x
~
Inicializacin. Inicialmente los vectores
~
x y p
x
~ no tienen ninguna componente.
Con cada aportacin a la probabilidad, { } P x X x
+
<
1 2
$
, se actualizan los vectores
~
x y p
x
~ de la forma siguiente:
Si el vector
~
x tiene componentes, que llamaremos [ ]
1
~
n x , [ ]
2
~
n x , tales que
[ ]
1 1
~
x n x , [ ]
2 2
~
x n x , no se aaden nuevas componentes ni al vector
~
x ni al
vector p
x
~ .
Por el contrario, si el vector
~
x no tiene una componente con valor x
1
y otra con
valor x
2
, entonces se insertan en el vector
~
x la (si ya exista la otra) o las nuevas
componentes, con valor x
1
y/o x
2
, de modo que el vector
~
x quede ordenado
crecientemente. Una vez insertadas, una o ambas componentes, segn proceda,
se denominan
1
n y
2
n los nmeros de componente de
~
x tales que [ ]
1 1
~
x n x y
FUNCIONES ELEMENTALES DE UNA VARIABLE ALEATORIA REAL 435


[ ]
2 2
~
x n x . Por cada nueva componente insertada, por ejemplo [ ]
1
~
n x , debe
insertarse la correspondiente componente de p
x
~ , [ ]
1
~ n p
x
, cuyo valor se calcula
mediante interpolacin lineal de la forma siguiente:
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ] ( ) 1
~ ~
1
~
1
~
1 1
1
1 1
1 1
1
~
1
~
1
~
1
~
+
+
+ n x n x
n x n x
n p n p
n p n p
x x
x x

En cualquiera de los dos casos anteriores, es decir, se inserten o no nuevas
componentes en
~
x y p
x
~ , se actualiza el valor de las componentes del vector p
x
~
de la forma siguiente:
[ ]
[ ]
[ ]
[ ] [ ]
[ ] [ ]
[ ]

'

+
< <

2
~
2 1
1 2
1
~
1
~
~
para
para
~ ~
~ ~
para
n n n p
n n n
n x n x
n x n x
n p
n n n p
n p
x
x
x
x


Figura 10.30 Clculo de los vectores x
~
y
x
p~ .
Una vez sumada la aportacin de todas las contribuciones, se puede calcular el vector $ x
a partir de los vectores
~
x y p
x
~ . n
x
~ representa el nmero de componentes del vector
~
x
(y tambin del vector p
x
~ ). Las componentes de $ x pueden calcularse, interpolando
linealmente la funcin de probabilidad, de la forma siguiente:

[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ] [ ]
[ ]
[ ] [ ]
[ ] [ ]
x
x x
x
x x
n x N x
i p
N
n
i p i
N n i p
N
n
i p i p
i x i x
i x n x
x x
~
~ ~
~
~ ~
~
1
1
1
que tal es donde
,..., 2 : para
1
1
~
1
~
~

1
~
1
+
+ <

,
_

+
+
+


La representacin interna de Y se calcula: [ ] [ ] ( ) 1 ,..., 1 : para + N n n x ch n y .
Problema general ( )
( )
( ) Y F X F
X ch

Si el conjunto de valores posibles de X ,
X
I , es la unin de
X
i intervalos cerrados
disjuntos, puede procederse de la forma anteriormente descrita para cada uno de los
X
i
intervalos. Aplicando posteriormente un algoritmo similar a los de reduccin del
condicionamiento de la probabilidad puede obtenerse la representacin interna de X

,
donde
X
I

est completamente contenido en la semirecta real no negativa. El clculo de


la representacin interna de Y a partir de la de X

es:
436 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


[ ] [ ]
[ ] [ ] ( )

'
+

X
X
I I
X
Y
i j
N n
j n x ch j n y
i j j x j y
i i

,..., 1 :
1 ,..., 1 :
para , ,
,..., 1 : para
10.5.6 Seno y tangente hiperblicas. Funciones hiperblicas inversas
Las funciones seno hiperblico, tangente hiperblica, arco seno hiperblico y arco
tangente hiperblica son continuas, estn monovaluadas y son montonas crecientes. La
funcin arco coseno hiperblico es continua y est bivaluada. Se escoge la rama del
primer cuadrante, con lo que la funcin es montona creciente (ver Figura 10.31).
Representando mediante ( ) cualquiera de estas funciones, se puede calcular la
representacin interna de Y , definida mediante la expresin ( ) X Y , a partir de la
representacin interna de X , de la forma siguiente:
[ ] [ ]
[ ] [ ] ( )

'

1 ,..., 1 :
,..., 1 :
para , ,
,..., 1 : para
N n
i j
j n x j n y
i j j x j y
i i
X
X I I
X Y


Antes de calcular el seno hiperblico debe comprobarse que no hay riesgo de rebasar el
mximo valor almacenable por el tipo de dato real: si max real _ es el mximo real
almacenable, debe satisfacerse: ( ) ( ) real max arcsh x x real max arcsh
Max min
_ _ .
Debe comprobarse antes de realizar el clculo de la funcin arco coseno hiperblico que
se cumple 1
min
x , a fin de evitar errores numricos. Por el mismo motivo, tambin debe
comprobarse antes de realizar el clculo de la funcin arco tangente hiperblica que se
cumple: ( ) ( ) 1 _ _ 1 < < real max th x x real max th
Max min
.
X
Y arcchX
1

Figura 10.31 Arco coseno hiperblico.
EXPRESIONES BOOLEANAS 437


10.6 EXPRESIONES BOOLEANAS
Introduccin
Las expresiones Booleanas pueden contener los siguientes elementos: relaciones de
desigualdad (<, >), variables Booleanas, operadores Booleanos (and, or y not),
parntesis y expresiones if-then-else [Elmq96]. En este apartado se discute la evaluacin
de las relaciones de desigualdad entre variables aleatorias y la solucin de las
operaciones lgicas and, or y not cuando intervienen variables aleatorias. El Apartado
10.7 est dedicado al estudio de las expresiones if-then-else en que intervienen variables
aleatorias.
10.6.1 Relaciones de desigualdad (<, >)
Cualquier relacin de desigualdad conteniendo variables aleatorias reales,
X
n
X X ,...,
1
, y
variables deterministas reales,


n
,...,
1
, puede escribirse de la forma siguiente:
( ) 0 ,..., , ,...,
1 1
<


n n
X
X X f
Definiendo la variable aleatoria real Y como ( )


n n
X
X X f Y ,..., , ,...,
1 1
, la relacin
de desigualdad puede sustituirse por una variable aleatoria Booleana L , definida como
( ) 0 < Y L . A continuacin se muestra cmo calcular, a partir de la representacin
interna de la probabilidad de la variable aleatoria real Y , condicionada a los parmetros
aleatorios de entrada reales
Y
P

y Booleanos
Y
Q

, la representacin interna de la
probabilidad de la variable aleatoria Booleana L , condicionada a este mismo conjunto
de parmetros aleatorios de entrada.
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
{ } { }
1
1
]
1

+
+
+
+

] , , , [ ] , , , 1 [
] , , , 1 [
, ,
1
, , ,
* *

* *

* *

* *

0 , , que tales

,

,

j k n x j k n x
j k n x
n j k x
N
j k x k
Y Y Y Y
Y Y
Y Y
Y
Q
Y
P
Max
Y Y Y Y
Q P Q P
Q P
Q P
I
j k x j
Q P
I
Q P
L


para: N k ,..., 1 :
1
, ... ,
( )
N k
Y
P
,..., 1 :

dim
, false true,
1
, ... ,
( )
false true
Y
Q
,

dim
.
Para cada valor de los coeficientes { } , k se definen los ndices
* *
, j n (diferentes para
cada conjunto de valores de los coeficientes { } , k ) como aquellos que satisfacen:
{ }
[ ]
{ }
[ ]
*

, , 0 , , j k x j k x
Y Y Y Y
Q P
Max
Q P
min
<
{ } { }
] , , , 1 [ 0 ] , , , [
* *
,
* *
,
j k n x j k n x
Y Y Y Y
Q P Q P
+ <
438 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


10.6.2 Operadores Booleanos (and, or y not)
Not
Sea A una variable aleatoria Booleana dependiente estadsticamente del conjunto de
parmetros aleatorios de entrada
A A
Q P . La variable aleatoria Booleana C se define
de la forma A C not . Se satisface
A C
P P y
A C
Q Q . El clculo de la representacin
interna de C a partir de la de A es trivial si se considera que la probabilidad de C ,
condicionada a un determinado conjunto de parmetros de entrada, es igual a la unidad
menos la probabilidad de A condicionada al mismo conjunto de parmetros aleatorios
de entrada.
And y Or
Sean A y B dos variables aleatorias Booleanas estadsticamente independientes.
Entonces:
{ } { } { }
B A C
B P A P C P B A C true true true and
{ } { } { }
B A B A C
B P A P C P B A C + false false false or
Considrese ahora que A y B son estadsticamente dependientes, es decir,
( ) ( )
B A B A
Q Q P P , y que se desea calcular la representacin interna de la
probabilidad de C condicionada a
C C
Q P

, donde
B A C C
P P P P

y
B A C C
Q Q Q Q

. Para ello debe conocerse la probabilidad de A condicionada a


( ) ( ) ( ) ( )
B C A B C A
Q Q Q P P P

y la probabilidad de B condicionada a
( ) ( ) ( ) ( )
A C B A C B
Q Q Q P P P

. En el caso ms general, el clculo constar de los
pasos siguientes. En primer lugar, operar la probabilidad de A condicionada a
( ) ( ) ( ) ( )
B C A B C A
Q Q Q P P P

y la probabilidad de B condicionada a
( ) ( ) ( ) ( )
A C B A C B
Q Q Q P P P

para obtener la probabilidad de C condicionada
a ( ) ( ) ( ) ( )
B A C B A C
Q Q Q P P P

. A continuacin reducir el condicionamiento
en la probabilidad de C : calcular la probabilidad condicionada a
C C
Q P

a partir de
la probabilidad condicionada a ( ) ( ) ( ) ( )
B A C B A C
Q Q Q P P P

.
Representando de la forma siguiente los conjuntos de parmetros aleatorios de entrada:
B A AB
P P P ,
B A AB
Q Q Q
( )
AB B C A A
P P P P P

, ( )
AB B C A A
Q Q Q Q Q


( )
AB A C B B
P P P P P

, ( )
AB A C B B
Q Q Q Q Q


EXPRESIONES IF - THEN - ELSE 439


Puede calcularse la representacin interna de la probabilidad de C condicionada a
AB B A AB B A
Q Q Q P P P

de la forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]
AB B AB B
Q Q P P
B AB A AB A
Q Q P P
A
AB B A AB B A
Q Q Q P P P
C
k k T k k T
k k k T
B A C
AB B AB B AB A AB A
AB B A AB B A


, , , , , ,
, , , , ,
and
,

, ,

, ,

, ,



{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
AB B AB B
Q Q P P
B AB A AB A
Q Q P P
A
AB B AB B
Q Q P P
B AB A AB A
Q Q P P
A
AB B A AB B A
Q Q Q P P P
C
k k T k k T
k k T k k T
k k k T
B A C
AB B AB B AB A AB A
AB B AB B AB A AB A
AB B A AB B A



, , , , , ,
, , , , , ,
, , , , ,
or
,

, ,

, ,

, ,

, ,

, ,



Considrese ahora el caso en el cual uno de los dos operandos Booleanos es una
variable aleatoria y el otro es una variable determinista. Representando como la
variable aleatoria determinista, la representacin interna de la probabilidad de la
variable aleatoria Booleana C , definida como and A C o como or A C ,
condicionada al conjunto de parmetros aleatorios de entrada
C C
Q P

, puede calcularse
de la forma siguiente:
{ }
[ ]
{ }
[ ]

'


true k T
false
k T A C
A A
Q P
A
A A
Q P
C
A A
A A


si ,
si 0
, and


{ }
[ ]
{ }
[ ]

'


true
false k T
k T A C
A A
Q P
A
A A
Q P
C
A A
A A



si 1
si ,
, or


10.7 EXPRESIONES IF - THEN - ELSE
Introduccin
En funcin del tipo de variables aleatorias que intervienen en las expresiones if-then-
else, stas pueden clasificarse en los siguientes tres grupos:
Expresiones en que las nicas variables aleatorias que intervienen son reales:
( )
( )
2 1 2 1
2 1 2 1
else then if , ,
else then if , ,
X X X X
X X


Expresiones en que las nicas variables aleatorias que intervienen son
Booleanas:
440 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


( )
( )
( )
( )
( )
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
else then if , ,
else then if , ,
else then if , ,
else then if , ,
else then if , ,
A A A A
A A
A A L A A L
A L A L
L L


Expresiones en que intervienen variables aleatorias Booleanas y reales:

( )
( )
( )
2 1 2 1
2 1 2 1
2 1 2 1
else then if , ,

else then if , ,

else then if , ,

X X L X X L
X L X L
L L




En las expresiones anteriores, X y representan variables reales, aleatoria y
determinista respectivamente. A representa una variable aleatoria Booleana y una
variable Booleana determinista. A continuacin se discute cada uno de estos tipos de
expresiones if-then-else.
10.7.1 Expresiones if-then-else en que las nicas variables aleatorias
son reales
A continuacin se indica cmo calcular la representacin interna de la distribucin de
probabilidad de las variables aleatorias reales definidas mediante expresiones if-then-
else en las que las nicas variables aleatorias que intervienen son reales. Como se ha
sealado anteriormente, pueden darse los dos siguientes casos.
Caso 1.
2 1
else then if X Y
Si se define Y de la expresin
2 1
else then if X Y , la representacin interna de su
probabilidad, condicionada al conjunto de parmetros aleatorios de entrada
Y Y
Q P

, se
calcula de la forma siguiente:

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

'

'


true j k n x
false
j k n y
true j k x
false
j k y
true k i
false
k i
X Y
Y Y
Y Y
Y Y
Y Y
Y Y
Y Y
Q P
Q P
Q P
I
Q P
I
Q P
X
Q P
Y


si , , ,
si
, , ,

si , ,
si 1
, ,
si ,
si 1
,
else then if

1
2
,

, 1

2 1
1

EXPRESIONES IF - THEN - ELSE 441


Donde, los ndices varan de la forma siguiente:
( )
( )
{ }
[ ]

'

+1 ,..., 1 :
, ,..., 1 :
, : ,...,
,..., 1 : ,...,

dim
1

dim
1
N n
k i j
true false
N k k
Y Y
Y
Y
Q P
Y
Q
P


.
Caso 2.
2 1
else then if X X Y
Supngase que Y se define de la expresin
2 1
else then if X X Y . Se pretende
calcular la representacin interna de la funcin de probabilidad de Y condicionada al
conjunto de parmetros aleatorios de entrada
Y Y
Q

, tales que
Y Y

y
Y Y

.
El conjunto completo de parmetros aleatorios de entrada de los que depende Y es
igual a la unin del conjunto de parmetros de los que depende
1
X con el conjunto de
parmetros de los que depende
2
X :
2 1
X X Y
P P P ,
2 1
X X Y
Q Q Q .
Para calcular la representacin interna de Y condicionada a
Y Y
Q P

resulta til
distinguir, entre los parmetros aleatorios de entrada
Y
P

y
Y
Q

:
Aquellos de los que depende
1
X y no
2
X . Se representan
1

X
P y
1

X
Q ,
satisfacindose
Y X
P P

1
y
Y X
Q Q

1
.
Aquellos de los que depende
2
X y no
1
X . Se representan
2

X
P y
2

X
Q ,
satisfacindose
Y X
P P

2
y
Y X
Q Q

2
.
Aquellos de los que depende tanto
1
X como
2
X . Se representan
2 1

X X
P y
2 1

X X
Q , satisfacindose
Y X X
P P

2 1
y
Y X X
Q Q

2 1
.
A cada uno de estos conjuntos de parmetros aleatorios de entrada se asocia el
correspondiente vector de ndices, cada uno de ellos con tantas componentes como
elementos tiene su conjunto asociado de parmetros aleatorios de entrada:
1 1

X X
k P ,
1 1


k Q
X
,
2 2

X X
k P ,
2 2


k Q
X
,
2 1 2 1

X X X X
k P ,
2 1 2 1


k Q
X X
. El valor de cada
una de las componentes de cada uno de los vectores de ndices asociados a parmetros
reales puede variar entre 1 y N . Las componentes de los vectores de ndices asociados
a parmetros Booleanos pueden valer true o false .

442 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ]
{ }
[ ]

'


true k k i
false k k i
k k k i
X X Y
X X X X X X
Q Q P P
X
X X X X X X
Q Q P P
X
X X X X X X X X
Q Q Q P P P
Y
X X X X X X
X X X X X X
X X X X X X X X


si , , ,
si , , ,
, , , , ,
else then if
2 1 1 2 1 1
2 1 1 2 1 1
1
2 1 2 2 1 2
2 1 2 2 1 2
2
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1

2 1

{ }
[ ]
{ }
[ ]
{ }
[ ]

si , , , ,
si , , , ,
, , , , , ,
2 1 1 2 1 1
2 1 1 2 1 1
2 1 2 2 1 2
2 1 2 2 1 2
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1

, 1

, 2

'

true j k k x
false j k k x
j k k k y
X X X X X X
Q Q P P
I
X X X X X X
Q Q P P
I
X X X X X X X X
Q Q Q P P P
I
X X X X X X
X X X X X X
X X X X X X X X




{ }
[ ]
{ }
[ ]
{ }
[ ]

'

true j k k n x
false j k k n x
j k k k n y
X X X X X X
Q Q P P
X X X X X X
Q Q P P
X X X X X X X X
Q Q Q P P P
X X X X X X
X X X X X X
X X X X X X X X



si , , , , ,
si , , , , ,
, , , , , , ,
2 1 1 2 1 1
2 1 1 2 1 1
2 1 2 2 1 2
2 1 2 2 1 2
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1


Donde, los ndices j y n varan de la forma siguiente:
{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1

N n
k k k i j
X X X X X X X X
Q Q Q P P P
Y
X X X X X X X X


10.7.2 Expresiones if-then-else en que las nicas variables aleatorias
son Booleanas
Pueden distinguirse cinco tipos de estructura if-then-else en las cuales las nicas
variables aleatorias que intervienen son Booleanas. Estos son:

( )
( )
( )
( )
( )
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
2 1 2 1
else then if , ,
else then if , ,
else then if , ,
else then if , ,
else then if , ,
A A A A
A A
A A L A A L
A L A L
L L


Caso 1.
2 1
else then if L A
Supngase que la variable aleatoria Booleana A se define de la expresin
2 1
else then if L A , donde
1
y
2
son variables Booleanas deterministas. La
variable A depende del mismo conjunto de parmetros aleatorios de entrada que L ,
L A
P P y
L A
Q Q . La representacin interna de la probabilidad de A condicionada a
EXPRESIONES IF - THEN - ELSE 443


un determinado subconjunto de los parmetros aleatorios de los que depende puede
calcularse, teniendo en cuenta cual es el valor de
1
y
2
, de la forma siguiente:
false
1
true
1

false
2

{ }
[ ] 0 , T

k
A A
Q P
A

{ }
[ ]
{ }
[ ] , T , T

,

,

k k
A A A A
Q P
L
Q P
A

true
2

{ }
[ ]
{ }
[ ] , T 1 , T

,

,

k k
A A A A
Q P
L
Q P
A

{ }
[ ] 1 , T

k
A A
Q P
A


Donde, los ndices varan de la forma siguiente:
( )
( )

'

true false
N k k
A
A
Q
P
, : ,...,
,..., 1 : ,...,

dim
1

dim
1

.
Caso 2.
2 1
else then if A L A
Supngase ahora que la variable aleatoria Booleana A se define de la expresin
2 1
else then if A L A , donde
2
es una variable Booleana determinista y
1
A es una
variable aleatoria Booleana. La probabilidad del evento { } true A puede calcularse, de
la forma siguiente:
{ }
{ } { }
{ }

'


+

false true A true L P
true false L P true A true L P
true A P
2 1
2 1
si ,
si ,


El conjunto de parmetros aleatorios de entrada de los que depende A es igual a la
unin de los que depende L y de los que depende
1
A ,
1
A L A
P P P y
1
A L A
Q Q Q .
Para calcular la representacin interna de la probabilidad de A condicionada al
conjunto de parmetros
A A
Q P

, con ( )
A A L
P P P

1
y ( )
A A L
Q Q Q

1
, resulta
conveniente diferenciar de cuales de stos depende L pero no
1
A (se representan
L
P

,
L
Q

), de cuales depende
1
A pero no L (se representan
1

A
P ,
1

A
Q ), y de cuales depende
tanto
1
A como L (se representan
L A
P
1

,
L A
Q
1

). Estos ltimos son todos aquellos


parmetros aleatorios de entrada de los que dependen ambas variables,
1
A y L .
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

,
_

false k k k k
true k k k k -
k k k
L A A L A A
Q Q P P
A L A L L A L
Q Q P P
L
L A A L A A
Q Q P P
A L A L L A L
Q Q P P
L
L A A L L A A L
Q Q Q P P P
A
L A A L A A L A L L A L
L A A L A A L A L L A L
L A A L L A A L
2

,

,

,

,

si , , , T , , , T
si , , , T - 1 , , , T 1
, , , , , T
1 1 1 1
1 1 1 1
1 1 1
1 1
1 1 1 1
1 1 1 1
1 1 1
1 1
1 1 1 1
1 1 1 1




444 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Caso 3.
2 1
else then if A A L A
Supngase que la variable A se define mediante la expresin
2 1
else then if A A L A , donde tanto L como
1
A y
2
A son variables aleatorias
Booleanas. La probabilidad del evento { } true A es:
{ } { } { } true A false L P true A true L P true A P +
2 1
, ,
Se desea calcular la representacin interna de la probabilidad de A condicionada al
conjunto de parmetros aleatorios
A A
Q P

, en el cual, entre otros, estn incluidos todos
aquellos parmetros aleatorios de entrada de los cuales dependen al menos dos de las
tres variables L ,
1
A y
2
A , es decir:
( )
A A A
P P P

2 1
, ( )
A L A
P P P

1
, ( )
A A L
P P P

2

( )
A A A
Q Q Q

2 1
, ( )
A L A
Q Q Q

1
, ( )
A A L
Q Q Q

2

Para obtener la representacin interna de la probabilidad de A condicionada a un
subconjunto de
A A
Q P

, que no contenga alguno de los parmetros aleatorios de
entrada de los que dependen al menos dos de las tres variables L ,
1
A y
2
A , hay que,
una vez calculada la representacin interna de la probabilidad de A condicionada a
A A
Q P

, reducir el condicionamiento de la misma.
Para calcular la representacin interna de la probabilidad de la variable aleatoria A es
conveniente emplear una notacin diferente para cada uno de los siguientes catorce
grupos de parmetros aleatorios de entrada que pueden establecerse del conjunto
A A
Q P

(siete grupos compuestos de parmetros reales y siete de Booleanos):
Aquellos parmetros del conjunto
A A
Q P

de los que depende L , pero no
depende ni
1
A ni
2
A . Los reales se representan
L
P

y los Booleanos
L
Q

.
Aquellos parmetros del conjunto
A A
Q P

de los que depende
1
A , pero no
depende ni L ni
2
A . Los reales se representan
1

A
P y los Booleanos
1

A
Q .
Aquellos parmetros del conjunto
A A
Q P

de los que depende
2
A , pero no
depende ni
1
A ni L . Los reales se representan
2

A
P y los Booleanos
2

A
Q .
Aquellos parmetros del conjunto
A A
Q P

de los que depende L y
1
A , pero
no depende
2
A . Los reales se representan
1

LA
P y los Booleanos
1

LA
Q .
Aquellos parmetros del conjunto
A A
Q P

de los que depende L y
2
A , pero
no depende
1
A . Los reales se representan
2

LA
P y los Booleanos
2

LA
Q .
EXPRESIONES IF - THEN - ELSE 445


Aquellos parmetros del conjunto
A A
Q P

de los que depende
1
A y
2
A ,
pero no depende L . Los reales se representan
2 1

A A
P y los Booleanos
2 1

A A
Q .
Aquellos parmetros del conjunto
A A
Q P

de los que depende
1
A ,
2
A y L .
Los reales se representan
2 1
A LA
P y los Booleanos
2 1
A LA
Q .
A cada uno de estos catorce subconjuntos en que se ha dividido el conjunto
A A
Q P

se
asocia un vector de coeficientes, tal que el nmero de sus componentes es igual al
nmero de elementos (parmetros) que tiene el subconjunto al que est asociado, y de
modo que el valor de cada uno de los coeficientes puede variar entre 1 y N si los
parmetros son reales y puede valer true y false si Booleanos. Los vectores asociados
son:
L L
k P

,
1 1

A A
k P ,
2 2

A A
k P ,
1 1

LA LA
k P ,
2 2

LA LA
k P ,
2 1 2 1

A A A A
k P ,
2 1 2 1
A LA A LA
k P ,
L L
Q

,
1 1

A A
Q ,
2 2

A A
Q ,
1 1

LA LA
Q ,
2 2

LA LA
Q
,
2 1 2 1

A A A A
Q y
2 1 2 1
A LA A LA
Q . La representacin interna de la probabilidad de A
condicionada a
A A
Q P

se puede calcular de la forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
2 1 2 1 2 2 2 1 2 1 2 2
2 1 2 1 2 2 2 1 2 1 2 2
2
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1
2 1 2 1 1 1 2 1 2 1 1 1
2 1 2 1 1 1 2 1 2 1 1 1
1
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1

,

, ,

, ,

, ,

, ,

, ,

, , , , , , , T
, , , , , , , T 1
, , , , , , , T
, , , , , , , T
, , , , , , , , , , , , ,
T
A LA A A LA A A LA A A LA A
Q Q Q Q P P P P
A
A LA LA LA L A LA LA LA L
Q Q Q Q P P P P
L
A LA A A LA A A LA A A LA A
Q Q Q Q P P P P
A
A LA LA LA L A LA LA LA L
Q Q Q Q P P P P
L
A LA A A LA LA A A L A LA A A LA LA A A L
Q Q Q Q Q Q Q P P P P P P P
A
k k k k
k k k k
k k k k
k k k k
k k k k k k k
A LA A A LA A A LA A A LA A
A LA LA LA L A LA LA LA L
A LA A A LA A A LA A A LA A
A LA LA LA L A LA LA LA L
A LA A A LA LA A A L A LA A A LA LA A A L




,
_


Caso 4.
2 1
else then if A A
Si la variable condicin es determinista y slo una de las ramas contiene una variable
aleatoria Booleana, como es el caso de
2 1
else then if A A , el conjunto de
parmetros de entrada de que depende A es el mismo que el conjunto del que depende
1
A . La representacin interna de la probabilidad de A condicionada al conjunto de
parmetros aleatorios de entrada
A A
Q P

puede calcularse de la forma siguiente:
{ }
[ ]
{ }
[ ]

'

true k T
false
k T
A A
A A
Q P
A
Q P
A

si ,
si
,

2
,

1

446 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Caso 5.
2 1
else then if A A A
Si la variable condicin es determinista y las dos ramas contienen variables aleatorias
Booleanas,
2 1
else then if A A A , el conjunto de parmetros aleatorios de entrada
de los que depende A es igual a la unin del conjunto del que depende
1
A con el
conjunto del que depende
2
A . Se desea calcular la representacin interna de A
condicionada a
A A
Q P

. Una vez ms, para calcular la representacin interna es
conveniente diferenciar entre aquellos parmetros contenidos en
A A
Q P

de los que
depende
1
A , pero no
2
A , aquellos de los que depende
2
A , pero no
1
A y aquellos de los
que depende tanto
1
A como
2
A . Los tres grupos anteriores se representan:
1

A
P y
1

A
Q si
dependen slo de
1
A ,
2

A
P y
2

A
Q si dependen slo de
2
A y
2 1

A A
P y
2 1

A A
Q si dependen de
1
A y de
2
A .
A cada uno de estos seis subconjuntos en que se ha dividido el conjunto
A A
Q P

se le
asocia un vector de ndices, con el mismo nmero de componentes que elementos tiene
el conjunto al cual se asocia. Parmetros reales:
1 1

A A
k P ,
2 2

A A
k P ,
2 1 2 1

A A A A
k P .
Parmetros Booleanos:
1 1

A A
k Q ,
2 2

A A
k Q ,
2 1 2 1

A A A A
k Q . Cada uno de los
componentes de los vectores de ndices asociados a parmetros aleatorios de entrada
reales toman valores entre 1 y N , mientras que los asociados a parmetros aleatorios
de entrada Booleanos toman el valor true o false .
La representacin interna de la probabilidad de A condicionada a
A A
Q P

puede
calcularse de la forma siguiente:
{ }
{ }
{ }

'

1
]
1

1
]
1

1
]
1

true k k T
false k k T
k k k T
A A A A A A
Q Q P P
A
A A A A A A
Q Q P P
A
A A A A A A A A
Q Q Q P P P
A
A A A A A A
A A A A A A
A A A A A A A A



si , , ,
si , , ,
, , , , ,
2 1 1 2 1 1
2 1 1 2 1 1
1
2 1 2 2 1 2
2 1 2 2 1 2
2
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1


10.7.3 Expresiones if-then-else en que intervienen variables aleatorias
reales y Booleanas
En este apartado se consideran las estructuras if-then-else en las que intervienen tanto
variables aleatorias Booleanas como reales. Puesto que la condicin de la estructura if-
then-else debe ser Booleana y las expresiones de las dos ramas deben ser del mismo
tipo, es decir, o reales o Booleanas, la nica forma en que pueden aparecer
simultneamente variables aleatorias y Booleanas en una misma expresin if-then-else
es que la condicin sea una variable aleatoria Booleana y que las expresiones de las dos
ramas sean reales. Pueden darse tres casos que sern discutidos en el siguiente orden:
EXPRESIONES IF - THEN - ELSE 447


2 1
2 1
2 1
else then if
else then if
else then if
X X L X
X L X
L X



En las tres expresiones anteriores X ,
1
X y
2
X representan variables aleatorias reales,
L representa una variable aleatoria Booleana y
1
y
2
representan dos variables
deterministas reales.
Caso 1.
2 1
else then if L X
Considrese el primer caso, en el cual las dos ramas contienen variables deterministas
reales,
2 1
else then if L X . El conjunto de parmetros aleatorios de entrada de
los que depende X es el mismo que el conjunto del que depende L . El clculo de la
representacin interna de la funcin de probabilidad de X , condicionada al conjunto de
parmetros aleatorios de entrada
X X
Q P

, se realiza de la forma siguiente:
2 1

2 1
<
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

2 1

1 , , ,
1 1 , ,
1 ,

k n x
k x
k i
X X
X X
X X
Q P
Q P
I
Q P
X

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

,

,

,

,

2 , , ,
1 , , ,
, T 1 2 , ,
, T 1 , ,
2 ,



k n x
k n x
k k x
k k x
k i
X X
X X
X X X X
X X X X
X X
Q P
Q P
Q P
L
Q P
I
Q P
L
Q P
I
Q P
X


donde, en ambas expresiones:
( )
( )

'

+1 ,..., 1 :
, : ,...,
,..., 1 : ,...,

dim
1

dim
1
N n
false true
N k k
X
X
Q
P
.
Caso 2.
2 1
else then if X L X
Considrese ahora que una de las ramas de la expresin if-then-else contiene una
variable aleatoria real,
2 1
else then if X L X . El conjunto de parmetros aleatorios
de entrada de los que depende X es igual a la unin del conjunto del que depende L
con el conjunto del que depende
1
X .
Se desea calcular la representacin interna de la funcin de probabilidad de X
condicionada al conjunto de parmetros aleatorios
X X
Q P

, en el cual se encuentran
incluidos, entre otros, todos aquellos parmetros aleatorios de entrada de los que
448 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


dependen simultneamente L y
1
X , es decir, ( )
X X L
P P P

1
y
( )
X X L
Q Q Q

1
.
Para calcular la representacin interna es conveniente distinguir, de entre los parmetros
aleatorios del conjunto
X X
Q P

, aquellos de los que depende L , pero no
1
X , aquellos
de los que depende
1
X , pero no L , y aquellos de los que dependen tanto L como
1
X .
L
P

representa los elementos de


X
P

de los que depende L , pero no


1
X .
1

X
P representa
los elementos de
X
P

de los que depende


1
X , pero no L .
1
LX
P representa los elementos
de
X
P

de los que depende L y


1
X .
L
Q

representa los elementos de


X
Q

de los que
depende L , pero no
1
X .
1

X
Q representa los elementos de
X
Q

de los que depende


1
X ,
pero no L .
1
LX
Q representa los elementos de
X
Q

de los que depende L y


1
X . A cada
uno de estos seis conjuntos de parmetros aleatorios de entrada se le asocia un vector de
ndices, cuyo nmero de componentes es igual al nmero de elementos del conjunto al
que est asociado:
L L
k P

,
1 1

X X
k P ,
1 1
LX LX
k P ,
L L
Q

,
1 1

X X
Q y
1 1
LX LX
Q .
La representacin interna de la funcin de probabilidad de X condicionada a los
parmetros aleatorios de entrada
X X
Q P

, puede calcularse mediante el mtodo
descrito en la Figura 10.32.
EXPRESIONES IF - THEN - ELSE 449


Algoritmo para el clculo de la representacin interna de la funcin de
probabilidad de X condicionada a
X X
Q P


Para cada una de las combinaciones de valores de los ndices
1 1 1 1
, , , , ,
LX X L LX X L
k k k se
satisface una y slo una de las cuatro siguientes condiciones, procedindose de la forma
indicada para cada una de ellas:
Condicin 1. Se satisface:
{ }
[ ] 1 , , , T
1 1
1 1
,

, ,

LX L LX L
Q Q P P
L
k k
LX L LX L

La representacin interna se calcula de la forma siguiente:
{ }
[ ]
{ }
[ ]
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
, , ,
, , , , ,
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



{ }
[ ]
{ }
[ ] j k k x
j k k k x
LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX X LX X
LX X L LX X L
, , , ,
, , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
,

, ,

, 1
,

, ,




{ }
[ ]
{ }
[ ] j k k n x
j k k k n x
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X L LX X L
, , , , ,
, , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
,

, ,

1
,

, ,




donde, en las expresiones anteriores:

{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
1 1 1 1
1 1 1 1
,

, ,

N n
k k k i j
LX X L LX X L
Q Q Q P P P
X
LX X L LX X L

.
Condicin 2. Se satisface:
{ }
[ ] 0 , , , T
1 1
1 1
,

, ,

LX L LX L
Q Q P P
L
k k
LX L LX L

La representacin interna se calcula de la forma siguiente:
{ }
[ ] 1 , , , , ,
1 1 1 1
1 1 1 1
,

, ,

LX X L LX X L
Q Q Q P P P
X
k k k i
LX X L LX X L

{ }
[ ] 1 1 , , , , , ,
1 1 1 1
1 1 1 1
,

, ,

LX X L LX X L
Q Q Q P P P
I
k k k x
LX X L LX X L

{ }
[ ]
2
,

, ,

1 , , , , , , ,
1 1 1 1
1 1 1 1

LX X L LX X L
Q Q Q P P P
k k k n x
LX X L LX X L

450 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


donde 1 ,..., 1 : + N n .
Condicin 3. Se satisfacen las dos siguientes condiciones:
{ }
[ ] 1 , , , T 0
1 1
1 1
,

, ,

< <
LX L LX L
Q Q P P
L
k k
LX L LX L

{ }
[ ]
1 1 1 1
1 1 1 1
1
, , ,
,

, ,

2 LX X LX X
Q Q P P
X
k k I
LX X LX X

Para calcular la representacin interna, se define primeramente el entero
*
j de una de las
tres siguientes formas:
A. Si se cumple:
{ }
[ ] 1 , , , ,
1 1 1 1
1 1 1 1
,

, ,

, 1 2 LX X LX X
Q Q P P
min
k k x
LX X LX X
<
entonces, 1
*
j .
B. Si se cumple:
{ } { }
[ ]
1
]
1

>
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
, , , , , , ,
,

, ,

, ,

, 1 2 LX X LX X
Q Q P P
X LX X LX X
Q Q P P
Max
k k i k k x
LX X LX X LX X LX X


entonces,
{ }
[ ] 1 , , ,
1 1 1 1
1 1 1 1
1
,

, ,

*
+
LX X LX X
Q Q P P
X
k k i j
LX X LX X
.
C. En caso contrario, se define
*
j como el entero que satisface:
{ }
[ ]
{ }
[ ]

'

<
<
*
,

, ,

, 1 2
2
*
,

, ,

, 1
, , , ,
1 , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x
j k k x
LX X LX X
Q Q P P
min
LX X LX X
Q Q P P
Max
LX X LX X
LX X LX X



Una vez determinado el valor de
*
j , la representacin interna se calcula de la forma
siguiente:




EXPRESIONES IF - THEN - ELSE 451


{ }
[ ]
{ }
[ ] 1 , , ,
, , , , ,
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

>

<

*
,

, ,

, ,

, 1
*
,

, ,

*
,

, ,

, ,

, 1
,

, ,

si , , , T 1 , , , ,
si , , , T 1
si , , , T , , , ,
, , , , , ,
1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j k k j k k x
j j k k
j j k k j k k x
j k k k x
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX L LX L LX X LX X
LX L LX L
LX L LX L LX X LX X
LX X L LX X L




{ }
[ ]
{ }
[ ]
{ }
[ ]

'

>

<

*
,

, ,

1
*
2
*
,

, ,

1
,

, ,

si 1 , , , , ,
si
si , , , , ,
, , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j j k k n x
j j
j j j k k n x
j k k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X L LX X L




donde, en las expresiones anteriores:

{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
1 1 1 1
1 1 1 1
,

, ,

N n
k k k i j
LX X L LX X L
Q Q Q P P P
X
LX X L LX X L

.
Condicin 4. Se satisfacen las dos siguientes condiciones:
{ }
[ ] 1 , , , T 0
1 1
1 1
,

, ,

< <
LX L LX L
Q Q P P
L
k k
LX L LX L

{ }
[ ]
1 1 1 1
1 1 1 1
1
, , ,
,

, ,

2 LX X LX X
Q Q P P
X
k k I
LX X LX X

Para calcular la representacin interna, se define primeramente
*
j como el entero que
satisface:
{ }
[ ]
{ }
[ ]

'

*
,

, ,

, 1 2
2
*
,

, ,

, 1
, , , ,
, , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x
j k k x
LX X LX X
Q Q P P
Max
LX X LX X
Q Q P P
min
LX X LX X
LX X LX X



Una vez determinado el valor de
*
j , que es el nmero del intervalo, en la representacin
interna de
1
X , en que est incluido
2
, se transforma el intervalo
*
j -simo en uno, dos
o en tres intervalos cerrados, calculndose la representacin interna de una de las cuatro
formas siguientes:

452 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


4 - A. Si se cumple:
{ }
[ ]
{ }
[ ]
*
,

, ,

, 1 2
*
,

, ,

, 1
, , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k x
LX X LX X
Q Q P P
Max LX X LX X
Q Q P P
min
LX X LX X LX X LX X

entonces:
{ }
[ ]
{ }
[ ]
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
, , ,
, , , , ,
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

*
,

, ,

*
,

, ,

, 1
,

, ,

*
,

, ,

, ,

, 1
,

, ,

si , , , T , , , ,
, , , T 1
si , , , T , , , ,
, , , , , ,
1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j k k j k k x
k k
j j k k j k k x
j k k k x
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX L LX L LX X LX X
LX L LX L
LX L LX L LX X LX X
LX X L LX X L





{ }
[ ]
{ }
[ ]

'

*
2
*
,

, ,

1
,

, ,

si
si , , , , ,
, , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j
j j j k k n x
j k k k n x
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X L LX X L




donde, en las expresiones anteriores:

{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
1 1 1 1
1 1 1 1
,

, ,

N n
k k k i j
LX X L LX X L
Q Q Q P P P
X
LX X L LX X L

.
4 - B. Si se cumple:
{ }
[ ]
{ }
[ ]
*
,

, ,

, 1 2
*
,

, ,

, 1
, , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k x
LX X LX X
Q Q P P
Max LX X LX X
Q Q P P
min
LX X LX X LX X LX X
<
entonces:
{ }
[ ]
{ }
[ ] 1 , , ,
, , , , ,
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



puesto que el intervalo:
{ }
[ ]
1
]
1

*
,

, ,

, 1 2
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
Max
LX X LX X

EXPRESIONES IF - THEN - ELSE 453


se divide en un "intervalo puntual", [ ]
2 2
, , y en el intervalo:
{ }
[ ]
1
]
1

+
*
,

, ,

, 1 2
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
Max
LX X LX X

donde es un real muy pequeo, tal que satisface:
{ }
[ ]
{ }
[ ]
*
,

, ,

1
*
,

, ,

1
, , , , , 1
, , , , , 2
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x
j k k x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
LX X LX X

<<

La probabilidad de que X se encuentre en cada uno de los intervalos es:
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

>

<

*
,

, ,

, ,

, 1
*
,

, ,

*
,

, ,

, ,

, 1
,

, ,

si , , , T 1 , , , ,
si , , , T 1
si , , , T , , , ,
, , , , , ,
1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j k k j k k x
j j k k
j j k k j k k x
j k k k x
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX L LX L LX X LX X
LX L LX L
LX L LX L LX X LX X
LX X L LX X L





El vector
{ }
1 1 1 1
,

, ,

LX X L LX X L
Q Q Q P P P
x se calcula de la forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

+ >

'

>
+

'

+
+

<

1 si 1 , , , , ,
1
1
si , , , , ,
1
1
si , , , , , 1
si
si , , , , ,
, , , , , , ,
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1
*
2
*
,

, ,

1
,

, ,

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j j k k n x
n
j j
j k k n x
n
j j
j k k x
j j
j j j k k n x
j k k k n x
LX X LX X
Q Q P P
*
LX X LX X
Q Q P P
*
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X LX X
LX X LX X
LX X L LX X L





donde, en las expresiones anteriores:

{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
1 1 1 1
1 1 1 1
,

, ,

N n
k k k i j
LX X L LX X L
Q Q Q P P P
X
LX X L LX X L

.

454 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


4 - C. Si se cumple:
{ }
[ ]
{ }
[ ]
*
,

, ,

, 1 2
*
,

, ,

, 1
, , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k x
LX X LX X
Q Q P P
Max LX X LX X
Q Q P P
min
LX X LX X LX X LX X
<
entonces:
{ }
[ ]
{ }
[ ] 1 , , ,
, , , , ,
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



El intervalo:
{ }
[ ]
1
]
1

2
*
,

, ,

, 1
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
min
LX X LX X

se divide en el intervalo:
{ }
[ ]
1
]
1


2
*
,

, ,

, 1
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
min
LX X LX X

y en el "intervalo puntual", [ ]
2 2
, . es un real muy pequeo, tal que satisface:
{ }
[ ]
{ }
[ ]
*
,

, ,

1
*
,

, ,

1
, , , , ,
, , , , , 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k N x
j k k N x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
LX X LX X

+ <<

La probabilidad de que X se encuentre en cada uno de los intervalos es:
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

+ >
+

1 si , , , T 1 , , , ,
1 si , , , T 1
si , , , T , , , ,
, , , , , ,
*
,

, ,

, ,

, 1
*
,

, ,

*
,

, ,

, ,

, 1
,

, ,

1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j k k j k k x
j j k k
j j k k j k k x
j k k k x
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX L LX L LX X LX X
LX L LX L
LX L LX L LX X LX X
LX X L LX X L





El vector
{ }
1 1 1 1
,

, ,

LX X L LX X L
Q Q Q P P P
x se calcula de la forma siguiente:
EXPRESIONES IF - THEN - ELSE 455


{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

+ >
+

'

+ <

'

+
<

1 si 1 , , , , ,
1 si
1
si , , , , ,
1
si , , , , , 1
si , , , , ,
, , , , , , ,
*
,

, ,

1
*
2
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1
,

, ,

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j j k k n x
j j
N n
j j
j k k n x
N n
j j
j k k N x
j j j k k n x
j k k k n x
LX X LX X
Q Q P P
*
LX X LX X
Q Q P P
*
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X LX X
LX X LX X
LX X L LX X L






donde, en las expresiones anteriores:

{ }
[ ]

'

+1 ,..., 1 :
, , , , , ,..., 1 :
1 1 1 1
1 1 1 1
,

, ,

N n
k k k i j
LX X L LX X L
Q Q Q P P P
X
LX X L LX X L

.
4 - D. Si se cumple:
{ }
[ ]
{ }
[ ]
*
,

, ,

, 1 2
*
,

, ,

, 1
, , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k x
LX X LX X
Q Q P P
Max LX X LX X
Q Q P P
min
LX X LX X LX X LX X
< <
entonces:
{ }
[ ]
{ }
[ ] 2 , , ,
, , , , ,
1 1 1 1
1 1 1 1
1
1 1 1 1
1 1 1 1
,

, ,

, ,

LX X LX X
Q Q P P
X
LX X L LX X L
Q Q Q P P P
X
k k i
k k k i
LX X LX X
LX X L LX X L



El intervalo:
{ }
[ ]
{ }
[ ]
1
]
1

*
,

, ,

, 1
*
,

, ,

, 1
, , , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k x
LX X LX X
Q Q P P
Max LX X LX X
Q Q P P
min
LX X LX X LX X LX X

se divide en los intervalos:
{ }
[ ]
1
]
1


2
*
,

, ,

, 1
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
min
LX X LX X

{ }
[ ]
1
]
1

+
*
,

, ,

, 1 2
, , , , ,
1 1 1 1
1 1 1 1
j k k x
LX X LX X
Q Q P P
Max
LX X LX X

y en el "intervalo puntual", [ ]
2 2
, . Se define el entero
*
n como aquel que satisface:
456 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ]

'

+ <

* *
,

, ,

1 2
2
* *
,

, ,

1
, , , , , 1
, , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k n x
j k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
LX X LX X



es un nmero real muy pequeo, tal que satisface:
{ }
[ ]
{ }
[ ]
* *
,

, ,

1
* *
,

, ,

1
, , , , ,
, , , , , 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k n x
j k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
LX X LX X

+ <<

La probabilidad de que X se encuentre en cada uno de los intervalos es:
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
( )
{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

+ >
+

<

2 si , , , T 2 , , , ,
2 si
, , , T , , , , 1
1 si , , , T 1
si , , , T , , , ,
si , , , T , , , ,
, , , , , ,
*
,

, ,

, ,

, 1
*
,

, ,

*
,

, ,

, 1
*
,

, ,

*
,

, ,

*
,

, ,

, 1
*
,

, ,

, ,

, 1
,

, ,

1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j k k j k k x
j j
k k j k k x c
j j k k
j j k k j k k x c
j j k k j k k x
j k k k x
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX L LX L
Q Q P P
L LX X LX X
Q Q P P
I
LX X L LX X L
Q Q Q P P P
I
LX L LX L LX X LX X
LX L LX L LX X LX X
LX L LX L
LX L LX L LX X LX X
LX L LX L LX X LX X
LX X L LX X L







donde c de define de la forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]

,
_

j k k n x
j k k n x
j k k n x
N N
n
c
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
LX X LX X
LX X LX X
, , , , ,
, , , , , 1
, , , , ,
1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1 2
*




El vector
{ }
1 1 1 1
,

, ,

LX X L LX X L
Q Q Q P P P
x se calcula de la forma siguiente:
{ }
[ ]
{ }
[ ]
{ }
[ ]

'

+ >
+
<

2 si 2 , , , , ,
1 si
si , , , , ,
, , , , , , ,
*
,

, ,

1
*
2
*
,

, ,

1
,

, ,

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j j j k k n x
j j
j j j k k n x
j k k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X L LX X L




En el caso
*
j j , las componentes del vector deben calcularse de las siguientes
expresiones:
EXPRESIONES IF - THEN - ELSE 457


{ }
[ ]
{ }
[
*
,

, ,

1
*
,

, ,

, , , , , 1 , , , , , , , 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k x j k k k x
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X LX X L LX X L


{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
c
N
n
j k k m x
j k k m x
j k k m x
j k k k n x
N N
m
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X LX X
LX X L LX X L
1
, , , , ,
, , , , , 1
, , , , ,
, , , , , , ,
1 1
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1

,
_

,
_






{ }
[ ] +
2
*
,

, ,

, , , , , , , 1
1 1 1 1
1 1 1 1
j k k k N x
LX X L LX X L
Q Q Q P P P
LX X L LX X L

donde m es el entero que satisface:
{ }
[ ]
{ }
[ ]
{ }
[ ]

,
_

*
,

, ,

1
*
,

, ,

1
*
,

, ,

, , , , , 1 , , , , , ,
, , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k m x j k k m x
j k k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X LX X LX X
LX X L LX X L



Anlogamente, en el caso 2
*
+ j j , las componentes del vector deben calcularse de las
siguientes expresiones:

{ }
[ ] + +
2
*
,

, ,

2 , , , , , , , 1
1 1 1 1
1 1 1 1
j k k k x
LX X L LX X L
Q Q Q P P P
LX X L LX X L

{ }
[ ]
{ }
[ ]
{ }
[ ]
{ }
[ ]
( ) c
N
n
c
j k k m x
j k k m x
j k k m x
j k k k n x
N N
m
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X LX X
LX X LX X
LX X L LX X L

,
_

,
_

+
+

1
1
, , , , ,
, , , , , 1
, , , , ,
2 , , , , , , ,
1 1
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1
*
,

, ,

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1





{ }
[ ]
{ }
[ ]
*
,

, ,

1
*
,

, ,

, , , , , 1
2 , , , , , , , 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k N x
j k k k N x
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X
LX X L LX X L


+
+ +

donde m , al igual que en el caso anterior, es el entero que satisface:
{ }
[ ]
{ }
[ ]
{ }
[ ]

,
_

+
+
*
,

, ,

1
*
,

, ,

1
*
,

, ,

, , , , , 1 , , , , , ,
2 , , , , , , ,
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
j k k m x j k k m x
j k k k n x
LX X LX X
Q Q P P
LX X LX X
Q Q P P
LX X L LX X L
Q Q Q P P P
LX X LX X LX X LX X
LX X L LX X L



Figura 10.32 Algoritmo para el clculo de la representacin interna de la probabilidad condicionada.
458 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


Caso 3.
2 1
else then if X X L X
Supngase que se desea calcular la representacin interna de la funcin de probabilidad
de la variable aleatoria real X , que est definida mediante una expresin if-then-else
con una variable aleatoria Booleana en la condicin, L , y una variable aleatoria real en
cada una de las ramas,
1
X y
2
X . El conjunto de parmetros aleatorios de entrada de los
que depende la variable X es la unin del conjuntos del que depende L con el conjunto
del que depende
1
X y con el conjunto del que depende
2
X .
Supngase primeramente que L ,
1
X y
2
X son estadsticamente independientes y que
se desea calcular la representacin interna de la probabilidad de X . En este caso, el
problema del clculo de la representacin interna de la funcin de probabilidad de X es
equivalente al problema de la reduccin del condicionamiento de la funcin de
probabilidad de X respecto a un hipottico parmetro aleatorio de entrada Booleano L :
conocidos ( ) L X F y ( ) L F , puede calcularse ( ) X F : ( ) ( ) ( ) X F L F L X F

, .
Pueden, por tanto, aplicarse los algoritmos descritos al discutir este tipo de reduccin en
el condicionamiento. La representacin interna de la funcin de probabilidad de X
condicionada a L puede calcularse de la forma siguiente:
{ }
[ ]

'

false i
true i
i
X
X
L
X

si
si
2
1

{ }
[ ]
[ ]
[ ]

'

false j x
true j x
j x
I
I
L
I

si
si
,
, 2
, 1

{ }
[ ]
[ ]
[ ]

'

false j n x
true j n x
j n x
L

si ,
si ,
, ,
2
1

donde: 1 ,..., 1 : + N n , false true, : y
{ }
[ ]
L
X
i j ,..., 1 : .
Supngase que las variables aleatorias L ,
1
X y
2
X no son independientes
estadsticamente y que se desea calcular la representacin interna de la probabilidad de
X condicionada a los parmetros aleatorios de entrada
X
P

y
X
Q

, en los que se
encuentran incluidos (entre otros) todos aquellos parmetros aleatorios de entrada,
reales y Booleanos respectivamente, de los que dependen al menos dos de las tres
variables aleatorias L ,
1
X y
2
X . Esta condicin es imprescindible a fin de realizar
correctamente la operacin.
Se definen los siguientes subconjuntos de los conjuntos
X
P

y
X
Q

:
1

X
P y
1

X
Q representan respectivamente los parmetros aleatorios de los conjuntos
X
P

y
X
Q

de los que depende


1
X , pero no L o
2
X . Anlogamente se definen
2

X
P ,
2

X
Q ,
L
P

y
L
Q

.
EXPRESIONES IF - THEN - ELSE 459


2 1

X X
P y
2 1

X X
Q representan respectivamente los parmetros aleatorios de los
conjuntos
X
P

y
X
Q

de los que depende


1
X y
2
X , pero no L . Anlogamente se
definen
L X
P
2

,
L X
Q
2

,
L X
P
1

y
L X
Q
1

.
Finalmente,
L X X
P
2 1
y
L X X
Q
2 1
representan respectivamente los parmetros aleatorios
de los conjuntos
X
P

y
X
Q

de los que depende


1
X ,
2
X y L .
A cada uno de estos conjuntos se les asocia un vector de ndices de dimensin igual al
nmero de elementos que tiene el conjunto. Los vectores son:
1 1

X X
k P ,
1 1

X X
Q ,
2 2

X X
k P ,
2 2

X X
Q ,
L L
k P

,
L L
Q

,
2 1 2 1

X X X X
k P ,
2 1 2 1

X X X X
Q ,
L X L X
k P
2 2

,
L X L X
Q
2 2

,
L X L X
k P
1 1

,
L X L X
Q
1 1

,
L X X L X X
k P
2 1 2 1
y
L X X L X X
Q
2 1 2 1
. Los componentes de los vectores k son ndices cuyo valor vara entre
1 y N y los componentes de los vectores son ndices que puede valer true o false .
La representacin interna de la funcin de probabilidad de X , condicionada a que los
parmetros
X
P

y
X
Q

se encuentren en los intervalos determinados por los valores de


los componentes de los vectores
1
X
k ,
2
X
k ,
L
k ,
2 1
X X
k ,
L X
k
2
,
L X
k
1
,
L X X
k
2 1
,
1
X
,
2
X
,
L
,
2 1
X X
,
L X
2
,
L X
1
y
L X X
2 1
, puede calcularse aplicando los algoritmos para la
reduccin del condicionamiento de la funcin de probabilidad, sabiendo que, en esas
circunstancias X tiene una probabilidad

{ }
[ ] , , , , , , ,
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1
,

, ,

L X X L X L X L L X X L X L X L
Q Q Q Q P P P P
L
k k k k T
L X X L X L X L L X X L X L X L

de estar distribuida de la forma:

{ }
[ ]
{ }
[ ] j k k k k n x
j k k k k x
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
I
L X X X X L X X L X X X X L X X
L X X X X L X X L X X X X L X X
, , , , , , , , ,
, , , , , , , ,
2 1 2 1 1 1 2 1 2 1 1 1
2 1 2 1 1 1 2 1 2 1 1 1
2 1 2 1 1 1 2 1 2 1 1 1
2 1 2 1 1 1 2 1 2 1 1 1
,

, ,

1
,

, ,

, 1



con:
{ }
[ ]

'
+
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
X
k k k k i j
N n
L X X X X L X X L X X X X L X X
2 1 2 1 1 1 2 1 2 1 1 1
2 1 2 1 1 1 2 1 2 1 1 1
1
, , , , , , , ,..., 1 :
1 ,..., 1 :
,

, ,



y tiene una probabilidad

{ }
[ ] , , , , , , , 1
2 1 2 1 2 1 2 1
2 1 2 1 2 1 2 1
,

, ,

L X X L X L X L L X X L X L X L
Q Q Q Q P P P P
L
k k k k T
L X X L X L X L L X X L X L X L

de estar distribuida de la forma:
460 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ] j k k k k n x
j k k k k x
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
I
L X X X X L X X L X X X X L X X
L X X X X L X X L X X X X L X X
, , , , , , , , ,
, , , , , , , ,
2 1 2 1 2 2 2 1 2 1 2 2
2 1 2 1 2 2 2 1 2 1 2 2
2 1 2 1 2 2 2 1 2 1 2 2
2 1 2 1 2 2 2 1 2 1 2 2
,

, ,

2
,

, ,

, 2



con:
{ }
[ ]

'
+
L X X X X L X X L X X X X L X X
Q Q Q Q P P P P
X
k k k k i j
N n
L X X X X L X X L X X X X L X X
2 1 2 1 2 2 2 1 2 1 2 2
2 1 2 1 2 2 2 1 2 1 2 2
2
, , , , , , , ,..., 1 :
1 ,..., 1 :
,

, ,



10.8 CONCLUSIONES
En el Captulo 9 se describi la forma original propuesta para la descripcin de la
probabilidad de los parmetros aleatorios de entrada y tambin se defini la
representacin interna. En este captulo se han sentado las bases para la programacin
de una herramienta software que, partiendo del modelo obtenido como salida del
lenguaje de modelado y de la descripcin del experimento, identifique las variables
aleatorias del modelo y los parmetros aleatorios de entrada de los que depende cada
una de ellas, transforme las expresiones en que intervienen variables aleatorias en
secuencias ordenadas de operaciones elementales e identifique respecto de qu
conjuntos de parmetros aleatorios deben condicionarse las probabilidades de cada
variable aleatoria.
La herramienta genera el cdigo del modelo, en el que se han sustituido las expresiones
en que intervienen variables aleatorias por secuencias de operaciones elementales de las
que se evala la representacin interna de la probabilidad. Tambin genera la
descripcin del experimento, al que se ha aadido la representacin interna de los
parmetros aleatorios de entrada y la representacin interna de los valores iniciales de
las variables de estado y de tearing aleatorias. Se han clasificado las operaciones
elementales en que intervienen variables aleatorias en cinco tipos y se han propuesto
algoritmos para realizarlas. Tambin se han propuesto algoritmos para realizar la
reduccin en el condicionamiento de la probabilidad.
Una de las ventajas que ofrece realizar la simulacin de la forma propuesta, frente al
procedimiento tradicional descrito en el Apartado 2.13, es que el procedimiento
propuesto en esta tesis garantiza que el conjunto verdadero de valores posibles de cada
variable aleatoria en cada instante de comunicacin est contenido en el conjunto
estimado proporcionado por la simulacin. Al aumentar el valor del entero N , los
conjuntos de valores posibles estimados se van aproximando a los verdaderos
(desconocidos) y las probabilidades estimadas se van aproximando a las verdaderas
(desconocidas).
La simulacin de modelos dinmicos con parmetros aleatorios, empleando el mtodo
tradicional, tiene una carga computacional muy elevada [Nf94], especialmente si el
modelo es hbrido. Igualmente, la simulacin de modelos con parmetros aleatorios
siguiendo el procedimiento propuesto en esta tesis es muy costosa desde el punto de
CONCLUSIONES 461


vista computacional. La carga computacional aumenta con el valor de N y con el
nmero de parmetros aleatorios de entrada de los que dependen simultneamente las
variables aleatorias a operar entre s. A continuacin se muestran algunos ejemplos que
pretenden ilustrar este hecho.
Considrese la representacin interna de la variable aleatoria real X condicionada a los
parmetros aleatorios de entrada
X
P

y
X
Q

. La suma del nmero de elementos del


vector
{ }
X X
Q P
x

con el nmero de elementos del vector


{ }
X X
Q P
I
x

vale:
{ }
[ ]( )
( ) ( )

+
N
k
N
k
Q P
X
X
P
X
Q
X X
N k i
1 :
2
1 :
2

1
dim 1
dim
2 , ... ...


Para el clculo de la representacin interna de la variable aleatoria inversa de X (ver
Apartado 10.4.4) deben realizarse del orden de:
{ }
[ ] ( )
( ) ( )


N
k
N
k
Q P
X
X
P
X
Q
X X
k i
1 :
2
1 :
2

1
dim 1
dim
1 , ... ... 2


comparaciones, del tipo
{ }
[ ] 0 , ,

< j k x
X X
Q P
Max
y
{ }
[ ] 0 1 , ,

> + j k x
X X
Q P
min
,
{ }
[ ]( )
( ) ( )

+
N
k
N
k
Q P
X
X
P
X
Q
X X
N k i
1 :
2
1 :
2

1
dim 1
dim
1 , ... ...

inversiones de escalares reales y
{ }
[ ]
( ) ( )

N
k
N
k
Q P
X
X
P
X
Q
X X
k i
1 :
2
1 :
2

1
dim 1
dim
, ... ...

asignaciones de escalares reales.
El clculo del logaritmo neperiano o la exponencial de X , as como la suma o producto
con una variable determinista real, implican realizar
{ }
[ ]( )
( ) ( )

+
N
k
N
k
Q P
X
X
P
X
Q
X X
N k i
1 :
2
1 :
2

1
dim 1
dim
1 , ... ...

veces la operacin entre escalares reales y realizar
{ }
[ ]
( ) ( )

N
k
N
k
Q P
X
X
P
X
Q
X X
k i
1 :
2
1 :
2

1
dim 1
dim
, ... ...

asignaciones.
Para calcular la representacin interna del seno de X , debe realizarse el clculo de la
contribucin a la probabilidad en el intervalo

,
_

2
,
2

de los valores de X
comprendidos en
{ }
[ ]
( ) ( )

N
k
N
k
Q P
X
X
P
X
Q
X X
k i N
1 :
2
1 :
2

1
dim 1
dim
, ... ...

intervalos y posteriormente realizar
las sumas de las aportaciones de las contribuciones.
Para calcular la representacin interna de la suma de dos variables aleatorias reales
estadsticamente independientes,
1
X y
2
X ,
2 1
X X X + , debe aplicarse
2 1
X X
i i veces el
algoritmo descrito en el Apartado 10.4.2. Si se desea calcular la representacin interna
de la suma condicionada al conjunto de parmetros aleatorios de entrada
X
P

y
X
Q

, de
los que depende tanto
1
X como
2
X , debe aplicarse el algoritmo
462 SIMULACIN DE MODELOS HBRIDOS CON PARMETROS ALEATORIOS


{ }
[ ]
{ }
[ ]
( ) ( )

N
k
N
k
Q P
X
Q P
X
X
P
X
Q
X X X X
k i k i
1 :
2
1 :
2

,

,

1
dim 1
dim
2 1
, , ... ...

veces. Como se observa, la carga
computacional aumenta considerablemente con el nmero de parmetros aleatorios.
Adems de la programacin de la herramienta software, debe programarse una interfaz
entre ella y el lenguaje de modelado, de modo que traduzca la descripcin del modelo y
del experimento obtenida como salida del lenguaje de modelado (dependiente del
lenguaje de modelado en concreto) a un formato vlido como entrada a la herramienta.
La salida de la herramienta
463
Captulo 11
CONCLUSIONES Y LNEAS DE
TRABAJO FUTURAS
11.1 CONCLUSIONES
A continuacin se resumen las principales aportaciones presentadas en esta memoria.
Diseo y programacin de un conjunto de libreras de procesos fsico-qumicos
bsicos en el entorno del control automtico de procesos qumicos. JARA v. 1.0
Se ha realizado el diseo orientado a objetos de la versin 1.0 de JARA. Se ha
establecido un conjunto coherente de aproximaciones de modelado. Se han definido
y clasificado los tipos de cuts. Se han establecido las reglas de conexin de los cuts
y se han enunciado en trminos de sus atributos grficos. Se han definido y
clasificado las interfaces de las clases. El diseo obtenido de JARA v. 1.0 posibilita
la simulacin de modelos moleculares de grandes proporciones, define claramente
en qu situaciones puede usarse cada clase y sienta las bases para la ampliacin de
las libreras con nuevas clases.
Se ha realizado la programacin orientada a objetos de las siete libreras que
integran la versin 1.0 de JARA. Se han propuesto soluciones para todos los
problemas de modelado planteados a fin de respetar las reglas de diseo de JARA v.
1.0. Se han mostrado numerosos ejemplos de aplicacin.
Se ha propuesto un algoritmo para la descripcin matemtica de modelos de
estructura variable, compatible con los lenguajes de modelado orientado a objetos,
aplicable en el contexto de modelado que establecen las reglas de diseo de JARA
v. 1.0.
Descripcin orientada a objetos y simulacin de modelos dinmicos hbridos con
algunos parmetros aleatorios
Se ha propuesto un procedimiento para la descripcin de los parmetros aleatorios
de entrada del modelo que es aplicable a cualquier lenguaje de modelado orientado a
objetos de sistemas dinmicos hbridos que soporte la notacin vectorial.
464 Conclusiones y lneas de trabajo futuras


Se ha propuesto una forma de almacenar la informacin relativa a la probabilidad,
total y condicionada, de los parmetros aleatorios y de las variables aleatorias del
modelo.
Se han sentado las bases para la programacin de una herramienta software que,
partiendo del modelo obtenido como salida del lenguaje de modelado y de la
descripcin del experimento, realice las siguientes operaciones:
Identifique las variables aleatorias del modelo y el conjunto de parmetros
aleatorios de entrada de que depende cada una de ellas.
Transforme las expresiones en que intervienen variables aleatorias en secuencias
ordenadas de operaciones elementales entre variables aleatorias e identifique
respecto de qu conjuntos de parmetros aleatorios de entrada debe
condicionarse la probabilidad de cada variables aleatoria.
Genere el cdigo del modelo como una secuencia ordenada de expresiones
algebraicas, operaciones elementales aplicadas sobre la representacin interna de
la probabilidad de las variables aleatorias y operaciones de reduccin del
condicionamiento de la probabilidad.
Genere el cdigo del experimento, conteniendo la representacin interna de los
parmetros aleatorios de entrada, el valor de los parmetros deterministas, la
representacin interna de los valores iniciales de las variables de estado y de
tearing aleatorias y los valores iniciales de las variables de estado y de tearing
deterministas.
Se ha propuesto una clasificacin de las operaciones elementales en que intervienen
variables aleatorias en cinco tipos y se han propuesto algoritmos para su realizacin.
Se ha propuesto un procedimiento para realizar la reduccin en el condicionamiento
de la probabilidad.
11.2 LNEAS DE TRABAJO FUTURAS
A continuacin se enuncian algunas de las posibles lneas de trabajo futuras.
Diseo y programacin de un conjunto de libreras de procesos fsico-qumicos
bsicos en el entorno del control automtico de procesos qumicos. JARA v. 1.0
Una forma de extender las libreras es aadir modelos de nuevos procesos realizados
asumiendo las hiptesis de modelado en que se basa la versin 1.0 de JARA.
Algunos ejemplos son: el flujo de calor por radiacin, la difusin de mezclas ideales
de gases semiperfectos multicomponentes, la difusin de mezclas lquidas ideales, el
equilibrio lquido-vapor, otros tipos de reacciones qumicas, etc. Tambin pueden
aadirse nuevas libreras, por ejemplo, una librera de controladores, etc.
Otra forma de extender las libreras es modificando el conjunto de hiptesis en que
se basan. De esta forma, pueden realizarse diferentes modelos de un mismo proceso
con diferentes niveles de complejidad. Si todos poseen la misma interfaz, en virtud
Conclusiones y lneas de trabajo futuras 465


de las reglas de diseo de JARA, son intercambiables. Es preciso diferenciar
claramente los diferentes conjuntos de hiptesis e identificar las clases que
corresponden a cada uno de ellos. Es posible incluir en una nica clase los diferentes
modelos de un mismo proceso, definiendo las condiciones de conmutacin entre
ellos, de modo que en tiempo de simulacin pueda modificarse la complejidad de la
descripcin del proceso. Para la programacin de este tipo de clases puede
emplearse el algoritmo original propuesto en el Anexo B.
Descripcin orientada a objetos y simulacin de modelos dinmicos hbridos con
algunos parmetros aleatorios
Pueden identificarse numerosas lneas de trabajo futuras. Algunas de ellas son:
Realizar el diseo y la programacin de las interfaces entre determinados lenguajes
de modelado y la herramienta software descrita en el Apartado 10.2. Para ello
primeramente debe establecerse qu lenguajes de modelado van a ser soportados y
debe definirse qu sintaxis para la descripcin del modelo y del experimento se
establece como estndar para la entrada a la herramienta software.
Realizar el diseo orientado a la programacin y la programacin de la herramienta
software que realice las transformaciones sobre el modelo y el experimento descritas
en el Apartado 10.2. Para ello, entre otras cosas, deben definirse las estructuras de
datos a emplear para almacenar la representacin interna y el conjunto de cabeceras
(nombres, argumentos de entrada y de salida) de las funciones que realizan las
diferentes operaciones elementales y las reducciones en el condicionamiento de la
probabilidad.
Programar las funciones que realizan las operaciones elementales y las operaciones
de reduccin del condicionamiento de la probabilidad.
Programar el algoritmo de la simulacin para realizar la integracin inline del DAE
y para disparar y tratar adecuadamente los eventos activados por variables
Booleanas, tanto deterministas como aleatorias. Debe modificarse el mtodo de
Newton a fin de resolver lazos algebraicos en los que intervengan variables
aleatorias.
Seleccionar el conjunto de visualizadores grficos de entornos de modelado y el
conjunto de herramientas de anlisis de datos a los que se desea poder exportar los
datos obtenidos como resultado de la simulacin. Programar las interfaces para
convertir los datos al formato de entrada de estas herramientas.

467
BIBLIOGRAFA
[Agui81] Aguilar, J; Curso de termodinmica. Ed. Alhambra Universidad. 1981.
[Ande90] Andersson, M.; Omola. An Object-Oriented Language for Model
Representation. Licenciate thesis TFRT-3208. Department of Automatic
Control. Lund Institute of Technology. Lund. Sweden. 1990.
[Ande93] Andersson, M.; OmSim and Omola. Tutorial and User's Manual. Version 3.
Department of Automatic Control. Lund Institute of Technology. Lund,
Sweden. 1993.
[Ande94] Andersson, M.; Object-oriented Modeling and Simulation of Hybrid
Systems. Ph.D. thesis ISRN LUTFD2/TFRT--1043--SE. Department of
Automatic Control. Lund Institute of Technology. Lund, Sweden. 1994.
[Apos60] Apostol, T. M.; Anlisis matemtico. Ed. Revert (1960).
[Bank96] Banks, J.; Carson, J. S.; Nelson, B. L.; Discrete-Event System Simulation.
Second Edition. Prentice Hall. 1996.
[Bart92] Barton, P. I.; The Modelling and Simulation of Combined
Discrete/Continuous Processes. Ph.D. Thesis. Department of Chemical
Engineering. Imperial College of Science, Technology and Medicine.
London. May 1992.
[Bart94] Barton, P. I.; Pantelides, C. C.; Modeling of Combined Discrete/Continuous
Proceses. AIChE J., 40, pp 966-979, 1994.
[Bart99] ABACUSS II. http://yoric.mit.edu/abacuss2/abacuss2.html
[Bart99a] DAEPACK. http://yoric.mit.edu/daepack/daepack.html
[Beck88] Becker, R. A.; Chambers, J. M.; Wilks, A. R.; The New S Language.
Wadsworth & Brooks/Cole. Computer Science Series. 1988.
[Benn95] Bennett, B. S.; Simulation Fundamentals. Prentice Hall. 1995.
[Bird75] Bird, R. B.; Stewart, W. E.; Ligthfoot, E. N.; Fenmenos de transporte.
Revert. 1975.
[Bosc94] Bosch, P. P. J. van den; Klauw, A. C. van der; Modeling, Identification and
Simulation of Dynamical Systems. CRC Press. 1994.
[Brat87] Bratley, P.; Fox, B. L.; Schrage, L. E; A Guide to Simulation. Springer-
Verlag. 1987.
468 BIBLIOGRAFA



[Bren96] Brenan, K. E.; Campbell, S. L.; Petzold, L. R.; Numerical Solution of Initial-
Value Problems in Differential-Algebraic Equations. SIAM. (1996).
[Carl86] Carlson, A. B.; Communication systems. McGraw Hill. Third Edition. 1986.
[Cell79] Cellier, F. E.; Combined Continuous/Discrete System Simulation by Use of
Digital Computers: Techniques and Tools. Ph.D. Dissertation. Diss ETH
6483. 1979.
[Cell91] Cellier, F.E.; Continuous System Modeling. Springer-Verlag. 1991.
[Cell92] Cellier, F.E.; Integrated Continuous-System Modeling and Simulation
environments. 1992.
[Cell93] Cellier, F.E.; H. Elmqvist; Automated Formula Manipulation Supports
Object-Oriented Continuous-System Modeling. 0272-1708/93 IEEE Control
Systems. April 1993.
[Cell93a] Cellier, F.E.; Elmqvist, H.; Otter, M.; Taylor, J.H.; Guidelines for Modeling
and Simulation of Hybrid Systems. IFAC World Congress. Sydney,
Australia. July 18-23, 1993.
[Cell95] Cellier, F; Otter, M.; Elmqvist, H.; Bond Graph Modeling of Variable
Structure Systems. 1995.
[Chun90] Chung, Y.; Westerberg, A. W.; A Proposed Numerical Algorithm for
Solving Nonlinear Index Problems. Ind. Eng. Chem. Res. Vol 29. No 7.
1990. pp 1234-1239.
[Coll60] Collatz, L.; The numerical Treatment of Differential Equations. Springer-
Verlag. Third Edition. 1960.
[Cutl99] Cutlip, M. B; Shacham M; Problem Solving in Chemical Engineering with
Numerical Methods. Prentice-Hall. 1999.
[Desh85] Deshpande, P. B.; Distillation Dynamics and Control. Instrument Society of
America. 1985.
[Diwe91] Diwekar, U. M.; Rubin, E. S.; Stochastic modelling of chemical processes.
Comput. Chem. Eng. 15(2), 105. 1991.
[EAIn99] EA International and ESA; EcosimPro ver. 3.0. Cinco volmenes: Getting
Started, Users Manual, Modeling Languaje (EL), Modeling and Simulation
Guide y Mathematical Algorithms. 01/Dec/1999.
[Elmq78] Elmqvist, H.; A Structured Model Language for Large Continuous Systems.
Ph.D. Thesis TFRT-1015. Lund Institute of Technology. Sweden. 1978.
[Elmq93] Elmqvist, H.; Object-Oriented Modeling and Automatic Formula
Manipulation in Dymola. SIMS'93. Scandinavian Simulation Society. June 9-
11, 1993. Kongsberg, Norway.
BIBLIOGRAFA 469


[Elmq93a] Elmqvist, H.; F.E. Cellier; and M. Otter; Object-oriented Modeling of Hybrid
Systems. ESS'93, European Simulation Symposium, Delft, The Netherlands,
October 25-28, 1993.
[Elmq94] Elmqvist, H.; and M. Otter; Methods for Tearing Systems of Equations in
Object-Oriented Modeling. ESM'94 European Simulation Multiconference,
Barcelona, Spain. June 1-3, 1994.
[Elmq94a] Elmqvist, H.; Cellier, F. E.; Otter, M.; Object-Oriented Modeling of Power-
Electronic Circuits Using Dymola. CISS - First Joint Conference of
International Simulation Societies, ETH, Zurich, Switzerland, August, 1994.
[Elmq95] Comunicacin personal.
[Elmq95a] Elmqvist, H; Brck, D.; Composite Constructs for Object-Oriented
Modeling. Eurosim Simulation Congress. Vienna, Austria. September 1995.
[Elmq96] Elmqvist, H.; Brck D.; Otter, M.; Dymola. Users Manual. Version 3.0,
Dynasim. 1996.
[Elmq96a] Elmqvist, H.; Otter, M.; Cellier, F. E.; Inline Integration: a New Mixed
Symbolic/Numeric Approach for Solving Differential-Algebraic Equation
Systems. 1996.
[Elmq98] Elmqvist, H et al.; Additional Documentation for Dymola 3.1. Dynasim.
1998-08-11.
[Elmq99] Elmqvist, H. et al.; Dymola. Dynamic Modeling Laboratory. Users Manual.
Version 4.0. 1999.
[Elsg77] Elsgoltz, L.; Ecuaciones Diferenciales y Clculo Variacional. Ed. Mir. 1977.
[Erns97] Ernst, T.; Jhnichen, S.; Klose, M; The Architecture of the Smile/M
Simulation Environment. Proc. 15
th
IMACS World Congress on Scientific
Computation, Modelling and Applied Mathematics. Vol 6. Berlin, Germany,
pp 653-658, 1997.
[ESA99] Simulation Model Portability Handbook - Specification ESA/ESTEC
SMP.REP.009, Issue 1 Revision 0, 1999.
[Frit95] Fritzson, P. et al.; High-level mathematical modeling and programming.
IEEE software, 12:3, July 1995.
[From79] Froment, G. F; Bischoff, K. B; Chemical Reactor Analysis and Design. John
Wiley & Sons. 1979.
[Gear71] Gear, C. W.; Numerical Initial Value Problems in Ordinary Differential
Equations. Prentice-Hall, 1971.
[Goul69] Gould, Leonard A; Chemical Process Control: Theory and Applications.
Addison-Wesley, 1969.
470 BIBLIOGRAFA



[Himm70] Himmelblau, D. M.; Process analysis by statistical methods. John Wiley &
Sons. 1970.
[Himm92] Himmelblau, D. M.; Bischoff, K. B.; Anlisis y simulacin de procesos.
Editorial Revert. 1992.
[Himm96] Himmelblau, D. M.; Basic Principles and Calculations in Chemical
Engineering. 6
th
edition. Prentice-Hall, 1996.
[Hoga95] Hogan, N.; Breedveld, P.; Integrated Modeling of Physical System
Dynamics. University of Twente. Report nr. 027R 95. 1995.
[Hube94] Huber, R. M.; Modelado Modular y Jerrquico de Sistemas de Tiempo
Continuo. Apuntes preparados con motivo del XIV Curso de Automtica en
la Industria. Murcia, Junio de 1994.
[Incr96] Incropera, F. P.; DeWitt, D. P; Fundamentals of Heat and Mass Transfer.
Fourth Edition. John Wiley & Sons. 1996.
[Karn90] Karnopp, D. C.; Margolis, D. L.; Rosenberg, R. C.; System Dynamics: A
Unified Approach. Second Edition. John Wiley & Sons. 1990.
[Korn89] Korn, G.A.; Interactive Dynamic-System Simulation. McGraw-Hill, New
York. 1989.
[Law91] Law, A. M.; Kelton, W. D.; Simulation modeling and analysis. McGraw-Hill,
Inc. Second edition. 1991.
[Luyb90] Luyben, W. L.; Process Modeling, Simulation and Control for Chemical
Engineers. McGraw-Hill. Second edition. 1990.
[Luyb92] Luyben, W. L. (editor); Practical Distillation Control. Van Nostrand
Reinhold, NY. 1992.
[Ljun] Ljung, L; Glad, T.; Modeling of Dynamic Systems. Prentice Hall.
[Maha77] Mahan, B. H.; Qumica. Curso Universitario. Fondo Educativo
Interamericano. Segunda edicin. 1977.
[Matt92] Mattsson, S. E.; Sderlind, G.; A New Technique for Solving High-Index
Differential Equations Using Dummy Derivatives. IEEE Symposium on
Computer-Aided Control System Design. California. March 1992.
[Matt93] Mattsson, S. E.; Andersson, M.; Astrm, K. J.; Object-Oriented Modeling
and Simulation. In LINKENS, Ed., CAD for Control Systems,chapter 2, pp.
31-69. Marcel Dekker Inc, New York.
[Matt98] Mattsson, S. E; Elmqvist, H.; Otter, M; Physical System Modeling with
Modelica. Control Engineering Practice 6 (1998) 501-510.
[Meye88] Meyer, B.; Object-Oriented Software Construction. Prentice Hall. 1988.
BIBLIOGRAFA 471


[Mitc93] Mitchell and Gauthier Associates (MGA) Inc.; Advanced continuous
Simulation Language (ACSL). Reference Manual. Edition 10.1. 1993.
[Mode97] ModelicaTM. A Unified Object-Oriented Language for Physical System
Modeling. Version 1.0. September 1997.
[Mode99] ModelicaTM. A Unified Object-Oriented Language for Physical Systems
Modeling. Tutorial, Rationale and Language Specification. Version 1.2. June
15, 1999.
[Morc87] Morcillo, J; Temas Bsicos de Qumica. Alhambra Universidad. 1987.
[MMS84] Electric Power Research Institute (EPRI); Modular Modeling System.
Theory manual. MMS-02 Release. Palo Alto, California. 1984.
[MMS93] MMS Model Builder. Users Guide. March 1993. B&W Nuclear
Technologies. Lynchburg, Virginia.
[Nf94] Nf, Urs G.; Stochastic Simulation using gPROMS. Computers chem.
Engng, Vol. 18, Suppl., pp. S743-S747, 1994.
[Neel87] Neelamkavil, F; Computer Simulation and Modelling. John Willey & Sons.
1987.
[Nils89] Nilsson, B.; Structured Modelling of Chemical Processes - An Object-
Oriented Approach. Department of Automatic Control. Lund Institute of
Technology. 1989.
[Nils93] Nilsson, B.; Object-oriented Modeling of Chemical Processes. Thesis.
Department of Automatic Control. Lund Institute of Technology. Lund,
Sweden. 1993.
[Otte92] Otter, M,; DSblock: A Neutral Description of Dynamic Systems. OPEN-
CACSD Electronic Newsletter, 1(3), February 28, 1992.
[Otte95] Otter, M.; Dymosim. User's manual. Versin 4.0.3. DynaSim AB. Research
Park Ideon, Lund, Sweden. 1995.
[Otte98] Otter, M; Mosterman, P.; The DSblock Model Interface, version 4.0.
Incomplete Draft. http://www.modelica.org/DSblock/dsblock4.0a.shtml.
[Pank64] Pankhurst, R. C.; Dimensional Analysis and Scale Factors. Butler & Tanner.
1964.
[Pant88] Pantelides, C. C.; The Consistent Initialization of Differential-algebraic
Systems. SIAM J. SCI. STAT. COMPUT. Vol. 9, No. 2, March 1988.
[Pant96] Pantelides, C. C.; Process Modelling in the 1990s. 5
th
World Congress of
Chemical Engineering. San Diego, California. July 1996.
[Papo91] Papoulis, A; Probability random variables and stochastic processes. McGraw
Hill. Third edition. 1991.
472 BIBLIOGRAFA



[Pere99] Prez Vara, R; Cobas Herrero, P; Garca Parrilla, A; Ecosim: a State-of-the-
Art Continuous Simulation Tool for TCS and ECLSS. Society of
Automotive Engineers, Inc. 1999-01-2078. 1999.
[Perr84] Perry, R. H.; Green, D; Perry's Chemical Engineers' Handbook. McGraw
Hill. Sixth edition. 1984.
[Piel89] Piela, P. C.; ASCEND: An Object-Oriented Environment for Modeling and
Analysis. PhD Thesis EDRC 02-09-89. Engineering Design Reseach Center,
Carnegie Mellon University, Pittsburg, PA, USA. 1989.
[Pres93] Pressman, R. S.; Ingeniera del Software. Un enfoque prctico. McGraw-
Hill. 1993.
[Ram89] Ramirez, W. Fred; Computational Methods for Process Simulation.
Butterworths Publishers, 1989.
[Ross91] Ross, S. M; A course in simulation. Macmillan Publishing Company. 1991.
[Sahl96] Sahlin, P; Bring, A; Sowell, E. F.; The Neutral Model Format for building
simulation. Version 3.02. Technical Report. Department of Building
Sciences. The Royal Institute of Technology. Stockholm, Sweden. 1996.
[Sile92] Silebi, C. A.; Schiesser, W. E.; Dynamic Modeling of Transport Process
Systems. Academic Press. 1992.
[SSPA90] Elmqvist, H.; Astrm, K. J.; Simnon. Users guide for MS-DOS computers.
V. 3.0. SSPA Systems. 1990.
[Stew81] Steward, D. V.; System Analysis and Management: Structure, Strategy and
Design. Petrocelli Books, Inc. 1981.
[Thom90] Thoma, J. U.; Simulation by Bondgraphs. Springer-Verlag. 1990.
[Tumm97] Tummescheit, H.; Pitz-Paal, R; Simulation of a solar thermal central receiver
power plant. Proc. 15
th
IMACS World Congress on Scientific Computation,
Modelling and Applied Mathematics. Vol 6, Berlin, Germany, pp 671-676.
1997.
[Urqu96] Urqua, A.; Dormido, S.; DYMOLA: Un lenguaje de modelado de sistemas
hbridos. Curso de Modelado y Simulacin en Control de Procesos.
Programa de Doctorado en Automtica e Informtica Industrial. UNED.
1996.
[Vena97] Venables, W, N.; Ripley, B. D; Modern Applied Statistics with S-plus. 2
nd

Edition. Springer. 1997.
[Wark95] Wark, K; Advanced Thermodynamics for Engineers. McGraw Hill. 1995.
[Watz94] Watzdorf, R. von, et. al; Deterministic and stochastic simulation of
batch/semicontinuous processes. Computers chem. Engng, Vol. 18, Suppl.,
pp. S343-S347, 1994.
BIBLIOGRAFA 473


[Wend92] Wendt, J. F.; Computational Fluid Dynamics. Springer-Verlag. 1992.
[Weas89] Weast, R. C.; CRC Handbook of Chemistry and Physics. CRC Press Inc.
1989.


ANEXO A
OPERACIONES SOBRE EL MODELO
EN DYMOLA
A - 1 PRELIMINARES
Fichero de rdenes
Las operaciones sobre el modelo pueden realizarse interactivamente, desde la ventana
de Dymola, activando con el ratn o tecleando las distintas operaciones, o bien pueden
escribirse en un fichero de texto, al que por convenio se dar la extensin .dyc y que
puede ser ejecutado desde la ventana de Dymola mediante la opcin File/Run Script
@... . Dymola incluye un editor de textos, anlogo al bloc de notas de Windows, que
puede activarse ejecutando File/Edit... en la ventana de Dymola.
El directorio de trabajo
El directorio de trabajo es aquel en el cual Dymola busca por defecto los ficheros de
rdenes (.dyc) y de modelos (.dym) y donde graba por defecto los ficheros de salida
obtenidos mediante las sentencias Output/... y Simulation/Output Experiment. Existen
varias maneras de especificar el directorio de trabajo, una de ellas es arrancar Dymola
desde el directorio de trabajo deseado. El directorio de trabajo puede cambiarse desde la
ventana de Dymola mediante File/Change Directory (cd)...
Parmetros del sistema
Los parmetros del sistema (Switches) pueden tomar los valores on/off. Su valor puede
ser visualizado y modificado mediante la opcin Translation/Set... de la ventana de
Dymola o mediante sentencias (por ejemplo, set Progress on).
Opciones de arranque
Al arrancar Dymola se ejecuta automticamente el fichero de rdenes dymola.dyc
situado en el directorio de trabajo o, en su defecto, en el directorio ...\dymola\insert. En
A-2 Anexo A


este fichero el usuario puede almacenar, para su comodidad, sentencias de modificacin
de los parmetros del sistema, o cualquier otra sentencia propia de un fichero de rdenes
y que desee que se ejecute automticamente al arrancar la aplicacin.
Dispositivo de salida
Si el parmetro del sistema AutoFileName es puesto a on (set AutoFileName on) el
resultado de la ejecucin de todas las rdenes Output/... y de Simulation/Output
Experiment se almacena en el directorio de trabajo en un fichero de nombre fijo por
defecto y dependiente de la sentencia output ejecutada y del lenguaje de simulacin
seleccionado. Con el parmetro AutoFileName a off, el dispositivo de salida por defecto
es la pantalla.
Seleccin del lenguaje de simulacin
El lenguaje de simulacin puede seleccionarse en la ventana de Dymola mediante
Translation/Language... o mediante la sentencia Language en el fichero de rdenes (por
ejemplo, Language Dymosim).
A - 2 INSTANCIACIN DEL MODELO
Entrada del modelo
Al cargar los ficheros del modelo debe tenerse en cuenta que antes de poder hacer
mencin a una clase desde otra, aquella debe haber sido definida previamente. El
nombre de los ficheros se realiza mediante la sentencia siguiente:
enter model
@nombre_fichero1.extensin
@nombre_fichero2.extensin
...
Si los ficheros no se encuentran en el directorio de trabajo, debe especificarse el camino
completo. Si se ejecuta varias veces la sentencia enter model, con cada ejecucin se
pierde la informacin de los modelos cargados en las anteriores ejecuciones, pero no el
valor de los parmetros del sistema.
Resolucin de las conexiones
La conversin de las sentencias connect a operaciones at y la transformacin de stas en
ecuaciones de igualdad entre variables across y suma igualada a cero de las variables
through puede visualizarse si, antes de introducir el modelo, se asigna a LogConnect el
valor on.
Eliminacin de las ecuaciones triviales
Las ecuaciones triviales, que aparecen fundamentalmente debido a las conexiones, son
eliminadas del modelo si el parmetro del sistema Eliminate vale on (set Eliminate
on). La eliminacin se produce escogiendo una de las variables como alias de la otra y
sustituyendo, en toda ecuacin en que aparezca, la variable por su alias. La ecuacin
trivial es eliminada del modelo. Ejecutando output variables se obtiene una lista de
todas las variables del modelo, en la cual se especifica su tipo. Si esta misma orden se
Anexo A A-3

ejecuta una vez realizada la particin del modelo se obtiene la misma lista, pero
especificndose el alias de aquellas variables que tengan, siguiendo al smbolo "=".
A - 3 ASIGNACIN DE LA CAUSALIDAD COMPUTACIONAL
La orden para realizar la particin puede darse desde la ventana de Dymola,
(Translation/Partition) y mediante la sentencia partition. El algoritmo de asignacin de
la causalidad que incorpora Dymola no trabaja con matrices, sino con grafos bipartitos
por razones de velocidad de ejecucin del algoritmo: el tiempo de clculo empleando
grafos es proporcional al nmero de ecuaciones [Elmq96].
Las filas de la matriz de incidencia corresponden a las ecuaciones en el orden en que
aparecen al ejecutar Output/Equations (si se ha seleccionado Eliminate on, slo se
consideran las ecuaciones no triviales) y las columnas a las variables desconocidas (si se
ha seleccionado Eliminate on, slo se consideran aquellas sin alias) en el orden en que
aparecen al ejecutar Output/Variables.
Si el problema es singular, el algoritmo de particin lo detecta y Dymola indica qu
incgnitas no son calculables y qu ecuaciones son redundantes. Si el problema es no
singular, Dymola no muestra ningn mensaje y pueden obtenerse las ecuaciones del
modelo (con las ecuaciones triviales eliminadas y las correspondientes variables
sustituidas por su alias, si Eliminate est a on), conteniendo informacin acerca de la
causalidad computacional y/o manipuladas, de la forma:
La sentencia Output Equations muestra las ecuaciones en el orden en que han sido
ledas del fichero del modelo (orden de las filas en la matriz de incidencia original).
En cada ecuacin se seala una variable entre corchetes. Si la ecuacin corresponde
a un bloque diagonal escalar en la matriz de incidencia BLT, esa ser la incgnita
que se calcule de esa ecuacin. Si la ecuacin est incluida en un bloque diagonal no
escalar, la variable sealada es una cualquiera de las que deben evaluarse del lazo.
La sentencia Output Sorted Equations produce la salida de las ecuaciones, en la
secuencia en que deben resolverse (correspondiente a la ordenacin de los bloques
diagonas en la matriz de incidencia BJT), sealando los lazos algebraicos (bloques
diagonales no escalares) anteponiendo el smbolo | a las ecuaciones del mismo. Las
ecuaciones no aparecen manipuladas.
La sentencia Output Solved Equations produce la salida de las ecuaciones, en la
secuencia en que deben resolverse. Las ecuaciones asociadas a bloques diagonales
escalares y lineales respecto a su incgnita, se muestran con sta despejada.
Aquellos lazos algebraicos que son lineales respecto a todas sus incgnitas, cuando
el parmetro del sistema SolveSymbolic est a on, son resueltos simblicamente por
Dymola. Los lazos no lineales son sealados, indicndose las incgnitas que deben
calcularse de ellos.
A-4 Anexo A


A - 4 LAZOS ALGEBRAICOS. TEARING
Asignacin de valores iniciales
Dymola permite dos modos de asignar valores iniciales a las variables iteradas en los
lazos algebraicos: al declararlas en el cdigo del modelo y mediante la sentencia
variable value. El valor inicial por defecto es el cero.
Resolucin de los lazos lineales
Si el parmetro del sistema SolveSymbolic se pone a on Dymola manipula
simblicamente los lazos lineales, despejando las incgnitas. Si, por el contrario, se
pone a off, el lazo se resuelve numricamente en tiempo de simulacin.
Tearing de los lazos no lineales
La versin 3.1 de Dymola dispone de un mtodo automtico para la seleccin de las
ecuaciones residuo y de variables de tearing de cada lazo no lineal [Elmq98]. Se deja al
usuario la posibilidad de realizar, si lo desea, su propia eleccin (con set AutoTear
off). A tal fin, Dymola proporciona dos modos de especificar las variables de tearing y
las ecuaciones residuo: en el cdigo del modelo o interactivamente al manipular el
modelo (desde la ventana de Dymola o desde un fichero de comandos).
La informacin para realizar el tearing puede incluirse directamente en el cdigo del
modelo, aadiendo en cada ecuacin residuo residue(variable_tearing), donde
variable_tearing es una cualquiera de las variables de tearing de las que podran
calcularse de esa ecuacin. La informacin para realizar el tearing que se incluye en el
modelo es ignorada por Dymola si finalmente no llega a establecerse el lazo algebraico.
Por ejemplo, considrese el siguiente sistema de tres ecuaciones con tres incgnitas: x ,
y , z . La variable v es conocida.
x y z
x y z
x sin y v
+
+ +

'

*
* ( )
2
2 2 2
0
1
En la primera y en la tercera ecuacin aparece la incgnita x linealmente. En la primera
ecuacin aparece y linealmente. La incgnita z aparece de forma no lineal en todas las
ecuaciones, es, por tanto, una variable de tearing obligada. La otra variable de tearing
puede ser x o y .
Si se escoge x como variable de tearing junto con z , al aparecer y linealmente slo en
la primera ecuacin, las ecuaciones residuo son forzosamente la segunda y la tercera. La
informacin para realizar el tearing, en el modelo, es:
x + y*z**2 = 0
x**2 + y**2 + z**2 = 1 + residue(z)
x*sin(y) = v + residue(x)
Anexo A A-5

Si, por el contrario, se escoge y como tearing variable junto con z , al aparecer x
linealmente en la primera y en la tercera ecuacin, las ecuaciones residuo pueden ser o
bien la segunda y la tercera:
x + y*z**2 = 0
x**2 + y**2 + z**2 = 1 + residue(z)
x*sin(y) = v + residue(y)
o bien la primera y la segunda, en cuyo caso puede sealarse indistintamente como:
x + y*z**2 = 0 + residue(y)
x**2 + y**2 + z**2 = 1 + residue(z)
x*sin(y) = v
o como:
x + y*z**2 = 0 + residue(z)
x**2 + y**2 + z**2 = 1 + residue(y)
x*sin(y) = v
La informacin acerca de qu variables deben considerarse de tearing y qu ecuaciones
deben usarse como ecuaciones residuo puede especificarse de forma interactiva, desde
la ventana de Dymola. Pero, para ello, previamente deben definirse en el cdigo del
modelo tantos parmetros como ecuaciones residuo haya. Estos parmetros servirn
para identificar las ecuaciones residuo. Para ello, se asigna el valor cero a todos ellos y
se aade uno a cada una de las ecuaciones residuos sumndolo a la ecuacin, de modo
que la nica ecuacin en que aparezca cada parmetro sea en su respectiva ecuacin
residuo. Al ser cero el valor del parmetro, ste no modifica la ecuacin en que aparece
sumado. En el caso en que una de las ecuaciones residuo poseyera un parmetro que
slo apareciera en esa ecuacin, ste podra usarse para identificarla y no sera necesario
introducir un nuevo parmetro como se ha descrito anteriormente.
En el ejemplo anterior, si se desea poder escoger cualquiera de las tres ecuaciones como
residuo, habra que definir tres parmetros, p1, p2, p3 y aadir uno a cada ecuacin en
el cdigo del modelo:
parameter p1=0, p2=0, p3=0
x + y*z**2 = 0 + p1
x**2 + y**2 +z**2 = 1 + p2
x * sin(y) = v + p3
La informacin referente al tearing se introduce, antes de generar el cdigo de
simulacin del modelo (con Output/Model), mediante la sentencia variable tear, con
sintaxis:
variable tear variable_tearing - parametro_residuo
donde variable_tearing es el nombre de la variable de tearing y parmetro_residuo es el
nombre de un parmetro que aparezca en la ecuacin residuo y no en ninguna otra
ecuacin del modelo.
En el ejemplo anterior, si se escoge x como variable tearing junto con z , las
ecuaciones residuo son forzosamente la segunda y la tercera. La informacin para
realizar el tearing es:
A-6 Anexo A


variable tear z - p2
variable tear x - p3
Si, por el contrario, se escoge y como variable tearing junto con z , al aparecer
x linealmente en la primera y en la tercera ecuacin, las ecuaciones residuo pueden ser
o bien la segunda y la tercera:
variable tear z - p2
variable tear y - p3
o bien la primera y la segunda, en cuyo caso puede sealarse indistintamente como:
variable tear y - p1
variable tear z - p2
o como:
variable tear z - p1
variable tear y - p2
El tearing no se manifiesta en la colocacin de los parntesis cuadrados de causalidad
en las ecuaciones ordenadas o resueltas del modelo. En un lazo algebraico la colocacin
de estos parntesis no indica absolutamente nada. La informacin referente al tearing se
incluye en el cdigo de simulacin del modelo (generado con Output Model), y hace
uso de ella la rutina de resolucin de lazos no lineales que incorpora Dymola.
A - 5 REDUCCIN DE NDICE
Mediante el comando Differentiate o interactivamente (Translation/Differentiate) se
indica a Dymola que debe aplicar el algoritmo de Pantelides, derivar simblicamente las
ecuaciones adecuadas y aadirlas al modelo. A partir de la versin 3.1 de Dymola, el
lenguaje de modelado propone una eleccin de las variables de estado. Los comandos
variable known y variable unknown permiten modificar esta eleccin. En [Elmq96],
[Hube94], [Urqu96], entre otros textos, pueden encontrarse algunos ejemplos sencillos
de cmo se realiza la reduccin de ndice del sistema empleando Dymola.

B-1
ANEXO B
DESCRIPCIN MATEMTICA DE
MODELOS DE ESTRUCTURA
VARIABLE COMPATIBLE CON LOS
LENGUAJES DE MODELADO
ORIENTADO A OBJETOS
B - 1 INTRODUCCIN
Una limitacin de los lenguajes de modelado es que soportan nicamente la descripcin
y la simulacin de cierto tipo muy limitado de modelos de estructura variable. Se
denominan modelos de estructura variable a aquellos cuya descripcin matemtica vara
en tiempo de simulacin. Son sistemas en los que se definen varios estados, cada uno de
los cuales est descrito por un determinado conjunto de ecuaciones. En tiempo de
simulacin, de acuerdo con unas condiciones bien establecidas, se produce la
conmutacin entre sus estados, y, en consecuencia, entre los distintos modelos
matemticos que describen el sistema en sus distintos estados. Este tipo de modelos
surge tambin cuando se describe un mismo sistema con diferentes niveles de detalle y
se desea conmutar en tiempo de simulacin entre las diferentes descripciones.
Los lenguajes de modelado proporcionan clusulas del tipo:
<expresin> = if <condicin> then <expresin1> else <expresin2>
para la descripcin de modelos de estructura variable. La condicin Booleana
<condicin> determina el cambio de estado del sistema. Cuando <condicin> vale
true se satisface <expresin> = <expresin1> y cuando <condicin> vale false se
satisface <expresin> = <expresin2>.
La restriccin que los lenguajes de modelado imponen a la descripcin de sistemas de
estructura variable es que deben poseer exactamente las mismas variables algebraicas y
B-2 Anexo B


las mismas variables de estado en todos sus estados. Lo nico que se permite que vare
de estado a estado es de qu ecuacin se evala cada variable. Cuando la variable a
evaluar de una determinada ecuacin vara de un estado a otro, la ecuacin pasa a
formar parte de un lazo algebraico.
En consecuencia, los lenguajes de modelado no permiten la descripcin y simulacin de
sistemas con variables que acten, por ejemplo, como variables de estado en algunos de
sus estados, como variables algebraicas en otros y que no estn definidas en el resto.
Tampoco es admisible que variables algebraicas definidas en unos estados del sistema
queden sin definir en otros. Sin embargo, surge la necesidad de definir y simular este
tipo de modelos cuando el cambio de estado altera el nmero de variables de estado del
sistema o cuando varan las variables escogidas como variables de estado. Igualmente,
algunas de las variables algebraicas son comunes a la descripcin del sistema en todos
sus estados y otras slo tienen sentido en alguno de ellos, no interviniendo en la
definicin del sistema en los dems.
A continuacin se expone un algoritmo original que permite transformar un modelo
general de estructura variable en un modelo que cumpla las reglas marcadas por los
lenguajes de modelado, esto es, con las mismas variables algebraicas y las mismas
variables de estado en todos sus estados. El algoritmo resuelve el problema de la
descripcin de modelos de estructura variable en un contexto de modelado determinado,
que es aquel en el cual se siguen determinadas directrices (en las que se ha
fundamentado JARA), que a continuacin se exponen, y cuya finalidad es facilitar la
reutilizabilidad de las clases y la simulacin de modelos de grandes dimensiones.
B - 2 PREMISAS PARA LA APLICACIN DEL ALGORITMO
Considrese el modelo de un sistema que puede encontrarse en uno de dos estados
posibles, denominados estado_0 y estado_1. El sistema viene descrito en cada estado
por un conjunto propio de ecuaciones y de variables, pero posee una interfaz nica: la
descripcin del sistema en ambos estados tiene en comn al menos las variables de la
interfaz, as como la causalidad computacional de las mismas, impuesta en la
definicin de los tipos de cuts de los que est compuesto. Si el sistema tiene ms de dos
estados, deber procederse por pasos, unificando el cdigo estado tras estado hasta
obtener un modelo vlido para el sistema en todos sus estados.
Es preciso tener presente que, puesto que la aplicacin del algoritmo requiere ir
unificando el cdigo del modelo "estado a estado", no tiene sentido plantearlo como
solucin a problemas, con un elevado nmero de estados, surgidos de la combinacin de
los estados de las diferentes partes del sistema. Un ejemplo que ilustra este punto es el
modelado como una clase atmica de una red de conduccin de agua integrada, entre
otros elementos, por N conmutadores de flujo, donde cada conmutador de flujo tiene
dos estados posibles (abierto y cerrado) y el nmero de estados de la red es
N
2 . Una
forma de proceder en este caso es considerar la red como una clase molecular,
modelando por separado cada uno de sus componentes, de modo que stos respeten las
reglas acerca de la causalidad de su interfaz y de modo que la conexin entre ellos, para
formar la red, respete las reglas de conexin entre los cuts. El procedimiento de
unificacin del cdigo se aplicara, si fuera preciso, para obtener una descripcin nica
Anexo B B-3

del modelo del conmutador de flujo, admisible por el lenguaje de modelado, vlida para
sus dos estados.
Una premisa que debe satisfacerse para la aplicacin del algoritmo es que el modelo no
tenga ndice superior en ninguno de sus dos estados, estado_0 y estado_1. Obsrvese
que esto no supone ninguna limitacin si se reduce el ndice del modelo, en aquellos
estados en que sea mayor que uno, previamente a la aplicacin del algoritmo. La
reduccin de ndice debe hacerse para cada estado por separado. Una vez aadidas al
modelo de cada estado la derivada de las ecuaciones dictadas por el algoritmo de
Pantelides [Pant88] en cada caso, puede sustituirse la derivada de las variables que no
deben ser consideradas como estados por variables auxiliares, de modo que slo
aparezcan en los modelos derivadas las variables que realmente deben considerarse
variables de estado. En general, el modelo del sistema en cada estado tendr variables
de estado comunes a los modelos del sistema en otros estados y variables de estado
propias.
Puede emplearse el lenguaje de modelado para realizar la reduccin de ndice del
modelo de cada estado, para ello basta con aadir al modelo del sistema en ese estado
una ecuacin, por cada entrada computacional que tenga su interfaz, consistente en la
variable terminal entrada computacional igualada a una funcin arbitraria del tiempo. Si
para reducir el ndice es preciso derivar alguna de estas ecuaciones aadidas al modelo,
es decir, si es preciso obtener la derivada de alguna de las entradas computacionales de
la interfaz de la clase, esto implica que es preciso derivar ecuaciones externas a la clase
para reducir el ndice. Esto supone que las entradas computacionales a la clase no son
nicamente un subconjunto de las variables de su interfaz, sino adems la derivada de
algunas de stas (a no ser que la derivada pertenezca a la interfaz). Esto no es
compatible con la filosofa de la modularidad y el encapsulado de la informacin, que
exige que la interfaz describa completamente la interaccin del modelo con su entorno y
que slo las variables pertenecientes a la interfaz sean accesibles desde el exterior del
mdulo por otros mdulos, lo cual obliga a modificar la descripcin interna del sistema
en ese estado o a modificar la interfaz de la clase, comn a todos sus estados.
B - 3 DESCRIPCIN DEL ALGORITMO
Para describir el algoritmo de unificacin del cdigo de un modelo con dos estados,
estado_0 y estado_1, considrese la siguiente representacin de las ecuaciones del
modelo en sus dos estados:
( ) 0 , , u x y f &
donde:
u son las entradas computacionales (comunes al modelo en ambos estados).
x son las variables locales o salidas computacionales que aparecen derivadas en
el modelo (en uno o en los dos estados).
y son las variables locales o salidas computacionales que no aparecen derivadas
en ningn estado.
B-4 Anexo B


Se establece la siguiente notacin para las variables locales y las salidas
computacionales (ver Figura B.1):
0
x : variables de estado del estado_0 que no intervienen en estado_1.
*
0
x : variables de estado del estado_0 y algebraicas en el estado_1.
1
x : variables de estado del estado_1 que no intervienen en estado_0.
*
1
x : variables de estado del estado_1 y algebraicas en el estado_0.
01
x : variables de estado en el estado_0 y tambin en el estado_1.
0
y : variables algebraicas del estado_0 que no intervienen en el estado_1.
1
y : variables algebraicas del estado_1 que no intervienen en el estado_0.
01
y : variables algebraicas en el estado_0 y tambin en el estado_1.










Figura B.1 Clasificacin de las incgnitas del sistema en los estados estado_0 y estado_1.
De acuerdo con esta notacin para las variables:
El modelo en el estado_0 ste consta de
( ) ( ) ( ) ( ) ( ) ( )
*
1 01
*
0 0 01 0
dim dim dim dim dim dim x x x x y y + + + + +
ecuaciones representadas como ( ) 0 , , , , , , , , ,
*
1 01 01
*
0
*
0 0 0 01 0 0
u x x x x x x x y y f & & & .
El modelo en el estado_1 consta de
( ) ( ) ( ) ( ) ( ) ( )
*
0 01
*
1 1 01 1
dim dim dim dim dim dim x x x x y y + + + + +
ecuaciones representadas como ( ) 0 , , , , , , , , ,
*
0 01 01
*
1
*
1 1 1 01 1 1
u x x x x x x x y y f & & & .
El primer paso del algoritmo consiste en ampliar la definicin del sistema en cada
estado, de modo que ambos estados posean las mismas variables. Para ello se asigna
(arbitrariamente) valor cero en cada estado a las variables no comunes que aparecen en
la descripcin del modelo en el otro estado. El modelo resultante posee
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
*
1 1 01
*
0 0 01 1 0
dim dim dim dim dim dim dim dim x x x x x y y y + + + + + + +
0
y
01
y
0
x
*
0
x
*
1
x
1
x
01
x
1
y
0 _ estado 1 _ estado
Anexo B B-5

ecuaciones y otras tantas incgnitas en ambos estados (ver Tabla B.1).
Modelo en el estado_0 Modelo en el estado_1
( )

'

0
0
0 , , , , , , , , ,
1
1
*
1 01 01
*
0
*
0 0 0 01 0 0
y
x
u x x x x x x x y y f & & &

( )

'

0
0
0 , , , , , , , , ,
0
0
*
0 01 01
*
1
*
1 1 1 01 1 1
x
y
u x x x x x x x y y f & & &

Tabla B.1 Ecuaciones del modelo tras el primer paso del algoritmo.
En el segundo paso del algoritmo se resuelve el problema de las variables de estado no
comunes, es decir, de las variables que en un estado se calculan mediante integracin y
en el otro son variables algebraicas. Para ello se introducen en ambos estados dos
conjuntos de variables auxiliares:
( ) ( ) ( ) ( )
*
1 1
*
0 0
dim dim dim dim x x x x N + + + variables,
0
,
*
0
,
1
y
*
1
, que sern
variables de estado del modelo modificado representando ambos estados.
N variables auxiliares,
0
,
*
0
,
1
y
*
1
, que sern variables algebraicas del
modelo modificado.
La dimensin de estos vectores de variables es:
( ) ( ) ( )
0 0 0
dim dim dim x
( ) ( ) ( )
*
0
*
0
*
0
dim dim dim x
( ) ( ) ( )
1 1 1
dim dim dim x
( ) ( ) ( )
*
1
*
1
*
1
dim dim dim x
de modo que a cada una de las variables de estado no comunes se le asocia dos variables
auxiliares. La forma en que se introducen estas variables auxiliares es aadiendo N 2
ecuaciones en el modelo de cada estado segn se muestra en la Tabla B.2. Las variables
0
,
*
0
,
1
y
*
1
aparecen derivadas en los modelos de ambos estados.
Modelo en el estado_0 Modelo en el estado_1
( )

'

*
1
*
1
*
1
*
1
1 1 1 1
*
0
*
0
*
0
*
0
0 0 0 0
1 1
*
1 01 01
*
0
*
0 0 0 01 0 0
,
,
,
,
0 , 0
0 , , , , , , , , ,




x
x
x
x
y x
u x x x x x x x y y f
& &
& &
&
&
& & &

( )

'

*
1
*
1
*
1
*
1
1 1 1 1
*
0
*
0
*
0
*
0
0 0 0 0
0 0
*
0 01 01
*
1
*
1 1 1 01 1 1
,
,
,
,
0 , 0
0 , , , , , , , , ,
x
x
x
x
x y
u x x x x x x x y y f




&
&
& &
& &
& & &

Tabla B.2 Ecuaciones del modelo tras el segundo paso del algoritmo.
B-6 Anexo B


El modelo obtenido en cada uno de los estados tiene ndice superior. El tercer paso del
algoritmo consiste en reducir el ndice del modelo para cada uno de los dos estados por
separado. En ambos casos deben escogerse como variables de estado
0
,
*
0
,
1
y
*
1
.
Para realizar la reduccin de ndice puede emplearse el lenguaje de modelado,
aadiendo al modelo en cada estado las entradas computacionales de la interfaz
igualadas a funciones arbitrarias del tiempo. Por los mismos motivos que al realizar la
reduccin de ndice previa a la aplicacin del procedimiento de unificacin, si el
algoritmo de Pantelides [Pant88] detecta que alguna de estas funciones debe ser
derivada, es preciso modificar o bien el modelo o bien la definicin de la interfaz.
Si la reduccin de ndice ha introducido incgnitas algebraicas nuevas en el modelo en
alguno de los dos estados o en ambos, el cuarto paso del algoritmo consiste en ampliar
la definicin del sistema en cada estado, como se hizo en el primer paso del algoritmo,
asignando (arbitrariamente) valor cero en cada estado a las incgnitas no comunes que
aparecen en la descripcin del modelo en el otro estado.
Algunos comentarios acerca del cambio en el valor de las variables de estado al
producirse la transicin entre los dos estados del sistema:
Se extiende la definicin de las variables que en la formulacin inicial eran variables
de estado en uno de los estados del sistema y no estaban definidas en el otro,
0
x y
1
x , imponiendo que en el estado en que no estaban definidas su derivada valga cero,
es decir, se mantiene el valor que tena la variable de estado cuando se produjo la
conmutacin del estado del sistema. Las variables
0
y
1
constituyen esta
ampliacin.
Las variables
*
0
x y
*
1
x , en la formulacin inicial son variables de estado en uno de
los estados del sistema y variables algebraicas en el otro. Cuando se produce la
transicin, para una de ellas, entre el estado del sistema en que es una variable
algebraica al estado en que es una variable de estado, se pasa de tener que satisfacer
una ligadura sobre el valor de la variable a satisfacer una ligadura sobre la forma en
que vara la variable, con lo cual la transicin es continua: se toma como valor
inicial del estado el valor de la variable algebraica justo en el momento en que se
produce la transicin.
Por el contrario, cuando se produce la transicin del estado del sistema en que la
variable es una variable de estado al estado en que es una variable algebraica, se
pasa de tener que satisfacer una ligadura sobre la forma en que vara la variable a
una ligadura sobre el valor de la variable. A no ser que el valor de la variable de
estado coincida, en el instante de conmutacin del estado del sistema, con el valor
de la variable algebraica en ese mismo instante, se producir un salto discontinuo en
el valor de la variable. Obsrvese que las variables
*
0
y
*
1
no reflejan ese salto
discontinuo: valen lo mismo que
*
0
x y
*
1
x cuando stas son variables de estado y
varan de la misma forma que
*
0
x y
*
1
x cuando stas son variables algebraicas. El
quinto paso del algoritmo consiste en aadir al modelo ecuaciones instantneas que
modifiquen de forma discontinua el valor de las variables
*
0
y
*
1
, cuando
*
0
x y
Anexo B B-7

*
1
x pasan de ser variables de estado a no serlo, asignndoles el valor algebraico de la
variables justo en el instante del evento.
B - 4 EJEMPLO DE APLICACIN DEL ALGORITMO
Considrese un recipiente cerrado, que intercambia calor con el entorno y que contiene
una masa
0
m conocida y constante de un componente puro, cuya temperatura de
ebullicin y de condensacin es
cf
T y cuyo calor (positivo) por unidad de masa en ese
cambio de fase es . La capacidad calorfica por unidad de masa del lquido,
liq
C , y del
vapor,
vap
C , se consideran constantes.
cf
F representa el flujo de materia, debido al
cambio de fase, entre el lquido y el vapor,
La interfaz de la clase que modela el sistema contiene un cut que describe el flujo de
calor. El flujo de calor entrante al volumen de control, Q, es la entrada computacional.
La temperatura (del lquido, del vapor o de ambos, dependiendo del estado del sistema)
es la salida computacional. El sistema puede encontrarse en uno de tres estados
diferentes: estado_lq, estado_vap y estado_eq, descritos mediante el conjunto de
ecuaciones de la Tabla B.3. En la Figura B.2 se muestra la condicin de conmutacin
entre los tres estados del sistema. Las variables lgicas liquido y equilibrio definen el
estado del sistema como se indica en la Tabla B.4.
Estado estado_lq Estado estado_eq Estado estado_vap
Q
dt
dT
m C
m
m m
liq
vap
liq

0
0
0

Q
F
T T
m m m
F
dt
dm
cf
cf
liq vap
cf
vap

0

Q
dt
dT
m C
m m
m
vap
vap
liq

0
0
0

Tabla B.3 Ecuaciones del modelo en cada uno de sus tres estados.









Figura B.2 Autmata con tres estados: estado_liq, estado_vap y estado_eq.
estado_liq
estado_eq
estado_vap
cf
T T not <
cf
T T not >
0 >
vap
m not 0 >
liq
m not
B-8 Anexo B


Estado estado_lq Estado estado_eq Estado estado_vap
False equilibrio
True liquido


True equilibrio
False liquido


False equilibrio
False liquido


Tabla B.4 Las variables liquido y equilibrio definen el estado del sistema.
Las descripciones matemticas de los estados estado_lq y estado_vap poseen las
mismas variables algebraicas y las mismas variables de estado, con lo cual el lenguaje
de modelado permite escribir el cdigo del modelo correspondiente a ambos estados,
como se muestra en la Tabla B.5.
Estado estado_lq o estado_vap Estado estado_eq
vap liq
vap
liq
C m
Q
C m
Q
liquido
dt
dT
m liquido m
m liquido m
0 0
0
0
else then if
else 0 then if
0 else then if

Q
F
T T
m m m
F
dt
dm
cf
cf
liq vap
cf
vap

0

Tabla B.5 Ecuaciones del modelo agrupando la descripcin en los estados estado_liq y estado_vap.
La variable algebraica Q es una entrada computacional. En la Figura B.3 se representan
las incgnitas del sistema en cada uno de sus dos estados:
El sistema en el estado estado_liq o estado_vap posee una variable de estado, T , y
tres variables algebraicas, Q,
liq
m y
vap
m .
El sistema en el estado estado_eq posee una variable de estado,
vap
m , y cuatro
variables algebraicas,
cf
F , Q,
liq
m y T .















Figura B.3 Clasificacin de las incgnitas del sistema.
liq
m
vap
m T
vap estado o liq estado _ _ eq estado _
cf
F
Anexo B B-9

El primer paso del algoritmo de unificacin del cdigo consiste en definir en cada
estado las variables no comunes presentes en el otro estado. En la Tabla B.6 se muestra
el sistema resultante.
Estado estado_lq o estado_vap Estado estado_eq
0
else then if
else 0 then if
0 else then if
0 0
0
0

cf
vap liq
vap
liq
F
C m
Q
C m
Q
liquido
dt
dT
m liquido m
m liquido m

Q
F
T T
m m m
F
dt
dm
cf
cf
liq vap
cf
vap

0

Tabla B.6 Ecuaciones del modelo tras el primer paso del algoritmo.
El segundo paso del algoritmo consiste en definir tantos pares de variables auxiliares
, como variables de estado no comunes haya. En este ejemplo existen dos:

1 1
, T
2 2
,
vap
m
En la Tabla B.7 se muestra el sistema resultante de aadir las ecuaciones necesarias para
la evaluacin de las variables auxiliares.
Estado estado_lq o estado_vap Estado estado_eq
2 2
2
1 1
1
0 0
0
0
,
,
0
else then if
else 0 then if
0 else then if

dt
dm
dt
d
T
dt
d
F
C m
Q
C m
Q
liquido
dt
dT
m liquido m
m liquido m
vap
cf
vap liq
vap
liq

vap
cf
cf
liq vap
cf
vap
m
dt
d
dt
dT
dt
d
Q
F
T T
m m m
F
dt
dm

2 2
2
1 1
1
0
,
,


Tabla B.7 Ecuaciones del modelo tras el segundo paso del algoritmo.
El tercer paso del algoritmo consiste en reducir el ndice del modelo en cada uno de los
dos estados por separado, lo cual puede realizarse con ayuda del lenguaje de modelado
(Dymola en este ejemplo). Para ello deben igualarse las entradas computacionales a
funciones arbitrarias del tiempo. En la Figura 4 se muestra el modelo del ejemplo y las
rdenes para realizar la reduccin de ndice usando Dymola. En la Tabla B.8 se
B-10 Anexo B


muestran las ecuaciones que aade Dymola al sistema producto de la aplicacin del
algoritmo de Pantelides [Pant88].
Estado estado_lq o estado_vap Estado estado_eq

model estado_liq_vap
local T, Q, mvap, mliq, Fcf, liquido
local alfa1, alfa2, beta1, beta2
parameter m0, lam, Cliq, Cvap
mliq = if liquido then m0 else 0
mvap = if liquido then 0 else m0
der(T) = if liquido ->
then Q / ( m0 * Cliq ) ->
else Q / ( m0 * Cvap )
Fcf = 0
der(alfa1) = beta1
der(alfa2) = beta2
alfa1 = T
der(mvap) = beta2
Q = f(Time)
new(liquido) = g(Time)
end


model estado_eq
local T, Q, mvap, mliq, Fcf
local alfa1, alfa2, beta1, beta2
parameter m0, lam, Cliq, Cvap, Tcf
der(mvap)=Fcf
mvap + mliq = m0
T = Tcf
Fcf = Q / lam
der(alfa1) = beta1
der(alfa2) = beta2
der(T) = beta1
alfa2 = mvap
Q = f(Time)
end


set eliminate on
set LogDeriv on
enter model
@./estado_liq_vap.dym
differentiate
variable known alfa1
variable known alfa2
variable unknown T
variable unknown mvap
partition
output solved equations


set eliminate on
set LogDeriv on
enter model
@./estado_eq.dym
differentiate
variable known alfa1
variable known alfa2
variable unknown T
variable unknown mvap
partition
output solved equations
Figura B.4 Modelo en cada estado. rdenes para reducir el ndice y escoger las variables de estado.
Estado estado_lq o estado_vap Estado estado_eq
0
1

dt
dm
dt
dT
dt
d
vap


0
2

dt
dT
dt
dm
dt
d
vap


Tabla B.8 Ecuaciones aadidas al sistema en cada estado.
Se sustituye la derivada de las variables que aparecen derivadas, y no son ecuaciones de
estado, por variables auxiliares:
derT
dt
dT

vap
vap
derm
dt
dm

La Tabla B.9 contiene el cdigo del modelo vlido para sus tres estados y escrito
siguiendo las reglas dictadas por los lenguajes de modelado.
Anexo B B-11

Estado estado_lq o estado_vap o estado_eq
else then if 0
else then if 0
else then if 0
else then if 0
else then if 0
else then if else then if 0
else then if else then if 0
else then if else then if 0
1 2
2 2
2
2
1 1
1
1
0 0
0 0
0
vap
vap
vap vap
cf cf
vap liq
cf
vap vap liq vap
liq liq cf vap
derm derT equilibrio
dt
d
derT derm
dt
d
equilibrio
derm m equilibrio
dt
d
T derT equilibrio
dt
d
F
Q
F equilibrio
C m
Q
derT
C m
Q
derT liquido T T equilibrio
m m m liquido m m m equilibrio
m - m m liquido F derm equilibrio


Tabla B.9 Modelo de los tres estados del sistema.
El ltimo paso del algoritmo consiste en aadir al modelo las ecuaciones para inicializar
las variables de estado
1
y
2
en las transiciones de estado (Tabla B.10).
Estado estado_lq o estado_vap o estado_eq
( )
( )
endwhen
init
then not when
endwhen
init
then when
2
1
vap
m
equilibrio
T
equilibrio


Tabla B.10 Ecuaciones instantneas para inicializar las variables de estado.
En la Figura B.5 se muestra el modelo completo escrito en Dymola. Se han asignado
valores arbitrarios a los parmetros. Las condiciones de transicin de estado en este
ejemplo hacen que tanto la temperatura como la masa de vapor sean continuas al
producirse el cambio de estado. Sin embargo, para poder ilustrar la inicializacin de las
variables de estado al producirse la transicin entre estados, se impone que la transicin
entre estados corresponda con determinados eventos en el tiempo, de modo que se
produzcan saltos discontinuos en las variables de estado. As, inicialmente el sistema se
encuentra en el estado estado_liq, en el instante 10 Time pasa al estado estado_eq, en
el instante 20 Time al estado estado_vap y en 30 Time nuevamente al estado
estado_eq (ver Figura B.6).
B-12 Anexo B



model liq_vap_eq
local T, Q, mvap, mliq, Fcf, liquido, equilibrio
local dermvap, derT
local alfa1,alfa2,beta1,beta2
parameter m0=100, lam=5, Cliq=0.2, Cvap=0.08, Tcf=373
0 = if equilibrio ->
then dermvap-Fcf ->
else if liquido then mliq-m0 else mliq
0 = if equilibrio ->
then mvap + mliq - m0 ->
else if liquido then mvap else mvap-m0
0 = if equilibrio ->
then T - Tcf ->
else if liquido then derT-Q/(m0*Cliq) else derT-Q/(m0*Cvap)
0 = if equilibrio ->
then Fcf - Q / lam ->
else Fcf
der(alfa1) = beta1
der(alfa2) = beta2
0 = if equilibrio ->
then derT - beta1 ->
else alfa1 - T
0 = if equilibrio ->
then alfa2 - mvap ->
else dermvap - beta2
0 = if equilibrio ->
then der(alfa2) - dermvap ->
else der(alfa1) - derT
0 = if equilibrio ->
then derT ->
else dermvap
Q = if Time < 28 then 20 else -20
new(liquido) = Time < 10
new(equilibrio) = Time >10 and Time < 20 or Time>30
when equilibrio then
init(alfa1) = T
endwhen
when not equilibrio then
init(alfa2) = mvap
endwhen
end


enter model
@./liq_vap_eq.dym
partition
output solved equations
initial alfa1 = 300
initial alfa2 = 0
initial liquido = True
initial equilibrio = False
experiment stopTime = 40
simulate

Figura B.5 Listado del modelo. rdenes para establecer el estado inicial.



















Figura B.6 Variables lgicas que determinan el estado del sistema. Flujo de calor entrante al sistema.
En la Figura B.7 se muestra la evolucin de la masa de vapor, de la masa de lquido y de
la temperatura. Cuando, en la formulacin inicial del modelo, la variable pasa de ser una
Anexo B B-13

variable de estado a ser una variable algebraica, se pasa de tener que satisfacer una
ligadura sobre la forma en que vara la variable a tener que satisfacer una ligadura sobre
el valor en s de la variable, esto hace que, en general, la transicin sea discontinua. En
la Figura B.7 se observa cmo la temperatura vara de forma discontinua cuando se pasa
al estado estado_eq, en el cual la temperatura era una variable algebraica, y cmo la
masa de vapor cambia de forma discontinua cuando se pasa al estado estado_liq o
estado_vap, en los cuales era una variable algebraica.



















Figura B.7 Masa de vapor y de liquido. Temperatura.


C-1
ANEXO C
LISTA DE SMBOLOS
C - 1 LIBRERA DE FENMENOS FSICO-QUMICOS
BSICOS
Las dimensiones se expresan en funcin de masa ( ) M , longitud ( ) L , tiempo ( ) t y
temperatura ( ) T . Los smbolos subrayados corresponden a vectores. No se incluyen en
esta lista los smbolos que intervienen con muy poca frecuencia.
A
Factor de frecuencia de una reaccin qumica.
c
Concentracin en masa,
3
L M .
c
Concentracin molar,
3
L moles .
C
Capacidad calorfica por unidad de masa,
1 2 2
T t L .
C

Capacidad calorfica por unidad de mol,


1 1 2 2
moles T t L M .
d
Dimetro de una conduccin de seccin circular, L .
j i
D
,
Difusividad de un sistema binario formado por los componentes i y j ,
1 2
t L .
e Especie qumica.
f
Fuerza que acta sobre un fluido en la direccin paralela a su flujo,
2
t L M .
F
f Fuerza de friccin que acta sobre un fluido en la direccin paralela a su flujo,
2
t L M .
g
f Fuerza que ejerce la gravedad en la direccin de movimiento del fluido,
2
t L M .
C-2 Anexo C


p
f Fuerzas de presin ejercidas sobre los planos de referencia,
2
t L M .
m
F Flujo de masa por unidad de tiempo,
1
t M .
m
F
~
Flujo de masa por unidad de tiempo y de superficie,
1 2
t L M .
n
F Flujo de moles por unidad de tiempo,
1
t moles .
n
F
~
Flujo de moles por unidad de tiempo y de superficie,
1 2
t L moles .
V
F Flujo de volumen por unidad de tiempo,
1 3
t L .
H
F Flujo de entalpa por unidad de tiempo,
3 2
t L M .
g
Aceleracin gravitatoria,
2
t L .
m
G Masa generada por reaccin qumica por unidad de tiempo,
1
t M .
n
G Nmero de moles generado por reaccin qumica por unidad de tiempo,
1
t moles .
Q
G Calor generado por reaccin qumica por unidad de tiempo,
3 2
t L M .
h
Entalpa por unidad de masa,
2 2
t L .
h

Entalpa por mol,


1 2 2
moles t L M .
h
Entalpa molar parcial,
1 2 2
moles t L M .
AB
h
Coeficiente de transmisin de calor, por unidad de superficie, entre los sistemas A y B ,
1 3
T t M .
H
Entalpa total,
2 2
t L M .
i
k
Constante de velocidad de la reaccin i .
L Longitud de una conduccin, L .
m
Masa, M .
m
~

Masa por unidad de longitud,
1
L M .
M
Peso molecular,
1
moles M .
n
Nmero de moles, moles .
comp
N
Nmero de componentes de un fluido.
Anexo C C-3



especies
N
Nmero de especies qumicas.
reac
N
Nmero de reacciones qumicas.
p
Presin del fluido,
2 1
t L M .
i
p Presin parcial del componente i de la mezcla gaseosa,
2 1
t L M .
c
p Presin crtica,
2 1
t L M .
r
p
Presin relativa.
P
Momento lineal de un fluido,
1
t L M .
q
Flujo de calor por unidad de tiempo y por unidad de superficie,
3
t M .
reac
q Calor de reaccin,
1 2 2
moles t L M .
Q
Calor por unidad de tiempo,
3 2
t L M .
r
Velocidad de la reaccin qumica,
1 3
t L moles .
R
Constante de los gases,
1 2 2
T t L M .
th
R Resistencia trmica, T t L M
3 2 1
.
S
Seccin o superficie,
2
L .
t Tiempo, t .
T Temperatura absoluta, T .
c
T
Temperatura crtica, T .
r
T
Temperatura relativa.
u
Energa interna por unidad de masa,
2 2
t L .
u
Energa interna por mol,
1 2 2
moles t L M .
u
Energa interna molar parcial,
1 2 2
moles t L M .
U
Energa interna,
2 2
t L M .
v
Velocidad,
1
t L .
C-4 Anexo C


V
Volumen,
3
L .
V

Volumen de un mol,
1 3
moles L .
x
Coordenada rectangular, L .
m
x
Fraccin en masa.
n
x
Fraccin molar.
z Elevacin, L .
Z
Factor de compresibilidad.

Matriz de coeficientes estequiomtricos.
ij

Coeficiente estequiomtrico de la especie j en la reaccin qumica i .
*
ij

Exponente de la concentracin de la especie j en la expresin de la velocidad de la
reaccin qumica i (simple e irreversible).

Coeficiente volumtrico de expansin.
j

Conversin fraccional de la especie qumica j .

Rugosidad superficial: altura de las protuberancias, L .
i

Calor de vaporizacin componente i de la mezcla gaseosa.

Conductividad calorfica,
1 3
T t L M .
Fanning

Factor adimensional de Fanning.
num

Coeficiente de compresibilidad, debida a la presin, ficticio de una mezcla lquida,
2 1
t L M

.
T

Coeficiente isotermo de compresibilidad.

Viscosidad de un fluido,
1 1
t L M .
ngulo con la horizontal, radianes .
Permetro mojado de la seccin de una conduccin, L .

Densidad de un fluido,
3
L M .
puro
i
Densidad del componente i de la mezcla lquida cuando se encuentra puro,
3
L M .
Anexo C C-5



r

Tiempo de residencia de un fluido en una conduccin, t .
valve

Seal de control aplicada a una vlvula. Puede tomar valores entre 0 y 1.

Parmetro de valor muy pequeo. Despreciable.
Lneas superiores
^ Por mol.
Magnitud molar parcial.
Por unidad de longitud o de superficie.
Lneas inferiores
Magnitud vectorial.
ndices superiores
,... , B A
Volmenes de control.
m Magnitud expresada en unidades de masa.
n Magnitud expresada en moles.
0
Magnitud en el punto de unin de varios flujos.
SP
Valor de consigna.
t Transposicin de vector o matriz.
Subndices
0
Magnitud en el instante inicial.
,... , B A
Volmenes de control.
B A Indica que el signo del flujo es positivo cuando sale de A para entrar en B .
k j i , ,
Especies en un sistema de varios componentes.
p Magnitud a presin constante.
ref
Magnitud de referencia.
C-6 Anexo C


V Magnitud a volumen constante.
Grupos adimensionales
Bi
Nmero de Biot.
N Numero de transferencia de calor.
Nu Nmero de Nusselt.
Pe Nmero de Peclet.
Pr
Nmero de Prandtl.
Re Nmero de Reynolds.
Operaciones matemticas

Operador nabla.

C - 2 DESCRIPCIN Y SIMULACIN DE MODELOS CON
PARMETROS ALEATORIOS
En general, se emplean maysculas para representar las variables aleatorias y
minsculas para representar sus valores y sus vectores representacin interna.
Funciones
{ } P
Probabilidad del evento sobre el que se aplica.
{ }
+
P
Aportacin a la probabilidad del evento sobre el que se aplica.
( ) dim
Representa el nmero de elementos del conjunto sobre el cual se aplica la funcin.
( )
Operaciones elementales en que intervienen variables aleatorias reales y cuyo resultado es
otra variable aleatoria real, o bien operaciones lgicas en que intervienen variables aleatorias
Booleanas y cuyo resultado es una variable aleatoria Booleana.
( )


Operaciones elementales en las cuales estn involucradas, en los operandos o en la solucin,
tanto variables aleatorias reales como Booleanas.

Reduccin en el condicionamiento de la probabilidad.
Anexo C C-7



Variables
Variable real determinista.

Variable Booleana determinista.
P
Parmetro aleatorio real de entrada.
Q
Parmetro aleatorio Booleano de entrada.
X , Y , Z Variables aleatorias reales.
L , A , B , C
Variables aleatorias Booleanas.
P , Q
Conjunto completo de los parmetros aleatorios reales y Booleanos de entrada del
problema respectivamente.
Y
P ,
Y
Q
L
P ,
L
Q
Parmetros aleatorios reales y Booleanos de entrada respectivamente de los que
depende estadsticamente la variable aleatoria real Y o Booleana, L .
Y
P

,
Y
Q


L
P

,
L
Q


Subconjunto del conjunto de parmetros aleatorios reales y Booleanos de entrada
respectivamente de los que depende la variable aleatoria real Y ,
Y Y
P P

,
Y Y
Q Q

, o la variable aleatoria Booleana L ,


L L
P P

,
L L
Q Q

.
XY
P ,
XY
Q
Parmetros aleatorios de entrada, reales y Booleanos respectivamente, de los que
dependen tanto la variable X como la Y , es decir,
Y X XY
P P P ,
Y X XY
Q Q Q .
Probabilidad de las variables aleatorias reales
( ) x f
X
, ( ) x f
X
*

Densidad de probabilidad, truncada y sin truncar respectivamente, de la
variable aleatoria real X .
( ) E x f
X
, ( ) E
*
x f
X

Densidad de probabilidad, truncada y sin truncar respectivamente, de la
variable aleatoria real X condicionada al evento E .
( ) x F
X
, ( ) x F
X
*

Funcin de probabilidad acumulada, truncada y sin truncar
respectivamente, de la variable aleatoria real X .
( ) E x F
X
, ( ) E
*
x F
X

Funcin de probabilidad acumulada, truncada y sin truncar
respectivamente, de la variable aleatoria real X condicionada al
evento E .
ndices
k
ndice asociado a la descripcin interna de los parmetros aleatorios
reales de entrada.
C-8 Anexo C


( )
( )
X
P
k k k

dim
1
,...,
Vector de ndices. Su dimensin es igual al nmero de elementos del
conjunto
X
P

al que se asocie. Su dimensin depende del contexto.


ndice asociado a la descripcin interna de los parmetros Booleanos
de entrada.
( )
( )
X
Q

dim
1
,...,
Vector de ndices. Su dimensin es igual al nmero de elementos del
conjunto
X
Q

al que se asocie. Su dimensin depende del contexto.


n ndice asociado a la descripcin interna de las variables aleatorias
auxiliares reales.
j , r ndices asociados a la numeracin de los intervalos cerrados de valores
posibles.
Valores posibles de las variables aleatorias reales
P
I ,
X
I
Conjunto acotado de valores posibles del parmetro
aleatorio real de entrada P o de la variable
aleatoria real X respectivamente.
[ ]
Max min P
p p I ,
Intervalo cerrado que constituye el conjunto de
valores posibles
P
I del parmetro aleatorio real de
entrada P .
X
i
Nmero de intervalos cerrados disjuntos cuya unin
es igual al conjunto
X
I .
[ ]
[ ] [ ] [ ] [ ] j x j x j I
j I I
Max min X
i
j
X X
X
,
1 :

U

X
I es la unin de
X
i intervalos cerrados disjuntos
[ ] j I
X
, con
X
i j ,..., 1 : .
{ }
[ ] ,

k I
X X
Q P
X


Conjunto de valores posibles de la variable aleatoria
real X condicionada al evento

X X
Q
k
P

.
{ }
[ ] ,

k i
X X
Q P
X

Nmero de intervalos cerrados disjuntos cuya unin
es igual al conjunto
{ }
[ ] ,

k I
X X
Q P
X
.
{ }
[ ]
{ }
[ ]
{ }
[ ]
U


,
1 :

,

,

,
, , ,
k i
j
Q P
X
Q P
X
X
Q
X
P
X
X X X X
j k I k I

{ }
[ ]
{ }
[ ]
{ }
[ ] [ ] j k x j k x
j k I
X X X X
X X
Q P
Max
Q P
min
Q P
X
, , , , ,
, ,

,

,




{ }
[ ]
m n
Q Q P P
X
k k I
m n
,..., , ,...,
1 1
,.., , ,...,
1 1
es la unin
de
{ }
[ ]
m n
Q Q P P
X
k k i
m n
,..., , ,...,
1 1
,.., , ,...,
1 1
intervalos
cerrados disjuntos,
{ }
[ ] j k k I
m n
Q Q P P
X
m n
, ,..., , ,...,
1 1
,.., , ,...,
1 1
, con
{ }
[ ]
m n
Q Q P P
X
k k i j
m n
,..., , ,..., ,..., 1 :
1 1
,.., , ,...,
1 1
.
Anexo C C-9



Representacin interna de la probabilidad
( ) X F , ( ) A F
Representacin interna de la probabilidad de la
variable aleatoria real X y de la variable aleatoria
Booleana A respectivamente.
( )
X X
Q P X F

, ( )
A A
Q P A F


Representacin interna de la probabilidad de la
variable aleatoria real X condicionada a
X X
Q P

y de la variable aleatoria Booleana A
condicionada a
A A
Q P

.
N
Entero que determina la dimensin de la
representacin interna de las variables aleatorias.
p
Elementos: [ ] k p
donde 1 ,..., 1 : + N k
Representacin interna de la probabilidad del
parmetro aleatorio real de entrada P .

I
x x ,
Elementos: [ ] [ ] j x j n x
I
, ,
donde:

'

+1 ,..., 1 :
,..., 1 :
N n
i j
X

Representacin interna de la probabilidad total de la
variable aleatoria real X .
{ }
X X
Q P
x

,
{ }
X X
Q P
I
x


Elementos:
{ }
[ ] j k n x
X X
Q P
, , ,

,
{ }
[ ] j k x
X X
Q P
I
, ,


donde:
( )
( )
{ }
[ ]

'

+1 ,..., 1 :
, ,..., 1 :
, rue : ,...,
,..., 1 : ,...,

dim
1

dim
1
N n
k i j
false t
N k k
X X
X
X
Q P
X
Q
P



Representacin interna de la probabilidad de la
variable aleatoria real X condicionada a los
parmetros aleatorios reales de entrada
X
P

y a los
parmetros aleatorios Booleanos de entrada
X
Q

.
Q
,
L

Representacin interna de la probabilidad total del
parmetro aleatorio Booleano de entrada Q y de la
variable Booleana L respectivamente.
{ }
X X
Q P
L

T
Elementos:
{ }
[ ] , T

k
X X
Q P
L

donde:
( )
( )

'

false t
N k k
X
X
Q
P
, rue : ,...,
,..., 1 : ,...,

dim
1

dim
1


Representacin interna de la probabilidad de la
variable Booleana L condicionada a los
parmetros aleatorios reales de entrada
X
P

y a los
parmetros aleatorios Booleanos de entrada
X
Q

.
C-10 Anexo C


Eventos
[ ] [ ] { } 1 + < k p P k p
k
I
P

Valores posibles: N k ,..., 1 :
[ ]
[ ] [ ] { } j x X j x
Max min j I
X

Valores posibles:
X
i j ,..., 1 :
[ ]
[ ] [ ] { } j n x X j n x
n
j I
X
, 1 , + <
Valores posibles:

'

N n
i j
X
,..., 1 :
,..., 1 :
.
{ }
{ } { }

'

] , , [ ] , , [

,

,

] , , [

j k x X j k x
X X X X
X
Q
X
P
X
Q P
Max
Q P
min
j k I


Valores posibles:
( )
( )
{ }
[ ]

'


, ,..., 1 :
, : ,...,
,..., 1 : ,...,

dim
1

dim
1
k i j
false true
N k k
X X
X
X
Q P
X
Q
P

{ }
{ } { }

'

+ < ] , , , 1 [ ] , , , [

,

,

] , , [

j k n x X j k n x
X X X X
X
Q
X
P
X
Q P Q P
n
j k I


Valores posibles:
( )
( )
{ }
[ ]

'


, ,..., 1 :
, : ,...,
,..., 1 : ,...,
,..., 1 :

dim
1

dim
1
k i j
false true
N k k
N n
X X
X
X
Q P
X
Q
P

{ }

Q
Q

Valores posibles: false true , .

You might also like