分段故障运行速度比FFT,傅立叶变换快

时间:2012-06-19 04:42:30

标签: c++ fft fftw

我在谈论sFFT: Sparse Fast Fourier Transform 几个月后在a paper, nearly optimal sparse fourier transform发表的文章。

我读了作者所做的另一项先前作品 Simple and Practical Algorithm for Sparse Fourier Transform,并且更深入地理解了这项工作。

对于具有k个非零傅里叶系数的信号,以及输入信号的长度n为2的幂,研究人员展示了两种新的DFT算法。第一种是精确k稀疏情况的O(k log n)时间算法(其中k很小)。第二种是一般情况下的O(k log n log(n / k)) - 时间算法。 相反,FFT在O(n log n)时间内计算DFT。

website正在详细介绍算法和代码实现。

现在我正在尝试测试代码。代码文档提供了Linux的指令,而不是Windows的指令。我在Ubuntu 11.04中尝试过,每次按照说明操作时都会出现分段错误。实际上我一般不熟悉MAKE和Linux。

BTW是否有人在Windows上使用Visual Studio尝试此代码?

其他信息:

源代码文件夹包含GNUmakefile,其中包含以下内容:

 CC=g++
 RM=rm -f
 #CXXFLAGS=-Wall -Wconversion -g
 CXXFLAGS=-Wall -Wconversion -O2
 LDFLAGS=-g
 LDLIBS=-lfftw3 -lfftw3f -lm -lrt

 DESTS=experiment generate_graphs kaiserbessel
 SRCS:=$(filter-out $(DESTS:%=%.cc), $(wildcard *.cc))
 OBJS:=$(subst .cc,.o,$(SRCS))

all: $(DESTS)

$(DESTS): $(OBJS)

clean:
        $(RM) *.o $(DESTS)

我是否需要在此处进行一些更改才能成功运行?

0 个答案:

没有答案