From help-request at octave dot org Fri Dec 17 11:08:04 2004 Subject: fft source [was "Very important"] From: Geraint Paul Bevan To: eman mohamed CC: octave help mailing list Date: Fri, 17 Dec 2004 16:58:28 +0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 eman mohamed wrote: | Hi ; | | Can you please tell me where i can find the fft.m , i need the source | code for fft soon please , as it is very important to me . | | If you have the source code please send it to me . | | Thanks alot for your help in advance . | Firstly, you should probably use more specific titles when posting to mailing lists. "Very important" looks like a virus-laden or spam message. Secondly, all of the sources to Octave are available from the download page at www.octave.org. If you type "which fft" at the Octave prompt, you will see that fft is a builtin function. It is not implemented as an m-file. There are numerous Octave files which have some part to play in the implementation of FFT: $ find /usr/local/src/octave/octave -name "*fft*" /usr/local/src/octave/octave/libcruft/fftpack /usr/local/src/octave/octave/libcruft/fftpack/cfftb.f /usr/local/src/octave/octave/libcruft/fftpack/cfftb1.f /usr/local/src/octave/octave/libcruft/fftpack/cfftf.f /usr/local/src/octave/octave/libcruft/fftpack/cfftf1.f /usr/local/src/octave/octave/libcruft/fftpack/cffti.f /usr/local/src/octave/octave/libcruft/fftpack/cffti1.f /usr/local/src/octave/octave/libcruft/fftpack/fftpack.doc /usr/local/src/octave/octave/liboctave/oct-fftw.cc /usr/local/src/octave/octave/liboctave/oct-fftw.h /usr/local/src/octave/octave/scripts/signal/fftconv.m /usr/local/src/octave/octave/scripts/signal/fftfilt.m /usr/local/src/octave/octave/scripts/signal/fftshift.m /usr/local/src/octave/octave/src/DLD-FUNCTIONS/fft.cc /usr/local/src/octave/octave/src/DLD-FUNCTIONS/fft2.cc /usr/local/src/octave/octave/src/DLD-FUNCTIONS/fftn.cc /usr/local/src/octave/octave/src/DLD-FUNCTIONS/fftw_wisdom.cc /usr/local/src/octave/octave/test/octave.test/signal/fft-1.m /usr/local/src/octave/octave/test/octave.test/signal/fft2-1.m /usr/local/src/octave/octave/test/octave.test/signal/ifft-1.m /usr/local/src/octave/octave/test/octave.test/signal/ifft2-1.m All of these files can be obtained in a tarball of via CVS. See http://www.octave.org/download If you look at fft.cc, you will see that a call to the fourier() function in the NDArray code occurs, try: $ find /usr/local/src/octave/octave -name "*NDArray*" However, the actual FFT itself is performed using standard libraries. If you have the FFTW3 library installed on your system, Octave will use that. If not, it will use FFTPACK (the code to which is contained in the octave/libcruft directory). - -- Geraint Bevan http://www.mech.gla.ac.uk/~gbevan -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iEYEARECAAYFAkHDEDQACgkQcXV3N50QmNNNjACePoS8fSwG+6ZPYinq4s5Xx9iq FbgAnjq9XSROR4DznFiae1vbbIgA2juP =wojH -----END PGP SIGNATURE----- ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------