📄 dfdrx.m
字号:
function Rx = dfdrx(c)
% dfdrx.m DFD Rx(c)
%
% 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
% calls:
%% dfdxna.m
global DFD_n_x_Ks_Kp;
nxkskp = DFD_n_x_Ks_Kp;
n = nxkskp(1);
x = nxkskp(2);
Ks = nxkskp(3);
Kp = nxkskp(4);
a=1+c^2;
X = zeros(1,n);
for i =1:n
X(i) = ellipj( ((2*i-1)/n + 1)*ellipke(1/a^2), 1/a^2);
end
X = dfdxna(n,a);
r = 1; R = ones(size(x));
if abs(n-2*fix(n/2)) == 0
for i=1:n/2
r = r * ((1 - X(i)^2))/((1 - a^2/X(i)^2));
R = R .* ((x.^2 - X(i)^2))./((x.^2 - a^2/X(i)^2));
end
else
for i=1:(n-1)/2
r = r * ((1 - X(i)^2))/((1 - a^2/X(i)^2));
R = R .* ((x.^2 - X(i)^2))./((x.^2 - a^2/X(i)^2));
end
R = x .* R;
end
Rx = (R/r - Ks/Kp)^2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -