Está en la página 1de 6

Practica

TRANSFORMADA DE FOURIER
El objetivo de esta pr ctica es construir una aproximaci n num rica de la transformada de Fourier a o e y la transformada inversa de Fourier. Tambi n se van a estudiar las principales propiedades de la e transformada de Fourier sobre distintas funciones.

2.1. Transformada y transformada inversa de Fourier


1. Preparar una funci n x(t) Gaussiana: o (t )2 1 exp x(t) = N (t, , ) = 2 2 2 2 para unos valores determinados de y , tomando valores de t desde la media menos varias desviaciones est ndar hasta la media m s varias desviaciones est ndar. a a a 2. Preparar una rutina de MatLab que calcule la transformada de Fourier de una se al especicada n mediante los vectores t y x para la frecuencia (o para un vector de frecuencias): X = tr four(t,x,w) donde X() se aproxima del modo siguiente:

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 dulo y fase de X() en o funci n de ). o 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

PRACTICA 2. TRANSFORMADA DE FOURIER

donde x(t) se aproxima del modo siguiente: x(t) = 1 2


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 n x(t) de tipo pulso triangular de amplitud A y o duraci n . o

2.2. Propiedades de la transformada de Fourier


En esta parte de la pr ctica se estudiar n las propiedades de la transformada de Fourier con algua a nos ejemplos.

2.2.1.

Linealidad

Preparar dos se ales x1 (t) y x2 (t) de tipo Gaussiano, con diferentes valores de y , y una n combinaci n lineal x(t) = k1 x1 (t) + k2 x2 (t). Calcular las transformadas de Fourier de x1 (t), x2 (t) o y x(t) y vericar que X() = k1 X1 () + k2 X2 ().

2.2.2.

Dualidad o simetra

Preparar una se al x(t) de tipo Gaussiano, con media distinta de cero y una varianza distinta de n 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 n x(t) Gaussiana, calcular la transformada de Fourier de x(at), multiplio cando 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 dulos como las fases de las transformadas de Fourier. o

2.2. PROPIEDADES DE LA TRANSFORMADA DE FOURIER

2.2.5.

Desplazamiento en frecuencia (modulaci n) o

Preparar una funci n x(t) que sea el producto de una Gaussiana por una exponencial compleja: o 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 n cos(0 t + 0 ). o

2.2.6.

Derivada con respecto al tiempo

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

Calcular Y () (la transformada de Fourier de y(t)) y compararla con jX().

2.2.7. Derivada con respecto a la frecuencia


A partir de X() del apartado anterior, calcular la derivada con respecto a la frecuencia: Z() = d X() Xi Xi1 Xi Xi1 = d i i1

Calcular z(t) (transformada inversa de Z()) y compararla con jtx(t).

2.2.8. Convoluci n en el dominio del tiempo o


Preparar una funci n x1 (t) Gaussiana multiplicada por cos(0 t + 0 ). Preparar una funci n x2 (t) o o Gaussiana. Calcular la convoluci n x(t) = x1 (t)x2 (t). Calcular las transformadas de Fourier X1 () o y X2 () y calcular la convoluci n x(t) como la transformada inversa del producto de los espectros. o Comparar ambas aproximaciones a la convoluci n. o

2.2.9. Producto en el dominio del tiempo (ventanas temporales)


Considerar x1 (t) una funci n Gaussiana y x2 (t) una funci n senoidal. Calcular el producto de o o ambas, x(t) y su transformada de Fourier X(). Comparar esta ultima con la convoluci n de los o espectros X1 () X2 ().

2.2.10. Transformadas de las partes par/impar y real/imaginaria


Preparar la funci n siguiente: o x(t) = N (t, 1 , 1 ) cos(1 t + 1 ) + jN (t, 2 , 2 ) cos(2 t + 2 ) y a partir de x(t) preparar las siguientes funciones: xp (t) = (x(t) + x(t))/2 (parte par de x(t)) xi (t) = (x(t) x(t))/2 (parte impar de x(t))

PRACTICA 2. TRANSFORMADA DE FOURIER

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 n (real) siguiente: o x(t) = N (t, 1 , 1 ) cos(1 t + 1 ) Calcular su energa en el dominio del tiempo:

Ex =

x2 (t)dt
i

x2 ti i

Compararla con la energa calculada en el dominio de la frecuencia: EX = 1 2


|X()|2 d()

1 2

(abs(Xi ))2 i
i

2.2. PROPIEDADES DE LA TRANSFORMADA DE FOURIER

Ap ndice 1: Ejemplo de rutina para generar funciones Gaussianas e


% function x = gaussiana(t,mu,sig) function x = gaussiana(t,mu,sig) lim=log(1e100); % (es importante poner este limite) var=sig2; E=-(t-mu).2/(2*var); norma=sqrt(2*pi*var); E0=max(E); umbral=E0-lim; E=E.*(E>umbral)+umbral.*(E<umbral); x=exp(E)/norma;

Ap ndice 2: Rutina para obtener la transformada de Fourier e


% function X = tr_four(t,x,w) % presupone que t, x y w son vectores fila % presupone muestreo uniforme de t (no necesariamente de w) function X = tr_four(t,x,w) deltat=t(2)-t(1); A=(-j*w*t); B=exp(A); X=deltat*(x*B);

Ap ndice 3: Rutina para obtener la transformada inversa de Fourier e


% function x = tr_inv_four(t,X,w) % presupone que t, X y w son vectores fila % presupone muestreo uniforme de w (no necesariamente de t) function x = tr_inv_four(w,X,t) deltaw=w(2)-w(1); A=(j*t*w); B=exp(A); x=(1/(2*pi))*deltaw*(X*B);

Ap ndice 4: Rutina para calcular la convoluci n de dos funciones e o


% function x = convolucion(t,x1,x2) % calcula la integral de convolucion de x1(t)*x2(t) para cada valor (t) % presupone que x1, x2 estan muestreados para los mismos valores de t

PRACTICA 2. TRANSFORMADA DE FOURIER

% 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

También podría gustarte