《离散序列的基本运算.ppt》由会员分享,可在线阅读,更多相关《离散序列的基本运算.ppt(38页珍藏版)》请在金锄头文库上搜索。
1、1 1 1 11.1 市场与市场营销市场与市场营销1.2 我国汽车市场的发展与现状我国汽车市场的发展与现状复习思考题复习思考题实验3 离散序列的基本运算2 2 2 2一、实验目的一、实验目的(1)进一步了解离散时间序列时域的基本运算。(2)了解MATLAB语言进行离散序列运算的常用函数,掌握离散序列运算程序的编写方法。3 3 3 3二、实验涉及的二、实验涉及的MATLAB子函数子函数1.find功能:功能:寻找非零元素的索引号。调用格式:调用格式:find(nmin(n1)&(n0时,原序列x(n)向右移m位,形成的新序列称为x(n)的延时序列;当m0时,原序列x(n)向左移m位,形成的新序列
2、称为x(n)的超前序列。7 7 7 7例例3-1 x1(n)u(n6) (10n10)x2(n)u(n4) (10nk0;%生成离散信号x0(n)x1(nk1)0;%生成离散信号x1(n)x2(nk2)0;%生成离散信号x2(n)8 8 8 8subplot(3,1,1),stem(n,x0,filled,k);axis(n1,n2,1.1*min(x0),1.1*max(x0);ylabel(u(n);subplot(3,1,2),stem(n,x1,filled,k);axis(n1,n2,1.1*min(x1),1.1*max(x1);ylabel(u(n6);subplot(3,1,3
3、),stem(n,x2,filled,k);axis(n1,n2,1.1*min(x2),1.1*max(x2);ylabel(u(n4);9 9 9 9图3-1 u(n)及其位移序列u(n6)和u(n4)10101010例例3-2 已知一正弦信号:求其移位信号x(n2)和x(n2)在2n10区间的序列波形。解解 MATLAB程序如下:n2:10;n02;n12;x2*sin(2*pi*n/10); %建立原信号x(n)x12*sin(2*pi*(nn0)/10); %建立x(n2)信号x22*sin(2*pi*(nn1)/10);%建立x(n2)信号11111111subplot(3,1,1
4、),stem(n,x,filled,k);ylabel(x(n);subplot(3,1,2),stem(n,x1,filled,k);ylabel(x(n2);subplot(3,1,3),stem(n,x2,filled,k);ylabel(x(n2);结果如图3-2所示。12121212图3-2 正弦信号x(n)、x(n2)和x(n2)131313132.序列相加序列相加两个离散序列相加是指两个序列中相同序号n(或同一时刻)的序列值逐项对应相加,构成一个新的序列:x(n)x1(n)x2(n)情况情况1 参加运算的两个序列具有相同的维数。14141414例例3-3 求x(n)d(n2)d(
5、n4) (0n10)。解解 MATLAB程序如下:n10;n210;n012;n024; %赋初值nn1:n2;x1(nn01)0;%建立d(n2)序列x2(nn02)0;%建立d(n4)序列x3x1x2;subplot(3,1,1);stem(n,x1,filled);axis(n1,n2,1.1*min(x1),1.1*max(x1);ylabel(d(n2);15151515subplot(3,1,2);stem(n,x2,filled);axis(n1,n2,1.1*min(x2),1.1*max(x2);ylabel(d(n4);subplot(3,1,3);stem(n,x3,fi
6、lled);axis(n1,n2,1.1*min(x3),1.1*max(x3);ylabel(d(n2)d(n4);结果如图3-3所示。情况情况2:参加运算的两个序列的维数不同。16161616图3-3 d(n2)和d(n4)序列相加17171717例例3-4 已知x1(n)u(n2) (4n6)x2(n)u(n4) (5n0; %建立x1信号n25:8;n024;x2(n2n02)0;%建立x2信号18181818nmin(n1,n2):max(n1,n2);%为x信号建立时间序列nNlength(n);%求时间序列n的点数Ny1zeros(1,N);y2zeros(1,N);%新建一维N
7、列的y1、y2全0数组y1(find(nmin(n1)&(nmin(n2)&(nmax(n2)x2;%为y2赋值19191919xy1y2;stem(n,x,filled);axis(min(n),max(n),1.1*min(x),1.1*max(x);结果如图3-4所示。20202020图3-4 序列维数不同的x1(n)和x2(n)相加212121213.序列相乘序列相乘两个离散序列相乘是指两个序列中相同序号n(或同一时刻)的序列值逐项对应相乘,构成一个新的序列:x(n)x1(n)x2(n)同样存在着序列维数相同和不同两种情况,处理方法与序列相加相同。22222222例例3-5 已知信号:
8、x1(n)3e0.25n (4n10)x2(n)u(n1) (2n0;%建立x2信号nmin(n1,n2):max(n1,n2);%为x信号建立时间序列nNlength(n);%求时间序列n的点数Ny1zeros(1,N);%新建一维N列的y1全0数组y2zeros(1,N);%新建一维N列的y2全0数组y1(find(nmin(n1)&(nmin(n2)&(nmax(n2)x2;%为y2赋值xy1.*y2;结果如图3-5所示。24242424图3-5 序列x1(n)和x2(n)相乘252525254.序列反折序列反折离散序列反折是指离散序列的两个向量以零时刻的取值为基准点,以纵轴为对称轴反折
9、。在MATLAB中提供了fliplr函数,可以实现序列的反折。例例3-6 已知一个信号:x(n)e0.3*n (4n4)求它的反折序列x(n)。解解 MATLAB程序如下:n4:4;xexp(0.3*n);26262626x1fliplr(x);n1fliplr(n);subplot(1,2,1),stem(n,x,filled);title(x(n);subplot(1,2,2),stem(n1,x1,filled);title(x(n);结果如图3-6所示。27272727图3-6 序列x(n)和x(n)反折序列282828285.序列倒相序列倒相离散序列倒相是求一个与原序列的向量值相反,
10、对应的时间序号向量不变的新的序列。例例3-7 将例3-6中信号:x(n)e0.3*n (4n4)倒相。解解 MATLAB程序如下:n4:4;xexp(0.3*n);x1x;29292929subplot(1,2,1),stem(n,x,filled);title(x(n);axis(min(n),max(n),1.1*min(x1),1.1*max(x);subplot(1,2,2),stem(n,x1,filled);title(x(n);axis(min(n),max(n),1.1*min(x1),1.1*max(x);结果如图3-7所示。30303030图3-7 序列x(n)和倒相序列x
11、(n)313131316.序列的尺度变换序列的尺度变换对于给定的离散序列x(n),序列x(mn)是x(n)每隔m点取一点形成,相当于时间轴n压缩了m倍;反之,序列x(n/m)是x(n)作m倍的插值而形成的,相当于时间轴n扩展了m倍。例例3-8 已知信号x(n)sin(2pn),求x(2n)和x(n/2)的信号波形。为研究问题的方便,取0n20,并将n缩小20倍进行波形显示。解解 MATLAB程序如下:n(0:20)/20;32323232xsin(2*pi*n); %建立原信号x(n)x1sin(2*pi*n*2);%建立x(2n)信号x2sin(2*pi*n/2);%建立x(n/2)信号su
12、bplot(3,1,1),stem(n,x,filled);ylabel(x(n);subplot(3,1,2),stem(n,x1,filled);ylabel(x(2n);subplot(3,1,3),stem(n,x2,filled);ylabel(x(n/2);结果如图3-8所示。33333333图3-8 序列x(n)、x(2n)和x(n/2)34343434四、实验任务四、实验任务(1)在MATLAB中运行各例题程序,理解离散序列运算的性质,了解各条语句的意义。(2)用MATLAB实现下列信号序列:x(n)d(n3)2d(n4),(5n5)x(n)u(n2)u(n2),(5n5)已知
13、x(n)3cos(2pn/10),试显示x(n3)和x(n3)在0n20区间的波形。已知x1en/16,x2(n)5sin(2pn/10),试显示x1(n)x2(n)在0n24区间的波形。35353535(3)已知信号x(n)n sin(n),试显示在0n20区间的下列波形:y1(n)x(n3),y2(n)x(n),y3(n)x(n),y4(n)x(n3),y5(n)x(n/2)*(4)已知信号36363636描绘x(n)序列的波形;试用延迟的单位脉冲序列及其加权和表示x(n)序列;试描绘以下序列的波形:x1(n)2x(n2),x2(n)2x(n2),x3(n)x(2n)37373737五、实验预习五、实验预习(1)认真阅读实验原理,明确本次实验目的,复习有关离散时间序列运算的理论知识。(2)读懂各例题程序,了解基本的离散序列运算在MATLAB中的程序编写方法。(3)根据实验任务预先编写实验程序。(4)预习思考题:当进行离散序列的相乘运算时,例3-5题程序中有xy1.*y2,请问此处进行的相乘运算是矩阵乘还是数组乘,为什么要这样使用?38383838六、六、 实验报告实验报告(1) 列写已调试通过的实验任务程序, 打印或描绘实验程序产生的曲线图形。 (2) 思考题: 当进行离散序列的相加、 相乘运算时, 如果参加运算的两个序列向量维数不同, 应进行怎样的处理? 回答预习思考题。