kfft.m

来自「给出了数字信号处理课程设计的基本程序」· M 代码 · 共 41 行

M
41
字号
function y=KFFT(A,N)
M=log2(N);
p=length(A);
if(p<N)
 A=[A,zeros(1,N-p)];
end
NV2=N/2
NM1=N-1
J=1
for I=1:NM1  %100
  if(I<J) 
    T=A(J)
    A(J)=A(I)
    A(I)=T
  end   
    K=NV2    %5
    
    while(K<J)  %6
       J=J-K
       K=K/2
   end
       J=J+K  %7
end
for L=1:M  %200
    LE=2^L
    LE1=LE/2
    U=1
    W=cos(pi/LE1)-j*sin(pi/LE1)
    
    for J=1:LE1  %300
        for I=J:LE:N  %400
            IP=I+LE1
            T=A(IP)*U
            A(IP)=A(I)-T
            A(I)=A(I)+T  
        end   %10
        U=U*W       
    end
    y=A%20
end

⌨️ 快捷键说明

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