Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porIzabelle Fortuna Modificado hace 10 años
1
Modelos de Sistemas Continuos con Ing. Rafael A. Díaz Chacón U.C.V. V RAD/99 Casos de Estudio N° 20, 21 y 22
2
RAD/99 La Ecuación Diferencial debe expresarse como una ecuación de estado SS[I] representa a la variable de estado I DD[I] representa a la derivada de la variable de estado I Ecuaciones Diferenciales en SLAM: Definiciones
3
RAD/99 Ecuaciones Diferenciales en SLAM: Ejemplos
4
RAD/99 Ecuaciones Diferenciales en SLAM: Ejemplos
5
RAD/99 Ecuaciones Diferenciales en SLAM: Eventos de Estado SEVNT,CODIGO,VARIABLE,DIRECCION,UMBRAL,TOLERANCIA Ejemplos SEVNT,1,SS[1],XP,0.7,0.1; SEVNT,2,SS[2],XN,SS[1],0.07; SEVNT,3,DD[4],X,0.0,0.0; SEVNT,4,NNQ(1),XP,XX[7],0.0;
6
RAD/99 Ecuaciones Diferenciales en SLAM: Eventos de Estado… (Ejemplo) SEVNT,1,SS[1],XP,XX[1],0.0; 1.- En un tanque con capacidad C que debe llenarse desde un nivel C 0 según un caudal Q, no se puede sobrepasar la capacidad C ya que se desborda el tanque. Sea SS[1] el volumen del tanque y sea XX[1] la capacidad del tanque. Entonces el evento 1 se da cuando la variable SS[1] pasa en la dirección positiva el umbral XX[1].
7
RAD/99 Ecuaciones Diferenciales en SLAM: Eventos de Estado… (Ejemplo) SEVNT,2,SS[2],XP,XX[11],0.0; 2.- En un circuito RLC serie, cuando la tensión sobre el condensador iguala por primera vez a la tensión de alimentación ocurre un corto circuito en la fuente. Sea SS[1] la tensión sobre el condensador y sea XX[11] la tensión de alimentación. Entonces el evento 2 se da cuando la variable SS[1] pasa en la dirección positiva el umbral XX[11].
8
Caso de Estudio N° 20: Circuito RC Serie RAD/99 “Para el circuito RC serie de la figura se desea conocer la tensión V C (t) sobre el condensador al conectar la fuente de tensión V(t) en t = 0.” R C V(t) i(t) V C (t) + + S
9
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Datos del problema (en DATA20.DAT) DATOS_DEL_EJEMPLO_20_EN_EL_ARCHIVO_DATA20.DAT alimentacion(v)10 resistencia(ohms)10 capacitancia(farad)0.1 tension(v)5 frecuencia(h)1 inicio(%_de_TTFIN)0.2 fin(%_de_TTFIN)0.7 pulso_en_ON0.5 pulso_en_OFF 0.5 selector 4 “Este archivo de datos ha sido editado para esta lámina”
10
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Significado de los datos del problema alimentacion(v)Amplitud de la Tensión V(t) resistencia(ohms)Resistencia R capacitancia(farad)Capacitancia C tension(v)Tensión inicial en C (V C (0)) frecuencia(h)frecuencia de una onda senoidal inicio(%_de_TTFIN)inicio de pulso de alimentación fin(%_de_TTFIN)fin de pulso de alimentación pulso_en_ONduración de pulso en ON pulso_en_OFFduración de pulso en OFF selector selector de la señal de alimentación
11
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Selector de la señal de alimentación Los posibles valores para el selector de la señal de alimentación son los siguientes: 1.- Señal constante. V(t) = A 2.- Señal senoidal. V(t) = A*sin(2 ft) 3.- Pulso rectangular.V(t) = A si t i < t < t f A si t t ON 4.- Tren de pulsos rectangulares. V(t) = 0 si t t OFF {
12
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Definición de variables y funciones en C #include "vslam.h" #include void lectura (void); float Constante, amplitud, resistencia, capacitancia; float tinicial, int selector; float frecuencia, inicio, fin, pulso; int entero; float tiempo, inipulso, finpulso; ENTITY *pecur;
13
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Inicialización y lectura de datos (I) BOOL SWFUNC INTLC(UINT uiRun) { lectura ( ); //Calculo de valores iniciales XX[3] = inipulso; XX[4] = finpulso; Constante = resistencia*capacitancia; SS[1]=tinicial; return(TRUE); }
14
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Inicialización y lectura de datos (II) void lectura (void) { char etiqueta[100]; FILE *fp; fp=fopen("c:/projects/casos/data20.dat","r"); fscanf(fp,"%s ",etiqueta); fscanf(fp,"%s %f",etiqueta, &litud); fscanf(fp,"%s %f",etiqueta, &resistencia); fscanf(fp,"%s %f",etiqueta, &capacitancia); fscanf(fp,"%s %f",etiqueta, &tinicial); fscanf(fp,"%s %f",etiqueta, &frecuencia); fscanf(fp,"%s %f",etiqueta, &inicio); fscanf(fp,"%s %f",etiqueta, &fin); fscanf(fp,"%s %f",etiqueta, &inipulso); fscanf(fp,"%s %f",etiqueta, &finpulso); fscanf(fp,"%s %d",etiqueta, &selector); fclose(fp); return; }
15
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Ecuación de estado y función STATE void SWFUNC STATE (void) { DD[1]=(-SS[1]+USERF(selector,pecur))/Constante; XX[1]=SS[1]; XX[2]=capacitancia*DD[1]; return; }
16
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Función USERF double USERF (int IFN, ENTITY *pecur) { double retorno; switch (IFN) { case 1: //ALIMENTACION CONSTANTE retorno = amplitud; break; case 2: //ALIMENTACION SENOIDAL retorno = amplitud*sin(6.28*TNOW*frecuencia); break; ………..
17
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Función USERF (Cont.) ….. case 3: //ALIMENTACION CON UN PULSO RECTANGULAR if(TNOW >= (inicio*TTFIN) && TNOW < (fin*TTFIN)) retorno = amplitud; else retorno = 0; break; ………...
18
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Función USERF (Cont.) ……….. case 4: //ALIMENTACION CON UN TREN DE PULSOS RECTANGULARES pulso = XX[3]+XX[4]; entero = TNOW/pulso; tiempo = TNOW - pulso*entero; if(tiempo <= XX[3]) retorno = amplitud; if(tiempo > XX[3] && tiempo <= pulso) retorno = 0; break; } XX[0] = retorno; return (retorno); }
19
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Programa de control GEN,"RAFAEL DIAZ","CASO DE ESTUDIO N° 20",26/4/99,1,YES,YES; LIMITS,5; CONTINUOUS,1,-1,0.01,0.1,,WARNING; RECORD,1,,TNOW,"TIME",{AWESIM},,TTBEG,TTFIN,,{{XX[1],"TENSION EN EL CONDENSADOR",}, {XX[2],"CORRIENTE",},{XX[0],"SEÑAL DE ENTRADA",}}; INITIALIZE,0.0,10,YES; FIN; “Este programa ha sido editado para esta lámina”
20
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Resultados (selector = 1)
21
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Resultados (selector = 2)
22
Caso de Estudio N° 20: Circuito RC Serie RAD/99 Resultados (selector = 3) V C (0) = 5 -->
23
Caso de Estudio N° 20: Circuito RC Serie Resultados (selector = 4) RAD/99
24
Caso de Estudio N° 21: Otro circuito RC RAD/99 “Para el circuito de la figura se desea conocer la tensión V C (t). En t = t 0 se abre el interruptor S.” R1R1 C V(t) i(t) V C (t) + + S R2R2
25
RAD/99 Datos del problema (en DATA21.DAT) DATOS_DEL_EJEMPLO_21_EN_EL_ARCHIVO_DATA21.DAT alimentacion(v)1 resistencia1(ohms)1 resistencia2(ohms)2 capacitancia(farad)1 tension(v)0 tcambio(seg)2 frecuencia(h)1 inicio(%_de_TTFIN)0.1 fin(%_de_TTFIN)0.15 pulso_en_ON0.5 pulso_en_OFF0.5 selector3 “Este archivo de datos ha sido editado para esta lámina” Caso de Estudio N° 21: Otro circuito RC
26
RAD/99 Significado de los datos del problema alimentacion(v)Amplitud de la Tensión V(t) resistencia1(ohms)Resistencia R 1 resistencia2(ohms)Resistencia R 2 capacitancia(farad)Capacitancia C tension(v)Tensión inicial en C (V C (0)) tcambio(seg)Instante de abrir el interruptor S frecuencia(h)frecuencia de una onda senoidal inicio(%_de_TTFIN)inicio de pulso de alimentación fin(%_de_TTFIN)fin de pulso de alimentación pulso_en_ONduración de pulso en ON pulso_en_OFFduración de pulso en OFF selector selector de la señal de alimentación Caso de Estudio N° 21: Otro circuito RC
27
RAD/99 Selector de la señal de alimentación Los posibles valores para el selector de la señal de alimentación son los siguientes: 1.- Señal constante. V(t) = A 2.- Señal senoidal. V(t) = A*sin(2 ft) 3.- Pulso rectangular.V(t) = A si t i < t < t f A si t t ON 4.- Tren de pulsos rectangulares. V(t) = 0 si t t OFF { Caso de Estudio N° 21: Otro circuito RC
28
RAD/99 Definición de variables y funciones en C Caso de Estudio N° 21: Otro circuito RC #include "vslam.h" #include void lectura (void); float Constante1, Constante2, Constante3; float amplitud, resistencia1, resistencia2; float capacitancia, tinicial, tcambio; int selector; float frecuencia, inicio, fin, pulso; int entero; float tiempo, inipulso, finpulso; ENTITY *pecur;
29
RAD/99 Inicialización y lectura de datos (I) Caso de Estudio N° 21: Otro circuito RC BOOL SWFUNC INTLC(UINT uiRun) { lectura ( ); //Calculo de valores iniciales XX[3] = inipulso; XX[4] = finpulso; Constante1 = resistencia1*capacitancia; Constante2 = resistencia2*capacitancia; Constante3 = 1.+(resistencia1/resistencia2); SS[1]=tinicial; return(TRUE); }
30
RAD/99 Inicialización y lectura de datos (II) Caso de Estudio N° 21: Otro circuito RC void lectura (void) { char etiqueta[100]; FILE *fp; fp=fopen("c:/projects/casos/data21.dat","r"); fscanf(fp,"%s ",etiqueta); fscanf(fp,"%s %f",etiqueta, &litud); fscanf(fp,"%s %f",etiqueta, &resistencia1); fscanf(fp,"%s %f",etiqueta, &resistencia2); fscanf(fp,"%s %f",etiqueta, &capacitancia); fscanf(fp,"%s %f",etiqueta, &tinicial); fscanf(fp,"%s %f",etiqueta, &tcambio); fscanf(fp,"%s %f",etiqueta, &frecuencia); fscanf(fp,"%s %f",etiqueta, &inicio); fscanf(fp,"%s %f",etiqueta, &fin); fscanf(fp,"%s %f",etiqueta, &inipulso); fscanf(fp,"%s %f",etiqueta, &finpulso); fscanf(fp,"%s %d",etiqueta, &selector); fclose(fp); return; }
31
RAD/99 Ecuación de estado y función STATE Caso de Estudio N° 21: Otro circuito RC void SWFUNC STATE (void) { if(TNOW <= tcambio) DD[1]=(-SS[1]*Constante3+USERF(selector,pecur))/Constante1; else { DD[1] = (-SS[1])/Constante2; } XX[1]=SS[1]; XX[2]=capacitancia*DD[1]; return; }
32
RAD/99 Programa de control “Este programa ha sido editado para esta lámina” Caso de Estudio N° 21: Otro circuito RC GEN,"RAFAEL DIAZ","CASO DE ESTUDIO N° 21",3/5/99,1,YES,YES; LIMITS,5; CONTINUOUS,1,-1,0.01,0.1,,WARNING; RECORD,1,,TNOW,"TIME",{AWESIM},,TTBEG,TTFIN,,{{XX[1],"TENSION EN EL CONDENSADOR",}, {XX[2],"CORRIENTE",},{XX[0],"SEÑAL DE ENTRADA",}}; INITIALIZE,0.0,10,YES; FIN;
33
RAD/99 Caso de Estudio N° 21: Otro circuito RC Resultados (selector = 1)
34
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 “En un sistema de colas donde sólo hay espacio de espera para un usuario se desean conocer las probabilidades de N, número de usuarios en el sistema, en función del tiempo. Los posibles valores de N serán, entonces, 0, 1 y 2. El proceso de llegadas es Poisson y el tiempo de servicio sigue una distribución exponencial” SERVICIO COLA DE ESPERASALIDALLEGADAS ! MÁXIMO UN USUARIO !
35
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 “Los datos requeridos para este caso de estudio son las tasas de llegada y de servicio, T LL y T S, y los valores iniciales de las probabilidades.” Si p n (t) es la probabilidad de tener n usuarios en el sistema, las ecuaciones que rigen el comportamiento del mismo serán:
36
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Datos del problema (en DATA22.DAT) “Este archivo de datos ha sido editado para esta lámina” DATOS_DEL_EJEMPLO_22_EN_EL_ARCHIVO_DATA22.DAT tasa_de_llegadas 7 tasa_de_servicio 2.5 P0_INICIAL 1 P1_INICIAL 0 P2_INICIAL 0
37
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Definición de variables y funciones en C #include "vslam.h" #include void lectura (void); float Tllegadas; float Tservicio; float P0; float P1; float P2; float A[4][4];
38
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Inicialización y lectura de datos (I) BOOL SWFUNC INTLC(UINT uiRun) { lectura ( ); //Calculo de valores iniciales A[1][1] = -Tllegadas; A[1][2] = Tservicio; A[1][3] = 0; A[2][1] = Tllegadas; A[2][2] = -(Tllegadas+Tservicio); A[2][3] = Tservicio; A[3][1] = 0; A[3][2] = Tllegadas; A[3][3] = -Tservicio; SS[1]=P0; SS[2]=P1; SS[3]=P2; return(TRUE); }
39
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Inicialización y lectura de datos (II) void lectura (void) { char etiqueta[100], car; FILE *fp; fp=fopen("c:/projects/casos/data22.dat","r"); fscanf(fp,"%s ",etiqueta); fscanf(fp,"%s %f",etiqueta, &Tllegadas); fscanf(fp,"%s %f",etiqueta, &Tservicio); fscanf(fp,"%s %f",etiqueta, &P0); fscanf(fp,"%s %f",etiqueta, &P1); fscanf(fp,"%s %f",etiqueta, &P2); fclose(fp); return; }
40
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Ecuación de estado y función STATE void SWFUNC STATE (void) { int fila, columna; for(fila = 1; fila<= 3;fila++) { XX[fila] = 0; for(columna = 1; columna<= 3;columna++) { XX[fila] = XX[fila]+A[fila][columna]*SS[columna]; } DD[fila] = XX[fila]; } return; }
41
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Programa de control “Este programa ha sido editado para esta lámina” GEN,"RAFAEL DIAZ","CASO DE ESTUDIO N° 22",3/5/99,1,YES,YES; LIMITS,5; CONTINUOUS,3,-1,0.001,0.01,,WARNING; RECORD,1,,TNOW,"TIME",{AWESIM},,TTBEG,TTFIN,,{{SS[1],"PROB DEL ESTADO CERO",}, {SS[2],"PROB DEL ESTADO UNO",}, {SS[3],"PROB DEL ESTADO DOS",}}; INITIALIZE,0.0,2,YES; FIN;
42
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 2.8)
43
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 2.8)
44
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 2.8)
45
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 0.5)
46
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 0.5)
47
Caso de Estudio N° 22: Cambios de estado en un sistema M/M/1/1 RAD/99 Resultados ( = 0.5)
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.