?? my_fft.asv
字號:
function dout = my_fft(din);
c=rand(1,128);% 定制512點抽樣%
%%%%求反序,實現反序輸入,正序輸出%%%%
c(1)=0;c(2)=64;
for i=1:6 % log(512)-1=8%
c((2^i+1):2^(i+1))=c(1:2^i)+2^(6-i);
end
d=rand(1,128);
for i=1:128
d(i)=d((c(i)+1));
end%完成初始值的反序%
%%%%求出所有的蝶算指數因子%%%%
x=rand(128,10);a=rand(1,64);q=1;w=rand(1,64);
for o=1:64
w(o)=exp(-j*2*pi*(o-1)/128);
end
%%%%fft變換%%%%
x(:,1)=d';
for k=2:8
i=1;p=1;
for m=1:2^(k-2)%求出每級所需的蝶算指數因子%
q=(m-1)*128/(2^(k-1));
a(p)=w(q+1);p=p+1;
end
for n=1:128/(2^(k-1))%對偶節點個數的確定及變換計算%
p=1;
for h=i:i+(2^(k-2)-1)
x(h,k)=x(h,k-1)+a(p)*x(h+2^(k-2),k-1);
x(h+2^(k-2),k)=x(h,k-1)-a(p)*x(h+2^(k-2),k-1);
p=p+1;
end
i=(2^(k-1))*n+1;
end
end
dout = x(:,8)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -