annotate util/opFFTxd.m @ 55:435da1dc71a0

(none)
author idamnjanovic
date Mon, 14 Mar 2011 16:55:49 +0000
parents 87b76775083b
children
rev   line source
idamnjanovic@48 1 function op = opFFTxd(n, dim)
idamnjanovic@48 2 % OPFFT One-dimensional fast Fourier transform (FFT).
idamnjanovic@48 3 %
idamnjanovic@48 4 % OPFFT(N) create a one-dimensional normalized Fourier transform
idamnjanovic@48 5 % operator for vectors of length N.
idamnjanovic@48 6
idamnjanovic@48 7 % Copyright 2008, Ewout van den Berg and Michael P. Friedlander
idamnjanovic@48 8 % http://www.cs.ubc.ca/labs/scl/sparco
idamnjanovic@48 9 % $Id: opFFT.m 1040 2008-06-26 20:29:02Z ewout78 $
idamnjanovic@48 10
idamnjanovic@48 11 op = @(x,mode) opFFTxd_intrnl(n,x, dim,mode);
idamnjanovic@48 12
idamnjanovic@48 13
idamnjanovic@48 14 function y = opFFTxd_intrnl(n,x,dim,mode)
idamnjanovic@48 15 x=reshape(x, [size(x,1)/n n]);
idamnjanovic@48 16 %checkDimensions(n,n,x,mode);
idamnjanovic@48 17 if mode == 0
idamnjanovic@48 18 y = {size(x,1),size(x,1),[1,1,1,1],{'FFT'}};
idamnjanovic@48 19 elseif mode == 1
idamnjanovic@48 20 y = fft(x, [], dim);% / sqrt(length(x));
idamnjanovic@48 21 else
idamnjanovic@48 22 y = ifft(x, [], dim);% * sqrt(length(x));
idamnjanovic@48 23 end
idamnjanovic@48 24 y=reshape(y, [size(y,1)*size(y,2) 1]);
idamnjanovic@48 25