实验4离散时间信号和系统分析报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、实验目的

1.复习离散时间信号和系统的基本概念及其运算的实现;

2.通过仿真实验,建立对典型的离散时间信号和系统的直观认识。 二、实验容

1. 在n=[-15,15]之间产生离散时间信号

⎩⎨

⎧≤≤-=others

n n n x 0443)(

MATLAB 代码:

单位阶跃函数序列(定义函数): function[x,n]=step_seq(n0,n1.n2) %产生x(n)=u(n-n0) n=[n1:n2]; x=[(n-n0)>=0]; 产生离散时间信号:

n=[-15:15];

s=(step_seq(-4,-15,15)-step_seq(5,-15,15).*n*3; stem(n,s); xlabel('n'); ylabel('x(n)'); grid; 图像:

2. 产生复信号

320)()8/(≤≤=n e n x n

j π

1010)()3.01.0(≤≤-=+-n e n x n j 并画出它们的实部和虚部及幅值和相角。

信号一MATLAB 代码: n=[0:32];

x=exp(j*pi/8*n); figure(1);

stem(n,real(x)); xlabel('n');

ylabel('x real'); figure(2);

stem(n,imag(x)); xlabel('n');

ylabel('x imag'); figure(3);

stem(n,abs(x)); xlabel('n');

ylabel('x magnitude'); figure(4);

stem(n,angle(x)); xlabel('n');

ylabel('x phase'); (1)实部:

(2)虚部:

(3)模:

(4)相角:

信号二MATLAB代码:

n=[-10:10];

x=exp((-0.1+0.3*j)*n); figure(1);

stem(n,real(x));

xlabel('n');

ylabel('x real'); figure(2);

stem(n,imag(x));

xlabel('n');

ylabel('x imag'); figure(3);

stem(n,abs(x));

xlabel('n');

ylabel('x magnitude'); figure(4);

stem(n,angle(x)); xlabel('n');

ylabel('x phase'); (1)实部:

(2)虚部:

(3)模:

(4)相角:

3. 已知序列

⎪⎪⎪⎩⎪⎪⎪⎨⎧==-===others

n n n n n x 0

4331

210

2)( 分别画出x(n),x(n-3)和x(-n)。

MATLAB 代码:

1.x(n): n=[-15:15]; figure(1);

x0=2*delta(0,-15,15)+delta(2,-15,15)-delta(3,-15,15)+3*delta(4,-15,15);

stem(n,x0); 2.x(n-3): n=[-15:15]; figure(1);

x0=2*delta(3,-15,15)+delta(5,-15,15)-delta(6,-15,15)+3*delta(7,-15,15);

stem(n,x0); 3.x(-n): n=[-15:15]; figure(1);

x0=2*delta(0,-15,15)+delta(-2,-15,15)-delta(-3,-15,15)+3*delta(-4,-15,15);

stem(n,x0); 图像:

4. 已知序列{}{}4,3,2,1,0;1,1,1,1,1][,3,2,1,0;4,3,2,1][====k n y k n x ,计算][][n y n x *并画出卷积结果。 MATLAB 代码: x=[1,2,3,4];

y=[1,1,1,1,1]; z=conv(x,y); N=length(z); stem(0:N-1,z); 图像:

5. 求离散时间系统

][]3[]2[2]1[4][n x n y n y n y n y =-+-+-+ 的单位脉冲响应h[k] MATLAB 代码: k=[0:10]; a=[1 4 2 1]; b=[1];

h=impz(b,a,k); stem(k,h); 图像:

6.求

x(k)=cos(n)u(n)的Z 变换;

)

2)(1(1

)(z z z X ++=的Z 反变换。

信号一MATLAB 代码: x=sym('cos(n)'); X=ztrans(x) 运行结果:

X =(z*(z - cos(1)))/(z^2 - 2*cos(1)*z + 1) 信号二MATLAB 代码: x=sym('1/((1+z)*(2+z))'); X=iztrans(x) 运行结果:

X =(-2)^n/2 - (-1)^n + kroneckerDelta(n, 0)/2 7.求系统传递函数 2

2121)(z

z z

z H +++=

• 零极点并画出零极点图;

系统的单位脉冲响应h(n)和频率响应)(Ωj e H

零极点和零极点图的MATLAB 代码: b=[2,1]; a=[1,2,1];

[r,p,k]=tf2zp(b,a) zplane(b,a) 运行结果:

相关文档
最新文档