www.gusucode.com > matlab通信工程仿真源码(张德丰等编著)程序书籍 > matlab_code/matlab通信工程仿真源码(张德丰等编著)/第7章/li7_4.m
clear all; t=-1:0.01:10; %计算时间 f_t=exp(-t).*(t>0); % subplot(3,1,1);plot(t,f_t); %时域波形 axis([-1 10 -0.1 1.1]); xlabel('时域波形(时间/s)'); w=-40:0.1:40; %计算角频率范围 F_w=1./(1+j*w); %频谱理论结果 subplot(3,1,2);plot(w,abs(F_w)); %频域幅度谱 axis([-40 40 0 1.1]); xlabel('幅度频谱(频率 rad/s)'); subplot(3,1,3);plot(w,angle(F_w)); %频域相位谱 axis([-40 40 -pi/2 pi/2]); xlabel('相位频谱(频率 rad/s)'); clear all; w_n=40; %截断频率 T=pi/w_n; %采样间隔 L=5; t=0:T:L; %时域截断 x_t=exp(-t).*(t>0); %信号序列 N=length(x_t); %序列长度(点数); X_k=fft(x_t); %FFT计算 w0=2*pi/(N*T); %离散频率间隔 kw=2*pi/(N*T).*[0:N-1]; %离散频率样点 X_kw=T.*X_k; %乘以T得到连续傅里叶变换频谱的样值 subplot(2,1,1); plot(kw,abs(X_kw),'r.','MarkerSize',12); %作出数值计算的幅度谱点 axis([-40 90 -0.1 1.1]); xlabel('幅度频谱(频率 rad/s)'); hold on; %保持曲线不被擦除 w=-40:0.1:40; X_w=1./(1+j*w); %理论计算频谱表达式 plot(w,abs(X_w)); %作图比较 subplot(2,1,2); plot(kw,angle(X_kw),'r.','MarkerSize',12); %作出数值计算的相位谱点 hold on; plot(w,angle(X_w)); %频域相位谱 axis([-40 90 -pi pi]); xlabel('频域相位谱(频率 rad/s)');