信号与系统matlab研讨.docVIP

  • 22
  • 0
  • 约7.06千字
  • 约 13页
  • 2017-08-11 发布于重庆
  • 举报
信号与系统matlab研讨

连续时间信号Fourier变换的数值近似计算 连续时间信号频谱计算是信号和系统频域分析的基础。由于实际信号大多无简单的解析表达式,所以必须用近似的方法进行计算。本题的目的对频谱计算中误差的原因进行初步的分析,希望能在计算实际信号频谱的近似计算中起一定的指导作用。 若信号x(t)的非零值在,在可用我们提供的函数ctft近似计算其频谱。函数ctft的调用形式为 [X,f]=ctft(x,Fs,N) 其中调用变量x 存放信号x(t)的抽样值,Fs表示对连续信号x(t)的抽样频率(Hz),N表示用DFT进行近似计算时DFT 的点数,为提高算法的计算效率,N最好取2的整数次幂,如512, 1024等。返回变量X是计算出的信号频谱,f(单位Hz)表示对应的频率点。返回变量X一般是复数,可用函数abs(X)计算出幅度谱,函数angle(X) 计算出相位谱。 (1)取Fs=50Hz, N=1024 近似计算信号的频谱,并和理论值进行比较; (2)若将信号的时域有效宽度定义为 试分析时域有效宽度对近似计算的影响。给出一个由信号时域有效宽度估计近似计算中所需信号长度的经验公式。 (3)定义信号频域有效宽度为 给出一个由信号频域有效宽度估计近似计算中所需抽样频率的经验公式。 (1)经计算其理论频谱为 定义函数: function [X,f]=ctft(x,Fs,N) X=fftshift(fft(x,N))/Fs; f=-Fs/2+(0:N-1)*Fs/N; Fs=50; N=1024; t=0:1/Fs:5; x=exp(-t).*(t0); [X,f]=ctft(x,Fs,N); figure(1); subplot(3,1,1); plot(t,x); grid; xlabel(t );ylabel(f(t)); title(f(t)); subplot(3,1,2); plot(f,abs(X)); grid; xlabel(f );ylabel(abs(F(jW))); title(幅度频谱); subplot(3,1,3); plot(f,angle(X)); grid; xlabel(f );ylabel(angle(F(jW))); title(相位频谱); figure(2); P=1./(1+j*f*2*pi); subplot(2,1,1); plot(f,abs(P)); xlabel(f ); title(幅值频谱理论值); grid; subplot(2,1,2); plot(f,angle(P)); xlabel(f ); title(相位频谱理论值); grid; figure(3); subplot(2,1,1); plot(f,abs(P)-abs(X)); xlabel(f (Hz)); title(幅值误差); grid; subplot(2,1,2); plot(f,angle(P)-angle(X)); xlabel(f ); title(相位误差); grid; (2) 对于第一问的函数,最大值为1,经计算有效带宽在(0,2.3025) 对应于N=115 Fs=50; N=1024 t=0:1/Fs:5 x=exp(-t).*(t0); [X,f]=ctft(x,Fs,N); P=1./(1+j*f*2*pi) subplot(4,1,1); plot(f,abs(P)-abs(X)); xlabel(f ); title(幅值误差); grid clear Fs=50; N=116 t=0:1/Fs:5 x=exp(-t).*(t0); [X,f]=ctft(x,Fs,N); P=1./(1+j*f*2*pi) subplot(4,1,2); plot(f,abs(P)-abs(X)); xlabel(f ); title(N); grid clear Fs=50; N=174 t=0:1/Fs:5 x=exp(-t).*(t0); [X,f]=ctft(x,Fs,N); P=1./(1+j*f*2*pi) subplot(4,1,3); plot(f,abs(P)-abs(X)); xlabel(f ); title(1.5N); grid clear Fs=50; N=230 t=0:1/Fs:5 x=exp(-t).*(t0); [X,f]=ctft(x,Fs,N); P=1./(1+j*f*2*pi) subplot(4,1,4); plot(f,abs(P)-abs(X)); xlabel(f ); title(2N); grid 结果分析:由(1)得,抽样后计算后的频谱最大误差在0.02左右,取一倍的N进行抽样时,其最大误差在0.1左右,误差较大,取1.5N

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档