ifft_fft.m
来自「该程序为matlab进行傅立叶变换的快书算法FFT」· M 代码 · 共 30 行
M
30 行
%利用FFT来计算反变换IFFT
%指导原理:如果输入是(1/N)*X[((-n))N],那么FFT程序的输出就是x(n),即X(k)的ifft
N=50;
n=0:49;
xn=(0.5).^n
subplot(2,2,1)
stem(n,xn)
title('原序列')
Xk=fft(xn,N);
subplot(2,2,2)
stem(n,abs(Xk))
ylabel('|X(k)|')
title('实序列DFT实部为偶')
%用公式IFFT计算反变换
xn1=ifft(Xk,N);
subplot(2,2,3)
stem(n,xn1)
title('公式ifft计算反变换')
%用fft计算反变换
[Xk,n]=sigfold(Xk,n); %输入信号反折
%Xk=Xk(mode(n,3);
Xk=Xk/N; %输入信号取1/N
xn1=fft(Xk,N);
subplot(2,2,4)
stem(n+50,abs(xn1))
title('用FFT计算IFFT')
%结论:结果正确,说明这里用fft 来计算ifft是合理的。
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?