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

📄 hgls2.m

📁 分数延时的matlab代码
💻 M
字号:
function h = hgls2(L,x,wp)
% HGLS2
% MATLAB m-file for fractional delay approximation
% using the GENERAL LEAST SQUARES method
% Format: h = hgls2(L,x,wp)
% Input: L = filter length (filter order N = L-1)
%        x = fractional delay (0 < x <= 1)
%        wp = passband edge of approximation (in [0, 1])
% Output: Filter coefficient vector h(1)...h(L)
% Subroutines: standard MATLAB functions
%
% Timo Laakso   27.12.1992
% Last revision 14.01.1996

N = L-1;                         % filter order
M = N/2;                         % middle value
if (M-round(M))==0 D=x+M;        % integer part closest to middle
else D=x+M-0.5; end; 
%
cT=zeros(N+1,1); p1=cT;
%
cT(1)=wp; 
if round(D)==D p1(1)=wp;
else
  p1(1)=( sin(D*wp*pi) )/(D*pi); % p1(1) added 23.2.93! 
end;
for k=1:N           % compute the elements of the Toeplitz matrix (vector)
  k1=k+1;  kD=k-D;
  cT(k1) = ( sin(k*wp*pi) )/(k*pi);
  p1(k1) = ( sin(kD*wp*pi) )/(kD*pi);
end;  % for k
%
P=toeplitz(cT);
%pause
h=P\p1;
%plot(h); pause






⌨️ 快捷键说明

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