信号与系统matlab实验傅里叶分析及应用报告答案.docx
《信号与系统matlab实验傅里叶分析及应用报告答案.docx》由会员分享,可在线阅读,更多相关《信号与系统matlab实验傅里叶分析及应用报告答案.docx(12页珍藏版)》请在冰豆网上搜索。
信号与系统matlab实验傅里叶分析及应用报告答案
实验二傅里叶分析及应用
姓名学号班级
一、实验目的
(一)掌握使用Matlab进行周期信号傅里叶级数展开和频谱分析
1、学会使用Matlab分析傅里叶级数展开,深入理解傅里叶级数的物理含义
2、学会使用Matlab分析周期信号的频谱特性
(二)掌握使用Matlab求解信号的傅里叶变换并分析傅里叶变换的性质
1、学会运用Matlab求连续时间信号的傅里叶变换
2、学会运用Matlab求连续时间信号的频谱图
3、学会运用Matlab分析连续时间信号的傅里叶变换的性质
(三)掌握使用Matlab完成信号抽样并验证抽样定理
1、学会运用MATLAB完成信号抽样以及对抽样信号的频谱进行分析
2、学会运用MATLAB改变抽样时间间隔,观察抽样后信号的频谱变化
3、学会运用MATLAB对抽样后的信号进行重建
二、实验条件
需要一台PC机和一定的matlab编程能力
三、实验内容
2、分别利用Matlab符号运算求解法和数值计算法求下图所示信号的FT,并画出其频谱图(包括幅度谱和相位谱)[注:
图中时间单位为:
毫秒(ms)]。
符号运算法:
Ft=sym('t*(Heaviside(t+2)-Heaviside(t+1))+Heaviside(t+1)-Heaviside(t-1)+(-t)*(Heaviside(t-1)-Heaviside(t-2))');
Fw=fourier(Ft);
ezplot(abs(Fw)),gridon;
phase=atan(imag(Fw)/real(Fw));
ezplot(phase);gridon;
title('|F|');
title('phase');
3、试用Matlab命令求
的傅里叶反变换,并绘出其时域信号图。
[注意:
(1)写代码时ji]
symst
Fw=sym('10/(3+iw)-4/(5+iw)');
ft=ifourier(Fw,t);
F=abs(ft);
ezplot(F,[-3,3]),gridon;
4、已知门函数自身卷积为三角波信号,试用Matlab命令验证FT的时域卷积定理。
[注:
即验证门函数FT的平方与相应三角波信号的FT后结果是否一致,可结合频谱图观察分析]
f=sym('Heaviside(t+1)-Heaviside(t-1)');
Fw=simplify(fourier(f));
F=Fw.*Fw;
ezplot(abs(F)),gridon
title('Fw*Fw');
triangle=sym('(t+2)*Heaviside(t+2)-2*t*Heaviside(t)+(t-2)*Heaviside(t-2)');
Fttriangle=fourier(triangle);
F=simplify(Fttriangle);
ezplot(abs(F),[-6,6]),gridon;
title('triangleFT');
5、设有两个不同频率的余弦信号,频率分别为
,
;现在使用抽样频率
对这三个信号进行抽样,使用MATLAB命令画出各抽样信号的波形和频谱,并分析其频率混叠现象[建议:
抽样信号的频谱图横坐标范围不小于-10000Hz~10000Hz或-20000*pi~20000*pirad/s]。
F1=100Hz时,
实验代码如下:
Ts=1/4000;
dt=0.0001;
t1=-0.006:
dt:
0.006;
ft=cos(2*pi*100*t1);
subplot(221);
plot(t1,ft),gridon;
axis([-0.0060.006-1.61.6]);
xlabel('Time(sec)'),ylabel('f(t)')
title('余弦信号波形');N=5000;
k=-N:
N;
W=2*pi*k/((2*N+1)*dt);
Fw=dt*ft*exp(-j*t1'*W);
subplot(222);
plot(W,abs(Fw));
gridon;
axis([-200002000000.006]);
xlabel('\omega'),ylabel('F(w)');
title('余弦信号的频谱');
t2=-0.006:
Ts:
0.006;
fst=cos(2.*pi.*100*t2);
subplot(223)
plot(t1,ft,':
'),holdon
stem(t2,fst),gridon
axis([-0.0060.006-1.51.5])
xlabel('Time(sec)'),ylabel('fs(t)')
title('抽样后的信号'),holdoff
Fsw=Ts*fst*exp(-j*t2'*W);
subplot(224)
plot(W,abs(Fsw)),gridon
axis([-200002000000.006])
xlabel('\omega'),ylabel('Fsw')
title('抽样信号的频谱')
F2=3800Hz时,
实验代码如下:
Ts=1/4000;
dt=0.0001;
t1=-0.006:
dt:
0.006;
ft=cos(2*pi*3800*t1);
subplot(221);
plot(t1,ft),gridon;
axis([-0.0060.006-1.61.6]);
xlabel('Time(sec)'),ylabel('f(t)')
title('余弦信号波形');N=5000;
k=-N:
N;
W=2*pi*k/((2*N+1)*dt);
Fw=dt*ft*exp(-j*t1'*W);
subplot(222);
plot(W,abs(Fw));
gridon;
axis([-200002000000.006]);
xlabel('\omega'),ylabel('F(w)');
title('余弦信号的频谱');
t2=-0.006:
Ts:
0.006;
fst=cos(2.*pi.*100*t2);
subplot(223)
plot(t1,ft,':
'),holdon
stem(t2,fst),gridon
axis([-0.0060.006-1.51.5])
xlabel('Time(sec)'),ylabel('fs(t)')
title('抽样后的信号'),holdoff
Fsw=Ts*fst*exp(-j*t2'*W);
subplot(224)
plot(W,abs(Fsw)),gridon
axis([-200002000000.006])
xlabel('\omega'),ylabel('Fsw')
title('抽样信号的频谱')
(六)结合抽样定理,利用MATLAB编程实现
信号经过冲激脉冲抽样后得到的抽样信号
及其频谱[建议:
冲激脉冲的周期分别取4*pi/3s、pis、2*pi/3s三种情况对比],并利用
构建
信号。
周期取4*pi/3s:
周期取pis:
wm=2;
wc=1.2*wm;
Ts=pi;
dt=0.1;
t1=-4:
dt:
4;
ft=sinc(t1/pi).*(uCT(t1+10)-uCT(t1-10));
N=500;
k=-N:
N;
W=2*pi*k/((2*N+1)*dt);
n=-100:
100;
nTs=n*Ts;
fst=sinc(nTs/pi).*(uCT(nTs+10)-uCT(nTs-10));
subplot(221);
plot(t1,ft,':
'),holdon
stem(nTs,fst),gridon
axis([-44-11]);
xlabel('Time(sec)'),ylabel('fs(t)')
title('Sa(t)抽样后的信号'),holdoff;
Fsw=Ts*fst*exp(-j*nTs'*W);
subplot(222)
plot(W,abs(Fsw),'c'),gridon
axis([-1010-310])
xlabel('\omega'),ylabel('Fsw')
title('Sa(t)抽样信号的频谱')
t=-10:
dt:
10;
f=fst*Ts*wc/pi*sinc((wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t))));
subplot(223);
plot(t,f,'m:
'),gridon;
axis([-1010-29]);
xlabel('t'),ylabel('f(t)');
title('由f(nTs)信号重建得到Sa(t)信号');
周期取2*pi/3s:
实验代码如下:
wm=2;
wc=1.2*wm;
Ts=2*pi/3;
dt=0.1;
t1=-4:
dt:
4;
ft=sinc(t1/pi).*(uCT(t1+10)-uCT(t1-10));
N=500;
k=-N:
N;
W=2*pi*k/((2*N+1)*dt);
n=-100:
100;
nTs=n*Ts;
fst=sinc(nTs/pi).*(uCT(nTs+10)-uCT(nTs-10));
subplot(221);
plot(t1,ft,':
'),holdon
stem(nTs,fst),gridon
axis([-44-11]);
xlabel('Time(sec)'),ylabel('fs(t)')
title('Sa(t)抽样后的信号'),holdoff;
Fsw=Ts*fst*exp(-j*nTs'*W);
subplot(222)
plot(W,abs(Fsw),'c'),gridon
axis([-1010-310])
xlabel('\omega'),ylabel('Fsw')
title('Sa(t)抽样信号的频谱')
t=-10:
dt:
10;
f=fst*Ts*wc/pi*sinc((wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t))));
subplot(223);
plot(t,f,'m:
'),gridon;
axis([-1010-29]);
xlabel('t'),ylabel('f(t)');
title('由f(nTs)信号重建得到Sa(t)信号');
四、实验结论和讨论
信号的时域与频域呈离散与周期的对应关系。
最低的抽样频率应该为2f,只要抽样间隔不大于1/2t,时域中的波形就不会发生混叠。
五、实验思考
要时刻考虑使用的函数的参数列表的问题,这次试验一开始出现的问题就是参数不匹配,本来应该输入字符串,我却输入了表达式,导致后来没办法画出函数图像。
还有就是要选取适当的观察范围,有时候坐标长度选得不合适看不出结果。