• 大小: 975B
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: Matlab
  • 标签: matlab  FFT  DFT  源代码  

资源简介

运行 Xk=myfft(Xn)与matlab自带的fft的输出结果一样 可以替代fft 学习的好帮手

资源截图

代码片段和文件信息

function [Xk]=myfft(XnN)
%对Xn进行L点的DFT
%用时间抽取的基2FFT-DFT进行快速傅里叶变换
if nargin<2
    N=length(Xn);
end

%序列补零
Xn=[Xnzeros(1N-length(Xn))];   
%计算需分为蝶形运算的级数M
tempbinary=dec2bin(N);
M=length(tempbinary(2:end)); 
tempdata=zeros(NM+1); %定义中间操作存储单元

%%对输入进行排序
for n=0:N-1
    tempbinary=dec2bin(nM);
    tempbinary=rot90(tempbinary2);
    tempdata(n+11)=Xn(bin2dec(tempbinary)+1);  %数组都从1开始计数
end
%开始计算
for m=0:M-1
%产生W因子

评论

共有 条评论