• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-03
  • 语言: Matlab
  • 标签: 自编  FFT  matlab  

资源简介

自己编写的FFT程序(matlab) 时域抽取基二fft ret_val 为fft变换后返回的频域序列 vector 为变换前的序列

资源截图

代码片段和文件信息

function ret_val = MyFFT(vector)
%======================================
%ret_val 为fft变换后返回的频域序列
%N 为点数
%vector 为变换前的序列
%======================================
vector_size = size(vector);
N = vector_size(2);
c = zeros(1N);
%
%变址运算
%
j1 = 0;
for i = 1 : N
    if i < j1 + 1
        tmp = vector(j1 + 1);
        vector(j1 + 1) = vector(i);
        vector(i) =tmp;
    end
    k = N / 2;
    while k <= j1
        j1 = j1 - k;
        k = k / 2;
    end
    j1 = j1 + k;
end

%
%蝶形运算
%
%%%%%%%计算 N 的
dig = 0;
k = N;
while k > 1
    dig = dig + 1;
    k = k / 2;

评论

共有 条评论