Está en la página 1de 14

4 La Transformada de Fourier

4.1 Resumen
En la teor de sistemas lineales es fundamental la representacin de una seal en trminos de a o n e sinusoides o exponenciales complejas. Ello es debido a que una exponencial compleja es una autofuncin de cualquier sistema lineal e invariante con el tiempo, mientras que la respuesta o a una sinusoide es otra sinusoide de la misma frecuencia, con fase y amplitud determinadas por el sistema. De este modo, la representacin en frecuencia de la seales, a travs de la o n e Transformada de Fourier, resulta imprescindible para analizar las seales y los sistemas. n Objetivo: Familiarizarse con la Transformada de Fourier: su signicado, sus propiedades, y su manejo. Se introducirn diversas funciones para calcular y visualizar la Transformada de a Fourier en sus diversos aspectos, que sern de gran utilidad a lo largo del resto del curso. a Duracin: Dos sesiones de 2 horas o

4.2 Introduccin terica o o


Al igual que ocurre en el caso continuo, el concepto del dominio de la frecuencia es fundamental para entender las seales discretas y el comportamiento de los sistemas LIT. El espectro de una n seal nos ensea cmo es esa seal en el dominio frecuencial; la respuesta en frecuencia de un n n o n sistema nos aporta el conocimiento de como se comporta ese sistema para diferentes entradas, gracias a la perspectiva que aporta el dominio de la frecuencia.

4.2.1 Clculo de la transformada a


La transformada de Fourier de una seal discreta (DTFT) es una seal peridica de per n n o odo 2. As la ecuacin de s , o ntesis de x[n] a partir de su transformada se puede ver como el clculo a j de los coecientes de la serie de Fourier de la seal peridica X(e ), mientras que la ecuacin n o o de anlisis reeja el desarrollo en serie de la transformada en funcin de los coecientes x[n]. a o A la hora de plantear la DTFT computacionalmente cabe hablar de dos problemas: la transformada de seales innitas, y el hecho de que la transformada es continua, cuando slo podemos n o trabajar de forma discreta. Ante el primer problema slo cabe decir que se podr evaluar la o a transformada de seales innitas cuando esta se pueda representar anal n ticamente. En cuanto a la naturaleza discreta de los clculos, aunque la transformada es continua slo podremos a o

47

4.2. INTRODUCCION TEORICA PRACTICA 4. LA TRANSFORMADA DE FOURIER obtener muestras de la misma, que pueden constituir una buena aproximacin si se toman suo cientes (el concepto de suciencia quedar ms claro ms adelante en el curso). La funcin t a a a o calcula la transformada de Fourier de una seal nita en el nmero de puntos equiespaciados n u especicado en la llamada a la funcin. o Ejercicio 19 Veamos en este ejercicio como se puede visualizar la transformada de Fourier de una seal discreta, que necesariamente debe ser calculada en un conjunto nito de n frecuencias. As, sea la seal n h[n] = [n] + 0.5[n 1] + 0.2[n 2] La siguiente instruccin nos permite calcular 128 valores de su transformada de Fourier: o
>> H=fft(h,128);

El vector H recoge los valores de la funcin H(ej ) en las siguientes frecuencias: o 2k , k = 0, , 127 128 Para visualizar la transformada hay que tener en cuenta que el vector H contiene valores complejos, por lo que tendremos que representar por separado su magnitud y su fase: k =
>> plot(2*pi*(0:127)/128,abs(H)); >> plot(2*pi*(0:127)/128,angle(H));

En el eje de abcisas se incluyen las frecuencias a las que est evaluada la transformada, a mientras que en el eje de ordenadas se coloca o bien la magnitud o bien la fase. El comando plot() crea una curva continua, que no es ms que la interpolacin entre los valores discretos a o (128 en este caso) de la transformada que han sido calculados. De esta manera se obtiene una representacin de la transformada entre 0 y 2. o IMPORTANTE!!!: Acudir a este ejercicio cada vez que tengis dudas acerca de como rea presentar la transformada de Fourier de una seal. n Otra funcin de Matlab que nos permite obtener muestras de la Transformada de Fourier de o una seal es freqz, con la ventaja aadida de que permite trabajar con ltros IIR (respuesta n n impulsional de duracin innita) que se pueden expresar de forma racional en el dominio de la o frecuencia. En la seccin de descripcin de funciones utilizadas, al nal de esta prctica, vemos o o a cmo se aplica: en la llamada a la funcin se especican los coecientes del ltro, as como el o o nmero deseado de puntos de su transformada, como se puede comprobar con un help freqz en u Matlab. Cuestin 8 Los ltros digitales son sistemas LIT descritos por una ecuacin en diferencias o o lineal con coecientes constantes:
N M

ak y[n k] =
k=0 k=0

bk x[n k]

48

PRACTICA 4. LA TRANSFORMADA DE FOURIER 4.2. INTRODUCCION TEORICA Utilizando las propiedades de desplazamiento y linealidad de la transformada de Fourier, demuestre que la respuesta en frecuencia de un sistema LIT descrito por una ecuacin en difeo rencias con coecientes constantes puede expresarse como:
M

bk ejk ak ejk

H(ej ) =

k=0 N k=0

Si necesitamos representar una respuesta en frecuencia de un ltro expresado de esta forma, haremos:
>> H = freqz(b,a,128,"whole"); >> plot(2*pi*(0:127)/128,abs(H)); >> plot(2*pi*(0:127)/128,angle(H));

4.2.2 Autofunciones
El concepto de autofuncin de un sistema LIT es la base para comprender su respuesta en o frecuencia. As para un sistema con respuesta impulsional h[n], la salida ante una exponencial , compleja de la forma ej0 n ser a

y[n] =
k=

h[k]ej0 (nk) = H(ej0 )ej0 n

(4.1)

Un sistema LIT tiene como autofunciones el conjunto de exponenciales complejas de la forma n o z0 , que slo se ven modicadas a su paso por el sistema por una constante compleja. En el caso de z0 = ej0 , esa constante es el valor de la respuesta en frecuencia (transformada de Fourier de la respuesta impulsional) a la frecuencia 0 . Por tanto, la Transformada de Fourier de una seal nos informa de como responde el sistema n descrito por esa seal para cada frecuencia de entrada, o lo que es lo mismo, nos aporta el n contenido en frecuencia de la seal, ya que con la ecuacin de s n o ntesis se puede reconstruir la seal con exponenciales complejas, tal y como se describe a continuacin: n o

X(ej ) =
n=

x[n]ejn

(4.2)

1 x[n] = 2

X(ej )ejn d

(4.3)

49

4.2. INTRODUCCION TEORICA PRACTICA 4. LA TRANSFORMADA DE FOURIER Ejercicio 20 En este ejercicio se va a identicar la respuesta en frecuencia de un sistema (la Transformada de Fourier de su respuesta al impulso) a determinadas frecuencias. Para ello, slo podemos introducir seales a su entrada y observar lo que ocurre a su salida. o n Utilizaremos exponenciales complejas como entradas, dado su carcter de autofunciones. Oba servando la salida, podremos obtener informacin sobre como se comporta el sistema para cada o frecuencia de inters. As, considerar el sistema con respuesta impulsional e h[n] = 0.03[n] + 0.4[n 1] +0.54[n 2] + 0.2[n 3] 0.2[n 4] +0.1[n 5] + 0.2[n 6] Para denir la respuesta impulsional, basta con efectuar en Matlab >> h=[0.03 0.4 0.54 0.2 -0.2 0.1 0.2] Generar un conjunto de 10 exponenciales complejas con 48 puntos de longitud de la forma e , para las siguientes frecuencias discretas: k = 2k/10, k = 0, , 9:
jk n

(4.4)

>> >> >> >>

omegas =(2*pi*(0:9))/10; e1 = exp(j*omegas(1)*(0:47)); e2 = exp(j*omegas(2)*(0:47)); ...

Tambin se puede realizar un bucle for para la generacin de esas diez seales, introdue o n cindolas como las o columnas de un matriz. e Calcular la salida del ltro para cada una de las exponenciales, convolucionando cada seal n de entrada con el ltro denido al comienzo: >> y1 = conv(e1,h); >> y2 = conv(e2,h); >> ... Superponer en la misma grca la entrada e1 y la salida y1: a >> >> >> >> plot(e1); hold; plot(y1); hold;

Razonar el porqu de la aparicin de los efectos en los bordes. Repetir la operacin para las e o o partes reales de e2 y de y2, notando los efectos de borde de nuevo. NOTA: No tratar de representar las exponenciales complejas directamente, sino sus partes reales (o imaginarias).

50

PRACTICA 4. LA TRANSFORMADA DE FOURIER 4.2. INTRODUCCION TEORICA En el ejercicio anterior la fase y amplitud de la seal de salida son diferentes a las de la seal de n n entrada. Esa diferencia viene determinada por la respuesta en frecuencia para = omegas(2). Por tanto, sabiendo que la seal de salida es en cada caso la seal de entrada multiplicada por n n la respuesta en frecuencia evaluada a esa frecuencia: y[n] = H(ej0 )ej0 n (4.5)

se propone el siguiente ejercicio, consistente en evaluar la respuesta en frecuencia del sistema para cada una de las diez frecuencias estudiadas anteriormente. Para ello, pensar que el vector de salida es igual al vector de entrada multiplicado por un escalar complejo para casi todos los instantes (excepto en los bordes), con lo que una simple divisin en un instante apropiado o nos dar el valor de dicho escalar. ( NO TRATAR DE HACER UNA DIVISION DE a VECTORES!!!) Ejercicio 21 Construir un vector Haprox a partir de esos 10 valores, y visualizar un dibujo aproximado de la transformada de Fourier de h de la forma: >> plot(omegas,abs(Haprox)); Ese dibujo nos proporciona una aproximacin a la magnitud de la respuesta en frecuencia o del sistema. Podemos superponer la respuesta en frecuencia evaluada en muchos ms puntos, a de la forma: >> hold; >> H=fft(h,128); >> plot(2*pi*(0:127)/128,abs(H)); Comprobar que, efectivamente, H es igual a la respuesta en frecuencia a las frecuencias k = 2k/10, k = 0, , 9. Notar la simetr de la representacin, dado que estamos visualia o zando la transformada en el intervalo [0, 2), y la magnitud es par (h[n] real).

4.2.3 Simetr as
A la hora de trabajar con simetr en torno al origen, hay que insistir en que Matlab considera as que las seales comienzan en n = 0 a la hora de evaluar su transformada de Fourier. n Ejercicio 22 Considerar el pulso rectangular de anchura L denido como x[n] = 1 0n<L 0 resto (4.6)

Obtener la expresin analtica de su transformada de Fourier a partir de la ecuacin (4.2). o o Observar en la ecuacin resultante el trmino de fase debido a que el pulso est centrado en o e a (L 1)/2. Utilizando la funcin fft(), obtener 256 puntos de la transformada de un pulso de longitud o L = 16. Dibujar en diagramas separados el mdulo y la fase, razonando su forma en base al o clculo analtico de la transformada realizado anteriormente: a

51

4.2. INTRODUCCION TEORICA PRACTICA 4. LA TRANSFORMADA DE FOURIER >> >> >> >> >> pulso = ... H = fft(pulso,256); plot(2*pi*(0:255)/256,abs(H)); % Para dibujar la magnitud figure(1); plot(2*pi*(0:255)/256,angle(H)); % Para dibujar la fase Calcular tericamente las frecuencias a las cuales se hace 0 la transformada, en funcin o o de L. Razonar para qu valores de frecuencia se producen las discontinuidades en la fase. e Para L = 9, pensar qu desplazamiento deber sufrir el pulso denido anteriormente e a para que el espectro de la seal resultante fuese real. Es causal el sistema resultante n representado por esa respuesta impulsional? Para vectores cuyo primer valor represente un instante de tiempo distinto del cero habr que a introducir una correccin: o Ejercicio 23 Escribir el cdigo de una funcin que, utilizando la funcin fft(), calcule la o o o transformada de Fourier de una seal discreta de la siguiente forma: n function [H,w] = dtft(h,no,N) % h: vector de entrada % no: instante de tiempo en el cual comienza h % N: numero de puntos a calcular de la transformada de h % H: vector de la transformada de Fourier de H % w: frecuencias en las que se evalua la transformada Para realizar la funcin hay que tener en cuenta la propiedad del desplazamiento de la transo formada de Fourier, bajo la cual un desplazamiento en el tiempo equivale a un desplazamiento en frecuencia: x[n n0 ] ejn0 X(ej ) (4.7) Tener en cuenta que la funcin fft() considera el instante de comienzo de la seal en n0 = 0. o n Recordar adems que los valores de las frecuencias en los cuales la funcin fft() calcula la a o transformada vienen dados por: 2k , k = 0, , N 1 N

k =

en donde N es el nmero de valores que se calculan de la transformada de Fourier, que como u se puede apreciar, estn equiespaciados entre 0 y 2. Efectuar el producto punto a punto entre a dos vectores de tal modo que los dos sean las o columnas. De lo contrario se obtendr un error a de no correspondencia entre matrices.

52

PRACTICA 4. LA TRANSFORMADA DE FOURIER 4.2. INTRODUCCION TEORICA A n de probar la funcin, calcular la transformada de Fourier de un pulso rectangular de o longitud 9 y centrado en el 0, comprobando que la parte imaginaria de su transformada es 0. Representar la parte real de dicha transformada. Razonar la forma de la transformada de Fourier del pulso entre L/2 y L/2 a medida que L tiende a . En general, podemos descomponer una seal compleja en su parte real y su parte imaginaria, n y a su vez cada una de ellas en parte par e impar: x[n] = xrealpar [n] + xrealimpar [n] + j ximagpar [n] + j ximagimpar [n] (4.8)

en donde la parte par de una seal z[n] se dene como (z[n] + z[n])/2, y la parte impar como n (z[n] z[n])/2. Hay que tener en cuenta que aunque una seal sea la respuesta de un sistema n causal, sus partes par e impar no, debido a la simetr que presentan respecto al origen. a Cuestin 9 Sea la descomposicin vista anteriormente de una seal x[n] o o n x[n] = xrealpar [n] + xrealimpar [n] + j ximagpar [n] + j ximagimpar [n] y de su transformada X(ej ) X(ej ) = Xrealpar (ej ) + Xrealimpar (ej ) + j Ximagpar (ej ) + j Ximagimpar (ej ) Asociar las componentes temporales con sus respectivas componentes espectrales. Ahora podemos utilizar la funcin recientemente construida en el ejercicio 4.4 para constatar o las propiedades de simetr de la transformada de Fourier, que de forma resumida son: a La transformada de x [n] es X (ej ). La transformada de una seal real es conjugada simtrica, es decir, el mdulo es par y la n e o fase impar. La transformada de una seal imaginaria pura es conjugada antisimtrica, es decir, n e j j X(e ) = X (e ) Ejercicio 24 Vericar que la transformada de la seal x[n] = (0.5)n sin(2n/24), n para 0 n < 32 es conjugada simtrica, observando los diagramas de mdulo y fase. e o Para observar el mdulo, utilizar la funcin plot() sobre el mdulo de la salida que se o o o obtiene de fft(), mientras que para la fase utilizar simplemente plot() sobre la fase de la transformada, anlogamente a lo realizado en el primer ejercicio. a Comprobar que la transformada de la seal chirp x[n] = ej2n /25 para 16 n 16 es n par, usando la funcin dtft() desarrollada en el ejercicio anterior. o
2

(4.9)

(4.10)

53

4.2. INTRODUCCION TEORICA PRACTICA 4. LA TRANSFORMADA DE FOURIER

4.2.4 Seales de duracin innita n o


Un grupo muy util de transformadas es aquel que procede de los sistemas descritos mediante ecuaciones en diferencias , que dan lugar a respuestas impulsionales que son combinaciones de exponenciales, y que se corresponden con transformadas racionales en ej . Dichas transformadas son de la forma: H(e ) =
j M jk k=0 bk e N jk k=0 ak e

(4.11)

que se corresponden con sistemas de la forma:


N M

ak y[n k] =
k=0 k=0

bk x[n k]

(4.12)

La funcin freqz nos permite calcular valores de ese tipo de transformadas en una serie o de puntos, a travs del clculo de dos transformadas, una para el numerador y otra para el e a denominador. Ejercicio 25 Sea el sistema LIT descrito mediante la ecuacin en diferencias siguiente: o 1 y[n] = y[n 1] + x[n] + x[n 1] 2 (4.13)

Utilizar la funcin freqz() para obtener una representacin en frecuencia de la respuesta o o impulsional del sistema, en 512 valores entre 0 y 2: >> b = [... ]; >> a = [... ]; >> [H,w] = freqz(b,a,512,"whole"); Tener en cuenta que b representa los coecientes de la parte directa del ltro, mientras que a los de la parte realimentada. Averiguar a qu frecuencia se hace 0 la respuesta en frecuencia del sistema. e A partir de esa frecuencia, deducir para qu seal de entrada se har 0 la salida (dicha e n a seal ha de ser una autofuncin). n o Razonar en el dominio del tiempo, y para dicha seal de entrada, por qu la salida es 0, n e evaluando manualmente un par de recursiones de la ecuacin en diferencias. o

4.2.5 Otras propiedades de la Transformada de Fourier


La propiedad de enventanado explica cul es la transformada del producto de dos seales en a n el tiempo: 1 y[n] = x[n] w[n] Y (ej ) = X(ej )W (ej() )d (4.14) 2

54

PRACTICA 4. LA TRANSFORMADA DE FOURIER 4.2. INTRODUCCION TEORICA en donde el segundo miembro representa una convolucin peridica. En una convolucin de ese o o o tipo se opera sobre seales peridicas. La integral se lleva a cabo sobre un intervalo de longitud n o igual al per odo de las seales, siendo el resultado tambin peridico con el mismo per n e o odo. De alguna forma es la propiedad dual a la propiedad de la convolucin , que nos relaciona una o convolucin en el tiempo con un producto en el dominio transformado: o y[n] = x[n] h[n] Y (ej ) = X(ej )H(ej ) (4.15)

al igual que ocurre en el caso continuo. Esta ultima propiedad no es ms que una consecuencia a del hecho de que las exponenciales complejas son autofunciones de los sistemas LIT, con lo que el peso que tienen a la salida de un sistema se ve afectado por el valor de la transformada de Fourier de la respuesta impulsional del sistema evaluada a esa frecuencia. Volviendo con la propiedad de enventanado, cabe decir que si se particulariza al caso en el que la ventana w[n] es una exponencial compleja nos encontramos con la propiedad de la modulacin : o y[n] = x[n] ej0 n Y (ej ) = X(ej(0 ) ) (4.16) de tan amplio uso en comunicaciones y radar. Esta propiedad es la dual a la propiedad del desplazamiento temporal, que se traduce en un producto en frecuencia por una exponencial. Cuestin 10 Demostrar que la transformada de Fourier de la parte par de una seal real o n j x[n] es la parte real de la transformada de Fourier X(e ). Razonar que si x[n] = 0, n < 0, entonces X(ej ) se puede obtener a partir de Re {X(ej )}. Ejercicio 26 Sea un pulso x[n] de longitud 21, que podr representar el resultado de muesa trear un pulso utilizado en radar (emplear la funcin ones()). Para enviarlo es necesario moo dularlo, de modo que el espectro resultante se site en la frecuencia que interese. Dado que u la seal a enviar ser real, la modulacin se lleva a cabo con un coseno, que en este caso n a o ser cos(n/2). Representar el espectro de las seales moduladas y sin modular, utilizado para a n ello las funciones fft() y plot(), comprobando en donde se encuentra el pico de la transformada. Razonar la forma del espectro.

Este ejercicio que acabamos de realizar se puede ver tambin desde la perspectiva del enventae nado, en la cual la ventana ser el pulso original, y la seal deseada la exponencial compleja. a n Entonces, la multiplicacin en el tiempo signica que las deltas originales en frecuencia son o ensanchadas debido a la convolucin con la sinc, transformada del pulso, como se puede apreo ciar en la siguiente gura, que representa la transformada de un coseno de frecuencia 2/8 y longitud 50 muestras. En frecuencia no hay dos deltas sino un par de sincs centradas a las frecuencias 2/8 y 2 2/8. Existen much simos tipos de ventanas, cada una de las cuales con propiedades diferentes. Acabamos de ver la ms simple, la ventana rectangular, 1 en el a intervalo de denicin y 0 fuera del mismo. Tambin es posible el uso de otras ventanas que o e no son constantes, sino que van disminuyendo su amplitud a medida que se alejan del punto centra. La ventaja principal que ofrecen frente a la rectangular es que los lbulos laterales de o sus transformadas son mucho ms pequeos que los de una sinc, con lo que esa ca ms rpida a n da a a en frecuencia hace posible una menor distorsin del espectro original. Como incoveniente hay o

55

4.2. INTRODUCCION TEORICA PRACTICA 4. LA TRANSFORMADA DE FOURIER


30

25

magnitud de la transformada

20

15

10

0 0

50

100

150

200 250 300 350 512 frecuencias entre 0 y 2pi

400

450

500

que resaltar que la anchura del lbulo central es mayor que la correspondiente a una sinc. A o modo de ejemplo ponemos la ecuacin de la ventana de Hamming, de uso muy extendido: o x[n] = 0.54 0.46cos( 2n ) 0 n L L 0 resto (4.17)

Ejercicio 27 En este ejercicio compararemos la magnitud del espectro de una ventana Hamming y de una ventana rectangular de igual longitud, comentando las principales diferencias. Para ello, generar un pulso de 32 unos, y calcular con fft() 128 puntos de su transformada. Utilizando la funcin hamming(), obtener una ventana de Hamming de 32 muestras, o visualizando su forma con plot(). Calcular 128 de su transformada de Fourier. Representar los espectros superpuestos de ambas seales. Observar las diferencias en n trminos de anchura del lbulo principal y altura de lbulos laterales. e o o Razonar qu ventana sera ms apropiada si nuestro objetivo es distorsionar lo menos e a posible el espectro de la seal enventanada. n A modo de ejemplo de empleo de ambas ventanas, visualicemos el espectro de una seal n compuesta de dos tonos, uno de los cuales es mucho ms potente que el otro: a >> >> >> >> >> x=cos(0.5*(0:31))+20*cos(1.5*(0:31)); figure(0) plot(2*pi*(0:127)/128,abs(fft(x.*ones(1,32),128))); figure(1) plot(2*pi*(0:127)/128,abs(fft(x.*hamming(32),128)));

56

PRACTICA 4. LA TRANSFORMADA DE FOURIER

4.3.

Observar que en el caso de la ventana de Hamming resulta mucho ms fcil apreciar el a a tono de menor intensidad en el espectro. La propiedad de enventanado se puede utilizar para analizar el efecto de la toma de registros nitos de seales de longitud innita. Es decir, se puede pensar en considerar la seal original n n multiplicada por una ventana de longitud igual a la duracin del intervalo considerado, como o se ver en el siguiente ejercicio. a Ejercicio 28 Sea la seal h[n] = n u[n] la respuesta impulsional de un sistema denido n por la ecuacin en diferencias y[n] = y[n 1] + x[n]. Por lo visto anteriormente podemos o calcular valores de su transformada exacta, utilizando la funcin freqz(). Obtener 512 de esos o valores para a = 0.5, y compararlos con los valores obtenidos a partir de un registro nito de esa seal, es decir: n n u[n] 0 n < L htrunc[n] = (4.18) 0 resto para L=2, 4, 6, 8. >> [H,w] = freqz(b,a,512,"whole"); % a, b representan los coeficientes de la ecuacion en diferencias >> plot(2*pi*(0:511)/512,abs(H)); >> Htrunc=fft(htrunc,512); >> hold >> plot(2*pi*(0:511)/512,abs(Htrunc)); Comprobar a partir de qu longitud de la seal truncada la diferencia entre los espectros es e n inapreciable. Obtener la respuesta en frecuencia del resultado de poner en cascada el ltro anterior con el ltro de respuesta al impulso h[n] = [n 1]. Determinar el valor de dicha respuesta en frecuencia para = /4.

4.3 Dudas ms comunes a


P: Quiero que dejen de superponerse las grcas en una misma gura. a R: Hay que teclear hold off. P: Matlab no encuentra la funcin que he creado. o R: Hacer ls para comprobar si se encuentra en ese directorio. Si no es as cambiar al , directorio correcto. P: Al representar en pantalla la transformada de Fourier de una seal, aparece una curva n muy rara. R: Seguramente no estis representando la magnitud de la transformada, sino que estis a a tratando de representar un vector complejo frente al eje de frecuencias.

57

4.4.

PRACTICA 4. LA TRANSFORMADA DE FOURIER

4.4 Descripcin funciones utilizadas o


A continuacin se describen algunas de las funciones utilizadas a lo largo de esta prctica, y o a que se seguirn empleando en lo que resta de curso. a La funcin fft() evala la transformada de una secuencia discreta en un nmero de puntos o u u equiespaciados entre 0 y 2:

fft (X [, N]): fast fourier transform of a vector

La funcin filter() ltra una seal de entrada a travs de un sistema denido por una o n e ecuacin en diferencias, el cual viene especicado a partir de sus coecientes de la parte directa o y de la parte realimentada. Calcula tantas muestras de salida como longitud tenga la entrada:

function [y [,sf]] = filter(b,a,x [,si]) Filter a vector. y = filter(b,a,x) returns the solution to the following linear, time-invariant difference equation: N M sum a(k+1) y[n-k]= sum b(k+1) x[n-k] = 0 k=0 k=0 where N=length(a)-1 and M=length(b)-1. [y, sf] = filter(b,a,x,si) sets the initial state of the system, si, and returns the final state, sf. The state vector is a column vector whose length is equal to the length of the longest coefficient vector minus one. If si is not set, the initial state vector is set to all zeros. The particular algorithm employed is known as a transposed Direct Form II implementation.

for 1<=n<=length(x)

La funcin freqz() evala la respuesta en frecuencia de un sistema que viene denido por o u una ecuacin en diferencias. Permite de esta forma evaluar la transformada de respuestas o impulsionales de duracin innita, cuando estas se corresponden con sistemas racionales, o lo o que es lo mismo, denidos por ecuaciones en diferencias. Permite calcular la respuesta entre 0 y o entre 0 y 2:

58

PRACTICA 4. LA TRANSFORMADA DE FOURIER function [H, w] = freqz(b,...) Computes the frequency response of a filter. [H,w] = freqz(b) returns the complex frequency response h of the FIR filter with coefficients b. The response is evaluated at 512 angular frequencies between 0 and pi. w is a vector containing the 512 frequencies. [H,w] = freqz(b,a) returns the complex frequency response of the rational IIR filter whose numerator has coefficients b and denominator coefficients a. [H,w] = freqz(b,a,n) returns the response evaluated at n angular frequencies. For fastest computation n should factor into a small number of small primes. [H,w] = freqz(b,a,n,"whole") evaluates the response at n frequencies between 0 and 2*pi.

4.5.

4.5 Ejercicios recomendados


Algunos ejercicios tericos recomendados del cap o tulo 2 de [3] son los siguientes: 21, 25, 27, 34, 35, 36, 37.

59

4.5.

PRACTICA 4. LA TRANSFORMADA DE FOURIER

60

También podría gustarte