Introducción al análisis de la dinámica de sistemas#
Ejemplos prácticos#
Péndulo simple#
Considere el péndulo simple mostrado en la siguiente figura
Fig. 1 Diagrama de péndulo simple sin fuerza externa.#
donde \(l\) denota la longitud de la barra, y \(m\) la masa de la bola. Asuma que la barra es rígida y de masa despreciable. Suponga entonces, \(\theta\) como el ángulo entre la barra y el eje vertical a través del pivote. Además, el péndulo se mueve libremente sobre un plano vertical formando un círculo de radio \(l\). Para obtener la ecuación que describe el movimiento del péndulo es necesario identificar las fuerzas que interactúan sobre la bola o bien, utilizar el enfoque de Euler-Lagrange.
Modelado a partir de leyes físicas#
En un sistema mecánico de tipo rotacional, las leyes físicas que rigen el sistema están dadas por la Segunda ley de Newton, donde las fuerzas positivas están dadas hacia la derecha mientras que las negativas hacia el lado contrario. Si realizamos un diagrama de cuerpo libre para observar las fuerzas que interactúan con la masa como se muestra a continuación
Fig. 2 Diagrama de cuerpo libre de la masa en el péndulo simple.#
Podemos observar que hay una fuerza gravitacional \(mg\), donde \(g\) es la aceleración de la gravedad. Así mismo, existe una fuerza de tensión \(\vec{T}\) con componentes \(T_{x}\) y \(T_{y}\).
Podemos observar que la única fuerza que interactúa en \(x\) es \(T_{x}\). Recordando que esta tensión tiene una fuerza negativa, por lo tanto la definimos como sigue
donde \(T\) denota la magnitud de la tensión y \(\ddot{x}:=\frac{\mathrm{d}^{2}x}{\mathrm{d}t^{2}}\).
Para el análisis de las fuerzas que interactúan en el eje \(y\), tenemos
Observamos entonces que tenemos mas variables que ecuaciones. Por ello, vamos a relizar el siguiente despeje
Sustituyendo (3) en (2), tenemos
Simplificamos la expresión obtenida multiplicando ambos lados de la igualdad por el término \(\sin(\theta)\) y resulta
Observando el diagrama de la Fig. 1, tenemos que la posición de la masa está dada por sus componentes \(x\) e \(y\) dentro de un plano cartesiano. Así mismo, tenemos que \(l\) y \(\theta\) están en un sistema de coordenadas polares. Por lo tanto, podemos utilizar la relación que hay entre estos sistemas para establecer las siguientes relaciones
Puesto que necesitamos la aceleración a lo largo del eje \(x\) e \(y\), derivamos la expresión dada en la (6) recordando la regla de la cadena
Suponiendo que hay una fuerza proporcional a la velocidad de la masa con un coeficiente \(k_{f}\) que resiste el movimiento, el modelo de péndulo simple con fuerza de fricción queda dado por la siguiente ecuación
Por lo tanto, la dinámica del péndulo simple con y sin fricción están dadas por ecuaciones diferenciales de segundo orden. Para resolver las Ecs. (10) y (11) realizamos un cambio de variable y definimos como variables de estado \(x_{1} = \theta\) y \(x_{1} = \dot{\theta}\). Por consiguiente, el sistema queda representado como sigue
Una variante del sistema de péndulo simple se puede obtener agregando una entrada exógena \(\tau\)
Modelado a partir del enfoque Euler-Lagrange#
Cualquier sistema debe satisfacer las ecuaciones de Lagrange dadas por
donde \(\mathcal{L}\) es el Lagrangiano del sistema y se define como sigue
Además
\(U\), representa la coenergía total en las reservas de flujo del sistema expresada como una función de las coordenadas de esfuerzo generalizado.
\(T\), la energía total en los almacenes de esfuerzo del sistema expresada como una función de las coordenadas de acumulación de esfuerzo generalizadas.
\(J\), el co-contenido total en los disipadores del sistema expresado como una función de las coordenadas de esfuerzo generalizado.
\(q\), el vector de coordenadas generalizadas definida como el conjunto de coordenadas linealmente independientes que definen la configuración del sistema.
Para un sistema mecánico no conservativo, las ecuaciones de Lagrange están dadas como sigue
donde \(\tau_{j}\) denota las fuerzas generalizadas.
Hint
En este contexto conservativo significa libre de disipación y entradas de fuerzas externas.
El sistema mostrado en la Fig. 1, sólo posee un grado de libertad denotado como \(\theta\). Entonces, definimos las siguientes coordenadas generalizadas
Además, definimos como fuerza generalizada la variable \(u\), i.e.
Ahora bien, podemos representar la Ec. (6) en forma vectorial como sigue
y el vector de velocidad (7) como sigue
La energía co-cinética del sistema está dada por
mientras que la energía potencial del sistema por
donde \(\vec{g} = \begin{bmatrix} 0 & g \end{bmatrix}^{T}\), con \(g \in \mathbb{R}^{2}\).
Sustituyendo (16) en (17), tenemos
Ahora, sustituyendo (15) en (18)
Entonces, el Lagrangiano del sistema se define como sigue
Obtenemos las derivadas parciales
Sustituyendo, (19)-(21) en (14) y considerando que \(\tau=0\) tenemos
Diodo tunel#
El circuito de diodo tunel se muestra en la siguiente figura
Fig. 3 Diodo túnel.#
donde la relación constitutiva que caracteriza el tunel diodo está dada por \(i_{R} = h(v_{R})\). Los elementos almacenadores de energía son el inductor \(L\) y el capacitor \(C\). Asumiendo que estos elementos son lineales e invariantes en el tiempo, podemos llegar a representar este sistema a partir del siguiente modelo
donde \(v\) e \(i\) denotan el voltaje y corriente a través de un elemento. Además, el sub índice especifica el elemento.
Las ecuaciones del circuito de diodo tunel se pueden representar en forma de espacio-estados si consideramos \(u=E\) como una entrada constante, \(x_{1} = v_{C}\) (tensión en el capacitor) y \(x_{2} = i_{L}\) (corriente en el inductor).
Utilizando las Leyes de Kirchhoff y expresando \(i_{C}\) como una función de las variables de estado \(x_{1}\), \(x_{2}\) y la entrada \(u\), tenemos lo siguiente
por consiguiente
Del mismo modo, expresamos \(v_{L}\) como una función de las variables \(x_{1}\), \(x_{2}\), \(u\) y utilizamos las Leyes de Kirchhoff como sigue
donde \(v_{L} = -x_{1} - Rx_{2} + u\).
Reescribiendo las ecuaciones del sistema (22), tenemos
Circuito R-C#
La relación que establece el flujo electromagnético \(\phi\) y la corriente \(i\) que lo produce está dada por la siguiente ecuación
donde \(L\) es una constante que depende de los factores geométricos y de entorno llamada inductancia.
Los cambios de flujo electromagnético originan potenciales eléctricos relacionados por la Ley de Faraday
donde \(u_{L}\) denota el voltaje en las terminales de la inductancia a razón del cambio de flujo. Por consiguiente, la Ley de Faraday se puede expresar como sigue
En elementos resistivos el voltaje \(u_{R}\) entre el componente y la corriente \(i\) que circula por él obedecen a la Ley de Ohm dada como siguiente
donde \(R\) es una constante que depende del componente denominado resistencia.
El voltaje \(u_{C}\) entre las terminales de una capacitancia y la carga \(q\) siguen la siguiente relación
donde \(C\) es una constante que depende de la geometría y el entorno denominada capacitancia. Si consideramos que la corriente se define como una variación temporal de carga
entonces \(u_{C}\) se expresa en los siguientes términos
Considere el circuito mostrado en la Fig. 4
Aplicando la Ley de tensiones de Kirchhoff, obtenemos
Sustituyendo (24) y (25) en (26), tenemos
expresado la ecuación anterior en términos de la carga \(Q\), tenemos la siguiente expresión
Aplicando la Ley de corrientes de Kirchhoff, obtenemos
dado que el voltaje entre los componentes eléctricos es el mismo y lo denotamos por \(u\), tenemos
Considerando el modelo dado en la Ec. (27) y tomando \(V\) como la carga en el capacitor dividida por la capacitancia \(V := \frac{Q}{C}\) y \(\dot{V}:= \frac{\dot{Q}}{C}\), sustituyendo tenemos
Entonces, el modelo del circuito RC mostrado en la Fig. 4 está dado por la siguiente ecuación
Fig. 4 Modelo de circuito R-C.#
Sistema masa-resorte#
Considere una masa \(m\) que se desliza sobre una superficie horizontal y que se encuentra sujeta a una superficie vertical a través de un resorte con constante de fuerza \(k\) como se muestra en la siguiente figura.
Fig. 5 Diagrama del sistema masa-resorte.#
Si definimos \(x\) como el desplazamiento desde el punto de referencia \(x_{0}\); asumimos que la masa se desplaza sin fricción y aplicamos la Segunda ley de Newton así como la Ley de Hooke obtenemos
Dado que la aceleración \(a\) está definida como \(\ddot{x}\) y que la fuerza \(F_{x}\) está a nuestra disposición, sustituimos en la ecuación anterior para obtener el modelo del sistema masa-resorte como sigue
Para un desplazamiento largo, la fuerza restauradora (\(kx\)) podría depender de manera no lineal de \(x\), por ejemplo, expresada por la siguiente función
representa al modelo llamado softening spring, donde un gran incremento de desplazamiento produce un incremento pequeño de fuerza.
Por otro lado, si tenemos la siguiente función
es posible obtener el modelo llamado hardening spring donde un incremento pequeño de desplazamiento produce un gran incremento de fuerza.
Modelado a partir del enfoque Euler-Lagrange#
En este caso, vamos a tratar de obtener el modelo dinámico del sistema masa-resorte utilizando las ecuaciones de Euler-Lagrange. Para ello, definimos la siguiente coordenada generalizada
Expresamos las energías en función de la coordenada generalizada para obtener el Lagrangiano del sistema. Donde, la energía potencial del sistema se obtiene a partir de la siguiente relación
Sustituyendo la Ley de Hooke en (29), tenemos
mientras que la co-energía cinética está dada como sigue
Por consiguiente, el Lagrangiano del sistema se define como sigue
Calculando las ecuaciones de Lagrange (14) a partir de la ecuación (30), obtenemos
Finalmente, sustituimos las Ecs. (31), (32) en la Ec. (14)
Sistema masa-resorte-amortiguador#
Considere el sistema masa-resorte-amortiguador mostrado en la siguiente Figura.
Fig. 6 Sistema masa-resorte-amortiguador.#
Dicho sistema consiste en una masa \(m\) sujeta a un elemento de amortiguamiento con constante de viscosidad \(b\) y un resorte con rigidez \(k\). Podemos observar que el sistema se desplaza sobre un plano horizontal a partir de una fuerza \(F_{x}\) aplicada.
Podemos partir del modelo dado en la Ec. (28) y modelando el amortiguador con la relación dada a continuación
donde \(b\) denota el coeficiente de fricción viscosa, tenemos
De manera análoga, podemos obtener aplicar las ecuaciones de Lagrange (14) considerando que existe una fuerza de fricción viscosa como sigue
Índices de error#
Criterios integrales#
Integral del error absoluto (IAE)#
donde
Fácil aplicación
No se pueden optimizar sistemas altamente sub ni altamente sobre amortiguados
Difícil de evaluar analíticamente
def IAE(y,yg,dt):
return np.trapz(np.abs(y-yg))*dt
Integral del tiempo por el error absoluto (ITAE)#
Los errores tardíos son más castigados
Buena selectividad
Difícil de evaluar analíticamente
def ITAE(y,yg,t,dt):
return np.trapz(t*np.abs(y-yg))*dt
Integral del error cuadrático (ISE)#
Da mayor importancia a los errores grandes
No es un criterio muy selectivo
Respuesta rápida pero oscilatoria, estabilidad pobre
def ISE(y,yg,dt):
return np.trapz(np.abs(y-yg)**2)*dt
Integral del tiempo por el error cuadrático (ITSE)#
Los grandes errores iniciales tienen poco peso pero los que se producen más tarde son fuertemente penados
Mejor selectividad con respecto al ISE
def ITSE(y,yg,t,dt):
return np.trapz(t*(y-yg)**2)*dt
Criterios estadísticos#
Mean Square Error#
No recomendable para estudiar modelos de predicción
No tiene escala original el error porque está elevado al cuadrado
No se mide en unidades de los datos experimentales
def MSE(y,yg):
e = y - yg
return np.mean(e**2)
Root Mean Square Error#
Sensible a valores atípicos
No se ajusta a la demanda (¿qué es demanda?)
Se mide en unidades de los datos experimentales
def RMSE(y,yg):
return np.sqrt(MSE(y,yg))
Mean Absolute Error#
Mide la precisión de los datos simulados
Se mide en unidades de los datos experimentales
No es sensible a valores atípicos
Utilizado para analizar series temporales
def MAE(y,yg):
return np.mean(np.abs(y-yg))
Mean Absolute Percentage Error#
Mide el error en porcentajes
Indicador de desempeño
Fácil interpretación
Ampliamente utilizado para evaluar modelos de predicción
Tabla de MAPE
Si \(\text{MAPE}<10\), entonces el modelo es altamente preciso
Si \(10<\text{MAPE}<20\), entonces el modelo es bueno
Si \(20<\text{MAPE}<50\), entonces el modelo es razonable
Si \(\text{MAPE}>50\), entonces el modelo es impreciso
FIT#
Obtiene el porcentaje de variación de salida que es explicado por un modelo
Métodos numéricos#
Método de Euler#
Sea \(\phi(x)\) la solución exacta de la ecuación diferencial
con condición iniciales
donde \(\phi(x)\) satisface la relación
La solución de una ecuación diferencial vía numérica es una solución aproximada del valor de la solución \(\phi(x)\) en un conjunto finito de puntos. Es decir, \(\phi(x_{n}):y_{n}\approx \phi(x_{n})\).
Es común elegir los puntos \(x_{n}\) de forma equiespaciada, esto es \(h = x_{n+1} - x_{n}\). En este caso, \(x_{n} = x_{0} + nh\) donde \(h\) es el tamaño del paso.
Integramos la relación dada en la ecuación anterior entre \(x_{0}\) y \(x_{1}\)
o bien
Recordando que \(\phi(x_{0}) = y_{0}\), entonces
podemos hallar el valor de \(\phi(x_{1})\) evaluando la integral anterior.
El método de Euler estima esta integral mediante la regla del rectángulo
Es decir, aproxima el área que hay bajo la curva \(f(x,\phi(x))\) entre \(x_{1}\) y \(x_{0}\) por el área del rectángulo de ancho \((x_{1}-x_{0})\) con altura igual a la ordenada de la curva en su extremo izquierdo \(f(x_{0},y_{0})\)
Para estimar el valor de \(\phi(x)\) en el siguiente punto \(x_{2}\), integramos entre \(x_{1}\) y \(x_{2}\), i.e.
Aproximando la integral mediante la regla del rectángulo se tiene
Dado que \(\phi(x_{1})\) es desconocido, entonces lo aproximamos por \(y_{1}\) como sigue
o bien
Estimando \(\phi(x_{2})\) por \(y_{2}\), entonces cualquier estimación \(y_{n+1}\) de \(\phi(x_{n+1})\) puede hacerse por el método de Euler de acuerdo con la siguiente expresión
Método de Runge-Kutta#
Sirve para buscar aproximaciones a la solución en puntos intermedios del intervalo \([x_{n},x_{n+1}]\) con una combinación lineal de los valores de la derivada en varias aproximaciones para obtener un valor de \(y_{n+1}\).
Sea la ecuación diferencial
y sea
Para evaluar \(y(x_{n+1})\) conociendo el valor \(y_{n}\) y además \(0 \leq \alpha_{1} \leq \alpha_{2} \cdots \leq \alpha_{r} \leq 1\), de modo que \(\sum_{n=1}^{r}\gamma_{n} = 1\), el método de Runge-Kutta evalúa \(y_{n+1}\) como sigue
donde
Los métodos de Runge-Kutta se clasifican en:
Explícitos. Cuando los valores de \(k_{n}\) pueden ser evaluados en función de \(k_{1},k_{2},\dots,k_{n-1}\).
Implícitos. Cuando lo anterior no es posible.
Además, en los métodos explícitos se satisface la siguiente restricción
Mientras que para los implícitos se resuelve en cada paso un sistema de ecuaciones de la forma
El méto de Runge-Kutta de 4to orden es el más utilizado y evalúa la función \(f(x,y)\) en los puntos \(x_{n}\), \(x_{n}+\frac{h}{2}\) y \(x_{n} + h\) de la forma
con
Eligiendo arbitrariamente \(\alpha_{2}=\alpha_{3}=\frac{1}{3}\) y hallando el resto de los coeficientes mediante un sistema algebráico de 11 ecuaciones, tenemos
Tendríamos entonces
con