信号与系统实验报告Word文件下载.docx
《信号与系统实验报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《信号与系统实验报告Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
);
gridon;
程序运行结果:
b.题目:
利用MATLAB求出当输入信号为f(t)=sin(t)时的零状态响应波形。
源程序代码:
clearall;
b=[134];
a=[1305];
sys=tf(b,a);
0.1:
10;
x=cos(t);
y=lsim(sys,x,t);
plot(t,y);
xlabel('
时间(t)'
ylabel('
y(t)'
零状态响应'
程序运行结果:
2.连续信号的傅里叶变换
a.题目:
已知信号f(t)=G4(t),利用MATLAB实现其傅里叶变换。
R=0.01;
t=-3:
R:
3;
f=stepfun(t,-1)-stepfun(t,1);
w1=2*pi*5;
N=500;
k=0:
N;
w=k*w1/N;
F=f*exp(-j*t'
*w)*R;
F=real(F);
w=[-fliplr(w),w(2:
501)];
F=[fliplr(F),F(2:
subplot(211);
plot(t,f);
f(t)'
门函数'
subplot(212);
plot(w,F);
w'
F(w)'
f(t)的傅里叶变换F(w)'
利用MATLAB绘出该系统的幅频响应|H(jw)|和相频响应。
w=linspace(0,5,200);
b=[3];
a=[1234];
H=freqs(b,a,w);
subplot(2,1,1);
plot(w,abs(H));
set(gca,'
xtick'
[012345]);
ytick'
[00.40.7071]);
幅值谱|H(jw)|'
\omega(rad/s)'
幅值'
subplot(2,1,2);
plot(w,angle(H));
相位'
3.常用离散信号的MATLAB表示
已知指数序列f(k)=2e(-0.8t),利用MATLAB绘出其波形。
t=-1:
15;
a=-0.7;
A=3;
f=A*a.^t;
stem(t,f,'
filled'
指数序列'
已知两个离散序列f1(k)={-3,-2,-1,0,1,2,3},f2(k)={-2,-1,0,1,2},用MATLAB绘出f(k)=f1(k)+f2(k)的波形。
a1=[-3,-2,-1,0,1,2,3];
k1=-3:
a2=[-2,-1,0,1,2];
k2=-2:
2;
k=min([k1:
k2]):
max([k1,k2]);
f1=zeros(1,length(k));
f2=zeros(1,length(k));
f1(find((k>
=min(k1))&
(k<
=max(k1))==1))=a1;
f2(find((k>
=min(k2))&
=max(k2))==1))=a2;
f=f1-f2;
stem(k,f,'
4.MATLAB对离散信号与系统的频域分别系和z域分析
画出系统的幅值频和相位频。
w=-4*pi:
8*pi/511:
4*pi;
b=[131];
a=[12.4-0.8];
h=freqz(b,a,w);
plot(w/pi,abs(h));
grid
幅值谱|H(e^{j\omega})|'
\omega/\pi'
plot(w/pi,angle(h));
相位谱[H(e^{j\omega})]'
)
b.源程序代码:
A=[0.60.2;
0.50.4];
B=[1;
0];
x0=[-0.5;
1];
n=[10];
f=[00.5*ones(1,n-1)];
x(:
1)=x0;
fori=1:
n
x(:
i+1)=A*x(:
i)+B*f(i);
end
stem([0:
n],x(1,:
));
n],x(2,:
5.创新:
求sintd的傅里叶变换。
symstf;
x=sin(t)*sym('
Heaviside(t)'
F=fourier(x);
ezplot(x);
ezplot(F);
试用MATLAB计算如下所示序列
与
的卷积和
。
k1=3;
k2=3;
>
k=k1+k2;
k=k-1;
f1=[111];
f2=[0123];
f=conv(f1,f2);
nf=0:
k;
stem(nf,f,'
*r'
n'
ylabel('
f(n)'
c.题目:
求解y'
'
(t)+4y'
(t)+3y(t)=x'
(t)+3x(t),x(t)=exp(-t)u(t)的单位冲激响应,单位阶跃响应和零状态响应。
a=[143];
b=[13];
0.01:
h=impulse(sys,t);
plot(t,h);
t'
h'
单位冲激响应'
subplot(3,1,1);
g=step(sys,t);
plot(t,g);
g'
单位阶跃响应'
subplot(3,1,2);
x=exp(-t);
yf=lsim(sys,x,t);
plot(t,yf);
yf'
subplot(3,1,3);
d.题目:
设f(t)=Sa(t)已知连续时间信号f(t)的傅里叶变换为F(jw)=pi*g2(w)=pi[heaviside(w+1)-heaviside(w-1)]试用MATLAB求f1(t)=pi*g2(t)的傅里叶变换F1(jw),并验证对称性。
t=-2:
f1=pi*(stepfun(t,-1)-stepfun(t,1));
F1=f1*exp(-j*t'
F1=real(F1);
F1=[fliplr(F1),F1(2:
plot(t,f1);
axis([-2,2,-0.1,4]);
f1'
f1(t)'
plot(w,F1);
F1'
F1(jw)'
四.实验总结
通过本次实验,进一步了解了信号的基本运算、零输入与零状态响应的物理意义、卷积对于求解松弛LTI系统的零状态响应的意义、傅里叶级数分解在信号的分解合成的作用、傅里叶变换后幅度谱和相位谱的物理意义、连续时间信号和离散时间信号在信号的采样与恢复及系统在频域、复频域中的分析对于了解系统传输特性的作用。
在本次实验中,在实验内容及结果中一开始的八个程序虽是来自书本,但我在编写的过程中不是简单的做打字员的工作,而是边输入,边思考,在每个程序中都做了相应的改变,把它们变成自己的程序。
而在创新部分,则是找相应的题目,自己编出来的。
通过实验是我深刻理解耐性和毅力是成功的必要因素,实验中有很多工作都很烦琐,比如绘图、微调等。
在实验的过程中要保持耐心,静下心来,不急不躁。
通过这个实验,我学会用MATLAB实现连续时间信号傅里叶变换,用MATLAB分析LTI系统的频率特性,和学会了用MATLAB分析LTI系统的输出响应。
Matlab对我们学习信号与系统很有用,有助于我们更好的掌握这一学科。