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

📄 ltv_filter.m

📁 分数阶傅立叶变换程序--土耳其算法 主程序在Symplectic/fracft 要调用程序在Utils里找。 在matlab里file-〉set path里设置好路径即可。
💻 M
字号:
function y = ltv_filter(x,filter);% ltv_filter -- perform linear, time-varying filtering%%  Usage%    y = ltv_filter(x,filter)%%  Inputs%    x       signal%    filter  time-varying frequency response of the filter (0->2*pi)%%  Outputs%    y       filtered signal%%  See also demo_ltvf%%  The frequency response at each time is in the columns of filter.  To get%  a (very) rough idea of the output one can mulitply the filter (mask) by %  the Wigner distribution.  The number of columns must be the length of x,%  the number of rows must be even, and the length of the filter is%  one less than the number of rows.% Copyright (C) -- see DiscreteTFDs/Copyrighterror(nargchk(2,2,nargin));x = x(:);N = length(x);if (size(filter,2) ~= N)  error('size(filter,2) must equal length(x)');endM = size(filter,1);                 % M-1 = length of filterfilter = tfdshift(ifft(filter));    % get tv impulse responsefilter = filter(2:M,:);             % make filter symmetricfilter = conj(filter);center = M/2;y = zeros(N,1);for n = 1:N,  a = max(1, n-center+1);  b = min(N, n+center-1);  offset = min(n-1,center-1);  y(n) = x(a:b).' * filter((a:b)-a+center-offset, n);  %fprintf(1, '%d %d %d %d\n', a, b, a-a+center-offset, b-a+center-offset);  %subplot(211),plot(abs(x(a:b)))  %subplot(212),plot(abs(filter((a:b)-a+center-offset, n)))  %pauseend

⌨️ 快捷键说明

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