【文件属性】:
文件名称:DFT的matlab源代码-FFT-C:以ANSIC实现的FFT
文件大小:5.36MB
文件格式:ZIP
更新时间:2021-05-26 03:51:41
系统开源
DFT的matlab源代码FFT-快速傅立叶变换
该项目说明了如何成功地测试驱动基于算法的软件解决方案,该解决方案采用了电气工程和信号处理领域的技术。
目的是在C中实现一个FFT库,该库执行信号的基数2实时抽取FFT。
位反转操作需要精简,并且FFT评估循环需要有效地通用。
基线开发环境如下:
该代码是用ANSI
C编写的。
该代码可在Ubuntu
14.04
LTS或Ubuntu
16.04
LTS上构建并运行。
该代码使用GCC作为编译器工具链以及GNU
make作为项目构建环境来构建和运行。
Git用于版本控制。
libcheck()测试框架用于单元测试。
Valgrind()用于检查内存泄漏。
当然也可以使用其他开发环境(例如Xcode,Eclipse等),但是项目必须在上面指定的基准环境中构建和运行。
当前,实现了三种FFT方法:
就地迭代解决方案
具有偶数/奇数向量缓冲区的递归解决方案(这自然实现了Cooley-Tukey方程)
用户提供的暂存器缓冲区的递归解决方案
就地迭代解决方案ffti_f()涉及两个基本操作:在蝶形网格的2点DFT处将元素交换成其排序的偶数/奇数顺序
【文件预览】:
FFT-C-master
----libbithacks()
--------bithacks.h(575B)
--------bithacks_test.c(3KB)
--------bithacks.c(1KB)
--------Makefile(1KB)
----main.c(108B)
----Makefile.inc(522B)
----app.c(1KB)
----app_test.c(6KB)
----libcheckext()
--------checkext_test.c(5KB)
--------checkext.c(117B)
--------Makefile(1KB)
--------checkext.h(6KB)
----LICENSE(1KB)
----modeling()
--------dft-results-16.txt(972B)
--------dft.m(3KB)
--------dft-results-8.txt(508B)
--------dft-results-32.txt(2KB)
----libcomplex()
--------Makefile(1KB)
--------complex.h(415B)
--------complex.c(116B)
--------complex_test.c(3KB)
----doc()
--------A Trip Down Fourier Lane.pdf(6.41MB)
----.gitignore(64B)
----libfft()
--------fft_test.c(39KB)
--------fft.c(12KB)
--------fft.h(840B)
--------Makefile(1KB)
----Makefile(3KB)
----README.md(4KB)
----app.h(92B)