实验一——基本序列及序列运算
一、实验目的
1、熟悉MATLAB的基本命令;
2、掌握用MATLAB产生基本序列信号的方法;
3、完成基本的序列运算;
二、实验内容
注:本次实验中,未经说明处均使用stem命令画出图形。 1 单位抽样序列
1)在[-10:20]的范围内,产生单位样本序列u[n],并显示它。
2)在1)的基础上,产生带有延时11个样本的延时单位样本序列ud[n]。运行修改后的程序并显示产生的序列。
3)在[-10:20]的范围内,产生单位阶跃序列s[n],并显示产生的序列。
4)在3)的基础上,产生带有超前7个样本的延时单位阶跃序列sd[n]。运行修改后的程序并显示产生的序列。
2 复/实指数序列
1)产生复数值的指数序列x(n)2e虚部
2)产生实数值的指数序列 x(n)0.21.2n(n=0:35),显示该序列 3)试求2)中序列x[n]的能量。 3 正弦序列
1)产生正弦序列x(n)1.5cos(0.2n)(n=0:40),并分别用stem、plot、stairs命令画出该序列
2)修改上述程序,以产生长度为50、频率为0.0
8、振幅为2.5、相移为90度的一个正弦序列并显示它。
4 随机序列
1)产生并显示一个长度为100的随机信号,该信号在区间[-2,2]中均匀分布。
2)产生并显示一个长度为75的高斯随机信号,该信号正态分布且均值为0,方差为3。 3)产生并显示五个长度为31的随机正弦信号。XnAcos20n, 其中振幅A和相位是统计独立的随机变量,振幅在区间0≤A≤4内均匀分布,相位在区间02内均匀分布。
(1126j)n(n=0:40),并分别画出该序列的实部、5 序列加法与乘法
求两个序列 {x1[1,2,3,4];n1[1:2];}、{x2[4,3,2,1];n2[1:4];}之和y(n)、之积z(n),并分别显示x
1、x
2、y(n)、z(n)
三、实验结果
1.(1) x=-10:20;
y=[zeros(1,10),1,zeros(1,20)]; stem(x,y);
xlabel(\'x\'),ylabel(\'y\');
title(\'变换前\')
(2) stem(x+11,y); xlabel(\'x\'),ylabel(\'y\');
title(\'变换后\')
(3) x=-10:20;
y=[zeros(1,10),ones(1,21)]; stem(x,y);
xlabel(\'x\'),ylabel(\'y\');
title(\'变换前\')(4) stem(x-7,y);
xlabel(\'x\'),ylabel(\'y\'); title(\'变换后\')2.(1) x=0:40
y=2*exp((-1/12+(pi/6)*j)*x) yreal=real(y) yimag=imag(y)
xlabel(\'x\'),ylabel(\'y\')
subplot(1,2,1),stem(x,yreal),title(\'ʵ²¿\') hold on
subplot(1,2,2),stem(x,yimag),title(\'Ð鲿\')
hold off
(2) x=0:35 y=0.2*1.2.^x
xlabel(\'x\'),ylabel(\'y\')
stem(x,y),title(\'x(n)=0.2*1.2.^n\')
(3)sum=sum(y) 3.(1) x=0:40
y=1.5*cos(0.2*pi*x) xlabel(\'x\'),ylabel(\'y\')
subplot(2,2,1),stem(x,y),title(\'stem\') subplot(2,2,2),plot(x,y),title(\'plot\') subplot(2,1,2),stairs(x,y),title(\'stairs\') (2) x=0:50
y=2.5*cos(0.16*pi*x+0.5*pi) xlabel(\'x\'),ylabel(\'y\') stem(x,y),title(\'stem\')
4.(1) x=1:100
y=2-4*rand(1,100) rand(\'state\',0)
xlabel(\'x\'),ylabel(\'y\')
stem(x,y),title(\'随机信号\')
(2) y=sqrt(3)*randn(1,75) x=-37:37
xlabel(\'x\'),ylabel(\'y\')
stem(x,y),title(\'¸ß˹ÐźÅ\')
(3) a=4*rand(1) b=2*pi*rand(1)
n=linspace(0,0.1,31) x=a*cos(20*pi*n+b) xlabel(\'n\'),ylabel(\'x\')
subplot(2,3,1),stem(n,x),title(\'ͼÐÎÒ»\') hold on a=4*rand(1) b=2*pi*rand(1) n=linspace(0,0.1,31) x=a*cos(20*pi*n+b) xlabel(\'n\'),ylabel(\'x\')
subplot(2,3,2),stem(n,x),title(\'ͼÐζþ\') a=4*rand(1) b=2*pi*rand(1) n=linspace(0,0.1,31) x=a*cos(20*pi*n+b) xlabel(\'n\'),ylabel(\'x\')
subplot(2,3,3),stem(n,x),title(\'ͼÐÎÈý\') a=4*rand(1) b=2*pi*rand(1) n=linspace(0,0.1,31) x=a*cos(20*pi*n+b) xlabel(\'n\'),ylabel(\'x\')
subplot(2,2,3),stem(n,x),title(\'ͼÐÎËÄ\') a=4*rand(1) b=2*pi*rand(1) n=linspace(0,0.1,31) x=a*cos(20*pi*n+b) xlabel(\'n\'),ylabel(\'x\')
subplot(2,2,4),stem(n,x),title(\'ͼÐÎÎå\') hold off
5.x1=[1,2,3,4] n1=-1:2
m=cat(1,x1,n1) x2=[4,3,2,1] n2=1:4
n=cat(1,x2,n2) y=m+n z=m.*n
n=[1:4;5:8]
subplot(2,2,1),xlabel(\'n\'),ylabel(\'y\') stem(n,y),title(\'y(n)\') hold on
subplot(2,2,2),xlabel(\'n\'),ylabel(\'z\') stem(n,z),title(\'z(n)\')
subplot(2,2,3),xlabel(\'n2\'),ylabel(\'x1\') stem(n2,x1),title(\'x1\')
subplot(2,2,4),xlabel(\'n2\'),ylabel(\'x2\') stem(n2,x2),title(\'x2\') hold off