资源简介
本程序是matlab的快速傅里叶变换程序,本程序可以用来学生,研究生的分数阶傅里叶变换的学习
代码片段和文件信息
function Faf = frft(f a)
% The fast Fractional Fourier Transform
% input: f = samples of the signal
% a = fractional power
% output: Faf = fast Fractional Fourier transform
error(nargchk(2 2 nargin));
f = f(:);
N = length(f);
shft = rem((0:N-1)+fix(N/2)N)+1;
sN = sqrt(N);
a = mod(a4);
% do special cases
if (a==0) Faf = f; return; end;
if (a==2) Faf = flipud(f); return; end;
if (a==1) Faf(shft1) = fft(f(shft))/sN; return; end
if (a==3) Faf(shft1) = ifft(f(shft))*sN; return; end
% reduce to interval 0.5 < a < 1.5
if (a>2.0) a = a-2; f = flipud(f); end
if (a>1.5) a = a-1; f(shft1) = fft(f(shft))/sN; end
if (a<0.5) a = a+1; f(shft1) = ifft(f(shft))*sN; end
% the general case for 0.5 < a < 1.5
alpha = a*pi/2;
tana2 = tan(alpha/2);
sin
- 上一篇:数学形态学的matlab实现
- 下一篇:IMM交互模型
评论
共有 条评论