MATLAB信号处理——信号与系统的分析基础(2)

z1-3 离散时间序列

     1)单位采样序列

         单位采样序列(也叫单位脉冲序列)δ(n)定义为

          它与单位冲激函数(狄拉克函数)很像,不同的是,狄拉克函数当n=0时,取值为无穷大。

          脉冲序列可以通过下面命令来实现:

x = zeros(1,N);

          也可以利用逻辑关系来产生:

x = [(n-n0)] == 0]

例1-3-1)产生单位采样序列δ(n)和δ(n-10),并绘制出图形

clear all;
n = 50;
x = zeros(1,n);
x(1) = 1;
xn = 0:n-1;
subplot(121);
stem(xn,x);
grid on
axis([-1 51 0 1.1]);
title('单位采样序列δ(n)')
ylabel('δ(n)');
xlabel('n');
k = 10;
x(k) = 1;
x(1) = 0;
subplot(122);
stem(xn,x);
grid on
axis([-1 51 0 1.1]);
title('单位采样序列δ(n-10)')
ylabel('δ(n-10)');
xlabel('n');

    2)单位阶跃序列

        单位阶跃序列u(n)定义为

        自变量为0时函数值不确定或不定义。

        单位阶跃序列和单位脉冲序列的关系为:u(n)=Σδ(n-i),δ(n)=u(n)-u(n-1)

        单位阶跃序列或者它的位移序列u(n-n0)都可以看成是一个零向量和一个全1向量的组合,可以用 

x = ones(1,n);

来产生一个全1向量。 

例1-3-2)产生单位阶跃序列u(n)和u(n-10),并绘制出图形。

clear all
n = 40;
x = ones(1,n);
xn = 0:n-1;
subplot(211);
stem(xn,x);
grid on
axis([-1 51 0 1.1]);
title('单位阶跃序列u(n)')
ylabel('u(n)');
xlabel('n');
x = [zeros(1,10),1,ones(1,29)];
subplot(212);
stem(xn,x);
grid on
axis([-1 51 0 1.1]);
title('单位跃迁序列u(n-10)')
ylabel('u(n-10)');
xlabel('n');

    

    3)正弦序列

       正弦序列的定义为

                                              x(n) = Asin(ωn + θ) = Asin(2πfn + θ)

       同样的,余弦序列可以定义为

                                             x(n) = Acos(ωn + θ) = Acos(2πfn + θ)

例1-3-3)-1绘制出x(n) = sin(nπ/7)的波形图

clear all
n = 0:59;
x = sin(pi/7*n);
stem(n,x);
ylabel('x(n)');
xlabel('n');
title('正弦序列')
axis([0 40 -1.5 1.5]);
grid on;

例1-3-3)-2绘制正弦序列x(n) = 3sin(0.3πn+0.8π)

clear all
n = -20:20;
x = 3*sin(0.3*n*pi+0.8*pi);
stem(n,x);
ylabel('x(n)');
xlabel('n');
title('正弦序列')
axis([-20 20 -3.5 3.5]);
grid on;

   4)实指数序列

       实指数序列定义为

                                                                    x(n) = a^nu(n)

       若a的绝对值小于1,则x(n)为收敛序列,若大于1,则为发散序列。

例1-3-4)绘制x1(n) = 1.3^n·u(n)、x2 = (-1.3)^n·u(n)、x3 = 0.8^n·u(n)、x4 = (-0.8)^n·u(n)的波形图。

clear all
n = 0:20;
x1 = 1.3.^n;
x2 = (-1.3).^n;
x3 = 0.8.^n;
x4 = (-0.8).^n;
subplot(221)
stem(n,x1,'fill')
grid on;
ylabel('x1(n)');
xlabel('n');
title('x1 = 1.6^n')
subplot(222)
stem(n,x2,'fill')
grid on;
ylabel('x2(n)');
xlabel('n');
title('x2 = (-1.6)^n')
subplot(223)
stem(n,x3,'fill')
grid on;
ylabel('x3(n)');
xlabel('n');
title('x1 = 0.8^n')
subplot(224)
stem(n,x4,'fill')
grid on;
ylabel('x4(n)');
xlabel('n');
title('x1 = 1(-0.8)^n')

   5)复指数序列 

       复指数序列的定义为

                                                              x(n) = e^[(a+jω0)·n]

例1-3-5)画出复指数序列x(n) = 2e^[(-1/7+j*π/2)·n]的实部、虚部、模及相角的变化曲线

clear all
n = 0:40;
x = 2*exp((-1/7+i*pi/2)*n);
subplot(221)
stem(n,real(x),'fill');
grid on
title('实部')
axis([0 40 -3 3])
xlabel('n')
subplot(222)
stem(n,imag(x),'fill');
grid on
title('虚部')
axis([0 40 -3 3])
xlabel('n')
subplot(223)
stem(n,abs(x),'fill');
grid on
title('模')
axis([0 40 -3 3])
xlabel('n')
subplot(224)
stem(n,angle(x),'fill');
grid on
title('相角')
axis([0 40 -3.5 3.5])
xlabel('n')


参考资料——《MATLAB信号处理》沈再阳

                        百度百科

  • 12
    点赞
  • 109
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值