Sistemas – Invarianza en el tiempo

Referencia: Oppenheim 1.6.5 p50/pdf78, Lathi 1.7-2 pdf76, Schaum/Hsu p18

Si el comportamiento de un sistema y las características del mismo están fijos en el tiempo, se los llama invariantes en el tiempo.

Por ejemplo, para un circuito RC, los valores de la resistencia y capacitor fijos no varian si se realiza un experimento o medición hoy o mañana.

Expresando lo mismo como:
Un sistema es invariante en el tiempo si aun corrimiento de tiempo en la señal de entrada ocasiona un corrimiento en el tiempo en la señal de salida.

y(t) = x(t)
y(t-t0) = x(t-t0)

Ejemplo 1

Referencia: Oppenheim 1.14 p51/pdf78

Para muestra de lo indicado, considere un sistema definido como:

y(t) = \sin(x(t)) \text{, siendo x(t)=t} y(t-t_0) = \sin(x(t - t_0))

Por otro lado, si la respuesta de la señal se modifica en el tiempo, el sistema será VARIANTE en el tiempo:

Ejemplo 2

Referencia: Oppenheim 1.14 p51/pdf78. Schaum ejercicio 1.39 p48

Considere el sistema:

y(t) = x(2t)

que tiene escalamiento en el tiempo. y(t) es una versión comprimida de x(t). Los corrimientos/desplazamientos en el tiempo también serán comprimidos por un factor de 2, por lo que por ésta razón el sistema no es invariante en el tiempo.

Siguiendo las indicaciones en el problema presentado en Schaum, donde T se conoce como el «operador lineal«:

El sistema tiene una relación de entrada-salida dada por:

y(t) = T{x(t)} = x(2t)

y t0 es un desplazamiento en el tiempo.

Sea y2(t) la respuesta a x2(t) = x(t-t0) entonces:

y2(t) = T{x2(t)} = x2(2t) = x(2t-t0)

y(t-t0) = x(2(t-t0))

y(t-t0) ≠ y2(t), por lo que el sistema no es invariante en el tiempo. 
El sistema x(2t) se conoce como compresor, pues crea una secuencia de salida cada 2 valores de la secuencia de entrada.

Ejemplo 2

Referencia: Schaum/HSU ejercicio 1.38 p47

Desarrollar semejante al ejercicio anterior, en forma analítica y usando Python.

x(t) = t^2 y(t) = t x(t)

sist_invariatiempo02


Desarrollo en Python

Ejemplo 01

# Sistemas – Invariantes en el tiempo
# Oppenheim 1.14 p51/pdf78
import numpy as np

# INGRESO
a = 0; b = 2*np.pi ; dt=0.1
t0 = 1

xt = lambda t: t
yt = lambda t: np.sin(xt(t))

# PROCEDIMIENTO
t = np.arange(a,b,dt)

x1 = xt(t)
y1 = yt(t)


# Corrimiento en la entrada
t2x = t + t0
x2 = x1
# efecto en salida
t2y = t + t0
y2 = y1

# evaluación de tiempos desplazados
y3 = yt(t-t0)

# SALIDA - GRAFICA
import matplotlib.pyplot as plt
plt.figure(1)

plt.plot(t,y1, label='y1(t)')
plt.plot(t2y,y2, 'm.', label='y2(t)')
plt.plot(t,y3, label='y1(t-t0)')

plt.xlabel('t')
plt.legend()
plt.show()

Ejemplo 02

# Sistemas – Invariantes en el tiempo
# Oppenheim 1.16 p52/pdf80
import numpy as np

# INGRESO
a = -5; b = 5 ; dt=0.1
t0 = 2

u = lambda t: np.piecewise(t,t>=0,[1,0])
xt = lambda t: u(t+2)-u(t-2)
yt = lambda t: xt(2*t)

# PROCEDIMIENTO
t = np.arange(a,b,dt)

x1 = xt(t)
y1 = yt(t)

# Corrimiento en la entrada
t2x = t + t0
x2 = x1
# efecto compresor en salida
t2y = t + t0/2
y2 = y1

# evaluación de tiempos desplazados
x3 = xt(t-t0)
y3 = yt(t-t0)

# SALIDA - GRAFICA
import matplotlib.pyplot as plt
plt.figure(1)
plt.subplot(311)
plt.xlim([min(t),max(t)])
plt.plot(t,x1, label='x1(t)')
plt.plot(t,y1, label='y1(t)')
plt.legend()

plt.subplot(312)
plt.xlim([min(t),max(t)])
plt.plot(t2x,x2, label='x2(t)=x1(t-t0)')
plt.plot(t2y,y2, label='y2(t)')
plt.legend()

plt.subplot(313)
plt.xlim([min(t),max(t)])
plt.plot(t,y3,color ='orange', label='y1(t-t0)')
plt.xlabel('t')
plt.legend()
plt.show()