how to see the frequency response of difference equation
26 ビュー (過去 30 日間)
古いコメントを表示
Hi I am having the difference equation
y[n] = -0.9y[n-1] +x [n] -x [n-1]
I want to see its frequency response. What should i do
should i first convert it into Z-Form and then proceede Any ideas how to go abt it
採用された回答
Wayne King
2011 年 12 月 15 日
You can do the following:
W = -pi:(2*pi)/8192:pi;
[H,W] = freqz([1 -1],[1 0.9],W);
plot(W,abs(H));
4 件のコメント
Boom
2016 年 8 月 7 日
How did you get [1 0.9]? Why 1? and why 0.9? I see the equation has a negative 0.9, but not positive 0.9. Thanks
Mike Shane
2023 年 7 月 27 日
I hope by now you've figured it out, but for those who have the same question here is a simple explanation
y[n] = -0.9y[n-1] +x [n] -x [n-1] is the origianl expression
you have to put y terms on one side and x terms on one side, as below
y[n] + 0.9y[n-1] = x[n] -x[n-1]
now you can take the coefficients of y and x correctly, otherwise you are making a mistake while taking the coefficients
after that you'll get the below,
y has [1 0.9]
x has [1 -1]
その他の回答 (4 件)
Wayne King
2011 年 12 月 15 日
Hi, here you go. If you want to visualize the magnitude:
fvtool([1 -1],[1 0.9]);
If you want the complex-valued response:
[H,W] = freqz([1 -1],[1 0.9]);
plot(W,abs(H));
Wayne King
2011 年 12 月 15 日
Hi, that's because your graphs are showing the frequency response over [-pi,pi). You can use the 'whole' option in freqz()
[H,W] = freqz([1 -1],[1 0.9],'whole');
plot(W,abs(H));
0 件のコメント
moonman
2011 年 12 月 15 日
4 件のコメント
Wayne King
2011 年 12 月 15 日
the book is wrong, the frequency response in magnitude should be 20 at pi radians/sample and -pi radians/sample
参考
カテゴリ
Help Center および File Exchange で Digital Filter Analysis についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!