freqz()

实函数的傅里叶变换的幅度谱是偶函数,其相位谱为奇函数。这一特性在信号分析中得到广泛应用。

  • 离散系统频响特性的函数freqz()

  [H,W ] = freqz(b,a,n)返回量H则包含了离散系统频响在 0~pi范围内N个频率等分点的值(其中N为正整数),w则包含了 0~pi 范围内N个频率等分点。b和a为系统传递函数的分子和分母的系数向量。如果n没有指定,默认为512。

  [H,w]=freqz(B,A,N,’whole’) 计算离散系统在 0~2*pi 范内的N个频率等分点的频率响应的值。

  H = freqz(b,a,w)返回频率响应指定频率向量w(通常介于0和PI)下复频响应矢量。

  • 也可以用 freqz() 函数求离散序列(抽样信号)的频谱

  [h,w] = freqz(x);在0~pi 范围内的512个等间隔点。

clear all;
N=100;
M=2;
f1=0.043;
f2 = 0.31;
n=0:N-1;
x=sin(2*pi*f1*n)+sin(2*pi*f2*n);
[h1,w1]=freqz(x,1,'whole'); % 序列x的频谱(0~2*pi),默认N=512
[h2,w2]=freqz(x); % 序列x的频谱(0~pi),默认N=512
subplot(211);plot(w1,abs(h1));
subplot(212);plot(w2,abs(h2));

  

 其实,freqz()与 fft() 本质一样(只要采样点N相等)

N=100;
M=2;
f1=0.043;
f2 = 0.31;
n=0:N-1;
x=sin(2*pi*f1*n)+sin(2*pi*f2*n);
[h1,w1]=freqz(x,1,N,'whole'); % 序列x的频谱(0~2*pi),默认N=512
subplot(211);plot(w1,abs(h1));
h2 = fft(x,N);
subplot(212);plot(w1,abs(h2));
sum(abs(h2 - h1.'))

  

 

 

posted @ 2018-03-25 14:32  htj10  阅读(3404)  评论(0编辑  收藏  举报
TOP