Chapter Contents |
Previous |
Next |
Language Reference |
Note: For most efficient use of the IFFT function, n should be a power of 2. If n is a power of 2, a fast Fourier transform is used (Singleton 1969); otherwise, a Chirp-Z algorithm is used (Monro and Branch 1976).
IFFT(FFT(X)) returns n times x, where n is the dimension of x. If f is not the Fourier transform of a real sequence, then the vector generated by the IFFT function is not a true inverse Fourier transform. However, applications exist where the FFT and IFFT functions may be used for operations on multidimensional or complex data (Gentleman and Sande 1966; Nussbaumer 1982).
The convolution of two vectors x (n ×1) and y (m ×1) can be accomplished using the following statements:
a=fft(x//j(nice-nrow(x),1,0)); b=fft(y//j(nice-nrow(y),1,0)); z=(a#b)],+[; b],2[=-b],2[; z=ifft(z||((a#(b],2 1[))],+[));where NICE is a number chosen to allow efficient use of the FFT and IFFT functions and also is greater than n+m.
Windowed spectral estimates and inverse autocorrelation function estimates can also be readily obtained.
Chapter Contents |
Previous |
Next |
Top |
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.