PSN-L Email List Message
Subject: Re: FFT BASIC Source Code
From: Ben Bradley benbradley@...............
Date: Sun, 08 Jul 2007 17:58:17 -0500
> Hello PSN;
> I found my very old notes from ASU Nobel Science Library regarding
> FFT basic program and I think it shows
> the source material it was found in.
> Can someone who understands FFT please look at this
> and comment to me at my address gmvoeth@........... or to PSN or to Both.
You can get a better understanding of the Fourier Transform and FFT
from many places online. Here's one:
> I intend to make a DOS executable program to use
> 8 bit data that will display the results in 640X480X256 if at all
> possible. I will share my results if things look good.
> The only question I have is that about real and imaginary.
> I assume real means sine of the data and imaginary means cosine of the
As I recall, Cosine is the "real" part and Sine is the "Imaginary" part.
> and the angle relates to the sample rate vs the desired frequency and
> summed acxcording to the sample number and that the complete butterfly
> operation needs
> to be done 1024 times for each desired freq to look at.
> The bandwidth of each freq will be related to the number of samples
> processed. What I do not understand is how
> can you measure frequency unless you start out in phase
> with the freq you are looking for ??
The complex Fourier Transform tells you both the frequency and the
phase. It may seem like magic, but there's a graphical way of
> Basic Source code for the FFT is very hard to find.
I suppose BASIC is now considered obsolete, except for some of the
Visual Basics found in Microsoft products, and even those may have been
phased out by now.
> Out of that whole library in the 1980s this is the only basic example
> I found.
> Maybe one of you experts can tell me if this program is honestly workable
> and the results will be proper ?
> I understand to save space you can use
> the same memory locations as the original data
> to put the results into but it (results) will be reversed
> and you need to start your freq display using the highest
> result (N) as the lowest Frq in the display (N).
> This computation although it is called FFT is very
> labor intensive and the time will increase exponentially
> to get the results according to the number of samples
> you process each line.
> If Im not mistaken it took me several minutes with the 10MHz VIC20
> chip CPU
> to complete a single spectrum line using only 1024 samples.
> Today my machine is P4 3GHz so I should expect seconds instead of
An optimized, compiled program on a modern PC should be able to do a
1024 point complex FFT in a very few milliseconds. This speed is helpful
if you want to create waterfall plots, which (as I understand it) are
made with many repeated FFT's over time.
Actually, that's a FORTRAN source. Offhand it looks okay to me, but
don't take my word for it.
Public Seismic Network Mailing List (PSN-L)
[ Top ]
[ Back ]
[ Home Page ]