You are on page 1of 36

LICENCIATURA EM ENGENHARIA DE SISTEMAS DE TELECOMUNICAES E ELECTRNICA

Apontamentos de Anlise de Sinais

8
Prof. Jos Amaral Verso 3.0 19-05-2003 Seco de Comunicaes e Processamento de Sinal ISEL-CEDET, Gabinete C jda@isel.pt

Mdulo

ndice
OBJECTIVOS ...................................... 1 1. DFT (TRANSFORMADA DISCRETA DE FOURIER) ................ 2 DFT............................................................... 2 EXEMPLO 1.1 ............................................... 2 A DFT E A SF DE SINAIS DISCRETOS PERIDICOS .................................................. 2 EXEMPLO 1.2 ............................................... 2 A DFT E A TF DE SINAIS DISCRETOS NO PERIDICOS .................................................. 3 EXEMPLO 1.3 ............................................... 3 A DFT E A SF DE SINAIS CONTNUOS PERIDICOS .................................................. 3 EXEMPLO 1.4 ............................................... 3 A DFT E A TF DE SINAIS CONTNUOS NO PERIDICOS......................................... 4 EXEMPLO 1.5 ............................................... 4 MATLAB 8.1......................................... 5 DFT............................................................... 5 EXEMPLO 1................................................... 5 EXEMPLO 2................................................... 5 A DFT E A TFSD........................................ 6 EXEMPLO 3................................................... 6 EXEMPLO 4................................................... 7 REPRESENTAO EM [ , ] ...............7 EXEMPLO 5................................................... 7 X[N] DEFINIDO NO EM [0, N-1] TRANSLAO CIRCULAR ............................ 8 EXEMPLO 6................................................... 8 AUMENTO DA DENSIDADE DE AMOSTRAS DA TF .......................................................... 10 EXEMPLO 7................................................. 10 EXEMPLO 8................................................. 11 EXEMPLO 9................................................. 12 MATLAB 8.2........................................14 A DFT E A TFSC NO PERIDICOS ...... 14 EXEMPLO 1................................................. 14 EXEMPLO 2................................................. 16 EXEMPLO 3................................................. 17 EXEMPLO 4................................................. 18 MATLAB 8.3....................................... 20 A DFT E A SF DE SINAIS CONTNUOS PERIDICOS................................................ 20 EXEMPLO 1................................................. 20 A DFT E A TF DE SINAIS CONTNUOS PERIDICOS................................................ 22 EXEMPLO 2................................................. 22 JANELA DE OBSERVAO ........................ 23 MATLAB 8.4 ....................................... 25 EXEMPLO 1................................................. 25 APNDICE 1: DFT (TRANSFORMADA DISCRETA DE FOURIER) ......................................... 26 DFT............................................................. 26 A DFT E A SF DE SINAIS DISCRETOS PERIDICOS................................................ 27 A DFT E A TF DE SINAIS DISCRETOS NO PERIDICOS................................................ 27 ESPECTRO DE SINAIS CONTNUOS AMOSTRADOS ............................................. 28 TEOREMA DA AMOSTRAGEM .................. 29 A DFT E A SF DE SINAIS CONTNUOS PERIDICOS................................................ 30 A DFT E A TF DE SINAIS CONTNUOS NO PERIDICOS ...................................... 31 APNDICE 2: EXEMPLOS DE CLCULO DA DFT........................... 32 EXEMPLO 1................................................. 32 EXEMPLO 2................................................. 33 FICHA DE AVALIAO M8............. 34 GRUPO C ........................................... 34 EXERCCIO 1 .............................................. 34 GRUPO B ........................................... 34 EXERCCIO 2 .............................................. 34 GRUPO A ........................................... 34 EXERCCIO 3 .............................................. 34 GRUPO AA......................................... 34 EXERCCIO 4 .............................................. 34

A N L I S E

D E

S I N A I S

8
DFT
T P I C O S

Mdulo

DFT A DFT e a SF de sinais discretos peridicos A DFT e a TF de sinais discretos no peridicos A DFT e SF de sinais contnuos peridicos A DFT e a TF de sinais contnuos no peridicos

presenta-se neste Mdulo a DFT Transformada Discreta de Fourier. desenvolvida em Apndice a relao desta transformao com a SF de sinais discretos peridicos, com a TF de sinais discretos no peridicos, com a SF de sinais contnuos peridicos e com a TF de sinais contnuos no peridicos.

Os principais resultados deduzidos so apresentados no incio do Mdulo, seguindo-se um grande conjunto de exemplos de aplicao, todos eles baseados na utilizao do Matlab para clculo dos coeficientes da DFT, nomeadamente atravs da utilizao da funo FFT. Para alm de exemplos que procuram esclarecer a relao da DFT com as diversas transformaes vistas em Mdulos anteriores, so ainda dados exemplos que procuram dar ao aluno sensibilidade relativamente interpretao dos resultados alcanados.

Objectivos
No fim deste mdulo o aluno dever :

1. Saber calcular a DFT de um sinal discretos. 2. Saber calcular e interpretar a SF de um sinal discreto peridico a partir dos

coeficientes da sua DFT.


3. Saber calcular e interpretar a TF de um sinal discreto no peridico a partir

dos coeficientes da sua DFT. 4. Saber calcular e interpretar a SF de um sinal contnuo peridico a partir dos coeficientes da DFT de um conjunto de amostras desse sinal. 5. Saber calcular e interpretar a TF de um sinal contnuo no peridico a partir dos coeficientes da DFT de um conjunto de amostras desse sinal. 6. Saber calcular a e interpretar TF de um sinal contnuo peridico a partir dos coeficientes da DFT de um conjunto de amostras desse sinal.

A N L I S E

D E

S I N A I S

1. DFT (Transformada Discreta de Fourier)


2

DFT
Define-se a DFT Transformada Discreta de Fourier de um qualquer sinal discreto x [n ] , descrito por uma sequncia finita de N valores, no intervalo [0, N 1] , como
X [k] =
N 1 n =0

1.8 1.6 1.4 1.2 1 0.8 0.6

x[n]e

jkon

0.4 0.2 0 1 2 3 4 5 6 7 8 9 10 11

, com 0 = 2 N . A partir da sequncia de N valores que constitui a DFT do sinal, este pode ser reconstrudo por
x [n] = 1 N
N 1 k =0

X [k]e jk n
o

2 1.8 1.6 1.4 1.2 1 0.8

, com k [0, N 1] .

Exemplo 1.1

0.6 0.4 0.2 0 0 2 4 6 8 10 12

A figura M8.1 mostra os N = 12 valores do sinal x[n ] = 0.5 n ( [n] u [n 12]) e os u respectivos N = 12 valores correspondentes aos mdulos dos coeficientes da sua DFT, X [k] .

Figura M8.1
1.5

A DFT e a SF de sinais discretos peridicos


Os coeficientes da SF de um sinal discreto peridico x [n ] definido por N amostras do seu perodo fundamental, n [0, N 1] , e os coeficientes da sua DFT esto relacionados por
Ck = 1 X [k] N

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -20

Exemplo 1.2
A figura M8.2 mostra um perodo do sinal discreto x [n ] = cos [ 0 n ] + 0.5 cos [4 0 n] , com 0 = 2 N = 20 , ou seja N = 40 , e os coeficientes da SF, calculados com base nos coeficiente da DFT, Ck = X [k] N , representados no intervalo [ N 2 , N 2] .

-15

-10

-5

10

15

20

Figura M8.2

Prof. Jos Amaral

M8 - 2

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

A DFT e a TF de sinais discretos no peridicos


Dado um sinal discreto no peridico x [n ] definido por N amostras, n [0, N 1] , os coeficientes da DFT desse sinal correspondem a amostras da sua TF, X() , nos pontos
= k 0 X(k 0 ) = X [k]

2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 -3 -2 -1 0 1 2 3

com 0 = 2 N .

1.5

Exemplo 1.3
A figura M8.3 mostra o mdulo e o argumento da TF do sinal y [n] = 0.5n u [n ] no intervalo [ , ] , conforme visto no Mdulo 7
Y () = e (e 0.5) , a que se sobreps o mdulo e o argumento dos coeficientes X [k] ,
j j

0.5

-0.5

u do sinal x[n ] = 0.5 n ( [n] u [n 12]), que se mostrou na figura M8.1, redistribudos no intervalo [ , ] . Como pode ver, a sequncia de valores da DFT correspondem a amostra da TF do sinal y [n ] .

-1

-1.5 -3 -2 -1 0 1 2

Figura M8.3

1.5

A DFT e a SF de sinais contnuos peridicos


Admitindo que um sinal contnuo peridico, de perodo T0 , de banda limitada, X() = 0 , > M , e se verifica s > 2 M , sendo M a frequncia mxima do sinal e s a frequncia de amostragem, os coeficientes da sua SF, Ck , podem ser calculados a partir dos coeficientes da DFT, X [k] , do sinal discreto constitudo pela sequncia de N = T0 Ts amostras do sinal contnuo obtidas em intervalos equiespaados, xd [n ] = x(nTs ) , com n [0, N 1] , sendo
Ck = 1 X [k] N

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

0.6 0.5 0.4

Exemplo 1.4
A figura M8.4 mostra um perodo do sinal contnuo peridico x(t) = cos( 1 t) + 0.5 cos(4 1 t) , com 1 = 2 40 , a que se sobreps o sinal x(nTs ) = cos(1nTs ) + 0.5 cos(4 1nTs ) , com s = 6 10 , e os coeficientes da DFT do sinal discreto xd [n ] = x(nTs ) , constitudo por N = 12 amostras equiespaadas do sinal
Prof. Jos Amaral M8 - 3

0.3 0.2 0.1 0 -6

-4

-2

Figura M8.4

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

contnuo,

[ N

2 , N 2] .

representados

no

intervalo

2.2 2 1.8 1.6

A DFT e a TF de sinais contnuos no peridicos


Admitindo que um sinal contnuo no peridico de banda limitada, X() = 0 , > M , e se verifica s > 2 M , sendo M a frequncia mxima do sinal e s a frequncia de amostragem, obtemos amostras da TF do sinal, X() , nos pontos = k 0 Ts , calculando os coeficientes da DFT, X [k] , do sinal discreto constitudo pela sequncia de N amostras do sinal contnuo, obtidas em intervalos equiespaados, xd [n ] = x(nTs ) , com n [0, N 1] , sendo
k 0 X T s = Ts X [k]

1.4 1.2 1 0.8 0.6 0.4 0.2 -20 -15 -10 -5 0 5 10 15 20

5 4

3 2

Exemplo 1.5
A figura M8.5 mostra: o sinal contnuo x(t) = 2 sinc 2 (t ) ; a sua TF X() = 2( 2) , x(t) portanto um sinal de banda limitada com M = 2 ; o sinal discreto
x(nTs ) = 2 sinc 2 (nTs ) , composto por N = 40 amostras retiradas do sinal contnuo com uma frequncia de amostragem s = 2 ; e os N = 40 coeficientes da DFT do sinal

-3

-2

-1

2.2 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 -20 -15 -10 -5 0 5 10 15 20

discreto devidamente escalado na amplitude e no eixo de frequncias.

-3

-2

-1

Figura M8.5

Prof. Jos Amaral

M8 - 4

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Matlab 8.1
Recorra ao Matlab para calcular a DFT dos sinais que se mostram na figura 8.6 A DFT de uma sequncia finita, x [n ] , dada por
X [k] =
N 1 n =0

DFT Exemplo 1

6 5 4 3 2 1 0 -1 -2 -3 -1

x[n]e jk n
o

, podendo ser facilmente calculada recorrendo funo fft. Assim, temos para x [n ]
x=[2 2 -1] Xk=fft(x) Xk = 3.0000 1.5000 - 2.5981i 1.5000 + 2.5981i

6 5 4 3 2 1 0 -1 -2 -3 -1

, para y [n ]
y=[4 3 2 1] Yk=fft(x) Yk = 10.0000 2.0000

2.0000 - 2.0000i 2.0000 + 2.0000i


6 5 4 3 2 1 0 -1 -2 -3 -5

,e para x2 [n ]
x2=[5 -1 -2 3] X2k=fft(x2) X2k = 5.0000 7.0000 + 4.0000i 1.0000 7.0000 - 4.0000i

x2[n]

Compare com os resultados analiticamente no Apndice 2.

obtidos

Note que qualquer dos 3 sinais est definido no intervalo n [0, N 1] pelo que, estando nas condies da definio da DFT, no necessrio qualquer cuidado na utilizao da funo fft.

-4

-3

-2

-1

Figura M8.6
6

Exemplo 2
Calcule e represente os coeficientes da DFT do sinal discreto x [n ] representado na figura M8.7 Comeamos por definir a sequncia de N = 10 valores do sinal
x=[0 0 0 2 1 3 1 2 0 0]; N=length(x);

Figura M8.7

, calculamos de seguida os coeficientes da DFT


Prof. Jos Amaral M8 - 5 Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

do sinal recorrendo funo fft,


Xk=fft(x)
9 8 7 6 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 10

, e finalmente procedemos representao do mdulo e do argumento dos coeficientes, em funo do ndice k , conforme se mostra na figura M8.8
k=0:N-1; figure(1) stem(k,abs(Xk),'filled'); grid on axis([0 N 0 1.1*max(abs(Xk))]); figure(2) stem(k,angle(Xk),'filled'); grid on; axis([0 N -4 4]);

A DFT e a TFSD Exemplo 3


Calcule e represente a TF do sinal discreto descrito na figura M8.7 Recorrendo biblioteca simblica do Matlab, e pr-definindo os valores e n e x [n ] para simplificar o procedimento simblico, conforme visto em M7-17 Exerccio 3, temos
syms w n x=[0 0 0 2 1 3 1 2 0 0]; N=length(x); n=0:N-1; xb=subs(sym('exp(-j*w*n)')); X=simplify(xb*x') X = 2*exp(-3*i*w)+exp(-4*i*w) +3*exp(-5*i*w)+exp(-6*i*w) +2*exp(-7*i*w)

3 2 1 0 -1 -2 -3 -4

10

Figura M8.8

9 8 7 6 5

No vale a pena tentar simplificar manualmente a expresso uma vez que apenas estamos interessados na representao grfica. Assim, podemos proceder de imediato representao do mdulo e do argumento de X ( ), em funo de [0, 2] , conforme se mostra na figura M8.9
wg=0:0.01:2*pi; Xg=double(subs(X,w,wg)); figure(55) plot(wg,abs(Xg)); grid on; axis([min(wg) max(wg) 0 1.1*max(abs(Xg))]); figure(56) plot(wg,angle(Xg)); grid on; axis([min(wg) max(wg) -4 4]);

4 3 2 1 0 0 1 2 3 4 5 6

4 3 2 1 0 -1 -2 -3 -4

Figura M8.9

Prof. Jos Amaral

M8 - 6

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Exemplo 4
Sobreponha os coeficientes da DFT calculados no Exemplo 2 TF calculada no Exemplo 3. De modo a identificar melhor a relao entre os coeficientes da DFT do sinal x [n ] e a sua TF podemos facilmente proceder sobreposio da representao grfica das duas grandezas, bastando para isso representar X [k] em funo de . Dado que cada um dos coeficientes existe para = k 0 , bata fazer
w0=2*pi/N; figure(55); hold on; stem(w0*k,abs(Xk),'filled'); hold off; pause figure(56); hold on stem(w0*k,angle(Xk),'filled'); hold off; pause
9 8 7 6 5 4 3 2 1 0 0 1 2 3 4 5 6

4 3 2 1 0

, obtendo-se assim os grficos da figura M8.10. Como pode ver, a sequncia de valores da DFT correspondem a amostra da TF do sinal.

-1 -2 -3 -4

Representao em [ , ] Exemplo 5

Ainda relativamente ao sinal x [n ] definido na figura 8.7, represente a sua TF no intervalo [ , ] e sobreponha-lhe os coeficientes da DFT.
9 8 7 6 5 4 3 2 1 0 -3 -2

Figura M8.10

Como sabe, a TF de um sinal discreto peridica de 2 , correspondendo as componentes prximas de 0 e 2 s baixas frequncias e as componentes prximas de e s altas frequncias. Para uma mais fcil interpretao do espectro do sinal, comum que a representao de X ( ) seja feita para [ , ] . O procedimento para proceder representao de X ( ) neste intervalo imediato, dado que basta calcular os respectivos valores da expresso simblica
... wg=-pi:0.01:pi; Xg=double(subs(X,w,wg)); ...

-1

4 3 2 1 0

Relativamente aos coeficientes da DFT, e embora a funo fft assuma k [0, N 1] , o procedimento igualmente simples, existindo uma funo Matlab definida para esse efeito. A funo fftshift quando aplicada a um vector v
v = [0, 1, L , N 2 1, N 2, L , N 1]

-1 -2 -3 -4

-3

-2

-1

Figura M8.11

separa a segunda metade do vector e concatenaa no incio, originando o vector u

Prof. Jos Amaral

M8 - 7

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

u = [N 2, L , N 1 , 0, 1, L , N 2,]

(apesar do nome, a funo pode, evidentemente, ser usada independentemente do contexto do clculo de uma fft). Atendendo periodicidade inerente aos coeficientes da DFT (recorde a relao entre a DFT e a SF), basta ento fazer
... Xk=fft(x); Xk=fftshift(Xk); k=-N/2:N/2-1; ...

Para uma mais fcil interpretao, repetem-se seguidamente todo os procedimentos necessrios representao pedida
syms w n x=[0 0 0 2 1 3 1 2 0 0]; N=length(x); n=0:N-1; % X(w) %%%%% xb=subs(sym('exp(-j*w*n)')); X=simplify(xb*x'); wg=-pi:0.01:pi; Xg=double(subs(X,w,wg)); figure(57); plot(wg,abs(Xg));grid on; axis([min(wg) max(wg) 0 1.1*max(abs(Xg))]); figure(58); plot(wg,angle(Xg)); grid on; axis([min(wg) max(wg) -4 4]); % X[k] %%%%% Xk=fft(x); Xk=fftshift(Xk); k=-N/2:N/2-1; w0=2*pi/N; figure(57); hold on; stem(w0*k,abs(Xk),'filled'); hold off; pause figure(58); hold on stem(w0*k,angle(Xk),'filled'); hold off;

Obtendo-se assim a representao no intervalo [ , ] , que se mostra na figura 8.11.

x[n] definido no em [0, N-1] Translao circular Exemplo 6


Considere o sinal discreto y [n ] representado na figura M8.12. Represente a sua TF no intervalo [ , ] e sobreponha-lhe os coeficientes da DFT.
n [0, N 1]
6

O sinal no est definido para

pelo que no podemos utilizar de imediato a funo fft. Note que no dada informao temporal funo fft, assumindo-se que

n [0, N 1] ,

0 -5

-4

-3

-2

-1

sendo que de igual modo se assume que os coeficientes devolvidos so definidos para

k [0, N 1] .

Figura M8.12

Prof. Jos Amaral

M8 - 8

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Note que a informao temporal apenas tem implicaes no espectro de fase, no alterando em nada o espectro de amplitude.

9 8 7 6 5 4 3 2 1 0 -3 -2 -1 0 1 2 3

O sinal y [n ] definido na figura M8.12 uma verso em avano do sinal x [n ] definido na figura M8.7.
y [n ] = x[n + 5] = x[n + N 2]

Se representarmos a sua TF
syms w n y=[0 0 0 2 1 3 1 2 0 0]; N=length(y); n=-N/2:N/2-1 xb=subs(sym('exp(-j*w*n)')); Y=simplify(xb*y') Y = 2*cos(w)+4*cos(2*w)+3 wg=-pi:0.01:pi; Yg=double(subs(Y,w,wg)); ...

4 3 2 1 0 -1 -2 -3 -4

obtemos os grficos que se mostram na figura M8.13. Compare-os com a com a representao da TF do sinal x [n ] vistos nos exemplos anteriores. Note que o espectro de amplitude igual, apenas existindo diferena no espectro de fase. Para podermos calcular os coeficientes da DFT do sinal y [n ] , e dados que no podemos dar informao temporal fft, necessrio proceder a uma translao do sinal. Note que, e independentemente do sinal y [n ] tal como representado na figura M8.12 ser ou no um sinal de energia, isto ser nulo fora do intervalo [ 5, 4] , para procedermos a uma translao de modo a calcular os coeficientes da DFT de um sinal que no est definido no intervalo n [0, N 1] , e dado o carcter peridico das funes de base, devemos considerar a verso peridica do sinal, tal como se mostra na figura M8.14. Dada esta representao, basta seleccionar os valores que o sinal assume no intervalo n [0, N 1] , como se mostra na figura M8.15, para obtermos a verso transladada do sinal original. A operao corresponde a uma translao circular no intervalo n [0, N 1] e pode ser feita recorrendo funo mod
x=[0 0 0 2 1 3 1 2 0 0]; N=length(x); n=-N/2:N/2-1; m=min(n); n=0:N-1 n=mod(n-m,N) x=x(n+1)

-3

-2

-1

Figura M8.13
6

0 -15

-10

-5

10

Figura M8.14

Figura M8.15

Prof. Jos Amaral

M8 - 9

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

figure(562) nn=0:N-1; stem(nn,x,'filled'); grid on; axis([min(nn) max(nn) min(x) 2*max(x) ]);

9 8 7 6

Assim, de modo a obter a representao dos coeficientes da DFT sobrepostos TF do sinal, como se mostra na figura M8.16, podemos fazer
syms w n x=[0 0 0 2 1 3 1 2 0 0]; N=length(x); n=-N/2:N/2-1; % X(w) xb=subs(sym('exp(-j*w*n)')); X=simplify(xb*x'); wg=-pi:0.01:pi; Xg=double(subs(X,w,wg)); figure(57); plot(wg,abs(Xg)); grid on; axis([min(wg) max(wg) 0 1.1*max(abs(Xg))]); figure(58); plot(wg,angle(Xg)); grid on; axis([min(wg) max(wg) -4 4]); % shift circular m=min(n); n=0:N-1; n=mod(n-m,N); x=x(n+1); % X[k] Xk=fft(x); Xk=fftshift(Xk); k=-N/2:N/2-1; w0=2*pi/N; figure(57); hold on; stem(w0*k,abs(Xk),'filled'); hold off; figure(58); hold on stem(w0*k,angle(Xk),'filled'); hold off; pause

5 4 3 2 1 0 -3 -2 -1 0 1 2 3

4 3 2 1 0 -1 -2 -3 -4

-3

-2

-1

Figura M8.16

9 8 7

Aumento da densidade de amostras da TF Exemplo 7


Considere de novo o sinal que se mostra na figura M8.7 e a sua TF e coeficientes da DFT que se mostra na figura M8.11. Sendo o sinal definido por N = 10 pontos, obtivemos 10 amostras da sua TF, o que d uma ideia pobre da sua evoluo. Como obter mais amostra da TF do sinal?, obviamente aumentando o nmero de coeficientes da DFT calculados. Note que os zeros direita do sinal no contribuem com qualquer informao para a TF do sinal (quer para o espectro de amplitude quer para o espectro de fase), apenas contribuindo para o nmero de amostra da DFT que calculada. Consideremos um sinal idntico ao da figura M8.7, mas desprezemos os zeros direita dos valores significativos. Procedendo como no Exemplo 7
x=[0 0 0 2 1 3 1 2]; N=length(x); n=-5:2 ...

6 5 4 3 2 1 0 -3 -2 -1 0 1 2 3

4 3 2 1 0 -1 -2 -3 -4

-3

-2

-1

Figura M8.17

Prof. Jos Amaral

M8 - 10

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Observe a figura M8.17. Como pode verificar a TF deste sinal idntica ao do sinal da figura M8.11. O nmero de amostra da DFT agora menor ( N = 8 ), donde resulta que a interpretao da TF a partir das amostra ainda mais pobre. Procedamos agora ao processo inverso, isto , juntemos zeros direita do sinal original. A figura M8.18 mostra o sinal original ao qual se juntaram, direita, 22 zeros. Ficamos assim com N = 30 amostras do sinal, pelo que passamos a poder calcular 30 amostras da sua TF. Procedendo como no Exemplo 7
Z=zeros(1,22) x=[0 0 0 2 1 3 1 2 Z]; N=length(x); n=0:N-1 ...

10

15

20

25

Figura M8.18

9 8 7 6 5 4 3 2 1 0 -3 -2 -1 0 1 2 3

, obtemos os grficos que se mostram na figura M8.19, dos quais fica bastante mais clara a evoluo da TF do sinal a partir da observao das suas amostras.
Da juno de zeros direita das amostras de um sinal discreto no resulta qualquer alterao na TF do sinal,

X() , mas resulta

uma maior densidade de amostras da TF obtidas a partir do clculo da sua DFT,

X [k] X(k 0 ) .

4 3 2 1 0 -1 -2 -3 -4

O algoritmo de clculo da fft,

cuja anlise est

bastante mais eficiente quando o nmero de amostras um mltiplo de 2. Tendo este facto em ateno,

fora do mbito desta cadeira,

podemos sistematizar o clculo dos coeficientes da DFT de um sinal discreto, com o objectivo de obter amostras da TF do sinal, que nos dem uma ideia clara da sua evoluo, conforme se descreve no exemplo seguinte.

-3

-2

-1

Exemplo 8
Considere
x [n ] = 0.5
(n 4)

Figura M8.19

(u [n + 4] u [n 6])

sinal

discreto

500 450 400 350 300 250 200

representado na figura M8.20. Represente a sua TF no intervalo [ , ] e sobreponha-lhe 64 coeficientes da DFT. Resumindo os procedimentos vistos nos exemplos anteriores, temos
syms w n n=-8:5; x=0.5.^(n-4).*(Heaviside(n+4)Heaviside(n-6)); N=length(x); % x[n] figure(1) stem(n,x,'filled'); grid on

150 100 50 0 -8 -6 -4 -2 0 2 4

Figura M8.20

Prof. Jos Amaral

M8 - 11

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

axis([min(n) max(n) min(x) 2*max(x) ]); % X(w) xb=subs(sym('exp(-j*w*n)')); X=simplify(xb*x'); wg=-pi:0.01:pi; Xg=double(subs(X,w,wg)); figure(2) plot(wg,abs(Xg)); grid on; axis([min(wg) max(wg) 0 1.1*max(abs(Xg))]); figure(3) plot(wg,angle(Xg)); grid on; axis([min(wg) max(wg) -4 4]); % X[k] L=6; M=2^L m=min(n); Z=M-N; x=[x zeros(1,Z)]; n=0:M-1; n=mod(n-m,M); x=x(n+1); Xk=fft(x); Xk=fftshift(Xk); k=-M/2:M/2-1; w0=2*pi/M; figure(2); hold on; stem(w0*k,abs(Xk),'.r'); hold off; figure(3); hold on stem(w0*k,angle(Xk),'.r'); hold off;

500

400

300

200

100

-3

-2

-1

4 3 2 1 0 -1 -2 -3 -4

-3

-2

-1

Obtemos assim os grficos que se mostram na figura M8.21. ento possvel, a partir do conhecimento de N amostras de um sinal discreto, traar o grfico da TF desse sinal com base em M amostras calculadas por recurso fft, dispensando portanto a utilizao da biblioteca simblica. Note que a simulao da evoluo contnua de X() to rigorosa quanto se deseje, bastando escolher um nmero M de amostras suficientemente grande.

Figura M8.21

Exemplo 9
Represente sinal discreto x [n ] = 0.5 ( [n ] u [n 10]), no intervalo u [ , ] .
n

TF

do

2 1.8 1.6

Podemos comear por definir uma funo que, com base num nmero N de amostras, nos permita traar a TF de um sinal discreto x [n ] . O sinal poder estar definido em qualquer intervalo, ou seja, no necessariamente [0, N 1] , e o grfico traado com base em M pontos, desejavelmente um mltiplo de 2 ( M = 2L )

1.4 1.2 1 0.8 0.6 0.4 0.2 0 -3 -2 -1 0 1 2 3

Figura M8.22

Prof. Jos Amaral

M8 - 12

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

function Xk = plotTFSD(x,n,M)
2

N=length(x); m=min(n); x=[x zeros(1,M-N)]; n=0:M-1; n=mod(n-m,M); x=x(n+1); Xk=fft(x); Xk=fftshift(Xk); k=-M/2:M/2-1; w0=2*pi/M; figure(1); plot(w0*k,abs(Xk)); axis([-pi pi 0 1.1*max(abs(Xk))]); grid on; figure(2); plot(w0*k,angle(Xk)); axis([-pi pi -1.1*pi 1.1*pi]); grid on;

0 -1 -2

-3 -3 -2 -1 0 1 2 3

Figura M8.23

Podemos agora fazer


n=0:9; x=0.5.^n.*(Heaviside(n)Heaviside(n-10)); plotTFSD(x,n,2^9)

Obtendo assim os grficos do espectro de amplitude e de fase que se mostram nas figuras M8.22 e M8.23.

Prof. Jos Amaral

M8 - 13

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Matlab 8.2
A DFT e a TFSC no peridicos Exemplo 1
Amostre o sinal contnuo
t x(t) = 2 sinc
2
2.2 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 -25 -20 -15 -10 -5 0 5 10 15 20 25

com

frequncia de amostragem fs = 5 2 Hz , represente o espectro de amplitude do sinal amostrado a partir do clculo dos coeficientes da DFT, e compare-o com o espectro de amplitude do sinal contnuo. Vamos comear por representar o sinal, recolhendo amostras suficientemente prximas
ws=5; fs=ws/2/pi; ts=1/fs; % x(t) t=-20*ts:ts/10:20*ts; x=2*sinc(t/pi).^2; figure(10);plot(t,x) axis([min(t) max(t) 1.1*min(x) ... 1.1*max(x)]); grid on

uma

-6 -4 -2 0 2 4 A TF do sinal x(t) poderia ser obtida recorrendo biblioteca simblica. Neste caso Figura M8.24 particular no h necessidade dado tratar-se de uma TF conhecida. Basta atender propriedade da dualidade da TF para reconhecer que

X() = 2 2

Podemos representar graficamente o espectro de amplitude do sinal


% X(w) w=-3*pi*fs:fs/10:3*pi*fs; X= pi*(2+w).*(Heaviside(w+2)-Heaviside(w))... + pi*(2-w).*(eaviside(w-2)-Heaviside(w)); figure(11);plot(w,abs(X)) axis([min(w) max(w) 0 ... 1.1*max(abs(X))]); grid on

A figura M8.24 mostra os grficos assim obtidos. Note que o sinal x(t) um sinal de banda limitada, com M = 2 rad s 1 . Assim, se amostrar-mos o sinal a uma frequncia superior a 2 M , que o caso do enunciado, dado que s = 2fs = 5 = 2.5 M , podemos calcular amostras de X() calculando os coeficientes X [k] do sinal amostrado. Vamos ento amostrar o sinal em instantes mltiplos do perodo de amostragem
% x(nts) nts=min(t):ts:max(t)-ts; xnts=2*sinc(nts/pi).^2; figure(10); hold on; stem(nts,xnts,'r','filled'); hold off;

A figura M8.25 mostra o sinal x(nTs ) sobreposto ao sinal x(t) . Obtivemos assim N = 40 amostras do sinal contnuo.
Prof. Jos Amaral M8 - 14 Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

O sinal que estamos a analisar no nulo fora do intervalo em que recolhemos as amostras, pelo que x(nTs ) poderia no ser representativo de x(t) . Num prximo exemplo analisaremos esta questo. No caso em anlise, dada a evoluo do sinal, a questo no relevante. Podemos agora calcular os coeficientes da DFT do sinal discreto x [n ] = x(nTs )
% x(n) N=length(nts); n=min(nts)/ts:N/2-1; x=xnts; % x[k] M=2^10 N=length(x); m=min(n); x=[x zeros(1,M-N)]; n=0:M-1; n=mod(n-m,M); x=x(n+1); Xk=fft(x); Xk=fftshift(Xk); k=-M/2:M/2-1;

Nota:

2.2 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 -25 -20 -15 -10 -5 0 5 10 15 20 25

Figura M8.25

Dada a relao entre X [k] e o espectro do sinal contnuo


k 0 X T s = Ts X [k]

0 -2.5

-2

-1.5

-1

-0.5

0.5

1.5

2.5

Figura M8.26

, podemos agora representar as amostras de X() , sobrepondo-as ao grfico de X() obtido a partir da expresso terica
% Xc(w) w0=2*pi/M; wc=w0*k/ts Xc=ts*abs(Xk); Xcm=max(Xc); figure(11); hold on; plot(wc,Xc,'r','LineWidth',2); axis([-pi*fs pi*fs 0 1.1*Xcm]); grid on;

Obtemos assim o grfico que se mostra na figura M8.26. Note que aumentmos o nmero de pontos ( M = 210 ) de clculo da DFT de modo a aumentar o nmero de amostras da TF, tal como se explicou nos exemplos anteriores. Note ainda que o domnio de representao vlido de X() a partir de X [k] se restringe ao perodo fundamental do sinal amostrado, [ s 2 , s 2] . Conforme se mostra no Apndice 1, o sinal amostrado tem um espectro
X p () = 1 X( n s ) Ts n =

corresponde sobreposio de rplicas da TF do sinal contnuo x(t) , escaladas de 1 Ts e trasladadas de mltiplos da frequncia de amostragem. Vamos sobrepor as duas rplicas contguas ao espectro obtido anteriormente
k=-3*M/2:3*M/2-1; Xc3=[Xc Xc Xc]; figure(11); hold on; plot(w0*k/ts,Xc3,'r'); axis([min(w) max(w) 0 1.1*Xcm]); plot([-pi*fs pi*fs ; -pi*fs pi*fs], [0 0 ; 1.1*Xcm 1.1*Xcm],':k'); hold off

Prof. Jos Amaral

M8 - 15

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

, obtendo assim o grfico da figura M8.27, representativo de Ts X p () , em que se observa que o espectro (de amplitude) no perodo fundamental no alterado pela presena das rplicas, em resultado de se verificar s = 5 > 2 M .

Exemplo 2
Repita o exemplo anterior para frequncias de amostragem s = 4 e 3 rad s 1 . Especificando s = 4 e repetindo os procedimentos do exemplo 1 obtemos os grficos de X() e de Ts X p () que se mostram na figura M8.28. Note como, sendo s = 2 M , se atingiu o limite da frequncia de amostragem para que os espectros das rplicas contguas no interfiram. Especificando s = 3 e repetindo os procedimentos do exemplo 1 obtemos os grficos de X() e de Ts X p () que se mostram na figura M8.29. Note como, sendo s < 2 M , os espectros se sobrepem, no sendo agora possvel determinar X() a partir do sinal amostrado.

-6

-4

-2

Figura M8.27

0 -2

-1.5

-1

-0.5

0.5

1.5

0 -6

-4

-2

Figura M8.28

0 -1.5

-1

-0.5

0.5

1.5

-4

-3

-2

-1

Figura M8.29

Prof. Jos Amaral

M8 - 16

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Exemplo 3
Amostre o sinal contnuo
t 2 x(t) = 10
1 0.8

com

frequncia de amostragem fs = 5 2 Hz , represente o espectro de amplitude do sinal amostrado a partir do clculo dos coeficientes da DFT, e compare-o com o espectro de amplitude do sinal contnuo. Procedendo como no Exemplo 1, apenas com algumas pequenas alteraes associadas preciso dos grficos a obter, vamos comear por representar o sinal
... t=-30*ts:ts/20:30*ts; x=Heaviside(t+4)-Heaviside(t-6); ...

uma

0.6

0.4

0.2

-30

-20

-10

10

20

30

10 9 8 7 6 5 4 3 2 1 0 -6 -4 -2 0 2 4 6

Tratando-se novamente de uma TF conhecida


j2 X() = 10 sinc 10 e 2

Podemos representar graficamente o espectro de amplitude do sinal


... X=10*sinc(10*w/2/pi).*exp(-j*w*2); ...

Figura M8.30

A figura M8.30 mostra os grficos assim obtidos. Note que o sinal x(t) no um sinal de banda limitada, pelo no existe nenhuma frequncia de amostragem que nos permita calcular com exactido as amostras de X() calculando os coeficientes X [k] do sinal amostrado. Amostremos o sinal em instantes mltiplos do perodo de amostragem, procedendo como no Exemplo 1
... xnts=Heaviside(nts+4)Heaviside(nts-6); ...

0.8

0.6

0.4

0.2

-30

-20

-10

10

20

30

Figura M8.31
10

A figura M8.31 mostra o sinal x(nTs ) sobreposto ao sinal x(t) . Obtivemos assim N = 60 amostras do sinal contnuo. Podemos agora calcular os coeficientes da DFT do sinal discreto x [n ] = x(nTs ) e representar as amostras de X() , sobrepondo-as ao grfico de X() obtido a partir da expresso terica . O procedimento no tem qualquer alterao relativamente ao Exemplo 1. Obtemos assim o grfico que se mostra na figura M8.32.,
Prof. Jos Amaral M8 - 17

0 -2.5

-2

-1.5

-1

-0.5

0.5

1.5

2.5

Figura M8.32

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

relativamente ao domnio de representao vlido, [ s 2 , s 2] . Note como, embora se verifique a coincidncia de valores no lobo principal, logo a partir do 2 lobo clara a diferena entre os valores do espectro terico e do calculado com base em X [k] . Vamos agora sobrepor as duas rplicas contguas ao espectro obtido anteriormente, obtendo assim o grfico da figura M8.33.
10

-6

-4

-2

Figura M8.33 No sendo o sinal x(t) um sinal de banda limitada, a sobreposio entre as rplicas no pode ser evitada, deformando o espectro do perodo fundamental [ s 2 , s 2] .

Exemplo 4
Repita o exemplo anterior para uma frequncia de amostragem s = 20 rad s 1 . Especificando s = 20 e repetindo os procedimentos anteriores obtemos os grficos de X() e de Ts X p () que se mostram na figura M8.34.

10

0 -10

-8

-6

-4

-2

10

10

0 -30

-20

-10

10

20

Figura M8.34

Prof. Jos Amaral

M8 - 18

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

A frequncia de amostragem agora suficientemente elevada para que, e embora, naturalmente, no desaparecendo, a influncia das rplicas seja razoavelmente pouco significativa em praticamente todo o perodo fundamental, sendo a evoluo do espectro esboado com base nos coeficientes da DFT bastante satisfatria como aproximao ao espectro do sinal contnuo. Se expandssemos a escala em torno da origem, por exemplo [ 3, 3] , pediramos verificar uma total coincidncia. Observe a figura M8.35.

11 10 9 8 7 6 5 4 3 2 1 0 -3 -2 -1 0 1 2 3

Note assim que, e independentemente da Figura M8.35 utilizao de tcnicas que se vero mais tarde (aps o estudo de Sistemas) o clculo dos coeficientes da DFT permite o conhecimento bastante aproximado do espectro de sinais contnuos, mesmo quando estes no so de banda limitada., desde que a frequncia de amostragem seja suficientemente elevada. No caso particular de um pulso rectangular contnuo, xc (t) centrado na origem, amplitude A , e durao , vimos (pag. M5-32) que a sua TF
X c () = A sinc 2

Para um pulso rectangular discreto, xd [n ] , centrado na origem, amplitude A , e durao 2M + 1 , vimos (pag. M7-13) que a sua TF
sen (2M + 1) 2 X d () = A sen 2

Admitindo que xd [n ] resulta de xc (t) amostrado a uma frequncia s , temos = (2M + 1)Ts e = Ts , pelo que
T sen s 2 T s X d (Ts ) = A Ts sen 2
Admitindo

Ts 2 sen 2

A sinc 2

Ts 2 << 1

T Ts sen s 2 2

pelo que, e simplificando a expresso, obtemos


X d (Ts ) 1 1 A sinc Xc () = Ts 2 Ts

que como pode verificar corresponde relao deduzida na pagina M8-25. Assim, para que seja possvel identificar o espectro de um pulso rectangular contnuo com a sua verso amostrada deve verificar-se Ts 2 << 1 , ou seja 2 << s 2 . Por exemplo, para ajustar os dois espectros at uma frequncia 2 = 8 deveria ser s >> 16 . Compare este resultado com as frequncias de amostragem utilizadas no presente exemplo e os respectivos resultados alcanados.

Prof. Jos Amaral

M8 - 19

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Matlab 8.3
A DFT e a SF de sinais contnuos peridicos Exemplo 1 1.5
Recorrendo DFT, represente graficamente os coeficientes da SF do sinal contnuo peridico
x(t) = cos( 1 t) + 0.5 cos( 2 t)
1

com f1 = 1 2 = 50 Hz = 100 Hz .

f2 = 2 2

0.5

-0.5

O clculo dos coeficientes da SF de um sinal contnuo peridico de banda limitada recorrendo DFT trivial. Como vimos
Ck = 1 X [k] N

-1

0.002 0.004 0.006 0.008

0.01

0.012 0.014 0.016 0.018

0.02

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

devendo o sinal ser amostrado a uma frequncia fs > 2fM . No presente exemplo temos um sinal de banda limitada, sendo fM = f2 = 100 , devendo ento ser a frequncia de amostragem fs > 200 . Podemos escolher fs = 5f2 e comear por representar o sinal e recolher as amostras
f1=50; w1=2*pi*f1; t1=1/f1; f2=100; w2=2*pi*f2; t2=1/f2; fs=5*f2; ts=1/fs; % x(t) t = 0:ts/10:1*t1; x = cos(w1*t)+0.5*cos(w2*t); % x(nTs) nts = 0:ts:1*t1-ts; xn = cos(w1*nts)+0.5*cos(w2*nts); figure(1); plot(t,x,'r'); hold on; plot(nts,xn,'.k'); hold off; grid on

20

40

60

80

100

120

140

160

180

200

Figura M8.36
1.5

0.5

Obtivemos assim N = 10 amostras dos sinal, pelo que podemos calcular de seguida os coeficientes de X [k] . Vamos optar por representar apenas os N 2 = 5 coeficientes positivos e fazer a representao em funo da frequncia
% Ck N=length(xn) X = fft(xn,N); Ck= abs(X)/N; figure(2); f =(0:(N/2-1))*(fs/N); stem(f,Ck(1:((N/2))),'r','filled') grid on

-0.5

-1

0.002 0.004 0.006 0.008

0.01

0.012 0.014 0.016 0.018

0.02

0.7 0.6 0.5 0.4 0.3 0.2 0.1

Obtemos assim os grficos que se mostram na figura M8.36. Como era esperado, podemos ver as riscas correspondentes a cada um dos cosenos, de amplitude igual a metade da amplitude de cada um deles, e posicionadas nas respectivas
Prof. Jos Amaral M8 - 20

100

200

300

400

500

600

700

Figura M8.37

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

frequncias. Embora no presente caso seja intil, j que sabemos que as nicas riscas espectrais existem em f1 e f2 , admita agora que se pretendem obter mais coeficientes da DFT. Podemos optar por aumentar a frequncia de amostragem, por exemplo, fazendo fs = 15f2 no cdigo acima passamos a ter N = 30 coeficientes, obtendo os grficos que se mostram na figura M8.37, ou podemos, mantendo a mesma frequncia de amostragem, aumentar o nmero de perodos observados. Fazendo
... t=0:ts/10:3*t1; ... nts = 0:ts:3*t1-ts; ...

1.5

0.5

-0.5

-1

0.01

0.02

0.03

0.04

0.05

0.06

0.6 0.5 0.4 0.3 0.2 0.1 0

no cdigo acima, passamos a, observando 3 perodos, ter N = 30 coeficientes, obtendo os grficos que se mostram na figura M8.38. Note que
no podemos juntar zeros direita das amostras do sinal. Como o sinal peridico, e dado que para o clculo dos coeficientes da SF suposto que se observe o comportamento do sinal durante um perodo (ou mltiplo), a juno de zeros direita altera o verdadeiro comportamento durante um perodo, no correspondendo os coeficientes assim calculados aos coeficientes do sinal original. Por exemplo, se juntarmos 20 zeros direita do sinal amostrado frequncia fs = 5f2 ... fs=5*f2; ... t = 0:ts/10:3*t1; ... nts = 0:ts:3*t1-ts; xn = cos(w1*nts)+0.5*cos(w2*nts); xn(11:length(xn))=0; ...

50

100

150

200

250

Figura M8.38
1.5

0.5

-0.5

-1

0.01

0.02

0.03

0.04

0.05

0.06

, obtemos os grficos da figura M8.39, onde como pode ver, os coeficientes da SF perderam o significado original. Note que o cdigo anterior tem apenas fim didcticos, nomeadamente permite-nos traar o grfico do sinal sobre o qual estamos a calcular os coeficientes. Poderamos ter mantido o cdigo original,
... fs=5*f2; ... t = 0:ts/10:1*t1; ... nts = 0:ts:1*t1-ts; xn = cos(w1*nts)+0.5*cos(w2*nts);

0.18 0.16 0.14 0.12 0.1 0.08 0.06 0.04 0.02 0 0 50 100 150 200 250

Figura M8.39

Especificando um nmero de coeficientes da DFT a calcular diferente do nmero de


Prof. Jos Amaral M8 - 21 Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

amostras do sinal
... % Ck N=30 X = fft(xn,N); ...

O Matlab junta um nmero de zeros direita do sinal de modo a perfazer o nmero total N de coeficientes que se desejam calcular, sendo o resultado idntico ao anteriormente mostrado. Porqu referir este procedimento, j que parece conduzir a resultados errados? Note que numa situao mais genrica podemos no conhecer o perodo fundamental do sinal e querer conhecer com pormenor a sua composio espectral. Por esta razo, ou simplesmente porque pretendemos generalizar o instrumento de anlise dos sinais, independentemente de serem ou no peridicos, podemos utilizar a DFT para calcular a TF de sinais contnuos peridicos, como se mostra no exemplo seguinte.

A DFT e a TF de sinais contnuos peridicos Exemplo 2


Recorrendo DFT, represente graficamente a TF do sinal contnuo peridico
x(t) = cos( 1 t) + 0.5 cos( 2 t)
0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15

com f1 = 1 2 = 50 Hz
= 100 Hz

f2 = 2 2

Recorde que no Mdulo 5 a utilizao da TF foi generalizada ao sinais contnuos peridicos, resultando numa funo contnua, X() , constituda pelo somatrio de impulso de Dirac de rea proporcional aos coeficientes da SF do sinal, posicionados nas suas diversas harmnicas
X() = 2

0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

Figura M8.40

k = Ck ( k 0 ) = k = Ck (f kf0 )

No presente exemplo, sabemos que a TF


X() = ( + 1 ) + ( 1 ) + 0.5( + 2 ) + 0.5( 2 ) = 0.5(f + f1 ) + 0.5(f f1 ) + 0.25(f + f1 ) + 0.25(f f1 )

Passmos a ter formalmente uma funo contnua, mas a informao espectral a mesma a quando do conhecimento dos coeficientes da SF. Assim, vamos reescrever o cdigo do exemplo anterior, substituindo simplesmente a funo stem pela funo plot
f1=50; w1=2*pi*f1; t1=1/f1; f2=100; w2=2*pi*f2; t2=1/f2; fs=5*f2; ts=1/fs; t = 0:ts:1*t1-ts; x = cos(w1*t)+0.5*cos(w2*t); N=length(x); M=N; % X[k] % X = fft(x,M); X = abs(X)/N; figure(1)

0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

Figura M8.41

Prof. Jos Amaral

M8 - 22

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

f =(0:(M/2-1))*(fs/M); plot(f,X(1:((M/2))),'o-') axis([0 200 0 max(X)]); grid on

0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

Obtemos assim o mdulo do espectro do sinal que se mostra na figura M8.40. Os resultados no so muito brilhantes dado que se queria descrever dois impulso de Dirac! necessrio um maior nmero de amostras do sinal de modo a obter uma maior descriminao na frequncia. Observemos um maior nmero de perodos do sinal. Fazendo
... t = 0:ts:10*t1-ts; ...

Figura M8.42
0.3

obtemos o grfico da figura 8.41. A descrio grfica de dois impulsos de Dirac agora bastante mais credvel. Aumentemos ainda mais o nmero de pontos observados
... t = 0:ts:100*t1-ts; ...

0.25

0.2

0.15

obtemos assim o grfico da figura 8.42. A representao dos impulsos agora totalmente satisfatria. No entanto, para obter esta representao, foi necessrio um grande nmero de amostras do sinal. Vamos agora diminuir o nmero de amostras do sinal mas juntar zeros sua direita para garantir uma boa descriminao na frequncia.
... t = 0:ts:30*t1-ts; ... N=length(x); M=2^8;

0.1

0.05

20

40

60

80

100

120

140

160

180

200

Figura M8.43
0.5 0.45 0.4 0.35 0.3 0.25

Obtemos assim o grfico da figura 8.43. Interpretada numa situao mais genrica, este grfico denunciador de uma forte componente espectral nas frequncias f1 = 50 e f2 = 100 , dando portanto indicao da existncia de importantes componentes harmnicas nestas frequncias. Note que se perdeu significado relativamente amplitude.

0.2 0.15 0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

Figura M8.44
2

Janela de observao
Vamos diminuir ainda mais o nmero de amostras do sinal, e aumentar o nmero de zeros direita
... t = 0:ts:10*t1-ts; ... M=2^14

1.5

0.5

-0.5

Obtemos assim o grfico da figura 8.44. Note que a amplitude das componentes do espectro nas frequncias f1 = 50 e f2 = 100 a correcta. No entanto o espectro toma agora
Prof. Jos Amaral M8 - 23

-1

200

400

600

800

1000

1200

1400

1600

1800

Figura M8.45

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

estranhamente a forma de duas sinc( ) . Podemos interpretar convenientemente este resultado. Na verdade, em resultado da juno de zeros direita, o sinal sobre o qual esto a ser calculados os coeficientes da DFT interpretado como tendo um comportamento peridico como se mostra na figura M8.45. Ou seja, como se fosse o resultado do produto do sinal original por um tem de pulso rectangulares
y(t) = x(t) lMt t Nt s
l

resulta ento que o espectro de y(t) igual convoluo dos espectros. Sendo o espectro de x(t) dois impulsos de Dirac situados em f1 e f2 e o espectro de um pulso rectangular uma sinc( ) , resulta da convoluo, como sabemos, a translao das sinc( ) para as frequncias correspondentes aos impulsos
Y (f+ ) = A1 sinc(f f1 ) + A2 sinc(f f2 )

Fica assim explicada a forma do espectro da figura M8.44. A sua correcta interpretao deve ser a da constatao de que o sinal tem duas fortes componentes harmnicas, em f1 e f2 , devendo a evoluo conforme uma sinc( ) ser desprezado, ou melhor, ser convenientemente interpretado como estando associado no ao sinal x(t) mas sim janela de observao. Esta uma importante matria no domnio do 0.45 processamento digital de sinal que ser 0.4 convenientemente tratada nas cadeiras da 0.35 especialidade.
0.3

Faamos um ltimo ensaio aumentando o nmero de amostras do sinal


... t = 0:ts:10*t1-ts; ...

0.25 0.2 0.15 0.1 0.05

Obtemos assim o grfico da figura M8.46, fazendo reduzir, na aparncia, a evoluo segundo uma sinc( ) e destacando assim as componentes harmnicas. Qualquer das figuras, de M8.41 a M8.46 susceptvel de resultar da anlise de Fourier de um sinal por recurso DFT. Numa situao genrica, desconhecendo-se a composio espectral do sinal, importante que interprete convenientemente os resultados obtidos, esperando-se que os exemplos acima contribuam para que ganhe sensibilidade para esta matria.

20

40

60

80

100

120

140

160

180

200

Figura M8.46

Prof. Jos Amaral

M8 - 24

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Matlab 8.4
Exemplo 1
Considere que ao sinal
x(t) = cos( 1 t) + 0.5 cos( 2 t)
4 3 2 1 0 -1 -2 -3 -4

,com f1 = 1 2 = 50 Hz e f2 = 2 2 = 100 Hz , adicionada uma componente aleatria Gaussiana de mdia nula e varincia unitria. Traces os grficos da evoluo do sinal, com e sem rudo, assim como dos respectivos espectros. Vamos comear por representar um pequeno segmento do sinal, com e sem rudo
f1=50; w1=2*pi*f1; t1=1/f1; f2=100; w2=2*pi*f2; t2=1/f2; fs=10*f2; ts=1/fs; t = 0:ts:100*t2-ts; x = cos(w1*t)+0.5*cos(w2*t); nr=1; y = x + nr*randn(size(t)); p=20*t2/ts; figure(1); plot(t(1:p),x(1:p)); grid on; axis([0 0.2 -4 4]) figure(2) plot(t(1:p),y(1:p));grid on

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

4 3 2 1 0 -1 -2 -3 -4

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Figura M8.47

Obtemos assim a figura M8.47. Note como, no grfico do sinal com rudo, impossvel detectar a evoluo harmnica do sinal. Representemos agora os espectros dos sinais.
N=length(x) M=2^14; X = fft(x,M); X = abs(X)/N; Y = fft(y,M); Y = abs(Y)/ N; figure(3) f =(0:(M/2-1))*(fs/M); plot(f,X(1:((M/2))),'r-') axis([0 200 0 max(X)]); grid on figure(4) plot(f,Y(1:((M/2)))) axis([0 200 0 max(Y)]); grid on

0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15

Note como no domnio da frequncia agora claramente visvel a existncia das duas componentes harmnicas no sinal com rudo. Modifique o nvel de rudo e observe os resultados no domnio do tempo e da frequncia.

0.1 0.05 0 0 20 40 60 80 100 120 140 160 180 200

Figura M8.48

Prof. Jos Amaral

M8 - 25

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Apndice 1: DFT (Transformada Discreta de Fourier)


DFT
Como vimos no Mdulo 7, um sinal discreto xp [n ] , peridico de perodo N , pode ser representado completamente atravs da sua SF
x p [n ] =
N 1 k=0

Cke jk n
o

com
Ck = 1 N

xp [n]e jk n
o

Como realmos na altura, quer a descrio temporal do sinal quer a sua descrio espectral feita atravs a uma sequncia finita de N valores. Por este facto, esta transformao tempo-frequncia especialmente indicada para ser utilizada em suportes computacionais. De modo a permitir a utilizao das ferramentas computacionais disponveis, a SF para sinais discretos peridicos poderia ser estendida aos sinais no peridicos. Assim, dado um sinal de durao finita, xe [n] , composto por uma sequncia de N valores, poderamos representar o sinal atravs da SF
xe [n] =
N 1 k=0

Cke jk n
o

com
Ck = 1 N

xe [n]e jk n
o

Na prtica, e de modo a contemplar quer os sinais discretos peridicos quer os sinais discretos no peridicos, define-se a DFT (Transformada Discreta de Fourier) de um qualquer sinal discreto
x [n ] , descrito por uma sequncia de N valores, no intervalo [0, N 1] como
N 1 n =0

X [k] =
, com

x[n]e jk n
o

0 = 2 N . A partir da sequncia de N valores que constitui a DFT do sinal, este pode

ser reconstrudo por

x [n] =
, com

1 N

N 1 k =0

X [k]e jk n
o

k [0, N 1] .

Note que assume que quer o sinal quer a sua DFT no so definidos fora do intervalo [0, N 1] . A terminologia DFT resulta da literatura anglo-saxnica, e corresponde s iniciais da designao A sua grande utilizao deve-se existncia de um algoritmo extremamente eficiente que permite o seu clculo, designado por fft (correspondente iniciais de Fast Fourier Transform), que de muito fcil implementao quer em hardware quer em software, e que ser objecto de anlise na cadeira de Processamento Digital de Sinal.
Discrete Fourier Transform.

Como pode verificar a partir do help do MatLab a funo fft procede ao clculo dos coeficientes
X [k] =

n =1

x[n]e jk (n 1)(k 1)
o

(1)

Prof. Jos Amaral

M8 - 26

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Note que os factores (n 1) e (k 1) se devem ao facto de, como sabe, os vectores em MatLab serem indexados a partir de n = 1 (e no n = 0 ), ou seja, a funo fft(x) procede ao clculo dos coeficientes X [k] , com k = 1 L N , da DFT do sinal discreto x [n ] , com n = 1L N .

A DFT e a SF de sinais discretos peridicos


Como vimos no Mdulo 7, um sinal discreto peridico naturalmente representado no domnio da frequncia atravs da sua SF. Atendendo definio da SF de um sinal peridico xp [n ]
Ck = 1 N

xp [n]e jk n
o

sendo a DFT do sinal xp [n ]


X [k] =
N 1 n =0

xp [n]e jk n
o

imediato reconhecer que os coeficientes da SF de um sinal discreto peridico xp [n ]


por esto relacionados por

definido

N amostras do seu perodo fundamental, n [0, N 1] , e os coeficientes da sua DFT

Ck =

1 X [k] N

Dada a eficincia de clculo da DFT atravs do algoritmo fft, e a menos que por alguma razo se deseje conhecer a sua expresso analtica, caso em que ser necessrio recorrer biblioteca simblica do Matlab, o clculo dos coeficientes da SF de um sinal discreto peridico deve ser feito recorrendo fft.

A DFT e a TF de sinais discretos no peridicos


Como vimos no Mdulo 7, um sinal discreto no peridico naturalmente representado no domnio da frequncia atravs da sua TF. Atendendo definio da TF de um sinal discreto x [n ]
X() =

n =

x[n]e jn

, admitindo que o sinal x [n ] definido por N amostras no intervalo n [0, N 1] , e admitindo que nulo fora desse intervalo, resulta
X() =
N 1 n =0

x[n] e jn
o

Atendendo definio da DFT de um sinal


X [k] =
N 1 n =0

x[n]e jk n
corresponde ao sinal discreto constitudo pela sequncia

, reconhece-se de imediato que X [k]


de

N amostras do sinal contnuo X() , nos pontos = k 0 , ou seja, podemos calcular X(k 0 ) = X [k]

amostras da TF de um sinal discreto calculando os coeficientes da DFT desse sinal.

com

0 = 2 N .

Prof. Jos Amaral

M8 - 27

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Note que a representao de um sinal de energia xe [n] atravs da sua DFT no destrinvel da representao do sinal peridico que exibe o mesmo comportamento para a mesma sequncia de N valores num perodo. Note ainda que as amostras devem ser recolhidas no intervalo n [0, N 1] . Nos exemplos de clculo mostrar-se- como contornar esta imposio. Dada a eficincia de clculo da DFT atravs do algoritmo fft, e a menos que por alguma razo se deseje conhecer a sua expresso analtica, caso em que ser necessrio recorrer biblioteca simblica do Matlab, o clculo de amostras da TF de um sinal discreto no peridico deve ser feito recorrendo fft.

Espectro de sinais contnuos amostrados

Considere um qualquer sinal contnuo xc (t) e um trem de impulsos de Dirac uniformemente separados de um qualquer intervalo de tempo Ts
p(t) =

n =

(t nTs )
(t nTs )

O sinal resultante da multiplicao de xc (t) e p(t)


x p (t) = xc (t)p(t) = xc (t) =

n =

n =

xc (nTs )(t nTs )

um sinal contnuo constitudo por um trem de impulsos de Dirac uniformemente separados do intervalo de tempo Ts e reas iguais aos valores do sinal xc (t) na sequncia discreta de instantes de tempo nTs , chamados amostras do sinal xc (t) . O sinal p(t) designado por funo de amostragem (ideal), e a operao de multiplicao designada por amostragem (ideal). Nas cadeiras da especialidade ter oportunidade de desenvolver o tema, nomeadamente estudar outro tipo de amostragens que no a ideal, assim como as mltiplas aplicaes da amostragem. Sendo a TF do sinal p(t) (veja o Exerccio 5.2, Exemplo 2, Pag. M5-20)
P () = 2 ( n s ) Ts n =

, com s = 2 Ts , ento, e atendendo propriedade da multiplicao da TF, a TF do sinal x p (t)


X p () = 1 X c () P () 2
n =

1 = Ts

X c ( n s )

(1)

, ou seja, corresponde sobreposio de rplicas da TF do sinal contnuo xc (t) , escaladas de 1 Ts e trasladadas de mltiplos da frequncia de amostragem s = 2fs = 2 Ts . Por outro lado, atendo propriedade da translao no tempo da TF, e sendo, como vimos, TF [A(t)] = A , ento

Prof. Jos Amaral

M8 - 28

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

X p () = TF xc (nTs )(t nTs ) n =

n =

xc (nTs ) e jnT

(2)

Consideremos o sinal discreto constitudo pela sequncia discreta de valores do sinal xc (t) nos instantes de tempo nTs
xd [n ] = xc (nTs )

, por definio, a TF do sinal discreto xd [n ]


X d () = =

n = n =

xd [n] e jn xc (nTs ) e jn
(3)

Pelo que, identificando as expresses 2 e 3, temos


X p () = Xd () = T s = Xd (Ts )

Atendendo agora expresso 1, temos


X d (Ts ) = = 1 Ts 1 Ts

n =

Xc ( n s )

2 Xc n Ts n =

Recorde que a TF de um sinal discreto peridica de 2 . Designando o perodo fundamental da TF do sinal discreto por X1d () podemos escrever

n =

X1d (Ts n2) = T1

2 Xc n Ts s n =

, pelo que, e admitindo que no existe sobreposio entre as vrias rplicas da TF, conclumos que podemos conhecer a TF de um sinal contnuo xc (t) a partir do conhecimento da TF do sinal discreto constitudo pela sequncia de amostras do sinal contnuo obtidas em intervalos equiespaados nTs , xd [n ] = xc (nTs ) , sendo
X c () = Ts X1d (Ts )

Teorema da amostragem
Dado que a TF de um sinal contnuo xc (t) amostrado numa sequncia discreta de instantes de tempo nTs
X p () = 1 X c ( n s ) Ts n =

(1)

, ou seja, corresponde sobreposio de rplicas da TF do sinal contnuo xc (t) , escaladas de 1 Ts e trasladadas de mltiplos da frequncia de amostragem s = 2fs = 2 Ts , o conhecimento da TF do sinal contnuo a partir da TF da sua verso amostrada s possvel se no

Prof. Jos Amaral

M8 - 29

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

existir sobreposio entre as vrias rplicas. Esta imposio s possvel de satisfazer se o sinal xc (t) for um sinal de banda limitada, ou seja
X c () = 0 , > M

, em que M a frequncia mxima do sinal. Dado que cada um dos espectros trasladado de n s , se o espectro do sinal contnuo existir para M < < M , o sinal amostrado ser constitudo pela sobreposio de espectros no nulos para n s M < < n s + M . Para que no exista sobreposio a frequncia limite inferior de cada uma das rplicas dever ser maior que a frequncia limite superior da rplica que a precede, ou seja
n s M > (n 1) s + M n s M > n s s + M s > 2 M

, conclumos assim que, para que no exista sobreposio entre as diversas rplicas do espectro do sinal xc (t) , a frequncia de amostragem deve ser superior ao dobro da mxima frequncia do sinal contnuo. Este um importante resultado que constitui o fundamento do chamado
Amostragem Um sinal contnuo Teorema da

x(t) tal que X() = 0 , > M pode ser univocamente determinado a partir da sequncia das suas amostras x(nTs ) se a frequncia de amostragem verificar s > 2 M , com s = 2fs = 2 Ts .

A frequncia de amostragem s = 2 M designada por frequncia (ou ritmo) de Nyquist.

A DFT e a SF de sinais contnuos peridicos

Como vimos no Mdulo 5, um sinal contnuo peridico, de perodo T0 , naturalmente representado no domnio da frequncia atravs da sua SF, podendo os coeficientes da SF ser determinados a partir do conhecimento da TF do sinal de energia, xe (t) , correspondente a um perodo do sinal, sendo
Ck = 1 Xe (k 0 ) T0

, com 0 = 2f0 = 2 T0 . Como vimos, se o sinal contnuo xe (t) for de banda limitada, podemos conhecer a sua TF a partir do conhecimento da TF do sinal discreto constitudo pela sequncia de amostras obtidas em intervalos equiespaados nTs , xd [n ] = xc (nTs ) , sendo
X e () = Ts X1d (Ts )

em que X1d () corresponde ao perodo fundamental da TF do sinal discreto xd [n ] . Logo, os coeficientes da SF do sinal so dados por
Ck = = 1 Xe (k 0 ) T0 Ts X1d (k 0 Ts ) T0

sendo, como se viu (pag. M2-13),

Prof. Jos Amaral

M8 - 30

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

0 Ts = 0 T0 =N Ts

, e atendendo definio de DFT, resulta


Ck = 1 X1d (k 0 ) N 1 = X [k] N

Conclumos assim que, admitindo que um sinal contnuo peridico, de perodo T0 , de banda
limitada,

X() = 0 , > M , e se verifica s > 2 M , os coeficientes da sua SF, Ck ,

podem ser calculados a partir dos coeficientes da DFT, sequncia de

xd [n ] = x(nTs ) com n [0, N 1] , sendo

N = T0 Ts amostras do sinal contnuo obtidas em intervalos equiespaados,

X [k] , do sinal discreto constitudo pela

Ck =

1 X [k] N

A DFT e a TF de sinais contnuos no peridicos


Como vimos no Mdulo 5, um sinal contnuo no peridico naturalmente representado no domnio da frequncia atravs da sua TF. Se o sinal contnuo xc (t) for de banda limitada, podemos conhecer a sua TF a partir do conhecimento da TF do sinal discreto constitudo pela sequncia de amostras obtidas em intervalos equiespaados nTs , xd [n ] = xc (nTs ) , sendo
X c () = Ts X1d (Ts )

em que X1d () designa o perodo fundamental da TF do sinal discreto. Dado que podemos calcular amostras da TF de um sinal discreto calculando os coeficientes da DFT desse sinal, temos ento
Xc (k 0 ) = Ts X1d (k 0 Ts ) k 0 Xc T s = Ts X1d (k 0 ) = Ts X [k]

Assim, admitindo que um sinal contnuo no peridico de banda limitada, X() = 0 , > M , e se verifica s > 2 M , sendo M a frequncia mxima do sinal e s a frequncia de amostragem, obtemos amostras da TF do sinal, X() , nos pontos = k 0 Ts , calculando os coeficientes da DFT, X [k] , do sinal discreto constitudo pela sequncia de N amostras do sinal contnuo, obtidas em intervalos equiespaados, xd [n ] = x(nTs ) , com n [0, N 1] , sendo
k 0 X T s = Ts X [k]

Prof. Jos Amaral

M8 - 31

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Apndice 2: Exemplos de clculo da DFT


Calcule a DFT dos sinais x [n ] e y [n ] representados na figura M8.49. Sendo
x[n ] = [2, 2, 1]

Exemplo 1

6 5 4 3 2 1 0

com
2 2 o = = N 3

-1 -2 -3 -1

Resulta, por definio


X [k] = =

x[n] e jk n
o

6 5 4

n =0

x[n] e

N 2

jko n

3 2

= 2 + 2e = 2+

jko

j 2ko

1 0 -1 -2

2 jk 3 2e

2 j 2k 3 e

Logo
X [0] = 2 + 2 1 =3 X [1] = = 1.5 j2.6
j2 2 j 2 + 2e 3 2 j2 3 e

-3 -1

Figura M8.49

3 e X [2] = 2 + 2e = 1.5 + j2.6

j4

2 3

Sendo
y [n] = [4, 3, 2, 1]

com
o = 2 2 = N 4

resulta
Y [k] = =

x[n] e jk n
o

n =0

x[n] e jk n
o

N 3

= 4 + 3e jko + 2e j 2ko + e j 3ko = 4 + 3e =4+


jk 2 4

+ 2e +

j 2k

2 4

+e

j 3k 2

2 4

jk 2 3e

j 2k 2 2e

+e

j 3k

Prof. Jos Amaral

M8 - 32

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Logo
Y [0] = 4 + 3 + 2 + 1 = 10 Y [1] = 4 + 3e = 2 j2
j 2

+ 2e

j2

+e

j3

Y [2] = 4 + 3e =2
Y [3] = 4 + 3e = 2 + j2

j2

+ 2e

j4

+e

j6

j3

+ 2e

j6

+e

j9

Exemplo 2

Determine a DFT do sinal x2 [n] representado na figura M8.50. Sendo


x2 [n ] = [5, 1, 2, 3]

6 5 4 3 2 1 0 -1 -2 -3 -5

x2[n]

Resulta, por definio


X2 [k] =

x2 [n]e jk n
o

n=0

x2 [n]e jk n
o

N 3

-4

-3

-2

-1

Figura M8.50

= 5 e jko 2e j 2ko + 3e j 3ko

com
o = 2 2 = = N 4 2

Logo
X2 [0] = 5 1 2 + 3 =5
X2 [1] = 5 e
j 2 j2 2 j3 2

2e

+ 3e

= 5 + j + 2 + 3j = 7 + 4j
2 2 2

X2 [2] = 5 e

j2

2e

j4

+ 3e

j6

= 5+123 =1
X2 [3] = 5 e
j3 2

2e

j6

+ 3e

j9

= 5 j + 2 3j = 7 4j

Prof. Jos Amaral

M8 - 33

Verso 3.0 19-05-2003

A N L I S E

D E

S I N A I S

Ficha de Avaliao M8
N: Nome: Data limite de entrega 26-05-2003 Turma:
(A ficha deve ser colocada, at data limite, no recipiente apropriado existente junto ao Gabinete C CEDET)

Grupo C
Exerccio 1
Represente o mdulo da TF dos seguintes sinais, recorrendo ao clculo dos coeficientes da DFT de um conjunto de amostras de cada um deles. Faa as necessrias opes. 1) x(t) =
2 t sinc cos(t) 2 t

2) x(t) = te 0.5t u(t) 3) x(t) = cos(200t)u(t)

Grupo B
Exerccio 2
Leia o ficheiro ficha82003.mat Represente o sinal e o seu espectro. Detecte a existncia de componentes harmnicas no sinal e diga quais so as suas frequncias.

Grupo A
Exerccio 3
Considere um trem de pulsos rectangulares de amplitude A = 1 , durao = 4 , e perodo To = 8 . a) Gere e represente graficamente os coeficientes da SF do sinal peridico contnuo a partir da sua expresso terica. Limite a representao aos primeiros 15 coeficientes. b) Gere e represente graficamente os coeficientes da DFT, recorrendo funo MatLab fft, e verifique a sua relao com os coeficientes calculados a partir da expresso deduzida teoricamente para o sinal contnuo. Faa as opes necessrias. Comente.

Grupo AA
Exerccio 4
1) Relativamente ao exerccio 3, qual a menor frequncia de amostragem do sinal contnuo que garante que a amplitude da 10 harmnica calculada com um erro inferior a 1%.

Prof. Jos Amaral

M8 - 34

Verso 3.0 19-05-2003

You might also like