Problema 3.3#
Usando la técnica de la transformada de Laplace, encontrar las respuestas transitoria y estacionaria del sistema descrito por la ecuación diferencial siguiente:
con las condiciones iniciales \(y (0) = y' (0) = 1\).
Solución
La transformada de una derivada de una función y de la derivada segunda es:
Realizando la transformada de Laplace a la ecuación diferencial a resolver y considerando las condiciones iniciales se obtiene:
Despejando \(\bar{y}\):
Para poder realizar la transformada inversa de Laplace y poder obtener y(t) hay que realizar primero la descomposición en fracciones simples de \(\bar{y} (s)\):
Sumando las fracciones simples y simplificando el denominador se obtiene la siguiente ecuación:
Operando se obtiene el sistema de ecuaciones siguiente:
La solución de este sistema es \(A = \frac{1}{2}\), \(B = 2\) y \(C = - \frac{3}{2}\). Por tanto,
Realizando la transformada inversa de Laplace, consultando las tablas, se obtiene:
donde \(U (t)\) es el escalón unidad.
La parte estacionaria de \(y (t)\) es \(\frac{1}{2} U (t)\) ya que:
El resto de la solución es la respuesta transitoria, es decir, la parte de la solución dependiente del tiempo.
Resolución con Sympy
En primer lugar, cargaremos la librería y definiremos las variables \(s\) y \(t\). Como es habitual, especificaremos que el tiempo es una variable real. Además, definiremos \(y\) como una función, ya que \(y(t)\) será nuestra función incógnita:
using SymPy
#init_printing()
t = symbols("t", real=True)
s = symbols("s")
y = SymFunction("y")
El siguiente paso es definir las condiciones iniciales, \(y(0) = 1\) y \(\frac{\mathrm{d} y(0)}{\mathrm{d} t} = 1\). Observad la sintaxis:
# ic = {y(0):1, diff(y(t), t).subs(t, 0):1}
ic = ((y, 0, 1), (y', 0, 1))
ic
((y, 0, 1), (y', 0, 1))
Para reducir errores es conveniente definir la ecuación diferencial y la llamaremos deq
. Para definir una ecuación en Sympy se utiliza la función Eq(lhs, rhs)
donde lhs
indica la parte derecha de la igualdad y rhs
la parte derecha:
deq = Eq(y''(t) + 3y'(t) +2y(t), 1)
deq
Ya estamos en condiciones de resolver la ecuación diferencial mediante la instrucción dsolve()
, que utiliza internamente la transformada inversa de Laplace. La solución de la ecuación la guardamos en la variable sol
:
sol = dsolve(deq, y(t), ics=ic)
sol
El resultado es una igualdad, en el caso de que nos interese la parte derecha:
sol.rhs
Si es la parte izquierda:
sol.lhs
Para encontar la respuesta estacionaria hay que calcular el límite cuando el tiempo tiende a infinito, ya que entonces habrá desaparecido la influencia de la respuesta transitoria:
limit(sol.rhs, t, oo)