exn922.m

来自「MATLAB及在电子信息课程中的应用.感觉很有用,本来也不花钱,有想用的来拿吧」· M 代码 · 共 18 行

M
18
字号
%《MATLAB及其在理工课程中的应用指南》(十一五规划版)第九章例9-2-3程序
% 用矩阵乘法做离散付利叶变换
% 西安电子科技大学出版社出版  陈怀琛编著 2007年7月
%
xn=input('x =(书上取 sin(0.1*[1:700])+randn(1,700) ) ');
N= (length(xn));						% 取N为Nx
tic;n = [0:1:N-1];                    % n的行向量
k = [0:1:N-1];                       % k的行向量
WN = exp(-j*2*pi/N);                % Wn 因子
nk = n'*k;                            % 产生一个含nk值的N 乘 N维矩阵
WNnk = WN .^ nk;                     % DFT 矩阵
disp('用矩阵乘法求离散傅立叶变换需要的时间')
Xk = xn * WNnk;toc                      % DFT 系数的行向量
plot(k,abs(Xk)),grid on, pause
% semilogx(angle(Xk))
N=pow2(nextpow2(length(xn)));
disp('用快速傅立叶变换需要的时间')
tic,X=fft(xn,N);toc

⌨️ 快捷键说明

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