📄 dfdplot.m
字号:
function twoaxis=dfdplot(num,den,speca,filnumb,moreaxis)
% dfdplot.m DFD Plot attenuation
% 0:26 8/3/99
%
% Authors: Dejan V. Tosic, Miroslav D. Lutovac, 1999.03.08
% tosic@telekom.etf.bg.ac.yu
% lutovac@galeb.etf.bg.ac.yu
%
% Copyright (c) 1999 by Tosic & Lutovac
% $Revision: 1.0 $ $Date: 1999/03/08 03:07:42 $
%
% References:
% Miroslav D. Lutovac, Dejan V. Tosic, Brian L. Evans
% Advanced Filter Design for Signal Processing
% Using MATLAB and Mathematica
twoaxis = 0;
initaxis = [0.13 0.11 0.775 0.815];
if moreaxis ~= 0
delete(gca);
set(gca, 'Position', initaxis);
end
if filnumb == 1
f1 = 0; f2 = 0.5;
f = f1:(f2-f1)/100:f2;
p = 2*pi*f;
A = -20*log10(abs(freqz(num,den,p)));
plot(f,A, ...
[0 speca(1) speca(1)],[speca(3) speca(3) 2*speca(4)],'r:', ...
[speca(2) speca(2) 0.5],[0 speca(4) speca(4)],'r:');
xlabel('frequency');
ylabel('attenuation (dB)');
title('Attenuation characteristic');
a = axis;
a(1) = f1;
a(2) = f2;
a(3) = -0.1*speca(4);
a(4) = 2.5*speca(4);
axis(a);
%set(gca,'Color',[0 0 0]);
elseif filnumb == 2
f1 = 0; f2 = 0.5;
f = f1:(f2-f1)/100:f2;
p = 2*pi*f;
A = -20*log10(abs(freqz(num,den,p)));
plot(f,A, ...
[0 speca(1) speca(1)],[speca(4) speca(4) 0],'r:', ...
[speca(2) speca(2) 0.5],[2*speca(4) speca(3) speca(3)],'r:');
xlabel('frequency');
ylabel('attenuation (dB)');
title('Attenuation characteristic');
a = axis;
a(1) = f1;
a(2) = f2;
a(3) = -0.1*speca(4);
a(4) = 2.5*speca(4);
axis(a);
%set(gca,'Color',[0 0 0]);
elseif filnumb == 3
f1 = 0; f2 = 0.5;
f = f1:(f2-f1)/100:f2;
p = 2*pi*f;
A = -20*log10(abs(freqz(num,den,p)));
plot(f,A, ...
[0 speca(1) speca(1)],[speca(5) speca(5) 0],'r:', ...
[speca(2) speca(2) speca(3) speca(3)],[speca(5) speca(6) speca(6) speca(7)],'r:', ...
[speca(4) speca(4) 0.5],[0 speca(7) speca(7)],'r:');
xlabel('frequency');
ylabel('attenuation (dB)');
title('Attenuation characteristic');
a = axis;
a(1) = f1;
a(2) = f2;
a(3) = -0.1*speca(5);
a(4) = 2.5*max([speca(5) speca(7)]);
axis(a);
%set(gca,'Color',[0 0 0]);
elseif filnumb == 4
f1 = 0; f2 = 0.5;
f = f1:(f2-f1)/100:f2;
p = 2*pi*f;
A = -20*log10(abs(freqz(num,den,p)));
plot(f,A, ...
[0 speca(1) speca(1)],[speca(5) speca(5) 2*speca(6)],'r:', ...
[speca(2) speca(2) speca(3) speca(3)],[0 speca(6) speca(6) 0],'r:', ...
[speca(4) speca(4) 0.5],[2*speca(6) speca(7) speca(7)],'r:');
xlabel('frequency');
ylabel('attenuation (dB)');
title('Attenuation characteristic');
a = axis;
a(1) = f1;
a(2) = f2;
a(3) = -0.1*speca(6);
a(4) = 2.5*speca(6);
axis(a);
%set(gca,'Color',[0 0 0]);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -