Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La estructura del software de los lenguajes de simulacin de sistemas continuos Criterios para la seleccin de lenguajes de simulacin de sistemas continuos.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 2
Lenguajes de simulacin
Qu son?
Son programas de ordenador que facilitan:
La descripcin del modelo y la asignacin de causalidad computacional (manipulacin de las ecuaciones). La descripcin de los experimentos a realizar sobre el mismo La resolucin numrica del sistema de ecuaciones resultante La visualizacin de los resultados y el uso de la simulacin
Ventajas?
Dan fiabilidad a los resultados Permiten ahorrar tiempo Permiten concentrarse en el problema y no en la programacin Abren el campo a no expertos en informtica
RC
dx(t ) + x(t ) = F dt
V i= F
V0= x
y1 = a y1 b y1 c( y1 y 3 ) d
Paso 2: dibujar una cascada de integradores con tantos bloques como derivadas aparezcan en la ecuacin. Paso 3: utilizar el resto de bloques para tratar de reflejar la ecuacin diferencial representada.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 7
+ iL R 2
Manipulacin del modelo
= C
dU C dt di L = L dt
U = A sin( t ) iC
Diagrama de bloques
= (U - U
L
C L
)/R 1
= U-i
C
R 2 / C
L
dU dt di L dt
= iC = U
L
8
12
Ordenacin de bloques?
Math Function
f (z)
Algebraic Constraint
M ath Function
13
14
Conclusiones
Las principales ventajas son:
Sencillos e intuitivos Fciles de construir debido a su interfaz grfica
El hecho de estar basado en un lenguaje de alto nivel facilita la tarea de incluir nuevas funciones (escritas en ese lenguaje de alto nivel) aumentando as las capacidades del lenguaje de simulacin. La realizacin de experimentos con el modelo, presentacin de resultados,... se hace por medio de un lenguaje de comandos que el usuario introduce a travs de algn terminal del ordenador, constituyendo un paso hacia la separacin del modelo y el experimento. Reutilizacin? Uso de estructuras tipo MACRO.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 16
A
h
dh = F K gh dt
17
Preprocesador para analizar el modelo, ordenar sentencias y generar cdigo en un lenguaje de alto nivel.
18
ACSL (Advanced Continuous Simulation Language) un lenguaje orientado a sentencias del estndar CSSL67
Estructura del modelo
PROGRAM INITIAL Sentencias que se ejecutan en el instante inicial. END DYNAMIC DERIVATIVE Sentencias que se integran continuamente END DISCRETE Sentencias que se ejecutan a intervalos discretos END END TERMINAL Sentencias que se ejecutan al final de la simulacin. END END Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 19
y1 = a y b y c( y1 y ) d
v1 = y
a1 = v (= y )
a1 (= y ) = a y b y c( y1 y ) d = aa bv c( y1 y ) d
= U-i
R 2
dU C = iC / C dt di L = U L /L dt
program circuito initial !Condiciones iniciales constant uc0=..., il0=.... !Condiciones de la integracin !Tienen valores por defecto cinterval cint=0.01 nsteps nstp=10 algorithm ialg=5 !Tiempo mximo de simulacin constant tmax=1. end dynamic derivative !Parmetros del modelo constant a=..., w=... constant r1=..., r2=...., c=..., l=... !Ecuaciones del modelo uc=integ(ic/c,uc0) il=integ(ul/l,il0) ic=(u-uc)/r1 ul=u-il*r2 !La seal u es conocida en el tiempo ej: u=a*sin(w*t) end termt(t.gt.tmax) end end Modelado y Simulacin de Sistemas 21 3 Ingeniera Tcnica Informtica de Sistemas
ACSL ordenar las sentencias que se encuentren dentro de regiones derivative o en otras secciones en las cuales de encuentre la sentencia sort. El algoritmo de ordenacin de ecuaciones es muy sencillo:
ACSL se crea dos listas. La primera con todas las variables del modelo y marca en ella como conocidas las variables de estado (las que calcula por integracin). La otra con todas las sentencias, las variables de salida de la sentencia y las variables que necesita para calcular esa variable de salida. Una vez construidas las listas, va pasando por la lista de sentencias. Si la sentencia seleccionada es tal que para calcular su variable de salida ya dispone de todas las variables necesarias entonces marca como conocida esa variable de salida y saca de la lista dicha sentencia, en otro caso la enva la final de la lista. El algoritmo finaliza cuando todas las variables estn marcadas como conocidas y la lista de sentencias est ordenada.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 22
23
24
25
Soluciones:
Decirle que no ordene el bloque, para ello lo incluiremos en un bloque procedural. Pero deberemos inicializar alguna variable en el bloque initial, para que no se produzcan errores numricos:
INITIAL P2=1.25 END ... CONSTANT CV1=5. , CV2=3. CONSTANT P1=1.5, P3=1. PROCEDURAL (W,P2=P1,P3) W=CV1*SQRT(P1-P2) P2=(W/CV2)**2+P3 END
26
27
Graphic Modeller:
Definicin de componentes:
Icono. Nombre del componente. Puertos de entrada. Puertos de salida. Parmetros. Ecuaciones.
La conexin de componentes se realiza sin ms que unir puertos de entrada con puertos de salida.
Las conexiones se hacen a nivel de variables no de conexiones fsicas reales. En el caso de sistemas complejos (fluidos), necesitamos mltiples conexiones de variables para una misma conexin fsica real y se complica el diagrama.
Resuelve los problemas de asignacin de nombres y de escritura del modelo de simulacin, pero desde un punto de vista conceptual presenta la misma problemtica que las MACROS de ACSL (no es ms que una interfaz grfica de las MACROS). Slo es til para sistemas que se modelen desde la perspectiva de los diagramas de bloques.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 28
29
Conclusiones
Las principales ventajas son:
Declaracin directa de las ecuaciones en trminos similares a la formulacin matemtica habitual. Generadores de cdigo no intrpretes de un diagrama. Son una primera aproximacin a la distincin entre modelo y experimento, pero no los independizan completamente.
El principal inconveniente de estos lenguajes es que son lenguajes de simulacin pero no de modelado, con lo cual:
No soportan una reutilizacin eficiente del cdigo de simulacin debido a la pobreza del concepto de MACRO. El tratamiento de los sistemas de estructura variable (hbridos), en los que las ecuaciones pueden cambiar en tiempo de simulacin, no se soporta de un modo eficiente.
Por ejemplo un interruptor elctrico: si est cerrado la diferencia de potencial entre los extremos es nula y si est abierto la intensidad de corriente es nula.
I=0; V0
V=0; I0
30
31
Procesador
Toma la descripcin del modelo y genera lo que se denomina modelo de simulacin, para ello realiza las siguientes tareas:
Anlisis de la sintaxis del modelo. Generacin del modelo de simulacin (ordenacin de sentencias y manipulacin de ecuaciones). En este punto en los lenguajes de modelado orientado a objetos en ocasiones se requiere la ayuda del usuario. Traducir el modelo de simulacin a un lenguaje de alto nivel (FORTRAN, C ...), compilarlo y unirlo a las libreras del sistema , integracin de ecuaciones y presentacin de resultados.
Simulador
Propiamente debera denominarse ejecucin de la simulacin. Las principales propiedades del simulador son la precisin, la estabilidad numrica y la eficiencia de los algoritmos de integracin y resolucin de ecuaciones implcitas.
33
34
Postprocesador
Los resultados pueden obtenerse y observarse durante la ejecucin de la simulacin, sin embargo deben estar disponibles ciertas herramientas que permitan analizar los resultados de la simulacin. Es conveniente que finalizada la simulacin el usuario pueda representar los resultados de forma grfica y ms an poder comparar con simulaciones previas o de diversos experimentos. As es muy importante que la herramienta de simulacin permita:
Representar varias grficas simultneamente una misma ventana. Escalado automtico y zoom. Obtener resultados numricos a partir de una seleccin en la grfica. Permitir diferentes tipos de interpolaciones (ZOH, de primer orden, ...) Diferentes tipos de escalas en los ejes (logartmicas, lineales, ...)
Adems todas estas funciones deben de estar implementadas en una interfaz amigable para el usuario, de modo que cuanto ms grfico sea el uso de la simulacin mejor.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 35
Supervisor
Es el elemento central del lenguaje de simulacin, porque interconecta todas las partes de la herramienta de simulacin. Est muy relacionado con la interfaz de usuario, de modo que pueda trabajar de un modo amigable y eficiente. Las funciones ms importantes del supervisor junto con la interfaz de usuario son:
Seleccin del modelo del sistema Seleccin del experimento Capacidad para introducir nuevos modelos o editar los existentes Arrancar el procesador del lenguaje de simulacin, y la posterior compilacin y montaje del cdigo generado con las libreras necesarias. Invocar la ejecucin de la simulacin Permitir el manejo de las constantes del programa de simulacin (datos y parmetros del modelo, parmetros de la ejecucin de la simulacin, seleccin de las variables de salida ...) sin necesidad de parar la simulacin, editar los modelos y repetir el pre-proceso.
Modelado y Simulacin de Sistemas 3 Ingeniera Tcnica Informtica de Sistemas 36
Definicin de experimentos
Independencia entre la definicin del modelo y del experimento. Sintaxis para la definicin de experimentos.
37
Ejecucin:
Velocidad de ejecucin Seleccin de los algoritmos de integracin y las variables de control de la integracin de ecuaciones. Generacin de nmeros aleatorios Capacidad de ejecucin en tiempo real Capacidad de procesamiento en modo batch.
Post-proceso:
Presentacin de resultados: grficas, resmenes Acceso a bases de datos para almacenar los resultados de diversas simulaciones. Gestor de resultados Capacidad de generar una versin ejecutable
38
Vendedor o suministrador
Estabilidad e historia Soporte tcnico Calidad y nivel de detalle de la documentacin Coste