Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 11

Processamento de Sinal - 2021/2022

Duração = 2:00 h Exame 14 de Junho de 2022

Questão 1
Considere um sistema cuja saída, y[n], é dada pela média das últimas 3 amostras da entrada, x[n]:

y[n] = 13  x[n] + x[n − 1] + x[n − 2]

a) Calcule e esboce a resposta a impulso do sistema.

b) Calcule e esboce a resposta do sistema quando a entrada é um pulso retangular de largura 5,


x[n] = u[n] − u[n − 5] . Nota: deve fazer também os esboços auxiliares que mostrem qual vai ser a
saída e qual o seu comprimento.

c) Calcule a resposta em frequência do sistema, H (e j ) . Justifique que a j


|H(e )
sin ( 2 )
3 1
resposta que obteve se pode colocar na forma H (e j ) = 13 e − j .
sin ( 2 )
1/3
Mostre também que o módulo da resposta em frequência é o que se

indica na figura do lado.     

d) Quando a entrada do sistema é x[n] = 5sin ( 350 n + 5 ) , a saída é da forma y[n] = A sin ( 350 n +  ) .
Pretende-se calcular uma DFT através da qual se possa avaliar o valor de A e de . Como proceder?
Indique qual o sinal a tomar para a DFT, o nº de pontos da DFT, e as expressões para calcular A e 
com base num dado índice da DFT calculada. Justifique.

Questão 2
Considere a seguinte figura retirada do manual do
conversor analógico digital (ADC) da Texas
Instruments, ADS4149. A figura refere-se ao módulo da
DFT de uma sequência resultante da amostragem de um
tom puro a 170 MHz, x(t ) = cos ( 2 170 106 t ) .

Notas: 0 dB diz respeito a uma amplitude


unitária; -80dB equivale a 10-4, perto do patamar de
ruído abaixo do qual o ADC já não consegue
discriminar variações da entrada. Ignore as legendas no
interior da figura. O valor máximo de frequência
indicado na figura refere-se a metade da frequência de
amostragem.

a) Diga se o teorema de amostragem é verificado. Justifique.


Processamento de Sinal - 2021/2022

b) Indique uma expressão para o sinal resultante da amostragem, x[n]. Verifique que, tal como x(t),
x[n] é um sinal periódico. Determine o período em amostras. Converta a frequência do sinal em
radianos para um valor entre 0 e . Depois, converta esse valor para uma frequência analógica
equivalente. Confira o seu resultado com a figura. O que aconteceu?
Nota: cos ( 2 MN n ) = cos ( 2 N −NM n ) .

c) Sabendo que a DFT da figura foi tomada com um comprimento Nfft=32768, indique qual o índice
k da DFT, X[k], correspondente à “risca” (frequência) do sinal x[n] . Indique o inteiro mais próximo.

d) A sequência x[n] é decimada por 3, resultando em xd[n]. Indique uma expressão para xd[n] e diga se
houve “aliasing” neste processo de decimação. Faça um esboço de X d (e j ) entre - e  e depois
com abcissa em frequência analógica. Verifique que tem impulsos em frequências correspondentes
a  10MHz.

Questão 3

Considere o sistema definido através da seguinte equação de diferenças:

y[n] = 13  x[n] + x[n − 1] + x[n − 2] − 53 y[n − 1] + 23 y[n − 2]

a) Calcule a função de transferência do sistema e esboce o diagrama de polos e de zeros (confira com
a figura da questão 1, e que o sistema tem um polo em z=1/3).

b) Diga se o sistema pode ser causal, se pode ser estável ou se pode ser causal e estável. Indique a
região de convergência da transformada de z que indicou na alínea anterior para cada um dos casos.
Justifique.

c) Determine a resposta a impulso do sistema estável, bem como a resposta a impulso do sistema
causal.

d) Considere que a entrada deste sistema é o sinal x[n] = 1 + sin ( 23 n ) + ( 12 ) u[n] . Indique a saída do
n

sistema estável, enunciando os cálculos, mas sem os efetuar. Nota: deve relacionar a resposta com
o gráfico em 1c) e deve verificar que H(1)=1/2.
Processamento de Sinal - 2021/2022

Resolução

Questão 1
1a) Calcule e esboce a resposta a impulso do sistema.
R:
y[n] = 13  x[n] + x[n − 1] + x[n − 2] . Se x[n] =  [n]  h[n] = 13 ( [n] +  [n − 1] +  [n − 2])

Esboço: 3 amostras de valor 1/3 em n=0, n=1e n=2; todas as outras nulas (ver 1b), 1ª figura.

1b) Calcule e esboce a resposta do sistema quando a entrada é um pulso retangular de largura 5,
x[n] = u[n] − u[n − 5] . Nota: deve fazer também os esboços auxiliares que mostrem qual vai ser a saída
e qual o seu comprimento.
R:
+
Definição de convolução: y[n] =  x[k ]h[n − k ] . Tem comprimento 5+3-1=7 amostras, de n=0 até
n =−
n=6.
h[n] x[n]
1
1/3
n n
4
x[k]
1

k
h[-k]
y[0]=1/3 y[n]
k 1
2/3
h[1-k] 1/3
y[1]=1/3+1/3=2/3
n
k 2 4 6
h[2-k] y[2]=1/3+1/3+1/3=1

k
h[6-k] y[6]=1/3
gráfico pedido
k
6

Alternativas:
H ( z ) = 13 (1 + z −1 + z −2 ) ; X ( z ) = 1 + z −1 + z −2 + z −3 + z −4 ;
H ( z ) X ( z ) = 13 (1 + z −1 + z −2 )(1 + z −1 + z −2 + z −3 + z −4 )

(
= 13 (1 + z −1 + z −2 + z −3 + z −4 ) + ( z −1 + z −2 + z −3 + z −4 + z −5 ) + ( z −2 + z −3 + z −4 + z −5 + z −6 ) )
= 13 + 32 z −1 + 33 z −2 + 33 z −3 + 33 z −4 + 32 z −5 + 13 z −6
Logo y[n] = 13  [n] + 32  [n − 1] +  [n − 2] +  [n − 3] +  [n − 4] + 32  [n − 5] + 13  [n − 6]
Comprimento: 3+5-1=7
Processamento de Sinal - 2021/2022
Ou ainda:
x[n] = u[n] − u[n − 5] 
h[n]  x[n] = 13 ( [n] +  [n − 1] +  [n − 2])  ( u[n] − u[n − 5])
= 13 ( u[n] − u[n − 5]) + 13 ( u[n − 1] − u[n − 6]) + 13 ( u[n − 2] − u[n − 7])
(soma de 3 pulsos retangulares de amplitude 1/3 e de largura 5 deslocados de 0, 1 e 2 amostras)
Ou ainda:
h[n]  x[n] = s[n] − s[n − 5] onde s[n] =  13 , 23 ,1,1,1,1,  é a resposta a degrau do sistema, a começar
em n=0 e zero para n<0.
s[n] − s[n − 5] =  13 , 23 ,1,1,1,1,  − 0, 0, 0, 0, 0, 13 , 23 ,1,1,1,1,  =  13 , 23 ,1,1,1, 23 , 13 , 0,  .
Também poderíamos definir: s[n] = u[n] − 23  [n] − 13  [n − 1] , vindo
y[n] = s[n] − s[n − 5] = u[n] − u[n − 5] − 23  [n] − 13  [n − 1] + 32  [n − 5] + 13  [n − 6]
= 1,1,1,1,1, 0, 0, 0,  + − 23 , − 13 , 0, 0, 0, 23 , 13 , 0,  =  13 , 32 ,1,1,1, 32 , 13 , 0, 

1c) Calcule a resposta em frequência do sistema, H (e j ) . Justifique que a j


|H(e )
sin ( 2 )
3 1
resposta que obteve se pode colocar na forma H (e j ) = 13 e − j .
sin ( 2 )
1/3
Mostre também que o módulo da resposta em frequência é o que se indica

na figura do lado.     
R:
H (e j ) = 13 (1 + e − j + e − j 2 ) através de  [n − n0 ] ⎯⎯
DTFT
→ e− jn0 .
A resposta a impulso é uma janela retangular de largura 3, dividida por 3. Logo (pelas tabelas),
sin ( 32 )
H (e j ) = 13 e − j .
sin ( 2 )
De facto, a resposta a impulso adiantada de uma unidade de tempo fica centrada na origem e tem
sin ( 32 )
transformada real, isto é, h[n + 1] ⎯⎯
DTFT
→ = 13 .
sin ( 2 )
3
H (e j 0 ) = 13 e− j 0 lim 2
= 1 e sin ( 32 ) = 0  32 = k   = 2 k
, mas com k  3r . No intervalo [0, 2 [
 →0  3
2

existem zeros em  = 2
3 e = 4
3 . Nota: se x[n] = sin ( 23 n )  y[n] = 0 .
+ +
Nota: Também H (e j 0 ) =  h[n] = 13 (1 + 1 + 1) = 1 , por definição de DTFT: H (e j ) =
n =−
 h[n]e
n =−
− j n
.

1d) Quando a entrada do sistema é x[n] = 5sin ( 350 n + 5 ) , a saída é da forma y[n] = A sin ( 350 n +  ) .
Pretende-se calcular uma DFT através da qual se possa avaliar o valor de A e de . Como proceder?
Indique qual o sinal a tomar para a DFT, o nº de pontos da DFT, e as expressões para calcular A e 
com base num dado índice da DFT calculada. Justifique.
R:
Processamento de Sinal - 2021/2022
j 350 j 350
Sabemos que A = 5 H (e ) e que  = 5 + H (e ) . Isto é, a saída depende da resposta em
frequência do sistema apenas numa frequência:  = 350 . Mas queremos calcular uma DFT que
contenha os valores referidos. Terá de ser uma DFT tal que k 2N = 350 = 3 1002
. Uma solução consiste em
tomar N=100 e k=3. Isto é, tomar uma DFT de h[n] (resposta finita (FIR) de comprimento 3) com 100
pontos. Seja H[k] essa DFT de h = [ 13 , 13 , 13 ] (são também os coeficientes do numerador de H ( z ) com
comprimento 100, juntando zeros). Então:
A = 5  H [3]
 = 5 + H [3]
Questão 2
Considere a seguinte figura retirada do manual do
conversor analógico digital (ADC) da Texas
Instruments, ADS4149. A figura refere-se ao módulo da
DFT de uma sequência resultante da amostragem de um
tom puro a 170 MHz, x(t ) = cos ( 2 170 106 t ) .

Notas: 0 dB diz respeito a uma amplitude


unitária; -80dB equivale a 10-4, perto do patamar de
ruído abaixo do qual o ADC já não consegue
discriminar variações da entrada. Ignore as legendas no
interior da figura. O valor máximo de frequência
indicado na figura refere-se a metade da frequência de
amostragem.

2a) Diga se o teorema de amostragem é verificado. Justifique.


R:
fs = 250MHz (o módulo da DFT indicado tem frequência radial de 0 a , ou f de 0 a fs/2 Hertz).
Não se verifica o teorema da amostragem. Vai existir “aliasing” pois 250  2 170 .

Nota: este ADC tem um filtro anti-aliasing mas com frequência de corte de 500MHz e suave (em vez
de ser de 250MHz e abrupto). A 170MHz ainda tem ganho 1 (era este o intuito da figura no “data
sheet”).

2b) Indique uma expressão para o sinal resultante da amostragem, x[n]. Verifique que, tal como x(t),
x[n] é um sinal periódico. Determine o período em amostras. Converta a frequência do sinal em
radianos para um valor entre 0 e . Depois, converta esse valor para uma frequência analógica
equivalente. Confira o seu resultado com a figura. O que aconteceu?
Nota: cos ( 2 MN n ) = cos ( 2 N −NM n ) .
R:
1 1
Período de amostragem: T = = , logo:
f s 250 106
x[n] = x ( nT ) = cos ( 2  170
250 n ) .

Mas 17
25  12 , pelo que x[n] = cos ( 2  2525−17 n ) = cos ( 2  258 n ) .
Processamento de Sinal - 2021/2022

Para relacionar esta frequência de 0 = 1625 radianos com a frequência em tempo contínuo, basta dividir
por T: 0 = T0 = 1625  250 106 rad/s, ou seja f 0 = 80 106 , 80MHz que é a frequência da risca que
aparece no gráfico. O que aconteceu? Houve "aliasing", e a frequência de 170MHz aparece em
250-170=80 MHz.
Se fizéssemos o gráfico de X p ( j ) veríamos que assim era, ao colocar o espetro X ( j ) centrado em
1 +
 = s (a réplica 1 (k=1) do espetro do sinal, X p ( j ) =  X ( j ( − ks ) ) ).
T k =−
f s  2
Nota: podemos sempre fazer a seguinte relação: ou f 0 = f s 20 .
f 0  0
2c) Sabendo que a DFT da figura foi tomada com um comprimento Nfft=32768, indique qual o índice
k da DFT, X[k], correspondente à “risca” (frequência) do sinal x[n] . Indique o inteiro mais próximo.
R:
Pode usar-se a relação k = k N2fft com k = 1625 . Resulta k =  32768
25 
8
 = 10486 . Ou então:
N fft  2
, k=  . A operação round dá o inteiro mais próximo.
0 N fft

k  0  2 

2d) A sequência x[n] é decimada por 3, resultando em xd[n]. Indique uma expressão para xd[n] e diga
se houve “aliasing” neste processo de decimação. Faça um esboço de X d (e j ) entre - e  e depois
com abcissa em frequência analógica. Verifique que tem impulsos em frequências correspondentes
a  10MHz.
R:
25  n ) . Houve "aliasing" de novo: xd [ n] = cos ( 25  n ) = cos ( 25 n ) , equivalente
xd [n] = x[3n] = cos ( 48 50 − 48 2

a 10 MHz. No intervalo ] −  ,  ] existem apenas dois impulsos no espetro de xd[n]. Portanto o gráfico
pedido tem dois impulsos de área  em 10 e -10MHz.

Nota: no gráfico seguinte colocou-se o gráfico de X p (e j ) , o espetro da sequência amostrada pelo


período 3, e depois X d (e j ) = X p (e j / 3 ) . O gráfico de X p (e j ) só tem as réplicas em  23 ,  43 e
2 . O fator 1/3 foi desprezado em X p (e j ) , uma vez que, na sequência decimada com
0 = 275 = 23 − 1625 , se tem 13  ( 3 − 0 ) = 13  ( 13 ( − 30 ) ) =  ( − 30 ) pois  (at ) = |1a|  (t ) . A relação
entre a frequência  (em rad) e a frequência f em Hz com fs=250 MHz é f = f s 2 .
Processamento de Sinal - 2021/2022




− −  


− − − −   


… …

− −  

… …
f [MHz]
− − −   250
fs

Questão 3

Considere o sistema definido através da seguinte equação de diferenças:

y[n] = 13  x[n] + x[n − 1] + x[n − 2] − 53 y[n − 1] + 23 y[n − 2]

3a) Calcule a função de transferência do sistema e esboce o diagrama de polos e de zeros (confira com
a figura da questão 1, e que o sistema tem um polo em z=1/3).

R:
Fazendo a transformada se z da equação de diferenças, fica:
y[n] = 13  x[n] + x[n − 1] + x[n − 2] − 53 y[n − 1] + 23 y[n − 2]
Y ( z ) 1 + 53 z −1 − 32 z −2  = X [ z ] 13 1 + z −1 + z −2 
Logo
3 (1 + z + z −2 ) 3 ( z + z + 1)
1 −1 1 2
Y ( z)
H ( z) = = = 2 5
X ( z ) (1 + 2 z −1 )(1 − 13 z −1 ) z + 3 z − 32
Nota: é erro muito grave dizer que Y ( z ) = 13 ( z 2 + z + 1) e que X ( z ) = z 2 + 53 z − 32 . O que é verdade é
que Y ( z ) 1 + 53 z −1 − 32 z −2  = X [ z ] 13 1 + z −1 + z −2  (produto dos meios e dos extremos)
Processamento de Sinal - 2021/2022
Os zeros são em z =1 em  = 23 e em  = − 23 (ou  = 43 conforme gráfico da figura da questão
1)1. Os polos são: z = − 56  12 25
9 + 249 = − 56 7 , z = −2 e z = 13 . De facto, existe um polo em z = 13 .

Diagrama (com zplane(1/3*[1,1,1],[1,5/3,-2/3]))

3b) Diga se o sistema pode ser causal, se pode ser estável ou se pode ser causal e estável. Indique a
região de convergência da transformada de z que indicou na alínea anterior para cada um dos casos.
Justifique.
R:
Causal se z  2 . Estável se 13  z  2 . Não pode ser simultaneamente causal e estável.
Justificação: Causal: ROC é o exterior do círculo de raio que é o maior módulo dos polos (pois o grau
do numerador não é superior ao do denominador, o que significa que H(∞)=h[0]). Estável: tem de
incluir a circunferência de raio unitário. z  13 é a outra ROC possível, correspondente a uma resposta
a impulso só do lado esquerdo e, portanto, o sistema não seria nem causal nem estável.

3c) Determine a resposta a impulso do sistema estável, bem como a resposta a impulso do sistema
causal.
R:
Decomposição em frações parciais:

H ( z) =
(1 + z + z ) = K + A
1
3
−1 −2

+
B
(1 + 2 z )(1 − z )
−1 1
3
1+ 2z
−1 −1
1 − 13 z −1
(K só tem um termo, pois grau do numerador é igual ao grau do denominador).
Se z  2 (sistema causal), h[n] = K  [n] + A(−2) n u[n] + B ( 13 ) u[n] .
n

Apenas neste caso se poderia aplicar o teorema do valor inicial (sistema causal), com
h[0]=K+A+B=1/3=H(∞).

2
1 − z −3 3
+ z −2 =  z − n =
−1 j 2 k
1
Trata-se das 3 raízes da unidade, mas sem z=1: 1 + z −1
. z = 1  z = e 3 , k = 0,1, 2 .
n =0 1− z
Mas z=1 (k=0) é também a raiz do denominador, daí a janela ser finita (FIR), isto é, z=1 não é polo. A ROC é |z|>0.
Processamento de Sinal - 2021/2022
Se z  13 , h[n] = K  [n] − A(−2) n u[−n − 1] − B ( 13 ) u[−n − 1] (acaba em n=0).
n

 z  2 (sistema estável), h[n] = K  [n] − A(−2) n u[−n − 1] + B ( 13 ) u[n]


1 n
Se 3

Determinação de K, B e A:

1
z −2 + 13 z −1 + 13 − 23 z −2 + 53 z −1 + 1
(1 + z + z ) = − 1 +
3
−1 −2
z −1 + 56
1 7
−2 −1
− z + z + −  H ( z) =
1 5 1 1 3 6
3
−1
6 2 2
(1 + 2 z )(1 − z ) 2 1 + −1 1
3
−1 5
3 z −1 − 32 z −2
0 + 76 z + 56
Logo K = − 12 .
z −1 + 56
7
A B
6
= + 1 −1 ;
(1 + 2 z )(1 − 13 z ) 1 + 2 z 1 − 3 z
−1 −1 −1

7
z −1 + 56 − 127 + 12
10 3
3 6 3
A= 6
= = 12
= =
1 − 13 z −1 z −1 =− 12
1 + 16 7
6 7 12 14

z −1 + 65
7 7
+ 65 266 13
B= 6
= 2
= = .
1 + 2 z −1 z −1 =3
1 + 6 7 21
Nota 1: A e B poderiam ser avaliados com a expressão original:
−1

(1 + 2 z −1 ) H ( z) = (1 + 2 z −1 ) K + A + B 11 −+ 21 zz −1 , logo com z −1 = −1/ 2 o 2º membro fica só com A:


3

A = (1 + 2 z
1
(1 + z −1
+ z −2 ) (1 − 12 + 14 ) = 14 =
) H ( z)
1
−1 3
= =
3 3
−1
−1
z =−1/ 2 1− z 1
3 1+ 1
6
7
6 14
z −1 =−1/ 2

De forma idêntica: B = (1 − z
1
(1 + z −1
+ z −2 ) (1 + 3 + 9 ) = 133 = 13 .
) H ( z)
1
−1
= =
1 3 3
3
z −1 =3 1 + 2 z −1 1+ 6 7 21
z −1 =3

Nota 2: Poderíamos tratar H(z) com polinómios em z como se se tratasse de transformada de Laplace.
Seria:
3 z + z +1
1 2

H ( z) = 2 5
( A B )
= K1 + 1 + 1 1 , com K1 = 13 , A1 = − 73 , B1 = 13
63 .
z +3z−3 2
z+2 z−3
− 73 z −1 13 −1
67 z
No entanto, ao passar de novo para z −1 seria: H ( z ) = 13 + −1
+ . Para inverter, teremos:
1+ 2z 1 − 13 z −1
1
−a nu[−n − 1] ⎯→
,z a ZT

1 − az −1
n −1 z −1
logo −a u[−(n − 1) − 1] ⎯→ZT
,z a
1 − az −1
z −1
além de: a n−1u[n − 1] ⎯→
ZT
,z a
1 − az −1
Assim, para 13  z  2 teremos:
Processamento de Sinal - 2021/2022
67 ( 3 )
h[n] = 13  [n] + 73 ( −2 ) u[−n] + 13
n −1 1 n −1
u[ n − 1]
( −2 ) ou − 143 ( −2 ) , tal como
3 n−1 n
Esta expressão é igual à anterior. Senão vejamos: para n<0, temos 7

anteriormente: − A ( −2 ) . Para n=0, h[0] = 13 + 73 ( −2 ) =


n −1 5
42 (não se aplica o teorema do valor inicial)

63 ( 3 ) 21 ( 3 ) = B ( 3 ) .
n −1
(mesmo valor). Para n  1, h[n] = 13
n n
e antes era: h[0] = K + B = − 12 + 13
21 = 42
5 1
= 13 1 1

Outra forma de indicar h[n] seria então:


3 13
z −1
63 ( 3 )
 [n] − 143 ( −2 ) u[−n − 1] + 13
n −1
h[n] = u[n − 1] com H ( z ) = + +  z  2.
5 n 1 5 14 63 1
−1
,
1+ 2z 1 − 13 z −1
42 42 3

3d) Considere que a entrada deste sistema é o sinal x[n] = 1 + sin ( 23 n ) + ( 12 ) u[n] . Indique a saída do
n

sistema estável, enunciando os cálculos, mas sem os efetuar. Nota: deve relacionar a resposta com
o gráfico em 1c) e deve verificar que H(1)=1/2.

R:
x[n] = 1 + sin ( 23 n ) + ( 12 ) u[n]
n

1 1
Ganho DC: GDC = H (e j ) = H ( z) = =
. O termo 1 de x[n] dá origem a um termo 1/2
z =1 1+ −  =0 2 5
3
2
3
em y[n] (sinal periódico só com a0). Nota: neste caso a transformada de z não converge, mas temos a
correspondente DTFT: se x[n] = 1 , então y[n] = 12 , isto é,
X (e j ) = 2 ( ) ; Y (e j ) = 12 2 ( ) (e periódicas de período 2).
   

Sistema tem zero em  = 2


3 , logo o termo sin ( 23 n ) da entrada resulta nulo em y[n].

( 12 )
n
Falta termo u[ n] . Dá origem à seguinte transformada de z:
1 A2 B2 C
−1
H ( z) , 1
 z  2 (sistema estável), ou 1 −1
+ −1
+ 1 2 −1 , 1
 z 2
1− z1
2
3
1− 2 z 1+ 2z 1− 3 z 3

vindo
y[n] = 12 + 0 + A2 ( 12 ) u[n] − B2 ( −2 ) u[−n − 1] + C2 ( 13 ) u[n]
n n n

É possível simular y[n] no Matlab? Sim, é possível, mas… não com filter(), pois filter() assume
sinais causais. A ideia é que para n suficientemente grande teremos h[n] = 0 = h[−n] e podemos
periodizar h[n] e fazer convoluções circulares em vez de convoluções. Neste caso, para n=40, teremos
h[40] = B ( 13 )  5 10−20 e h[−40] = − A(−2)−40  −2 10−13 . Portanto teremos erros de “aliasing”
40

temporal muito pequenos. A simulação com n=-40:40 seria assim:


Processamento de Sinal - 2021/2022
num=1/3*[1,1,1];
den=[1,5/3,-2/3];
zplane(num,den)
%Calcular y[n] como um sinal periódico de período Nfft (mas regime permanente atingido)
N=40; n=-N:N; Nfft=2*N+1; %Nfft deve ser múltiplo de 3(pois sin(2*pi/3*n) tem período 3)
nneg=-N:-1; npos=0:N;
xpos = 1+ sin(2*pi/3*npos)+ (1/2).^npos;
xneg = 1+ sin(2*pi/3*nneg);
x=[xneg,xpos];

X=fft([xpos,xneg]); %...e não x=[xneg,xpos] pois a DFT deve tomar período de 0 a Nfft-1.
% k=-(Nfft-1)/2:(Nfft-1)/2; %caso de Nfft ímpar (neste caso Nfft=81)
% w=k*2*pi/Nfft;
% plot(w/pi,fftshift(abs(X)))

H=fft(num,Nfft)./fft(den,Nfft); %praticamente o mesmo que H=fft([hpos,hneg])


Y=X.*H; %equivale a fazer a convolução circular
% plot(w/pi,fftshift(abs(Y))),grid
y=ifft(Y); % um período do sinal (periódico) de saída, n=0:2*N

ypos=y(1:N+1); yneg=y(N+2:end);
y=[yneg,ypos]; % agora com n=-N:N
figure(1); stem(n,y), grid on; title('y[n]'); xlabel('n')
format rat
[R,P]=residuez(num,conv(den,[1,-1/2])) %logo A2=7/5, B2=6/35, C2=-26/21
%y[n] teórico:
yteo_neg = 1/2 - R(1)*(-2).^nneg;
yteo_pos = 1/2 + R(2)*(1/2).^npos + R(3)*(1/3).^npos;
%comparação:
figure(2); plot(n,y,n,[yteo_neg,yteo_pos]), grid on; title('y[n] vs y_{teórico}[n]');
xlabel('n')
format short
max(abs(y-[yteo_neg,yteo_pos])) %5.6416e-13

Você também pode gostar