Transformada de Fourier
La transformada de Fourier, denominada así por Joseph Fourier, es una transformación matemática empleada para transformar señales entre el dominio del tiempo (o espacial) y el dominio de la frecuencia, que tiene muchas aplicaciones en la física y la ingeniería.
La transformada de Fourier es la generalizacion de la serie de Fourier para señales no periodicas, osea señales de energia finita, la representacion en frecuencia (Espectro de frecuencia) sera continuo osea que las exponenciales complejas estaran infinitesimalmente cercanas en frecuencia.
Para obtener la Transformada de Fourier a partir de las series de Fourier, se define que una señal aperiodica es una señal periodica pero con periodo tendiendo a infinito $(T \rightarrow \infty)$
En las series de Fourier se puede ver que si se aumenta el periodo $(T)$ las componentes se hacen mas cercanas en frecuencia, basandonos en la relacion del periodo y la frecuencia angular $ \omega = \frac{2 \pi}{T}$, si se aumenta $T$ la frecuencia se vuleve mas pequeña, entonces las componentes de frecuencia se hacen mas cercanas.
Demostracion de la Tranformada de Fourier para señales Aperiodicas
$$ \widetilde{x}(t)= \sum_{k = - \infty}^{+ \infty}a_k e^{j k \omega_0 t} \ a_k = \frac{1}{T}\int_{-T_1}^{T_1} \widetilde{x}(t)e^{-j k \omega_0 t} \mathbb{d}t $$
$$ x(t) = \widetilde{x}(t) \qquad \forall : t \in [-T_1,T_1] \rightarrow $$ $$ a_k = \frac{1}{T}\int_{-T_1}^{T_1} x(t)e^{-j k \omega_0 t} \mathbb{d}t = \frac{1}{T}\int_{-\infty}^{\infty} x(t)e^{-j k \omega_0 t} \mathbb{d}t $$
Definiendo la envolvente $ X(j\omega) = T a_k$ entonces
$$ X(j\omega) = \int_{-\infty}^{\infty} x(t)e^{-j \omega t} \mathbb{d}t \ \quad\ a_k = \frac{X(jk\omega_0)}{T} $$
combinando
$$ \widetilde{x}(t)= \sum_{k = - \infty}^{+ \infty} \frac{X(jk\omega_0)}{T} e^{j k \omega_0 t} $$ $$ \omega_0 = \frac{2 \pi}{T} \ \widetilde{x}(t)= \frac{1}{2 \pi}\sum_{k = - \infty}^{+ \infty}X(jk\omega_0) e^{j k \omega_0 t}\omega_0 $$ Si $ : T \rightarrow \infty :$ entonces $ : \widetilde{x}(t) \Rightarrow x(t) :$ entonces $ \omega_0 \Rightarrow 0$
Por lo tanto $ \widetilde{x}(t)$ converge en una integral obteniendo la Transformada Inversa de Fourier, $x(t) = \mathcal{F}^{-1} { X(j \omega) }$:
$$ \boxed{x(t) = \frac{1}{2 \pi} \int_{-\infty}^{\infty} X(j \omega) , e^{j \omega t} ; \mathbb{d}\omega} \ $$ Transformada de Fourier $X(j \omega) = \mathcal{F} { x(t) }$ $$ \boxed{X(j \omega) = \int_{-\infty}^{+ \infty} x(t) , e^{-j \omega t} ; \mathbb{d}t} $$
Donde $ X(j \omega)$ es el Espectro de Frecuencia de $ x(t)$
Ejemplos de Tranformadas de Fourier
# Importar librerias basicas
import numpy as np
import matplotlib.pyplot as plt
import sympy as sym
%matplotlib inline
plt.style.use('bmh') # estilo de las graficas
from IPython.display import Latex # para visualizar ecuaciones en jupyter
sym.init_printing()
t, w = sym.symbols('t omega', real=True)
def fourier_transform(x):
return sym.transforms._fourier_transform(x, t, w, 1, -1, 'Fourier')
T. Fourier Impulso de Dirac
La transformación $\mathcal{F} { \delta(t) }$ del impulso de Dirac se deriva al introducir $\delta(t)$ en La definición de la transformada de Fourier y la explotación de la propiedad de integracion de la función delta de Dirac.
$$ \mathcal{F} { \delta(t) } = \int_{-\infty}^{\infty} \delta(t) , e^{-j \omega t} dt = 1 $$
Utilizando el Modulo sympy
se puede evaluar la integral o calcular la transformada de fourier de delta
t, w = sym.symbols('t omega', real=True)
X = sym.integrate(sym.DiracDelta(t)*sym.exp(-sym.I*w*t), (t, -sym.oo, sym.oo))
t, w = sym.symbols('t omega', real=True)
X = sym.integrate(sym.DiracDelta(t)*sym.exp(-sym.I*w*t), (t, -sym.oo, sym.oo))
X
$\displaystyle 1$
X = fourier_transform(sym.DiracDelta(t))
X = fourier_transform(sym.DiracDelta(t))
X
$\displaystyle 1$
Lo que me indica que el espectro de frecuencia de un impulso de Dirac esta en todas las frecuencias con un valor de 1.
T. Fourier Exponencial decreciente
$ x(t) = e^{-at} \mu (t)$
para $a = 1$
a = sym.exp(-t)*sym.Heaviside(t)
sym.plot(a, (t, -1, 6), xlabel=r'$t$', ylabel=r'$x(t)$');
XW = fourier_transform(sym.exp(-t)*sym.Heaviside(t))
XW
$\displaystyle \frac{1}{i \omega + 1}$
sym.plot(sym.Abs(XW), (w, -30, 30), xlabel=r'$\omega$', ylabel=r'$|X(j\omega)|$');
sym.plot(sym.arg(XW), (w, -30, 30), xlabel=r'$\omega$', ylabel=r'$\angle X(j\omega)$');
T. Fourier de un Pulso Rectangular
La transformación de Fourier $ \mathcal{F} {\text{rect}(t) }$ de la señal rectangular se obtiene mediante la evaluación explícita de la definición. $$ \begin{equation} \mathcal{F} { \text{rect}(t) } = \int_{-\infty}^{\infty} \text{rect}(t) , e^{-j \omega t} ; dt = \int_{- \frac{1}{2}}^{\frac{1}{2}} e^{-j \omega t} ; dt = \frac{\sin(\frac{\omega}{2})}{\frac{\omega}{2}} \end{equation} $$
El resultado se abrevia comúnmente en términos de función sinc
$$ \begin{equation} \text{sinc}(x) = \begin{cases} \frac{sin(x)}{x} & \text{for } x \neq 0 \ 1 & \text{for } x = 0 \end{cases} \end{equation} $$
Tenga en cuenta que el valor en $x = 0$ se ha obtenido aplicando la regla de L’Hôpital a $\frac{ sin(x)}{x}$. La función sinc es una función importante en el procesamiento de señales (digitales) y la ingeniería de comunicaciones. Muestra las siguientes propiedades:
- Su valor máximo es uno en $x = 0$
- Su amplitud decae con $\frac{1}{| x |}$
- Sus ceros se encuentran en $ x_0 = n \cdot \pi $ para $ n \in \mathcal{Z} \setminus {0 } $
- $\int_{-\infty}^{\infty} \text{sinc}(t) ; dt = \pi$
class rect(sym.Function):
@classmethod
def eval(cls, arg):
return sym.Heaviside(arg + sym.S.Half) - sym.Heaviside(arg - sym.S.Half)
print("Ancho del pulso desde cero = 0.5")
display(Latex('$x(t) = \mu (t+0.5) - \mu (t-0.5)$'))
sym.plot(rect(t), (t, -3, 3), xlabel=r'$t$', ylabel=r'$x(t)$');
Ancho del pulso desde cero = 0.5
$x(t) = \mu (t+0.5) - \mu (t-0.5)$
print('La transformada de Fourier de x(t) sera:')
XW = fourier_transform(rect(t))
XW
La transformada de Fourier de x(t) sera:
$\displaystyle \frac{2 \sin{\left(\frac{\omega}{2} \right)}}{\omega}$
Como la trasnformada de Fourier es solo Real entonces no es necesario graficar la Magnitud y la Fase por separado
sym.plot(XW, (w, -30, 30), xlabel=r'$\omega$', ylabel=r'sinc($\omega / 2$)');
El espectro de frecuencia de La señal pulso rectangular es va desde $-\infty$ Hasta $+\infty$ lo que indica que presenta fenomeno de Gibbs
De forma General la transformada de Fourier de un Pulso Rectangular en el tiempo que este centrada en cero y el valor del ancho desde cero sea $T_1$ sera: $$ X(j \omega) = \frac{2 \sin(\omega T_1)}{\omega}$$
T. Inversa de Fourier de una señal Sinc(x)
def inverse_fourier_transform(X):
return sym.transforms._fourier_transform(X, w, t, 1/(2*sym.pi), 1, 'Inverse Fourier')
t, w = sym.symbols('t omega')
display(Latex(r'$X(j \omega) = \frac{2 \sin (\frac{\omega}{2})}{\omega}$'))
XW = sym.sinc(w/2)
sym.plot(XW, (w, -30, 30), xlabel=r'$\omega$', ylabel=r'sinc($\omega / 2$)');
$X(j \omega) = \frac{2 \sin (\frac{\omega}{2})}{\omega}$
x = inverse_fourier_transform(XW)
x
sym.plot(x, (t,-1,1), ylabel=r'$x(t)$');
Convergencia
Para que exista la transformada de fourier se debe cumplir que:
- $ x(t)$ sea absolutamente integrable $$ \int_{-\infty}^{\infty} | x(t) | ; dt < \infty $$
- $ x(t)$ debe tener un numero finito de intervalos en cualquier intervalo finito de la señal
- $ x(t)$ debe tener un numero finito de discontinuidades en cualquier intervalo finito de la señal
Transformada de Fourier para Señales Periodicas
Para obtener la transformada de Fourier para una señal periodica y obtener un resultado general se supone $ X(j \omega) = \mathcal{F} { x(t) }$, donde $ X(j \omega)$ es la representacion en frecuencia de $ x(t)$.
Supongamos que el espectro de $ x(t)$ consiste en un solo impulso de area = $ 2 \pi$ en $ \omega = \omega_0$ $$ X(j \omega) = 2 \pi \delta(\omega - \omega_0) \qquad \rightarrow \ x(t) = \frac{1}{2 \pi}\int_{- \infty}^{ \infty} ( 2 \pi \delta(\omega - \omega_0))e^{j \omega t} \mathbb{d}\omega \ x(t) = e^{j \omega_0 t} $$ De forma general si suponemos: $$ X(j \omega) = \sum_{k= -\infty}^{\infty} 2 \pi : a_k :\delta(\omega - \omega_0) \quad \rightarrow \ $$
$$ x(t) = \frac{1}{2 \pi}\int_{- \infty}^{ \infty} ( \sum_{k= -\infty}^{\infty} 2 \pi : a_k : \delta(\omega - \omega_0))e^{j \omega t} \mathbb{d}\omega \ $$ $$ x(t) = \sum_{k= -\infty}^{\infty}a_k e^{j k \omega_0 t} : \equiv : \text{Serie de Fourier} $$
La Transformada de Fourier de una señal periodica con coeficiente de series de Fourier $= a_k$ se puede entender como un tren de impulsos que ocurren a las frecuencias relacionadas armonicamente y para las cuales el area del impulso es la K-esima frecuencia armonica $K \omega_0$ es $2 \pi$ veces el K- esimo coeficiente de la serie de Fourier $a_k$.
Entonces en Resumen la transformada de Fourier de una señal periodica es calcular las series de Fourier y multiplicar cada coeficiente por $2 \pi$.
Ejemplo
mu = sym.symbols('mu', integer=True)
t = sym.symbols('t', real=True)
T = 2
Tp = 5
def pulse_train(T, Tp):
n = sym.symbols('n', integer=True)
x0 = sym.Piecewise((0, t < 0), (1, t < T), (0, True))
return sym.summation(x0.subs(t, t+n*Tp), (n, -10, 10))
print(f"Periodo = {Tp}")
print(f"Ancho del pulso = {T}")
import warnings
warnings.filterwarnings("ignore", module="sympy.plot")
sym.plot(pulse_train(T, Tp), (t, -5, 20), xlabel='$t$', ylabel='$x(t)$', adaptive=False);
Periodo = 5
Ancho del pulso = 2
X_mu = sym.exp(-sym.I * mu * sym.pi * T/Tp) * T * sym.sinc(mu * sym.pi * T/Tp)
X_mu
$\displaystyle 2 e^{- \frac{2 i \pi \mu}{5}} \operatorname{sinc}{\left(\frac{2 \pi \mu}{5} \right)}$
Xn = sym.lambdify(mu, sym.Abs(X_mu), 'numpy')
n = np.arange(-15, 15)
plt.stem(n*2*np.pi/Tp, Xn(n))
plt.xlabel('$\omega$')
plt.ylabel('$|X(j \omega)|$');
Preguntas:
- Cambie la relación T / Tp del código. ¿Cómo cambia el espectro del tren de pulsos?
- ¿Puedes deducir la periodicidad(Tp) de la señal observando su espectro?
- Calcule la potencia promedio del tren de pulsos en el dominio de la frecuencia aplicando el teorema de Parseval.
Ejercicios
- Transformada de Fourier de $x(t) = \sin(\omega_0 t)$
- Transformada de Fourier de $x(t) = \cos(\omega_0 t)$
- Si $x(t) = \sum_{k = -\infty}^{\infty} \delta (t - KT)$
Propiedades de la Tranformada de Fourier
Linealidad
$$ \begin{align*} x(t) &\overset{f}{\longleftrightarrow} X(j\omega) \\ y(t) &\overset{f}{\longleftrightarrow} Y(j\omega) \\ ax(t) + by(t) &\overset{f}{\longleftrightarrow} a X(j\omega) + b Y(j\omega) \end{align*} $$Desplazamiento en el Tiempo
$$ \boxed{x(t-t_o)\overset{f}{\longleftrightarrow}e^{-j\omega t_0} X(j\omega) } $$ Cambia la fase pero no la magnitud
Conjugacion y Simetria Conjugada
$$ \boxed{x^*(t) \overset{f}{\longleftrightarrow} X^*(-j \omega)} $$Si $x(t) \in \mathbb{R}e :$ entonces $: X(-j \omega) = X^*(j \omega)$
Diferenciacion e Integracion
$$ \boxed{\frac{\mathbb{d}x(t)}{\mathbb{d}t} \overset{f}{\longleftrightarrow} j \omega X(j \omega)} $$ $$ \boxed{\int_{- \infty}^{t}x(\tau)\mathbb{d}\tau \overset{fs}{\longleftrightarrow} \left ( \frac{1}{j \omega} \right) X(j \omega) + \pi X(0)\delta(\omega)} $$
Ejemplo:
- La función delta de dirac $\delta(t)$ es igual a la primera deriva de la función paso $\mu(t)$, o en caso contrario la función paso es igual a la integral del delta de dirac, entonces si conozco la transformada de Fourier de la señal delta de dirac puedo hallar la transformada de Fourier de la señal paso.
$$ \mathcal{F} { \delta(t) } = 1 \ \frac{d \mu(t)}{dt} = \delta(t) : \rightarrow \ \mathcal{F} { \mu(t) } = \frac{1}{j \omega} + \pi \cdot \delta(\omega) $$
- La función rampa $r(t)$ se puede expresar como la integral de la función paso $\mu (t)$
$$ r(t) = \int_{-\infty}^{t} \mu(\tau) ; d\tau $$
Aplicando el teorema de la integracion podemos obtener la transformada de Fourier de la función Paso
$$ R(j \omega) = \frac{1}{j \omega} \text{sinc}\left( \frac{\omega}{2} \right) + \pi \cdot \text{sinc}(0) \cdot \delta(\omega) $$
Escalamiento de Tiempo y Frecuencia
$$ \boxed{x(\alpha t) \overset{f}{\longleftrightarrow} \frac{1}{|\alpha|} X \left( \frac{j \omega}{\alpha} \right )} $$
$$ x(- t) \overset{f}{\longleftrightarrow} X(-j \omega) $$
Ejemplo
t, w = sym.symbols('t omega')
a = sym.symbols('a', positive=True)
x = sym.Heaviside(t + sym.S.Half/a) - sym.Heaviside(t - sym.S.Half/a)
X = fourier_transform(x)
print(f'X(jw) =')
X
X(jw) =
$\displaystyle \frac{2 \sin{\left(\frac{\omega}{2 a} \right)}}{\omega}$
values = {a: 1/2}
print(f'a = 0.5')
sym.plot(x.subs(values), (t, -4,4), xlabel=r'$t$', ylabel=r'$\mathrm{\mu}(a t)$');
sym.plot(X.subs(values), (w, -20, 20), xlabel=r'$\omega$', ylabel=r'$\mathcal{F} \{ \mathrm{μ}(a t) \}$');
a = 0.5
values = {a: 2}
print(f'a = 2')
sym.plot(x.subs(values), (t, -4, 4), xlabel=r'$t$', ylabel=r'$\mathrm{\mu}(a t)$');
sym.plot(X.subs(values), (w, -30, 30), xlabel=r'$\omega$', ylabel=r'$\mathcal{F} \{ \mathrm{μ}(a t) \}$');
a = 2
Dualidad
Se puede comprobar si tenemos un pulso en la frecuencia y calculamos la transformada inversa de Fourier, y lo comparamos con el ejercicio desarrollado anteriormente sobre la transformada de Fourier de un pulso en el tiempo.
print("Ancho del pulso desde cero = 0.5 rads/seg")
display(Latex('$X(j \omega) = \mu (\omega +0.5) - \mu ( \omega -0.5)$'))
XW = rect(w)
sym.plot(XW, (w, -3, 3), xlabel=r'$\omega$', ylabel=r'$X(j \omega) $');
Ancho del pulso desde cero = 0.5 rads/seg
$X(j \omega) = \mu (\omega +0.5) - \mu ( \omega -0.5)$
x = inverse_fourier_transform(XW)
x
$\displaystyle \frac{\sin{\left(\frac{t}{2} \right)}}{\pi t}$
sym.plot(x, (t,-30,30), ylabel=r'$x(t)$');
En general, para cualquier par de transformadas, hay un par dual con las variables de tiempo y frecuencia intercambiadas.
Derivacion en la Frecuencia
$$ -j t x(t) \overset{f}{\longleftrightarrow} \frac{d X(j \omega)}{d \omega} $$
Integracion en la Frecuencia
$$ \frac{1}{jt}x(t) + \pi x(0) \delta(t) \overset{f}{\longleftrightarrow} \int_{\infty}^{\omega}x(\eta)\delta(\eta) $$
Desplazamiento en la Frecuencia
Es el concepto que se utiliza en Modulacion, ver la propiedad mas adelante $$ e^{j \omega_0 t}\cdot x(t) \overset{f}{\longleftrightarrow} X\left(j (\omega - \omega_0) \right) $$
Relacion de Parseval
$$ \boxed{\int_{-\infty}^{\infty} | x(t) |^2 ; dt = \frac{1}{2 \pi} \int_{-\infty}^{\infty} | X(j \omega) |^2 ; d\omega} $$
Ejemplo
La energía de la señal pulso rectangular $\text{rect}(t)$ se calcula en el tiempo y el dominio espectral mediante la evaluación de las integrales respectivas. Primero se evalúa el dominio del tiempo
$$ E_t = \int_{-\infty}^{\infty} | \text{rect}(t) |^2 ; dt = \int_{- \frac{1}{2}}^{\frac{1}{2}} 1 ; dt $$
Codigo en python para evaluar la integral:
E_t = sym.integrate(1, (t, -sym.S.Half, sym.S.Half))
E_t = sym.integrate(1, (t, -sym.S.Half, sym.S.Half))
print('Energia en el Tiempo E_t = {E_t}')
Energia en el Tiempo E_t = {E_t}
La energía en el dominio espectral se calcula evaluando
$$ E_f = \frac{1}{2 \pi} \int_{-\infty}^{\infty} \left| \text{sinc}\left(\frac{\omega}{2}\right) \right|^2 ; d\omega $$ Codigo en python para evaluar la integral:
E_f = 1/(2*sym.pi) * sym.integrate(sym.sinc(w/2)**2, (w, -sym.oo, sym.oo))
E_f = 1/(2*sym.pi) * sym.integrate(sym.sinc(w/2)**2, (w, -sym.oo, sym.oo))
print('Energia en la frecuencia E_f = {E_f}')
Energia en la frecuencia E_f = {E_f}
Convolucion
$$ \boxed{y(t) = x(t) * h(t) \overset{f}{\longleftrightarrow} Y(j \omega)= X(j \omega) \cdot H(j \omega)} $$
$$ \begin{align} \mathcal{F} \{ x(t) * h(t) \} &= \int_{-\infty}^{\infty} \left( \int_{-\infty}^{\infty} x(\tau) \cdot h(t-\tau) \; d \tau \right) e^{-j \omega t} \; dt \\ &= \int_{-\infty}^{\infty} \left( \int_{-\infty}^{\infty} h(t-\tau) \, e^{-j \omega t} \; dt \right) x(\tau) \; d\tau \\ &= H(j \omega) \cdot \int_{-\infty}^{\infty} x(\tau) \, e^{-j \omega \tau} \; d \tau \\ &= H(j \omega) \cdot X(j \omega) \end{align} $$Multiplicacion
$$ \boxed{x(t) \cdot h(t) \overset{f}{\longleftrightarrow} \frac{1}{2 \pi} \left[ X(j \omega) * H(j \omega) \right]} $$
El teorema de multiplicación se puede probar de manera similar al teorema de convolución calculando la transformada inversa de Fourier de los espectros convolucionados
$ \mathcal{F}^{-1} \left\{ \frac{1}{2 \pi} X(j \omega) * Y(j \omega) \right\} $ $$ \begin{split} &= \frac{1}{2 \pi} \int_{-\infty}^{\infty} \left( \frac{1}{2 \pi} \int_{-\infty}^{\infty} X(j \nu) \cdot Y(j (\omega-\nu)) \; d \nu \right) e^{j \omega t} \; d\omega \\ &= \frac{1}{2 \pi} \int_{-\infty}^{\infty} \left( \frac{1}{2 \pi} \int_{-\infty}^{\infty} Y(j (\omega-\nu)) \, e^{j \omega t} \; d\omega \right) X(j \nu) \; d\nu \\ &= y(t) \cdot \frac{1}{2 \pi} \int_{-\infty}^{\infty} X(j \nu) \, e^{j \nu t} \; d \nu \\ &= y(t) \cdot x(t) \end{split} $$Alternativamente, la dualidad de la transformada de Fourier se puede aplicar al teorema de convolución. Las aplicaciones del teorema de multiplicación incluyen la modulación y cuando se aplica una ventana a una señal. El primero conduce al teorema de modulación introducido más tarde, el segundo se puede ilustrar con el siguiente ejemplo.
def convolve(x, y, var):
tau = sym.symbols('tau')
return sym.integrate(x.subs(var, tau) * y.subs(var, var - tau), (tau, -sym.oo, sym.oo))
t, w = sym.symbols('t omega')
w0, a = sym.symbols('omega0 a')
class rect(sym.Function):
@classmethod
def eval(cls, arg):
return sym.Heaviside(arg + sym.S.Half) - sym.Heaviside(arg - sym.S.Half)
values = {w0: 10, a: 1/2}
y1 = rect(a*t)
y2 = sym.cos(w0*t)
display(Latex('$w(t) = rect(t)$'))
sym.plot(y1.subs(values), (t, -5, 5), xlabel=r'$t$', ylabel=r'$rect(t)$');
display(Latex('$x(t) = cos(\omega _0 t)$'))
sym.plot(y2.subs(values), (t, -5, 5), xlabel=r'$t$', ylabel=r'$cos(w_0t)$');
display(Latex('$x(t) = rect(t) \cdot cos(\omega _0 t)$'))
y = rect(a*t) * sym.cos(w0*t)
sym.plot(y.subs(values), (t, -5, 5), xlabel=r'$t$', ylabel=r'$y(t)$');
$w(t) = rect(t)$
$x(t) = cos(\omega _0 t)$
$x(t) = rect(t) \cdot cos(\omega _0 t)$
W = 1/abs(a) * sym.sinc(w/(2*a))
X = sym.pi*(sym.DiracDelta(w + w0) + sym.DiracDelta(w - w0))
Y = 1/(2*sym.pi) * convolve(W, X, w)
Y
$$ $\displaystyle \frac{\operatorname{sinc}{\left(\frac{\omega - \omega_{0}}{2 a} \right)} + \operatorname{sinc}{\left(\frac{\omega + \omega_{0}}{2 a} \right)}}{2 \left|{a}\right|}$ $$
values = {w0: 10, a: 1/2}
display(Latex('$W(j \omega)$'))
sym.plot(W.subs(values), (w, -20, 20), xlabel=r'$\omega$', ylabel=r'$W(j \omega)$');
display(Latex('$X(j \omega) = \delta(\omega + \omega_0) + \delta(\omega - \omega_0)$'))
display(Latex('$Y(j \omega) = X(j \omega) * W(j \omega)$'))
sym.plot(Y.subs(values), (w, -20, 20), xlabel=r'$\omega$', ylabel=r'$Y(j \omega)$');
$W(j \omega)$
$X(j \omega) = \delta(\omega + \omega_0) + \delta(\omega - \omega_0)$
$Y(j \omega) = X(j \omega) * W(j \omega)$
Modulacion con Sinusoidal
$$ e^{j \omega_0 t}\cdot x(t) \overset{f}{\longleftrightarrow} X\left(j (\omega - \omega_0) \right) $$
Resumen Propiedades
| $x(t)$ | $X(j \omega) = \mathcal{F} { x(t) }$ |
---|---|---|
Dualidad | $\begin{aligned} x_1(t) \ x_2(j t) \end{aligned}$ | $\begin{aligned} x_2(j \omega) \ 2 \pi , x_1(- \omega) \end{aligned}$ |
Linealidad | $A , x_1(t) + B , x_2(t)$ | $A , X_1(j \omega) + B , X_2(j \omega)$ |
Conjugacion | $x(t) = x^*(t)$ | $X(j \omega) = X^*(- j \omega)$ |
Escalamiento | $x(a t)$ | $\frac{1}{\lvert a \rvert} X\left( \frac{j \omega}{a} \right)$ |
Convolucion | $x(t) * h(t)$ | $X(j \omega) \cdot H(j \omega)$ |
Desplazamiento en el tiempo | $x(t - \tau)$ | $e^{-j \omega \tau} \cdot X(j \omega)$ |
Diferenciacion | $\frac{d}{dt} x(t)$ | $j \omega X(j \omega)$ |
Integracion | $\int_{-\infty}^{t} x(t) ; dt$ | $\frac{1}{j \omega} X(j \omega) + \pi X(0) \delta(\omega)$ |
Multiplicacion | $x(t) \cdot h(t)$ | $\frac{1}{2 \pi} X(j \omega) * H(j \omega)$ |
Modulacion | $e^{j \omega_0 t}\cdot x(t)$ | $X\left(j (\omega - \omega_0) \right)$ |
where $A, B \in \mathbb{C}$, $a \in \mathbb{R} \setminus {0}$ and $\tau, \omega_0 \in \mathbb{R}$.
Sistemas Caracterizados por ecuaciones Diferenciales con Coeficientes Constantes
En los sistemas LTI la relación de entrada salida se puede expresar mediante una ecuación diferencial lineal de coeficientes constantes.
$$ \sum_{n=0}^{N} \alpha_n \frac{d^n :y(t)}{d t^n} = \sum_{m=0}^{M} \beta_m \frac{d^m : x(t)}{d t^m} $$
Conociento la ecuación Matematica qeu modela el sistema se puede obtener la respuesta del sistema ante cualquier entrada, ya que se puede obtener la respuesta al impulso.
$$ \mathcal{F} \left \{ \sum_{n=0}^{N} \alpha_n \frac{d^n \:y(t)}{d t^n} \right \} = \mathcal{F} \left \{ \sum_{m=0}^{M} \beta_m \frac{d^m \: x(t)}{d t^m}\right \} \\ $$ $$ \sum_{n=0}^{N} \alpha_n \mathcal{F} \left \{ \frac{d^n \:y(t)}{d t^n} \right \} = \sum_{m=0}^{M} \beta_m \mathcal{F} \left \{ \frac{d^m \: x(t)}{d t^m}\right \} \\ $$ $$ \sum_{n=0}^{N} \alpha_n (j \omega)^n \:Y(j \omega) = \sum_{m=0}^{M} \beta_m (j \omega)^m \: X(j \omega) \rightarrow \\ $$ $$ Y(j \omega)\sum_{n=0}^{N} \alpha_n (j \omega)^n = X(j \omega) \sum_{m=0}^{M} \beta_m (j \omega)^m \\ $$ $$ \frac{Y(j \omega)}{X(j \omega)} = \frac{\sum_{m=0}^{M} \beta_m (j \omega)^m }{\sum_{n=0}^{N} \alpha_n (j \omega)^n}\\ $$Del Teorema de convolucion de Fourirer sabemos que
$$ \mathcal{F} \{y(t) = x(t) * h(t) \} = X(j \omega) \cdot H(j \omega) \\ Y(j \omega) = H(j \omega)X(j \omega) \rightarrow H(j \omega) = \frac{Y(j \omega)}{X(j \omega)} $$ $$ \boxed{H(j \omega) = \frac{Y(j \omega)}{X(j \omega)} = \frac{\sum_{m=0}^{M} \beta_m (j \omega)^m }{\sum_{n=0}^{N} \alpha_n (j \omega)^n}} \equiv \text{Respuesta en Frecuencia del sistema} $$ $$ \mathcal{F}^{-1} \{H (j \omega)\} = h(t) \equiv \text{Respuesta al impulso} $$Ejemplo:
- La siguiente ecuación diferencial de coeficientes constantes se obtiene de un sistema fisico $$ \frac{d:y(t)}{d t} + ay(t) = x(t) \qquad a>0 $$ Calcular la Respuesta en frecuencia y la respuesta al impulso
Respuesta: $$ H(j \omega) = \frac{1}{j\omega + a} \ h(t) = e^{at} \mu (t) $$
Ejercicio:
- Calcular la Respuesta en frecuencia y la respuesta al impulso del siguiente sistema reresentado por ecuaciones diferenciales de coeficientes constantes
$$ \frac{d^2:y(t)}{d t^2} + 4 \frac{d:y(t)}{d t} + 3 y(t) = \frac{d:x(t)}{d t} + 2 x(t) $$
- Si $ x(t) = e^{-t}$ calcular $ y(t)$
REFERENCIAS
- https://nbviewer.jupyter.org/github/spatialaudio/signals-and-systems-lecture/blob/master/fourier_transform/definition.ipynb
- https://nbviewer.jupyter.org/github/spatialaudio/signals-and-systems-lecture/blob/master/fourier_transform/theorems.ipynb
- https://nbviewer.jupyter.org/github/spatialaudio/signals-and-systems-lecture/blob/master/fourier_transform/table_theorems_transforms.ipynb
Phd. Jose R. Zapata