采用查表法计算FFT

使用查表法计算快速傅里叶变换会快一些,本文采用了128点浮点(float)和定点(fix)型的处理,还有64点,包括MATLAB的程序和C语言的程序一一对应,与MATLAB自带的fft运算结果有对比。

已归纳,方便下次直接使用。

先上运行结果,采用统一一组数据sourcdata =[]; // 这里的数据比较大,因为做过处理

MATLAB自带fft运行结果与查表法编写的运行结果对比:

采用查表法计算FFT_第1张图片

C语言对应程序运行结果(这里C语言采用了定点型,相对于matlab程序也做了处理)

采用查表法计算FFT_第2张图片

MATLAB 程序

%% matlab编写的处理fft的程序,N点可以在函数里面设置
% input:需要处理的数组 sourcedata usefloat: 1 使用浮点型 0 使用定点型 N为FFT的点数 32 64 128... 16点的表格未填,可以自己补充
% output:处理后的数组
function destdata = MatlabFFT(sourcedata, usefloat, N) 

if usefloat == 0
    Ndiv = 127;
else
    Ndiv = 

你可能感兴趣的:(matlab,C++)