主要内容

至少Pth-Norm最佳IIR滤波器的设计

这个例子展示了如何设计最优的IIR滤波器具有任意级响应使用least-Pth无约束最优化算法。

IIRLPNORM基本面

iirlpnorm有别于传统的信息检索算法设计算法在几个方面:

  • 设计是直接在z域中完成。不需要双线性变换。

  • 分子和分母的顺序可以不同。

  • 可以设计一个具有任意大小的IIR滤波器响应除了基本的低通、高通滤波、带通,bandstop。

低通滤波器设计

低通和高通等简单的设计,指定通带和阻带频率。过渡带是一个根本不在乎乐队的算法。

d = fdesign.lowpass (“N, Fp,置”8。4。5)
d =低通特性:回应:“低通”规范:N, Fp,置的描述:{3 x1细胞}NormalizedFrequency: 1 FilterOrder: 8成就:0.4000 Fstop: 0.5000
hiirlpnorm =设计(d,“iirlpnorm”,“SystemObject”,真正的);

作为比较,考虑这个椭圆滤波器设计。

d = fdesign.lowpass (“N, Fp,美联社,Ast”8。4、0.0084、66.25);白马王子=设计(d,“ellip”,“SystemObject”,真正的)
白马王子= dsp。SOSFilter属性:结构:“直接形成II”CoefficientSource:“财产”分子:[4 x3双]分母:[4 x3双]HasScaleValues:真正的ScaleValues:[0.7442 0.7330 1.4088 0.0154 1]显示所有属性
hfvt = fvtool (hiirlpnorm,白马王子);传奇(hfvt“IIRLPNORM设计”,“ELLIP设计”);

图1图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。这些对象代表IIRLPNORM设计,ELLIP设计。

两个过滤器的反应是非常相似的。缩放到通频带强调了这一点。然而,滤波器设计的大小iirlpnorm不限制小于0分贝。

变焦(hfvt,[0无误。0092 .0052]);

图1图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。这些对象代表IIRLPNORM设计,ELLIP设计。

不同的分子和分母的订单

虽然我们可以用椭圆滤波器得到非常相似的设计,iirlpnorm算法提供了更大的灵活性。例如分母比分子可以设置不同。

d = fdesign.lowpass (“Nb, Na, Fp,置”8 6。4、5)
d =低通特性:回应:“低通”规范:“Nb, Na, Fp,置”描述:{4 x1细胞}NormalizedFrequency: 1 NumOrder: 8 DenOrder: 6成就:0.4000 Fstop: 0.5000
hiirlpnorm =设计(d,“iirlpnorm”,“SystemObject”,真正的);

与椭圆过滤器(和其他古典IIR设计),我们必须改变的分子和分母。

d = fdesign.lowpass (“N, Fp,美联社,Ast”6。4、0.0084、58.36);白马王子=设计(d,“ellip”,“SystemObject”,真正的);hfvt = fvtool (hiirlpnorm,白马王子);传奇(hfvt“IIRLPNORM设计”,“ELLIP设计”);

图2图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。这些对象代表IIRLPNORM设计,ELLIP设计。

显然,椭圆设计(绿色)现在结果在一个更广泛的过渡宽度。

权重的设计

类似于equiripple或最小二乘设计,我们可以重优化标准改变我们认为合适的设计。但是,与equiripple,我们提供不同的权重的额外的灵活性为每个频率点,而不是为每个频带。

考虑以下两个高通滤波器:

d = fdesign.highpass (浮置板轨道,Nb, Na, Fp的6、4、6、7)
d =高通滤波特性:规格:浮置板轨道,Nb, Na, Fp的回应:“高反差保留”描述:{4 x1细胞}NormalizedFrequency: 1 NumOrder: 6 DenOrder: 4 Fstop: 0.6000成就:0.7000
h1 =设计(d,“iirlpnorm”,“Wpass”,1“Wstop”10“SystemObject”,真正的);h2 =设计(d,“iirlpnorm”,“Wpass”,1“Wstop”100年[10],“SystemObject”,真正的);hfvt = fvtool (h1, h2);传奇(hfvt整个乐队同样重量的,不同的权重在阻带的);

图图3:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含3线类型的对象。这些对象代表整个乐队同样的重量,在阻带不同的权重。

第一个设计使用相同的重量/乐队(10在阻带,1在通频带)。第二种设计使用了一个不同的重量每个频率点。这提供了一个简单的方法获得一个倾斜的阻带可能是有利的,一些应用程序。额外的阻带衰减在部分是以牺牲更大的通带波纹和过渡宽度。

的Pth-Norm

大致说来,最优设计是通过最小化误差之间的实际设计的滤波器和理想Pth-norm意义上的过滤器。不同的值的标准在不同的设计结果。当指定对规范,我们指定两个值,“InitNorm”“规范”在哪里“InitNorm”的初始值算法和使用的规范“规范”是最后的(实际的)值的设计进行了优化。开始与一个较小的初始值优化艾滋病的收敛算法。

默认情况下,该算法开始优化2-norm意义上但最终128 -规范意义上的优化设计。128 -规范在实践中产生了一个好的近似infinity-norm。这样的设计往往是equiripple。最小二乘设计,我们应该将规范设置为2。例如,考虑下面的低通滤波器

d = fdesign.lowpass (“Nb, Na, Fp,置”10 7 .25 .35点);设计(d,“iirlpnorm”,“规范”2,“SystemObject”,真正的);

图4图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。

任意形状的大小

另一个重要的特点iirlpnorm是能够设计过滤器除了基本的低通,高通,带通和bandstop过滤器。看到任意级滤波器设计例子以获取更多信息。我们现在展示几个例子:瑞利衰落信道和光学吸收原子Rubidium87蒸汽。

瑞利衰落信道

这里有一个过滤噪声成形模拟一个瑞利衰落的无线通信信道

F1 = 0:0.01:0.4;A1 = 1.0 / (1 - (F1. / 0.42)。^ 2)。^ 0.25;F2 = (0.45 - 1);A2 = [0 0];d = fdesign.arbmag (“Nb, Na, B, F,“2、4、6日,F1, A1, F2, A2);设计(d,“iirlpnorm”,“SystemObject”,真正的);

图5图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。

无花果= gcf;fig.Color = (1 1 1);

光的吸收原子Rubidium87蒸汽

以下设计模型在一定气体吸收的光线。结果原来有大约线性相位过滤:

Nb = 12;Na = 10;F = linspace (0, 1100);= (1100)- f * 0.2;吸收= [(30),(1 - 0.6 * bohmanwin (10))”,(1、5),(1 - 0.5 * bohmanwin(8))的,(47)];一个=。*吸收;d = fdesign.arbmag (“Nb, Na, F,”Nb, Na, F);30 W = [(1) (10) *。2人(1、60)];设计(d,“iirlpnorm”,“重量”W,“规范”2,“DensityFactor”30岁的“SystemObject”,真正的);

图6图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。