ditfft1.m

来自「用matlab进行FFT及DFT算法的实现」· M 代码 · 共 23 行

M
23
字号
function y=ditfft1(x,N)
m=nextpow2(x);
N=2^m;
if length(x)<N
    x=[x,zeros(1,N-length(x))];
end
nxd=bin2dec(fliplr(dec2bin([1:N]-1,m)))+1;
y=x(nxd);
for mm=1:m;
    Nmr=2^mm;
    u=1;
    WN=exp(-1*2*pi/Nmr);
    for j=1:Nmr/2
        for k=j:Nmr:N
        kp=k+Nmr/2;
        t=y(kp)*u;
        y(kp)=y(k)-t;
        y(k)=y(k)+t;
        end
        u=u*WN;
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?