xcsyb 发表于 2006-6-12 15:59

[求助]求分数阶傅立叶变换程序

谢谢!

simon21 发表于 2006-6-17 22:13

回复:(xcsyb)[求助]求分数阶傅立叶变换程序

本帖最后由 wdhd 于 2016-9-12 14:17 编辑

  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(a,4);

  % do special cases

  if (a==0), Faf = f; return; end;

  if (a==2), Faf = flipud(f); return; end;

  if (a==1), Faf(shft,1) = fft(f(shft))/sN; return; end

  if (a==3), Faf(shft,1) = 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(shft,1) = fft(f(shft))/sN; end

  if (a<0.5), a = a+1; f(shft,1) = ifft(f(shft))*sN; end

  % the general case for 0.5 < a < 1.5

  alpha = a*pi/2;

  tana2 = tan(alpha/2);

  sina = sin(alpha);

  f = ;

  % chirp premultiplication

  chrp = exp(-i*pi/N*tana2/4*(-2*N+2:2*N-2)'.^2);

  f = chrp.*f;

  % chirp convolution

  c = pi/N/sina/4;

  Faf = fconv(exp(i*c*(-(4*N-4):4*N-4)'.^2),f);

  Faf = Faf(4*N-3:8*N-7)*sqrt(c/pi);

  % chirp post multiplication

  Faf = chrp.*Faf;

  % normalizing constant

  Faf = exp(-i*(1-a)*pi/4)*Faf(N:2:end-N+1);

  function xint=interp(x)

  % sinc interpolation

  N = length(x);

  y = zeros(2*N-1,1);

  y(1:2:2*N-1) = x;

  xint = fconv(y(1:2*N-1), sinc([-(2*N-3):(2*N-3)]'/2));

  xint = xint(2*N-2:end-2*N+3);

  function z = fconv(x,y)

  % convolution by fft

  N = length()-1;

  P = 2^nextpow2(N);

  z = ifft( fft(x,P) .* fft(y,P));

  z = z(1:N);

bls 发表于 2006-6-21 14:28

什么是分数阶傅立叶变换,作甚么用?

楼上的,什么是分数阶傅立叶变换,有什么特殊的用途吗?

qingfeng506 发表于 2006-11-22 15:14

simon21可以留一下你的QQ号码或者邮箱吗?想和你交流一下FRFT,
我的QQ是45157494
邮箱是qingfeng506@yahoo.com.cn

simon21 发表于 2007-4-26 20:26

本帖最后由 wdhd 于 2016-9-12 14:17 编辑

原帖由 bls 于 2006-6-21 14:28 发表
楼上的,什么是分数阶傅立叶变换,有什么特殊的用途吗?
分数阶傅立叶变换是经典傅立叶变换的推广形式
它同时从时间域和频率域(或空间域)分析信号特征

hsxyhq 发表于 2007-6-9 12:52

一块交流以下吧 我也对这方面感兴趣 QQ:290695558 邮箱:huangxh1985@tom.com

cammer534 发表于 2008-9-11 21:59

simon21请教下你,分数阶傅立叶变换,能不能应用到模态参数识别方面?我还没有找到相关的文献。
谢谢啦~~
页: [1]
查看完整版本: [求助]求分数阶傅立叶变换程序