exam1_2.m
来自「这是关于基2FFT-DIT的程序 第一个压缩文件是matlab程序」· M 代码 · 共 30 行
M
30 行
%实验1-2
%用两个N点FFT计算一个长度为2N的实数序列的2N点离散傅里叶变换
%并将结果同直接使用一个2N点离散傅里叶变换得到的结果进行比较
clear
clc
%产生信号
N=1024;
v=sin(20.*linspace(0,pi,2*N))+0.5.*rand(1,2*N);
%用两个N点FFT计算一个长度为2N的实数序列的2N点离散傅里叶变换,结果为y
%先分离奇数项和偶数项
g=v(1:2:2*N-1);
h=v(2:2:2*N);
y1=ditfft(g);
y2=ditfft(h);
Wn=1;
w=exp(-i*pi/N);
for k=1:N
t=y2(k)*Wn;
y2(k)=y1(k)-t;
y1(k)=y1(k)+t;
Wn=Wn*w;
end
y=[y1,y2]
%与直接用2N点计算的进行比较
yy=ditfft(v)
if (y-yy)<=0.000000000001 & (y-yy)>-0.000000000001
'两者的计算结果相同'
else
'两者的计算结果不同'
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?