[求助]基于频域抽样法的FIR数字带阻滤波器的设计
先说一下,偶很菜的,对这东西一点都不懂,要做课程设计,给逼的 ====================
基于频域抽样法的FIR数字带阻滤波器的设计
参数:
Ωs=2π*1.5*1000rad/sec,
Ωp1=2π*7.5*1000rad/sec,
Ωst1=2π*2.25*1000rad/sec,
Ωst2=2π*4.5*1000rad/sec,
Ωp2=2π*6*1000rad/sec,
σ1<=1dB,σ2>=50dB。
====================
以下是我编的一个肯定有问题的程序:
N=11;a=(N-1)/2;
m=0:N-1;W1=(2*pi/N)*m;
Hideal=[0.2,1,1,0.2,0,0,0,0.7,1,1,0.7];
Hdr=[1,0,0,1]; Wd=[0.2,1,1,0.7];
k1=0:floor((N-1)/2);k2=(floor((N-1)/2)+1):N-1;
angH=[-a*2*pi*k1/N,a*2*pi*(N-k2)/N];
H=Hideal.*exp(j*angH);
h=real(ifft(H,N));
[H2,w]=freqz(h,1);
figure(1);
subplot(3,1,1);
plot(W1(1:5)/pi,Hideal(1:5),'o',Wd,Hdr);
axis([0,1,-0.2,1.2]);title('频率样本');
xlabel('频率(单位pi)');ylabel('Hideal(k)');
figure(2);
subplot(3,1,2);
stem(m,h);title('单位脉冲响应');
xlabel('n');ylabel('h(n)');
figure(3);
subplot(3,1,3);
A=max(abs(H2));
plot(w/pi,20*log10(abs(H2)/A));
axis([0,1,-100,10]);grid;
title('幅度响应');xlabel('频率(单位pi)');ylabel('dB');
=======================
忘高手能给出Matlab程序!不胜感激!