Matlab进行DFT变换函数
(2014-05-10 09:26:57)
标签:
it |
分类: MATLAB |
function [f,X_m,X_fai]=DFT(xn,ts,N)
% [f,X_m,X_fai]=DFT(xn,ts)
% 离散序列的傅里叶变换 出图
% 输入
% 输出 f为频率向量,X_m为幅值向量,X_fai为相位向量
% 注意计算出来的0频分量(直流分量应该除以2)
if nargin==2
end
Xk=fft(xn,N);
fs=1/ts;
X_m=abs(Xk)*2/N;
X_fai=angle(Xk);
Nn=floor((N-1)/2);
f=(0:Nn)*fs/N
;
X_m=X_m(1:Nn+1);
X_fai=X_fai(1:Nn+1);
X_fai=unwrap(X_fai);
X_fai=X_fai*180/pi;
if nargout==0
end