⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 low_mul_quan.m

📁 信号处理-滤波器设计(基于matlab和Mathmatica的设计方法)中关于无乘法器椭圆IIR滤波器设计的原创程序。
💻 M
字号:
function Bq=Low_Mul_quan(a,Bi,Fs,Pha_Sub,Ds,f,i)
%  Low_Mul_quan.m  量化a1和Bi
%  $date 11/10/2005
%
%   作者:赵泽平
%      vf1983cs@163.com
%   
%
%   References:
%        Miroslav D. Lutovac, Dejan V. Tosic, Brian L. Evans
%           Advanced Filter Design for Signal Processing
%                   Using MATLAB and Mathematica
global n
[pha_x,x]=max(Pha_Sub);
[pha_y,y]=min(Pha_Sub);
fx=f(x);
fy=f(y);
pha_Fs=Pha_Sub(1);
fn=[Fs,fx,fy];
d=[pha_Fs+Ds,pha_x-Ds,pha_y+Ds]-pi/2;
if i==1
    Q=sin(2*pi*fn)./(1+Bi(1)^2+2*Bi(1)*cos(2*pi*fn));
else
    if i<=fix((n+3)/4);
        j=1/2;
    else
        j=-1/2;
    end
    Q=j*4*(a+cos(2*pi*fn)).*sin(2*pi*fn)./...
    ((1-Bi(i))^2+4*Bi(i)*(cos(2*pi*fn)).^2+a*(1+Bi(i))^2*(a+2*cos(2*pi*fn)));
end
dB=d./Q;
B_range=[Bi(i)+dB(2),Bi(i)+dB(3)];
if i==1
    disp(sprintf('α1值的范围:%f<α1<%f',B_range(1),B_range(2)))
    Bq=input('选择:α1=');
else
    disp(sprintf('β%d值的范围:%f<β%d<%f',i,B_range(1),i,B_range(2)))
    Bq=input(sprintf('选择:β%d=',i));
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -