我要加入 登录
声振论坛 返回首页

zhwang554的个人空间 http://home.vibunion.com/?62061 [收藏] [复制] [分享] [RSS]

日志

apfir滤波器设计步骤

已有 467 次阅读2009-4-13 05:59 |个人分类:apfir|

  <数字信号全相位谱分析和滤波技术>一书中第8.2.5节"DFT域全相位等效FIR滤波器的一般设计步骤"中说:
可将DFT域全相位等效FIR滤波器g的设计过程总结如下:
1. 将传统频率采样法中的H进行IDFT得到h,再对h进行周期展移(或定义域延拓),形成长为(2N-1)的向量h'=[h(-N +1),…,h(0),…,h(N-1)] T
2. 将前窗f、后窗b进行卷积,生成卷积窗wc
3 h’wc对应元素相乘并除以中心元素wc(0)进行归一化后即得等效FIR系数g(n)

N=16 陷波器如下程序(程序中红色为apfir系数设计,后面的是验证设计结果)
H=[1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1]
1 Hifft h, h去掉第一个和h合并形成  h1=[h(2:end)   h];
2 ones(1,N)hanning(n)'的卷积窗得win
3 win
h1乘即得apfir滤波器系数g

close all;clc;clear all;
N=16;
H=[1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1];
h=ifft(H);
h1=[h(2:end) h];
w=ones(1,N);
w1=hanning(N)';
win1=conv(w,w1);
win=win1/sum(win1);
g=h1.*win*N;

[h,f]=freqz(g);
mag=abs(h)';
aa1=20*log10(mag);
ph=phase(h);
subplot(3,1,1),plot(f,mag,'r');
set(gca,'XTick',0:pi/N*2:pi)
set(gca,'XTickLabel',{0:N/2})
title('
振幅特性 apFIR N=16');
xlim([0 pi])
grid
subplot(3,1,2),plot(f,aa1,'r');
set(gca,'XTick',0:pi/N*2:pi)
set(gca,'XTickLabel',{0:N/2})
title('
对数振幅特性 apFIR N=16');
xlim([0 pi])
ylim([-400 0])
grid
subplot(3,1,3),plot(f,ph,'r');
set(gca,'XTick',0:pi/N*2:pi)
set(gca,'XTickLabel',{0:N/2})
title('
相位特性 apFIR N=16');
xlim([0 pi])
grid
              图一 apfir陷波器的对数振幅特性和相位特性
      图一是上程序的执行结果,可见陷波点衰减为-325db,线性相位.
 

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 我要加入

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-29 04:31 , Processed in 0.077316 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部