🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.dsp
Article #1263

fft/dft progs wanted.

#1263
From: chris perkins
Date: Tue, 13 Oct 1992 08:23
59 lines
1994 bytes
(Continued from the previous message)

       }
   }
}

/*         Inverse FFT             */
void
c_ifft( float *buffer, int n )
{
 int step;
 int step2;
 int index;

 bit_reverse( buffer, n );

 for( step = 2, step2 = 2*PI_2; step < 2*n; step *= 2, step2 /= 2 ) {
   for( kk = 0, index = 0; kk < 2*PI_2; kk += step2, index++ ) {
       for(ii = index, jj = index+step/2; ii < n; ii += step, jj += step) {

               buffer[jj*2] = buffer[jj*2]*sines[kk+PI_2]
                                       - buffer[jj*2+1]*sines[kk];
               buffer[jj*2+1] = buffer[jj*2+1]*sines[kk+PI_2]
                                       + buffer[jj*2]*sines[kk];
               buffer[ii*2] = buffer[ii*2] + buffer[jj*2];
               buffer[jj*2] = buffer[ii*2] - 2*buffer[jj*2];
               buffer[ii*2+1] = buffer[ii*2+1] + buffer[jj*2+1];
               buffer[jj*2+1] = buffer[ii*2+1] - 2*buffer[jj*2+1];
               }
       }
   }
}

/*         Bit-reversed indexing */
void
bit_reverse( float *buffer, int n )
{
 for( kk = 0, jj = 1; jj < n; jj++ ) {
   ii = 2;
   while( kk >= n/ii ) {
       kk -= n/ii;
       ii <<= 1;
       }
   kk += n/ii;
   if( kk > jj ) {
       temp = buffer[jj*2];
       buffer[jj*2] = buffer[kk*2];
       buffer[kk*2] = temp;
       temp = buffer[jj*2+1];
       buffer[jj*2+1] = buffer[kk*2+1];
       buffer[kk*2+1] = temp;
       }
   }
}
---
 þ DeLuxeý/386 1.25 #9629 þ Best wishes,         Chris Perkins
--
Canada Remote Systems  - Toronto, Ontario
World's Largest PCBOARD System - 416-629-7000/629-7044
Technical Details
Message-ID: <1992Oct13.4381.3557@dosgate>
Path: arc1-ca.pugleaf.net!sparky!uunet!uunet.ca!unixbox!dosgate!dosgate![chris.perkins@canrem.com]

Show Full Headers
Complete Article Headers
Newsgroups: comp.dsp
Path: arc1-ca.pugleaf.net!sparky!uunet!uunet.ca!unixbox!dosgate!dosgate![chris.perkins@canrem.com]
From: "chris perkins" <chris.perkins@canrem.com>
Subject: fft/dft progs wanted.
Message-ID: <1992Oct13.4381.3557@dosgate>
Reply-To: "chris perkins" <chris.perkins@canrem.com>
Organization: Canada Remote Systems
Distribution: comp
Date: 13 Oct 92 03:23:14 EST
Lines: 59