实验1 常见离散信号的MATLAB产生和图形显示实验报告

  • 格式:doc
  • 大小:462.00 KB
  • 文档页数:9

实验1 常见离散信号的MATLAB产生和图形显示实验报告

2010级电信工一班 房明 201000121030

MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。它是一种面向对象的,交互式程序设计语言,其结构完整又优良的可移植性。它在矩阵运算,数字信号处理方面有强大的功能。另外,MATLAB提供了方便的绘图功能,便于用户直观地输出处理结果。

实验要求:运用MATLAB编程完成一些数字信号处理的基本功能,加深对教学内容的理解。

实验1 常见离散信号的MATLAB产生和图形显示;

实验目的:加深对常用离散信号的理解;

实验原理:

1. 单位抽样序列

01)(n 00nn

在MATLAB中可以利用________函数实现。

如果)(n在时间轴上延迟了k个单位,得到)(kn即:

01)(kn 0nkn

2.单位阶跃序列

01)(nu 00nn

在MATLAB中可以利用_______函数实现。

3.正弦序列

)/2sin()(FsfnAnx

4.复正弦序列

njenx)(

5.指数序列

nanx)(

实验内容:编制程序产生上述5种信号(长度可输入确定),并绘出其图形。

实验要求:(1)预先阅读附录(MATLAB基础介绍);

(2)讨论复指数序列的性质。

实验结果:

1、单位抽样序列:在MATLAB中可以利用zero()函数实现。

x=zeros(1,N);

x(0)=1;

并且用stem()函数绘制二维离散数据的火柴杆图。

实验代码:

>> n1=-20:20;

>> x1=[zeros(1,20),1,zeros(1,20)];

>> stem(n1,x1);

>> title('单位抽样序列');

>> xlabel('n');ylabel('δ(n)');

图形:

如果)(n在时间轴上延迟了k个单位,得到)(kn,则将程序中语句

>> x1=[zeros(1,20),1,zeros(1,20)];

里面的“1”改为相应的k即可,同时适当改变图形显示的长度。

2.单位阶跃序列:在MATLAB中可以利用ones()函数实现。

x=ones(1,N);

实验代码与图形:

>> n2=-20:20;

>> x2=[zeros(1,20),1,ones(1,20)];

>> stem(n2,x2);

>> title('单位阶跃序列');

>> xlabel('n');ylabel('u(n)');

3.正弦序列:实现方法n=0:N-1; x=A*sin(2*pi*f*n/Fs+fai)(式中的参数随意取)

实验代码与图形:

>> A=3;fai=pi/4;

>> Fs=2;f=0.05;

>> n3=0: 1:100;

>> x3=A*sin(2*pi*f*n3/Fs+fai);

>> stem(n3,x3);

>> title('正弦序列');

>> xlabel('n');ylabel('x(n)');

4.复正弦序列:实现方法n=0:N-1;x=exp(j*ω*n);

实验代码与图形:

>> n4=0:1:50;w=50;

>> x4=exp(j*w*n4);

>> stem(n4,x4);

>> title('复正弦序列');

>> xlabel('n');ylabel('x(n)');

5.指数序列:实现方法n=0:N-1;x=a.^n;

实验代码与图形:

>> a=1.5;

>> n5=0: 1:10;

>> x5=a.^n5;

>> stem(n5,x5);

>> title('指数序列');

>> xlabel('n');ylabel('x(n)');

>> a=1;

>> n5=0:1:10;

>> x5=a.^n5;

>> stem(n5,x5);

>> title('指数序列');

>> xlabel('n');ylabel('x(n)');

>> a=0.6;

>> n5=0:1:10;

>> x5=a.^n5;

>> stem(n5,x5);

>> title('指数序列');

>> xlabel('n');ylabel('x(n)');

>> a=-1.5;

>> n5=0:1:10;

>> x5=a.^n5;

>> stem(n5,x5);

>> title('指数序列');

>> xlabel('n');ylabel('x(n)');

>> a=-0.6;

>> n5=0:1:10;

>> x5=a.^n5;

>> stem(n5,x5);

>> title('指数序列');

>> xlabel('n');ylabel('x(n)');

实验结论:

通过编程产生上述五种离散信号及图形。

对于实指数序列)()(nuanxn,当0a时,序列是发散的;当0a时,序列是收敛的;1a时,各量幅值均为1。

0a时幅值均为正;0a时,n=0幅值为1,n为偶数时为正,n为奇数时为负。

思考:对于复指数序列()()jnxne:

1、与都等于零时,为各量幅值均为1的序列;

2、等于零,不等于零时,为实指数序列,符合实指数序列的性质; 如5中实指数序列性质的讨论,且e的值大于1。

3、不等于零,大于零时,为增幅震荡的序列;

>> n4=0:1:200;w=0.2;a=0.01;

>>x4=exp(a*n4+j*w*n4);

>>stem(n4,x4);

>>title('复指数序列');

>>xlabel('n');ylabel('x(n)');

4、不等于零,等于零时,为等幅震荡的序列;

如上述4、复正弦序列图形。

5、不等于零,小于零时,为减幅震荡的序列;

>> n4=0:1:200;w=0.2;a=-0.01;

>>x4=exp(a*n4+j*w*n4);

>>stem(n4,x4);

>>title('复指数序列');

>>xlabel('n');ylabel('x(n)');