Transformada de Fourier Matlab
Transformada de Fourier Matlab
Transformada de Fourier Matlab
TRANSFORMADA DE FOURIER
El objetivo de esta pr actica es construir una aproximaci on num erica de la transformada de Fourier y la transformada inversa de Fourier. Tambi en se van a estudiar las principales propiedades de la transformada de Fourier sobre distintas funciones.
X ( ) =
x(t)ejt dt
i
xi exp(jti )ti
3. Calcular la transformada de Fourier para la Gaussiana x(t) preparada en el apartado 1, para un conjunto de adecuado de frecuencias (un conjunto de valores sucientemente denso y sucientemente extenso). Representar la transformada de Fourier (m odulo y fase de X ( ) en funci on de ). 4. Preparar una rutina de MatLab que calcule la transformada inversa de Fourier de un espectro especicado mediante los vectores y X , para un instante de tiempo t (o para un vector de tiempos t): x = tr inv four(w,X,t) 1
X ( )ejt d
i
Xi exp(ji t)i
5. Calcular la transformada inversa del espectro X ( ) obtenido en el apartado 3, y compararla con x(t). 6. Repetir los puntos anteriores para una funci on x(t) de tipo pulso triangular de amplitud A y duraci on .
2.2.1.
Linealidad
Preparar dos se nales x1 (t) y x2 (t) de tipo Gaussiano, con diferentes valores de y , y una combinaci on lineal x(t) = k1 x1 (t) + k2 x2 (t). Calcular las transformadas de Fourier de x1 (t), x2 (t) y x(t) y vericar que X ( ) = k1 X1 ( ) + k2 X2 ( ).
2.2.2.
Dualidad o simetr a
Preparar una se nal x(t) de tipo Gaussiano, con media distinta de cero y una varianza distinta de 1. Calcular su transformada de Fourier X ( ) para un conjunto adecuado de valores . Calcular la transformada de Fourier de X ( ) (para ello, asignar x1 = X y t1 = y calcular la transformada de x1 (t1 ), a la que llamaremos X1 ( )). Comparar X1 ( ) con 2x(t) mediante: plot(w,abs(X1),-t,2*pi*x)
2.2.3.
Escalado
A partir de una funci on x(t) Gaussiana, calcular la transformada de Fourier de x(at), multiplicando la variable de tiempo por una constante a (es decir, Xa=tr four(a*t,x,w)). Vericar que: Xa ( ) = 1 X |a| a
Hacerlo para valores de a mayores y menores que la unidad. Repetirlo para valores negativos de a.
2.2.4.
Desplazamiento en el tiempo
Calcular las transformadas de Fourier de funciones x(t) Gaussianas con distintos valores de la media. Comparar tanto los m odulos como las fases de las transformadas de Fourier.
2.2.5.
Preparar una funci on x(t) que sea el producto de una Gaussiana por una exponencial compleja: x(t) = N (t, , )ej0 t y calcular su transformada de Fourier. Analizar el resultado. Repetirlo para el caso en que la Gaussiana se multiplica por una funci on cos(0 t + 0 ).
2.2.6.
A partir de x(t) Gaussiana, obtener la derivada con respecto al tiempo: y (t) = d x(t) xi xi1 xi xi1 = dt ti ti1 t
xre (t) = real(x(t)) (parte real de x(t)) xim (t) = imag (x(t)) (parte imaginaria de x(t)) xrep (t) (parte real-par de x(t)) xrei (t) (parte real-impar de x(t)) ximp (t) (parte imaginaria-par de x(t)) ximi (t) (parte imaginaria-impar de x(t)) Obtener la transformada de Fourier de cada una de estas funciones y estudiar la paridad/imparidad de sus partes reales e imaginarias para cada una de ellas.
2.2.11.
Teorema de Parseval
Preparar la funci on (real) siguiente: x(t) = N (t, 1 , 1 ) cos(1 t + 1 ) Calcular su energ a en el dominio del tiempo:
Ex =
x2 (t)dt
i
x2 i ti
|X ( )|2 d( )
1 2
(abs(Xi ))2 i
i
% presupone muestreo uniforme function x = convolucion(t,x1,x2) deltat=t(2)-t(1); K=length(t); i0=-round(t(1)/deltat); for k=1:K i1=1:K; i2=k-i1+1+i0; i_ini=k-K+1+i0; if i_ini<1 i_ini=1; end i_fin=k+i0; if i_fin>K i_fin=K; end
% porque i(t)=round((t-t(1))/deltat)+1 % t(i)=t(1)-deltat+i*deltat % indice para t % indice para tau tau=t(i1) % indice para (t-tau) t-tau=t(i2) % donde i2=i(t-tau)=i(t(k)-t(i1)) % nos limitamos a las muestras para las que tenemos % definidas las funciones
x(k)=deltat*sum(x1(i1(i_ini:i_fin)).*x2(i2(i_ini:i_fin))); end