资源简介
本压缩包包含7种不同的FFT代码和测试程序,并给出各个FFT程序的性能对比数据。更详细的信息请参见http://topic.csdn.net/t/20060328/11/4644901.html。 这7种FFT代码包括。
1. galois_godel()给出的程序
2. http://topic.csdn.net/t/20060222/13/4570436.html中的程序
3. 朱志刚的FFT程序。
4. 我自己(liangbch)写的两个程序
5. mixfft,来自http://hjem.get2net.dk/jjn/fft.htm
6. http://momonga.t.
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
void four1(double data[] int nn int isign)
{
int njimmmaxistep;
double temprtempithetawprwpiwrwiwtemp;
n = 2 * nn;
j = 1;
for (i = 1; i<=n; i=i+2)
{
if(j > i)
{
tempr = data[j];
tempi = data[j + 1];
data[j] = data[i];
data[j + 1] = data[i + 1];
data[i] = tempr;
data[i + 1] = tempi;
}
m = n / 2;
while (m >= 2 && j > m)
{
j = j - m;
m = m / 2;
}
j = j + m;
}
mmax = 2;
while(n > mmax)
{
istep = 2 * mmax;
theta = 6.28318530717959 / (isign * mmax);
wpr = -2.0 * sin(0.5 * theta)*sin(0.5 * theta);
wpi = sin(theta);
wr = 1.0;
wi = 0.0;
for(m = 1; m<=mmax; m=m+2)
{
for (i = m; i<=n; i=i+istep)
{
j = i + mmax;
tempr=double(wr)*data[j]-double(wi)*data[j+1];
tempi=double(wr)*data[j+1]+double(wi)*data[j];
data[j] = data[i] - tempr;
data[j + 1] = data[i + 1] - tempi;
data[i] = data[i] + tempr;
data[i + 1] = data[i + 1] + tempi;
}
wtemp = wr;
wr = wr * wpr - wi * wpi + wr;
wi = wi * wpr + wtemp * wpi + wi;
}
mmax = istep;
}
}
/*
void twofft(double data1[] double data2[] double fft1[] double fft2[] int& n)
{
int jn2j2;
double c1rc1ic2rc2iconjrconjih1rh1ih2rh2i;
c1r = 0.5;
c1i = 0.0;
c2r = 0.0;
c2i = -0.5;
for (j = 1; j<=n; j++)
{
fft1[2 * j - 1] = data1[j];
fft1[2 * j] = data2[j];
}
four1(fft1 n 1);
fft2[1] = fft1[2];
fft2[2] = 0.0;
fft1[2] = 0.0;
n2 = 2 * (n + 2);
for (j = 2; j<=n / 2 + 1; j++)
{
j2 = 2 * j;
conjr = fft1[n2 - j2 - 1];
conji = -fft1[n2 - j2];
h1r=c1r*(fft1[j2-1]+conjr)-c1i*(fft1[j2]+conji);
h1i=c1i*(fft1[j2-1]+conjr)+c1r*(fft1[j2]+conji);
h2r=c2r*(fft1[j2-1]-conjr)-c2i*(fft1[j2]-conji);
h2i=c2i*(fft1[j2-1]-conjr)+c2r*(fft1[j2]-conji);
fft1[j2 - 1] = h1r;
fft1[j2] = h1i;
fft1[n2 - j2 - 1] = h1r;
fft1[n2 - j2] = -h1i;
fft2[j2 - 1] = h2r;
fft2[j2] = h2i;
fft2[n2 - j2 - 1] = h2r;
fft2[n2 - j2] = -h2i;
}
}
int cint(double x)
{
int temp;
double iprt;
if (x>0)
{
x=modf(x&iprt);
if(fabs(x)<0.5)
temp=int(iprt);
else
temp=int(iprt+1);
}
else if(x==0)
temp=0;
else
{
x=modf(x&iprt);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 645 2006-04-11 06:42 ffttest\test result\ooura_benchmark.txt
文件 645 2006-04-11 06:43 ffttest\test result\mixfft_benchmark.txt
文件 645 2006-04-11 06:44 ffttest\test result\lbcfft2_benchmark.txt
文件 645 2006-04-11 06:44 ffttest\test result\lbcfft1_benchmark.txt
文件 646 2006-04-11 06:47 ffttest\test result\galois_benchmark.txt
文件 832 2006-04-11 06:48 ffttest\test result\zhu_benchmark.txt
文件 645 2006-04-11 06:53 ffttest\test result\csdn_benchmark.txt
文件 645 2006-04-11 06:44 ffttest\test\lbcfft1_benchmark.txt
文件 118784 2006-04-11 06:35 ffttest\test\test_FFT.exe
文件 28 2006-04-05 08:06 ffttest\test\config.h
文件 3857 2006-04-11 06:38 ffttest\test\test_FFT.dsp
文件 539 2006-04-11 06:38 ffttest\test\test_FFT.dsw
文件 6340 2006-04-11 06:35 ffttest\test\test_FFT.c
文件 645 2006-04-11 06:44 ffttest\test\lbcfft2_benchmark.txt
文件 171 2006-04-04 22:51 ffttest\test\test_FFT.h
文件 58368 2006-07-05 20:32 ffttest\test\test_FFT.ncb
文件 48640 2006-07-05 20:32 ffttest\test\test_FFT.opt
文件 8724 2000-10-30 21:58 ffttest\mix_fft\Fftbench.c
文件 98304 2006-04-11 06:40 ffttest\mix_fft\test_speedFFT.exe
文件 3626 2006-04-11 00:44 ffttest\mix_fft\test_speedFFT.dsp
文件 1322 2006-04-11 00:45 ffttest\mix_fft\test_speedFFT.cpp
文件 549 2006-04-11 00:29 ffttest\mix_fft\test_speedFFT.dsw
文件 21118 2006-04-11 00:31 ffttest\mix_fft\Mixfft.c
文件 645 2006-04-11 06:43 ffttest\mix_fft\benchmark.txt
文件 23362 2005-06-29 21:58 ffttest\ooura_fft\fft4g.c
文件 35849 1999-10-29 02:16 ffttest\ooura_fft\fft4g_h.c
文件 47879 1999-10-25 02:15 ffttest\ooura_fft\fft8g.c
文件 45573 1999-10-29 02:16 ffttest\ooura_fft\fft8g_h.c
文件 89157 2001-10-30 02:17 ffttest\ooura_fft\fftsg.c
文件 89749 2006-04-05 07:40 ffttest\ooura_fft\fftsg_h.c
............此处省略61个文件信息
- 上一篇:3D炫酷元素周期表源代码HTML
- 下一篇:打印分页.html
评论
共有 条评论