数字信号处理matlab实验1 常见离散信号产生和实现

合集下载

数字信号处理实验报告

数字信号处理实验报告

《数字信号处理》实验报告学院:信息科学与工程学院专业班级:通信1303姓名学号:实验一 常见离散时间信号的产生和频谱分析一、 实验目的(1) 熟悉MATLAB 应用环境,常用窗口的功能和使用方法;(2) 加深对常用离散时间信号的理解;(3) 掌握简单的绘图命令;(4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号进行频域分析。

二、 实验原理(1) 常用离散时间信号a )单位抽样序列⎩⎨⎧=01)(n δ00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ0≠=n k n b )单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n c )矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N nd )正弦序列)sin()(ϕ+=wn A n xe )实指数序列f )复指数序列()()jw n x n e σ+=(2)离散傅里叶变换:设连续正弦信号()x t 为0()sin()x t A t φ=Ω+这一信号的频率为0f ,角频率为002f πΩ=,信号的周期为00012T f π==Ω。

如果对此连续周期信号()x t 进行抽样,其抽样时间间隔为T ,抽样后信号以()x n 表示,则有0()()sin()t nT x n x t A nT φ===Ω+,如果令w 为数字频率,满足000012s sf w T f f π=Ω=Ω=,其中s f 是抽样重复频率,简称抽样频率。

为了在数字计算机上观察分析各种序列的频域特性,通常对)(jw e X 在[]π2,0上进行M 点采样来观察分析。

对长度为N 的有限长序列x(n), 有∑-=-=10)()(N n n jw jw k k e n x e X其中 1,,1,02-==M k k Mw k ,π 通常M 应取得大一些,以便观察谱的细节变化。

取模|)(|k jw e X 可绘出幅频特性曲线。

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

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

实验一 常见离散信号‎的MATLA ‎B 产生和图形‎显示 授课课时:2学时一、实验目的:(1)熟悉MATL ‎A B 应用环境‎,常用窗口的功‎能和使用方法‎。

(2)掌握MATL ‎A B 在时域内‎产生常用离散‎时间信号的方‎法。

(3)掌握离散信号‎的基本运算。

(4)掌握简单的绘‎图命令。

二、实验原理:(一)信号的表示和‎产生① 单位抽样序列‎⎩⎨⎧=01)(n δ 00≠=n n 如果在时间轴‎)(n δ上延迟了k 个‎单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ0≠=n k n参考程序:例1-1:)2010(()(<<-=n n n x )δclear all n1=-10;n2=20;n0=0;%在起点为n1‎,终点为n2的‎范围内,于n0处产生‎冲激。

n=n1:n2;%生成离散信号‎的时间序列x=[n==n0];%生成离散信号‎x (n)stem(n,x);%绘制脉冲杆图‎xlabel ‎(' n');ylabel ‎('x(n)');%横坐标和纵坐‎标的标注说明‎。

title('Unit Sample ‎ Sequen ‎c e');%图形上方标注‎图名axis([-10 20 0 1.2]);%确定横坐标和‎纵坐标的取值‎范围② 单位阶跃序列‎⎩⎨⎧=01)(n u 00<≥n n 例1-2:)202((u )(<<-=n n n x )clear alln1=-2;n2=20;n0=0;n=n1:n2;%生成离散信号‎的时间序列x=[n>=n0];%生成离散信号‎x (n)stem(n,x,'filled ‎');xlabel ‎('n');ylabel ‎('x(n)');title('Unit step Sequen ‎c e');axis([-2 20 0 1.2]);③ 正弦序列)sin()(ϕ+=wn A n x例1-3:一正弦信号的‎频率为1HZ ‎,振幅值幅度A ‎为1V ,在窗口显示2‎个周期的信号‎波形,并对该信号的‎一个周期进行‎32点采样获‎得离散信号并‎显示该连续信‎号和离散信号‎的波形。

数字信号处理实验报告一 离散信号及其MATLAB实验

数字信号处理实验报告一  离散信号及其MATLAB实验

实验报告2012 年 04 月 06 日课程名称: 数字信号处理 实验名称: 离散信号及其MATLAB 实现 班级: 学号: 姓名:实验一 离散信号及其MATLAB 实验一、实验目的(1)熟悉MATLAB 的主要操作命令;(2)学会离散信号的表示方法及其基本运算; (3)掌握简单的绘图命令;(4)用Matlab 编程并学会创建函数。

二、实验内容(1)序列的加、减、乘、除和乘方运算。

输入A=[1 2 3 4 ],B=[3 4 5 6],起点n=0,求C=A+B ,D=A-B ,E=A.*B ,F=A./B ,G=A.^B ,并用stem 语句画出A ,B ,C ,D ,E ,F ,G 。

(2)用MATLAB 实现下列序列:① x(n)=n 8.0 0≤n ≤15 ② x(n)=n j e )32.0( 0≤n ≤15③ x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π) 0≤n ≤15(3)编写函数如stepshift (n0,n1,n2)实现u(n)的移动序列u(n-n0),n1≤n ≤n2,给出该函数的图形。

设n1=0,n2=9,n0=2(4) x(n)=[1,-1,3,5],起点n=0,产生并绘出下列序列的样本: x1(n)=2x(n+2)-x(n-1)-2x(n)三、实验程序及实验图形 实验(1) 1、 程序:n=[0:3];A=[1 2 3 4 ]; %定义序列A ,即一行四列的矩阵 B=[3 4 5 6]; %定义序列BC=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B; figure(1);subplot(2,2,1) %将图形界面分成2行2列,其中第一个显示下列图形 stem(n,A,'r*'); %绘制二维离散数据的火柴杆图,用红线和*号标出xlabel('n'); %x 轴标签为n ylabel('A'); %y 轴标签为A grid on; %绘制网格 subplot(2,2,2)stem(n,B);xlabel('n');ylabel('B');grid on; subplot(2,2,3)stem(n,C);xlabel('n');ylabel('C');grid on;title('序列的运算'); subplot(2,2,4);stem(n,D);xlabel('n');ylabel('D');grid on; figure(2); subplot(3,1,1)stem(n,E);xlabel('n');ylabel('E');grid on;title('序列的运算'); subplot(3,1,2)stem(n,F);xlabel('n');ylabel('F');grid on; subplot(3,1,3)stem(n,G);xlabel('n');ylabel('G');grid on;2、 运行结果1231234nA1230246nB1230510nC序列的运算123-2-1.5-1-0.50nD图1 A 、B 、C 、D 的波形00.511.522.532040nE序列的运算00.511.522.530.51nF0.511.522.530200040006000nG图2 E 、F 、G 的波形3、 实验结果分析:由图1和图2可知:序列的加、减、乘、除是在n 上的对应点的加、减、乘、除,.*、./、.^也是矩阵的对应点相乘、除、乘方,对离散序列进行运算可以看作是对两个行向量的运算。

常见离散信号产生和实现

常见离散信号产生和实现

数字信号处理实验报告实验1 常见离散信号产生和实现一、实验目的1、加深对常用离散信号的理解;2、熟悉使用MATLAB 在时域中产生一些基本的离散时间信号。

二、实验原理MATLAB 语言提供了一系列函数用来产生信号,如exp, sin, cos, square, sawtooth ,ones, zeros 等函数。

1.基本信号序列1) 单位抽样序列⎩⎨⎧=01)(n δ00≠=n n 在MATLAB 中可以利用zeros()函数实现。

x=[1 zeros(1, n-1)]示范程序: % Program P1_1% Generation of a Unit Sample Sequence clf;% Generate a vector from -10 to 20 n = -10:20;% Generate the unit sample sequence u = [zeros(1,10) 1 zeros(1,20)]; % Plot the unit sample sequence stem(n,u);xlabel('Time index n');ylabel('Amplitude'); title('Unit Sample Sequence'); axis([-10 20 0 1.2]);如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n k n 2) 单位阶跃序列⎩⎨⎧01)(n u 00<≥n n 在MATLAB 中可以利用ones()函数实现。

);,1(N ones x =3) 实指数序列R a n a n x n∈∀=,)(MATLAB 实现:na x N n .^1:0=-=4) 复指数序列n e n x nj ∀=+)()(ωσMATLAB 实现:))0exp((1:0n w j lu x N n **+=-=5) 随机序列MATLAB 提供了两种随机信号:rand(1,N) 产生[0,1]上均匀分布的随机矢量。

数字信号处理实验指导书(需印刷)

数字信号处理实验指导书(需印刷)

实验一 常见离散信号的MATLAB 产生和图形显示1、实验目的:(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。

(2)加深对常用离散时间信号的理解。

(3)掌握简单的绘图命令。

(4)掌握线性卷积的计算机编程方法。

2、实验原理:(1)单位抽样序列⎩⎨⎧=01)(n δ0≠=n n如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n k n(2)单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n(3)矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N n(4)正弦序列)sin()(ϕ+=wn A n x(5)复正弦序列jwnen x =)((6)指数序列na n x =)((7)线性时不变系统的响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y )()()()()(3、实验内容及步骤:(1)复习常用离散时间信号的有关内容。

(2)编制程序产生上述6种序列(长度可输入确定,对(4) (5) (6)中的参数可自行选择),并绘出其图形。

(3)已知系统的单位脉冲响应),(9.0)(n u n h n=输入信号)()(10n R n x =,试用卷积法求解系统的输出)(n y ,并绘出n n x ~)(、n n h ~)(及n n y ~)(图形。

4、实验用MATLAB 函数介绍(1)数字信号处理中常用到的绘图指令(只给出函数名,具体调用格式参看help)figure(); plot(); stem(); axis(); grid on; title(); xlabel(); ylabel(); text(); hold on; subplot()(2)离散时间信号产生可能涉及的函数zeros(); ones(); exp(); sin(); cos(); abs(); angle(); real(); imag(); (3)卷积计算可能涉及的函数conv(); length()注:实验过程中也可以使用自己编制的自定义函数,如impseq()、stepseq()等。

西安交通大学数字信号处理实验报告

西安交通大学数字信号处理实验报告

数字信号处理实验报告班级:硕姓名:学号:实验1 常见离散信号的MATLAB 产生和图形显示实验目的:加深对常用离散信号的理解;实验内容:(1)单位抽样序列clc;x=zeros(1,11); x(1)=1; n=0:1:10;stem(n,x, 'fill'); title('单位抽样序列'); xlabel('n'); ylabel('x[n]')延迟5个单位:clc;x=zeros(1,11); x(6)=1; n=0:1:10;stem(n,x, 'fill'); title('单位抽样序列'); xlabel('n'); ylabel('x[n]')nx [n ](2)单位阶跃序列clc;x=[zeros(1,5),ones(1,6)]; n=-5:1:5;stem(n,x,'fill'); title('单位阶跃序列'); xlabel('n'); ylabel('x[n]');nx [n ](3)正弦序列clc; N=50; n=0:1:N-1; A=1; f=1; Fs=50; fai=pi;x=A*sin(2*pi*f*n/Fs+fai); stem(n,x,'fill'); title('正弦序列'); xlabel('n'); ylabel('x[n]'); axis([0 50 -1 1]);nx [n ](4)复正弦序列clc; N=50; n=0:1:N-1; w=2*pi/50; x=exp(j*w*n); subplot(2,1,1); stem(n,real(x)); title('复正弦序列实部'); xlabel('n');ylabel('real(x[n])'); axis([0 50 -1 1]); subplot(2,1,2); stem(n,imag(x)); title('复正弦序列虚部'); xlabel('n');ylabel('imag(x[n])'); axis([0 50 -1 1]);nx [n ](5)指数序列clc; N=10; n=0:1:N-1; a=0.5; x=a.^n;stem(n,x,'fill'); title('指数序列'); xlabel('n'); ylabel('x[n]'); axis([0 10 0 1]);nr e a l (x [n ])ni m a g (x [n ])(6)复指数序列性质讨论:0(j )()enx n σω+=将复指数表示成实部与虚部为00()e cos j sin n n x n n e n σσωω=+1.当σ=0时,它的实部和虚部都是正弦序列。

实验一 典型离散信号的生成及运算

实验一 典型离散信号的生成及运算

实验一 典型离散信号的生成及运算一、实验目的:1)熟悉MATLAB 环境。

2)理解离散时间信号。

3)掌握几个典型离散信号类型及其运算。

4)学会利用MATLAB 表示和实现典型离散信号类型及其运算。

二、实验原理:广义讲,信号可以分为模拟和离散信号【1】:一个模拟信号:)(t x a ,t 可以代表任何物理量,现假定t 代表时间,连续的。

一个离散信号:)(n x ,n 是整数值,现假定n 代表时间上离散的时刻。

因此()n x 称为离散时间信号,是一个数值的序列。

在MATLAB 中,只需要两一个行向量来表示()n x 这个有限长序列: 例如:图1 命令窗口(Command Window)图2 工作空间(WorkSpace )注意,要准确的表示一个离散信号,还需要另外一个向量表示n (样本位置信息),但是一般来说,当序列从位置n = 1 开始时(MATLAB 中数组下标从1开始而不是从0开始),只用x 向量表示该信号。

下面说明几种典型离散信号类型和运算,及其MATLAB 的表示:1、单位抽样序列{} ,0,0,1,0,0,0,00,1)(=⎩⎨⎧≠==n n n δ又称为单位脉冲序列/单位样本序列,其特点是在n=0时取值为1,其它取值为0。

MATLAB 中,使用函数zeros (1,N )可以产生一个N 个零的行向量。

然后对其中 n = 0 这个位置进行单独赋值为1即可。

如:图3 没有明确样本的位置信息及其stem 图图4 明确样本的位置信息及其stem 图这里还有另外一种便利的表示方法——利用逻辑关系式表示方法:图5 使用逻辑关系式表示及其stem 图2、单位阶跃序列{} ,1,1,1,0,0,0,00,1)(=⎩⎨⎧<≥=n n n uMATLAB 中,使用函数ones (1,N )可以产生一个N 个1的行向量。

下面通过N 个0序列合并上N+1个1序列产生单位阶跃序列。

注意1和0的样本位置。

常见离散信号的MATLAB产生和图形显示

常见离散信号的MATLAB产生和图形显示

实验一 常见离散信号的MATLAB 产生和图形显示一、 实验目的加深对常见离散信号的理解二、实验内容及步骤编制程序产生以下信号,并绘出其图形。

1)产生64点的单位抽样序列)(n δN=64x=[1,zeros(1,N-1)]stem(x)2)产生64点并移位20位的单位抽样序列)20(-n δN=64x=[0,zeros(1,N-1)]x(20)=1stem(x)3)任意序列)5(7.0)4(9.2)3(6.5)2(8.1)1(4.3)(0.8)(-+-+-+-+-+=n n n n n n n f δδδδδδ4)产生幅度A=3,频率f=100,初始相位ϕ=1.2,点数为32 点的正弦序列。

n=0:31;x=3*exp(j*314*n)figure(1)stem(n,x)5)产生幅度A=3,角频率ω=314,点数为32 点的复正弦序列。

n=0:31A=3;w=314;x=A*exp(w*j*n)stem(x)6)产生幅度A=3,a=0.7,点数为32 点的实指数序列。

n=0:31;A=3;a=0.7;x=A*a.^nstem(x)实验二 离散系统的时域分析一、 实验目的(1)熟悉并掌握离散系统的差分方程表示方法(2)加深对冲激响应和卷积方法的理解二、 实验内容与要求编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。

要求分别用 filter 、conv 、impz 三种函数完成。

y [n ]+ 0.75y [n −1]+ 0.125y [n − 2] = x [n ]− x [n −1]y [n ] = 0.25{x [n −1]+ x [n − 2]+ x [n −3]+ x [n − 4]}给出理论计算结果和程序计算结果并讨论。

三、实验原理系统响应为如下的卷积计算公式:][][][*][][m n h m x n h n x n y m -==∑∞-∞=h[n]是有限长度的(n:0,M),称系统为FIR系统;反之,称系统为IIR系统。

实验一 离散信号的MATLAB实现

实验一  离散信号的MATLAB实现

实验一离散信号的MATLAB实现一、目的要求1)学习典型的离散时间信号的MATLAB实现方法;2)学习离散时间序列的基本运算:相加、相乘、移位等;3)学习噪声的产生;4)掌握两个序列的卷积和相关运算5)掌握离散系统单位脉冲响应的求解。

二、实验内容1)典型的离散信号的表示方法:用matlab产生单位抽样信号δ(n) 、单位阶跃序列u(n) 、矩形序列R N(n) 、实指数序列a n u(n)、正弦序列sin(ωn)。

编写程序、并画出图形。

n=-20:20;n0=0;n1=10;w0=pi/4;x=[(n-n0)==0];x1=[(n-n0)>=0];x2=[(n-n0)>=0& (n-n1)<=0];x3=0.9.^n.*x1;x4=sin(w0*n);subplot(511);stem(n,x);axis([ -20 20 0 2]);ylabel('\sigma(n)'); subplot(512);stem(n,x1);axis([ -20 20 0 2]);ylabel('u(n)');subplot(513);stem(n,x2);axis([ -20 20 0 2]);ylabel('B N(n)');subplot(514);stem(n,x3);axis([ -20 20 0 2]);ylabel('a n u(n)');subplot(515);stem(n,x4);axis([ -20 20 -2 2]);ylabel('sin(w0n)');xlabel('n');2)离散信号的基本运算:对序列x(n)={2,3,4,1,2,5} ,n=0,1,2,3,4,5,的移位、乘法、加法、翻转及尺度变换。

编写程序、并画出图形。

n=-10:10;k=2;N=length(n);x=zeros(size(n));x1=zeros(size(n));y=zeros(size(n));y1=zeros(size(n));y2=zeros(size(n));y3=zeros(size(n));y4=zeros(size(n));x(11:16)=[2 3 4 1 2 5];x1(11:16)=[1 2 3 4 5 6];y(1+k:N)=x(1:N-k);y1(1:N-k)=x(1+k:N);y2=x.*x1;y3=x+x1;y4=fliplr(x);y5=x(1:2:N);n1=fix(n(1:2:N)/2);subplot(421);stem(n,x);xlabel('n');ylabel('x(n)');subplot(422);stem(n,x1);xlabel('n');ylabel('x1(n)');subplot(423);stem(n,y);xlabel('n');ylabel('x(n-2)');subplot(424);stem(n,y1);xlabel('n');ylabel('x(n+2)');subplot(425);stem(n,y2);xlabel('n');ylabel('x(n)*x1(n)');subplot(426);stem(n,y3);xlabel('n');ylabel('x(n)+x1(n)');subplot(427);stem(n,y4);xlabel('n');ylabel('x(-n)');subplot(428);stem(n1,y5);xlabel('n');ylabel('x(2n)');3)噪声的产生:产生方差为1,2,0.5的白噪声。

实验一离散信号的MATLAB实现

实验一离散信号的MATLAB实现

实验一离散信号的MATLAB实现实验一:离散信号的MATLAB实现一、实验目的本实验旨在通过MATLAB实现离散信号的生成、绘制和基本操作,加深对离散信号处理的理解,并为后续实验做好准备。

二、实验原理离散信号是指在时间域或幅值域上取值有限的信号。

常见的离散信号包括矩形波、三角波、正弦波等。

在MATLAB中,可以使用不同的函数和参数来生成这些离散信号。

同时,使用MATLAB的绘图功能可以将离散信号绘制出来,以便观察和分析。

三、实验步骤1.生成离散信号首先,我们需要生成一个离散信号。

在MATLAB中,可以使用以下代码生成一个长度为N的离散信号:N = 100; % 信号长度t = 0:N-1; % 时间向量x = sin(2*pi*t/N); % 离散正弦波信号这段代码将生成一个长度为100、采样频率为N Hz的正弦波信号。

其中,t是时间向量,表示信号在每个采样点上的时间;x是信号的幅值向量,表示在每个采样点上的幅值。

2.绘制离散信号生成离散信号后,我们可以使用MATLAB的绘图功能将其绘制出来。

在MATLAB 中,可以使用以下代码将离散信号绘制出来:plot(t, x); % 绘制离散正弦波信号xlabel('Time (s)'); % 设置X轴标签ylabel('Amplitude'); % 设置Y轴标签title('Discrete Sine Wave'); % 设置标题这段代码将绘制出离散正弦波信号的图形,并添加了X轴和Y轴标签以及标题。

3.基本操作除了生成和绘制离散信号外,我们还可以对离散信号进行一些基本操作,如加减、乘除、翻转等。

例如,我们可以使用以下代码将两个离散信号相加:y = x + 2; % 将离散正弦波信号加上2这段代码将生成一个新的离散信号y,它是原来信号x的基础上加上2。

同样地,我们还可以对离散信号进行其他基本操作。

四、实验结果与分析通过本实验,我们成功地生成了离散正弦波信号,并将其绘制出来。

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

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

实验一 常见离散信号的MATLAB 产生和图形显示授课课时:2学时一、实验目的:(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。

(2)掌握MATLAB 在时域内产生常用离散时间信号的方法。

(3)掌握离散信号的基本运算。

(4)掌握简单的绘图命令。

二、实验原理:(一)信号的表示和产生① 单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n k n 参考程序:例1-1:)2010(()(<<-=n n n x )δclear all n1=-10;n2=20;n0=0;%在起点为n1,终点为n2的范围内,于n0处产生冲激。

n=n1:n2;%生成离散信号的时间序列x=[n==n0];%生成离散信号x(n)stem(n,x);%绘制脉冲杆图xlabel(' n');ylabel('x(n)');%横坐标和纵坐标的标注说明。

title('Unit Sample Sequence');%图形上方标注图名axis([-10 20 0 1.2]);%确定横坐标和纵坐标的取值范围② 单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n 例1-2:)202((u )(<<-=n n n x )clear alln1=-2;n2=20;n0=0;n=n1:n2;%生成离散信号的时间序列x=[n>=n0];%生成离散信号x(n)stem(n,x,'filled');xlabel('n');ylabel('x(n)');title('Unit step Sequence');axis([-2 20 0 1.2]);③ 正弦序列)sin()(ϕ+=wn A n x例1-3:一正弦信号的频率为1HZ ,振幅值幅度A 为1V ,在窗口显示2个周期的信号波形,并对该信号的一个周期进行32点采样获得离散信号并显示该连续信号和离散信号的波形。

实验1_常见离散信号产生和实现

实验1_常见离散信号产生和实现

实验1 常见离散信号产生和实现一、实验目的:1、加深对常用离散信号的理解;2、掌握matlab 中一些基本函数的建立方法。

二、实验原理:1.单位抽样序列⎩⎨⎧=01)(k δ 00≠=k k在MATLAB 中可以利用zeros()函数实现。

;1)1();,1(==x N zeros x 如果)(k δ在时间轴上延迟了n 个单位,得到)(n k -δ即:⎩⎨⎧=-01)(n k δ nk n k ≠= 2.单位阶越序列⎩⎨⎧01)(k u 00<≥k k在MATLAB 中可以利用ones()函数实现。

);,1(N ones x =3.正弦序列)/2sin()(ϕπ+=Fs fk A k x在MATLAB 中)/***2sin(*1:0fai Fs k f pi A x N k +=-=4.复指数序列k j e r k x ϖ⋅=)(在MATLAB 中)**exp(1:0k w j r x N k ⋅=-=5.指数序列k a k x =)(在MATLAB 中k a x N k .^1:0=-= 三、实验内容1、五种基本函数的图形生成(1)、单位抽样序列% 单位抽样序列和延时的单位抽样序列clf;n=0:10;x1=[1 zeros(1,10)];x2=[zeros(1,5) 1 zeros(1,5)];subplot(1,2,1);stem(n,x1);xlabel ('时间序列n');ylabel('振幅');title('单位抽样序列x1');subplot(1,2,2);stem(n,x2); xlabel('时间序列n');ylabel('振幅');title('延时了5的单位抽样序列');(2)、单位阶越序列clf;n=0:10;u=[ones(1,11)];stem(n,u);xlabel ('时间序列n');ylabel('振幅');title('单位阶越序列');所得的图形如下所示:(3)正弦函数clf;n=1:30;x=2*sin(pi*n/6+pi/3);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('正弦函数序列x=2*sin(pi*n/6+pi/3)');(4)、复指数序列clf;n=1:30;x=2*exp(j*3*n);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('复指数序列x=2*exp(j*3*n)');图形如下:(5)实指数序列clf;n=1:30;x=1.2.^n;stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('指数序列x=1.2.^n');2、使用帮助功能学习square(方波), sawtooth(锯齿波)和sinc 函数,并绘图。

实验一 离散信号的MATLAB实现

实验一  离散信号的MATLAB实现

实验一离散信号的MATLAB实现一、目的要求1)学习典型的离散时间信号的MATLAB实现方法;2)学习离散时间序列的基本运算:相加、相乘、移位等;3)学习噪声的产生;4)掌握两个序列的卷积和相关运算5)掌握离散系统单位脉冲响应的求解。

二、实验内容1)典型的离散信号的表示方法:用matlab产生单位抽样信号δ(n) 、单位阶跃序列u(n) 、矩形序列R N(n) 、实指数序列a n u(n)、正弦序列sin(ωn)。

编写程序、并画出图形。

n=-20:20;n0=0;n1=10;w0=pi/4;x=[(n-n0)==0];x1=[(n-n0)>=0];x2=[(n-n0)>=0& (n-n1)<=0];x3=0.9.^n.*x1;x4=sin(w0*n);subplot(511);stem(n,x);axis([ -20 20 0 2]);ylabel('\sigma(n)'); subplot(512);stem(n,x1);axis([ -20 20 0 2]);ylabel('u(n)');subplot(513);stem(n,x2);axis([ -20 20 0 2]);ylabel('B N(n)');subplot(514);stem(n,x3);axis([ -20 20 0 2]);ylabel('a n u(n)');subplot(515);stem(n,x4);axis([ -20 20 -2 2]);ylabel('sin(w0n)');xlabel('n');2)离散信号的基本运算:对序列x(n)={2,3,4,1,2,5} ,n=0,1,2,3,4,5,的移位、乘法、加法、翻转及尺度变换。

编写程序、并画出图形。

n=-10:10;k=2;N=length(n);x=zeros(size(n));x1=zeros(size(n));y=zeros(size(n));y1=zeros(size(n));y2=zeros(size(n));y3=zeros(size(n));y4=zeros(size(n));x(11:16)=[2 3 4 1 2 5];x1(11:16)=[1 2 3 4 5 6];y(1+k:N)=x(1:N-k);y1(1:N-k)=x(1+k:N);y2=x.*x1;y3=x+x1;y4=fliplr(x);y5=x(1:2:N);n1=fix(n(1:2:N)/2);subplot(421);stem(n,x);xlabel('n');ylabel('x(n)');subplot(422);stem(n,x1);xlabel('n');ylabel('x1(n)');subplot(423);stem(n,y);xlabel('n');ylabel('x(n-2)');subplot(424);stem(n,y1);xlabel('n');ylabel('x(n+2)');subplot(425);stem(n,y2);xlabel('n');ylabel('x(n)*x1(n)');subplot(426);stem(n,y3);xlabel('n');ylabel('x(n)+x1(n)');subplot(427);stem(n,y4);xlabel('n');ylabel('x(-n)');subplot(428);stem(n1,y5);xlabel('n');ylabel('x(2n)');3)噪声的产生:产生方差为1,2,0.5的白噪声。

实验一常见离散信号的MATLAB产生及图形显示

实验一常见离散信号的MATLAB产生及图形显示

Guangxi University of Science and Technology实验报告实验课程:数字信号处理实验内容:常见离散信号的MATLAB产生和图形显示院(系):计算机科学与通信工程学院专业:通信工程班级:学生姓名:学号:指导教师:2016年 5 月 25 日实验一、常见离散信号的MATLAB 产生和图形显示一、实验目的:加深对常用离散信号的理解;二、实验原理:1.单位抽样序列实现: ⎩⎨⎧=01)(n δ 00≠=n n在MATLAB 中可以利用zeros()函数实现。

;1)1();,1(==x N zeros x如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即: ⎩⎨⎧=-01)(k n δ0≠=n k n2.单位阶跃序列实现: ⎩⎨⎧01)(n u 00<≥n n ;在MATLAB 中可以利用ones()函数实现。

);,1(N ones x =3.正弦序列实现: )/2sin()(ϕπ+=Fs fn A n x在MATLAB 中 )/***2sin(*1:0fai Fs n f pi A x N n +=-=4.复指数序列实现: n j e n x ϖ=)(在MATLAB 中 )**exp(1:0n w j x N n =-=5.实指数序列实现: n a n x =)(在MATLAB 中 n a x N n .^1:0=-=三、实验内容及步骤:1.单位抽样序列实现程序如下:n=n1:n2;x1=[zeros(1,5) 1 zeros(1,5)];%%n 为冲击位置x2=[zeros(1,7) 1 zeros(1,3)];%向右平移2个单位subplot(1,2,1);stem(n,x1,'filled');axis([n1,n2,0,1.1]);title('单位脉冲序列');xlabel('时间');ylabel('幅度x(n)');subplot(1,2,2);stem(n,x2,'filled');axis([n1,n2,0,1.1]);title('单位脉冲序列向右平移2个单位');xlabel('时间');ylabel('幅度x(n)');结果如下:图: 1-12. 单位阶跃序列程序如下:N=5;x=ones(1,N);xn=0:N-1;subplot(1,2,1);stem(xn,x,'filled')axis([-1 5 0 1.1])title('单位阶跃序列');xlabel('时间(n)');ylabel('幅度x(n)');x1=[0 0 ones(1,3)];subplot(1,2,2);stem(xn,x1,'filled')axis([-1 5 0 1.1])title('单位阶跃序列平移两个单位');xlabel('时间(n)');ylabel('幅度x(n)');结果如下:图: 1-2 3.正弦序列实现程序如下:n1=0;n2=15;n=n1:n2;x=3*sin(n*pi/4+pi/2);stem(n,x,'filled');axis([n1 n2 1.1*min(x) 1.1*max(x)]);axis([n1 n2 1.1*min(x) 1.1*max(x)]);title('正弦函数图');ylabel('时间x(n)');xlabel('幅度n');结果如下:图: 1-3 4.复指数序列实现程序如下:n1=30;a=-0.1;w=0.6;n=0:n1;x=exp((a+j*w)*n);subplot(1,2,1),stem(n,real(x),'filled');title('复指数原信号的实部');subplot(1,2,2),stem(n,imag(x),'filled');title('复指数原信号的虚部');结果如下:图: 1-4 5.实指数序列实现程序如下:n1=-10;n2=10;a1=0.5;a2=2;na1=n1:0;x1=a1.^na1;na2=0:n2;x2=a2.^na2;subplot(1,2,1),stem(na1,x1,'filled');title('实指数序列(a<1)');subplot(1,2,2),stem(na2,x2,'filled');title('实指数序列(a>1)');结果如下:图: 1-5四、实验总结与分析通过本实验,深入了解了MATLAB的运行环境,掌握了如何在该软件上编程、编译和运行一个MATLAB程序,通过运行简单的MATLAB程序,初步了解了MATLAB程序的特点,掌握了一些基本的MATLAB函数。

实验一 离散信号的产生与实现

实验一 离散信号的产生与实现

实验一离散信号的产生与实现实验目的:1.熟悉Matlab语言环境,学习并掌握基本命令的使用。

2.掌握一些常见序列的实现方法。

3.编写一些子程序以实现序列的基本运算。

实验中要用到的命令(1)运算符加法:+ 减法:-乘法:* 点乘: .* 指数:^ 除法:/ (2)基本矩阵1阵:ones 0阵:zeros 随机阵:rand randn(3)通用命令在线帮助:help 例程演示:demo 路径设置:path 清除所有变量:clear 清除当前命令窗口命令:clc 清除当前图形窗口:clf 退出Matlab:quit(4)信号运算取模值:abs 取相位:angle 取实部:real 取虚部:imag卷积:conv 指数:exp正弦:sin/cos(5)图形函数生成一图框:figure 设置坐标轴:axis 给图标记文字:text 通过鼠标点击方式给图标记文字:gtext 画图:plot 画子图:subplot 添加标题:title 给X轴加文本标注:xlabel 给Y轴加文本标注:ylabel 离散序列杆状图:stem(6)特殊的符号:注释:%语句结束符号:;实验内容1.常见的序列程序1.1clear;ns=0;nf=10;n0=3;n1=[ns:nf];x1=[1,zeros(1,nf-ns)]; %单位抽样序列n2=[ns:nf];x2=[zeros(1,n0-ns),ones(1,nf-n0+1)]; %单位阶跃序列n3=[ns:nf];x3=exp((-0.2+0.5j)*n3); %复指数序列subplot(2,2,1);stem(n1,x1);title('单位抽样序列');subplot(2,2,2);stem(n2,x2);title('单位阶跃序列');subplot(2,2,3);stem(n3,real(x3));title('复指数序列的实部'); subplot(2,2,4);stem(n3,imag(x3));title('复指数序列的虚部');程序1.2n=0:40;f=0.1;phase=0;a=1.5;x=a*cos(2*pi*f*n-phase);clf;stem(n,x);title('正弦序列');xlabel('时间序号n');ylabel('振幅');axis([0,40,-2,2]);grid;2.序列的运算(这些是带有参数的子程序,不能直接运行)(1)单位抽样序列function[x,n]=impseq(n0,ns,nf)n=[ns:nf];x=[(n-n0)==0];%序列的起点ns,终点是nf,在n0处生成单位脉冲(2)单位阶跃序列function[x,n]=stepseq(n0,ns,nf)n=[ns:nf];x=[(n-n0)>=0];%序列的起点ns,终点是nf,在n0处生成单位阶跃(3)序列的加法function [y,n]=sigadd(x1,n1,x2,n2)n=min(min(n1),min(n2)):max(max(n1),max(n2));y1=zeros(1,length(n));y2=y1;y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;y=y1+y2;(4)序列的乘法function [y,n]=sigmult(x1,n1,x2,n2)n=min(min(n1),min(n2)):max(max(n1),max(n2));y1=zeros(1,length(n));y2=y1;y1(find((n>=min(n1))&(n<=max(n1))==1))=x1; y2(find((n>=min(n2))&(n<=max(n2))==1))=x2; y=y1.*y2; (5)序列的移位function[y,n]=sigshift(x,m,n0) n=m+n0;y=x;%产生x(n-n0)序列 (6)序列的翻褶function[y,n]=sigfold(x,n) y=fliplr(x);n=-fliplr(n); (7)卷积和function[y,ny]=conv_m(x,nx,h,nh)ny1=nx(1)+nh(1);ny2=nx(length(x))+nh(length(h)); ny=[ny1:ny2]; y=conv(x,h); 3.子程序的调用设线性移不变系统的抽样响应h(n)=0.9n u(n),输入序列 x(n)=u(n)-u(n-10),求系统的输出y(n)。

数字信号处理指导书matlab版

数字信号处理指导书matlab版

实验1 时域离散信号的产生一、实验目的学会运用MATLAB 产生常用离散时间信号。

二、实验涉及的matlab 子函数 1、square 功能:产生矩形波 调用格式:x=square(t);类似于sin (t ),产生周期为2*pi ,幅值为+—1的方波。

x=square(t ,duty);产生制定周期的矩形波,其中duty 用于指定脉冲宽度与整个周期的比例。

2、rand功能:产生rand 随机信号。

调用格式:x=rand (n ,m );用于产生一组具有n 行m 列的随机信号。

三、实验原理在时间轴的离散点上取值的信号,称为离散时间信号。

通常,离散时间信号用x (n )表示,其幅度可以在某一范围内连续取值。

由于信号处理所用的设备主要是计算机或专用的信号处理芯片,均以有限的位数来表示信号的幅度,因此,信号的幅度也必须“量化”,即取离散值。

我们把时间和幅度上均取离散值的信号称为时域离散信号或数字信号。

在MATLAB 中,时域离散信号可以通过编写程序直接生成,也可以通过对连续信号的等间隔抽样获得。

下面介绍常用的时域离散信号及其程序。

1、单位抽样序列⎩⎨⎧≠==0001)(k k k δMATLAB 源程序为1) function [x,n] = impuls (n0,n1,n2)% Generates x(n) = delta(n-n0); n=n0 处建立一个单位抽样序列% [x,n] = impuls (n0,n1,n2)if ((n0 < n1) | (n0 > n2) | (n1 > n2))error('arguments must satisfy n1 <= n0 <= n2') endn = [n1:n2];x = [zeros(1,(n0-n1)), 1, zeros(1,(n2-n0))];将上述文件存为:impuls.m,在命令窗口输入n0=0,n1=-10,n2=11;[x,n]=impuls (n0,n1,n2); stem(n,x,’filled’)2)n1=-5;n2=5;n0=0;n=n1:n2;x=[n==n0];stem(n,x,'filled','k');axis([n1,n2,1.1*min(x),1.1*max(x)]);title('单位脉冲序列');xlabel('时间(n)');ylabel('幅度x(n)');3)n1=-5;n2=5;k=0;n=n1:n2;nt=length(n); %求n点的个数nk=abs(k-n1)+1; %确定k在n序列中的位置x=zeros(1,nt); %对所有样点置0x(nk)=1; %对抽样点置1stem(n,x,'filled','k');axis([n1,n2,0,1.1*max(x)]);title('单位脉冲序列');xlabel('时间(n)');Ylabel('幅度x(n)');单位脉冲序列时间(n)幅度x (n )2、单位阶跃序列⎩⎨⎧<≥=0001)(k k k ε MATLAB 源程序为:1) n1=-2;n2=8;n0=0;n=n1:n2; %生成离散信号的时间序列 x=[n>=n0]; %生成离散信号x(n)stem(n, x,'filled','k'); %绘制脉冲杆图,且圆点处用实芯圆表示 axis([n1,n2,0,1.1*max(x)]); title('单位阶跃序列'); xlabel('时间(n)'); Ylabel('幅度x(n)');2) n1=-2;n2=8;k=0; n=n1:n2;nt=length(n); %求n 点的个数nk=abs(k-n1)+1; %确定k 在n 序列中的位置x=[zeros(1,nk-1),ones(1,nt-nk+1)]; %对所有样点置0 stem(n,x,'filled','k');axis([n1,n2,0,1.1*max(x)]); title('单位阶跃序列'); xlabel('时间(n)'); ylabel('幅度x(n)');时间(n)幅度x (n )3、正弦序列x (n )=Um ()θω+n sin例、已知一时域周期性正弦信号的频率为1HZ ,振幅幅度为1V ,在窗口中显示两个周期的信号波形,并对该信号的一个周期进行32点采样获得离散信号。

【VIP专享】实验1 常见离散时间信号的MATLAB产生和图形显示

【VIP专享】实验1  常见离散时间信号的MATLAB产生和图形显示
一. 实验目的
实验 1 常见离散时间
信号的 MATLAB 产生和图形显示
加深对常用离散信号的理解;掌握用 MATLAB 实现常用离散时间信号的 方法。
二. 实验原理
1.单位抽样序列
(n)
1 0
x zeros(1, N ); 在 MATLAB 中可以利用 zeros()函数实现,
x(1) 1;
如果 (n) 在时间轴上延迟了 k 个单位,得到 (n k) 即:
三. 实验内容
编制程序产生上述 5 种信号(长度可输入确定),并绘出其图形。
四. 实验程序与结果分析
1. 单位抽样序列
clear all; close all; clc; x=zeros(1,25); x(1)=1; stem(0:24,x); xlabel('n'); ylabel('fudu'); grid on;
2. 单位阶跃序列
clear all; close all; clc; N=25; x=ones(1,N); stem(0:24,x); xlabel('n'); ylabel('幅度'); grid on;
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
1
0
0
fudu
6.培养学生观察、思考、对比及分析综合的能力。过程与方法1.通过观察蚯蚓教的学实难验点,线培形养动观物察和能环力节和动实物验的能主力要;特2征.通。过教对学观方察法到与的教现学象手分段析观与察讨法论、,实对验线法形、动分物组和讨环论节法动教特学征准的备概多括媒,体继课续件培、养活分蚯析蚓、、归硬纳纸、板综、合平的面思玻维璃能、力镊。子情、感烧态杯度、价水值教观1和.通过学理解的蛔1虫.过观适1、察于程3观阅 六蛔寄.内列察读 、虫生出蚯材 让标容生3根常蚓料 学本教活.了 据见身: 生,师的2、解 问的体巩鸟 总看活形作 用蛔 题线的固类 结雌动态业 手虫 自形练与 本雄学、三: 摸对 学动状习人 节蛔生结4、、收 一人 后物和同类 课虫活构请一蚯集 摸体 回并颜步关 重的动、学、蚓鸟 蚯的 答归色学系 点形教生生让在类 蚓危 问纳。习从 并状学理列学平的害 题线蚯四线人 归、意特出四生面体以形蚓、形类 纳大图点常、五观玻存 表及动的鸟请动文 本小引以见引、察璃现 ,预物身类 3学物明 节有言及的、导巩蚯上状 是防的体之生和历 课什根蚯环怎学固蚓和, 干感主是所列环史 学么据蚓节二样生练引牛鸟 燥染要否以举节揭 到不上适动、区回习导皮类 还的特分分蚯动晓 的同节于物让分答。学纸减 是方征节布蚓物起 一,课穴并学蚯课生上少 湿法。?广的教, 些体所居归在生蚓前回运的 润;4泛益学鸟色生纳.靠物完的问答动原 的4蛔,处目类 习和活环.近在成前题蚯的因 ?了虫以。标就 生体的节身其实端并蚓快及 触解寄上知同 物表内特动体结验和总利的慢我 摸蚯生适识人 学有容点物前构并后结用生一国 蚯蚓在于与类 的什,的端中思端线问活样的 蚓人飞技有 基么引进主的的考?形题环吗十 体生行能着 本特出要几变以动,境?大 节活的1密 方征本“特节化下物.让并为珍 近习会形理切 法。课生征有以问的小学引什稀 腹性态解的 。2课物。什游题主.结生出么鸟 面和起结蛔关观题体么戏:要利明蚯?类 处适哪构虫系察:的特的特用确蚓等 ,于些特适。蛔章形殊形征板,这资 是穴疾点于可虫我态结式。书生种料 光居病是寄的们结构,五小物典, 滑生?重生鸟内学构,学、结的型以 还活5要生类部习与.其习巩鸟结的爱 是如原活生结了功颜消固类构线鸟 粗形何因的存构腔能色化练适特形护 糙态预之结的,肠相是系习于点动鸟 ?、防一构现你动适否统。飞都物为结蛔。和状认物应与的行是。主构虫课生却为和”其结的与题、病本理不蛔扁的他构特环以生?8特乐虫形观部特8征境小理三页点观的动位点梳相组等、这;,哪物教相,理适为方引些2鸟,育同师.知应单面导鸟掌类结了;?生识的位学你握日构解2互.。办特生认线益特了通动手征观识形减点它过,抄;察吗动少是们理生报5蛔?物,与的解.参一了虫它和有寄主蛔与份解结们环些生要虫其。蚯构都节已生特对中爱蚓。会动经活征人培鸟与飞物灭相。类养护人吗的绝适这造兴鸟类?主或应节成趣的为要濒的课情关什特临?就危感系么征灭来害教;?;绝学,育,习使。我比学们它生可们理以更解做高养些等成什的良么两好。类卫动生物习。惯根的据重学要生意回义答;的3.情通况过,了给解出蚯课蚓课与题人。类回的答关:系线,形进动行物生和命环科节学动价环值节观动的物教一育、。根教据学蛔重虫点病1.引蛔出虫蛔适虫于这寄种生典生型活的线结形构动和物生。理二特、点设;置2.问蚯题蚓让的学生生活思习考性预和习适。于穴居生活的形态、结构、生理等方面的特征;3.线形动物和环节动物的主要特征。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验1 常见离散信号产生和实现一、实验目的:1、加深对常用离散信号的理解;2、掌握matlab 中一些基本函数的建立方法。

二、实验原理:1.单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n在MATLAB 中可以利用zeros()函数实现。

;1)1();,1(==x N zeros x 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n k n 2.单位阶越序列⎩⎨⎧01)(n u 00<≥n n 在MATLAB 中可以利用ones()函数实现。

);,1(N ones x =3.正弦序列)/2sin()(ϕπ+=Fs fn A n x在MATLAB 中)/***2sin(*1:0fai Fs n f pi A x N n +=-=4.复指数序列n j e r n x ϖ⋅=)(在MATLAB 中)**exp(1:0n w j r x N n ⋅=-=5.指数序列n a n x =)(在MATLAB 中n a x N n .^1:0=-=三、实验内容实现和图形生成1、五种基本函数的生成程序如下:(1)、单位抽样序列% 单位抽样序列和延时的单位抽样序列clf;n=0:10;x1=[1 zeros(1,10)];x2=[zeros(1,5) 1 zeros(1,5)];subplot(1,2,1);stem(n,x1);xlabel ('时间序列n');ylabel('振幅');title('单位抽样序列x1'); subplot(1,2,2);stem(n,x2); xlabel('时间序列n');ylabel('振幅');title('延时了5的单位抽样序列');(2)、单位阶越序列clf;n=0:10;u=[ones(1,11)];stem(n,u);xlabel ('时间序列n');ylabel('振幅');title('单位阶越序列');所得的图形如下所示:(3)正弦函数clf;n=1:30;x=2*sin(pi*n/6+pi/3);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('正弦函数序列x=2*sin(pi*n/6+pi/3)');(4)、复指数序列clf;n=1:30;x=2*exp(j*3*n);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('复指数序列x=2*exp(j*3*n)');图形如下:(5)指数序列clf;n=1:30;x=1.2.^n;stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('指数序列x=1.2.^n');2、绘出信号zn e n x =)(,当6)12/1(πj z +-=、6)12/1(πj z +=时、121=z 、62πj z +=、6πj z =时的信号实部和虚部图; 程序如下:clf;z1=-1/12+j*pi/6;z2=1/12+j*pi/6;z3=1/12;z4=2+j*pi/6;z5=j*pi/6;n=0:20;x1=exp(z1*n);x2=exp(z2*n); x3=exp(z3*n);x4=exp(z4*n); x5=exp(z5*n);subplot(5,2,1);stem(n,real(x1)); xlabel ('时间序列n');ylabel('实部');title('复指数z1=-1/12+j*pi/6时序列实部');subplot(5,2,2);stem(n,imag(x1)); xlabel ('时间序列n');ylabel('虚部');title('复指数z1=-1/12+j*pi/6时序列虚部');subplot(5,2,3);stem(n,real(x2)); xlabel ('时间序列n');ylabel('实部');title('复指数z2=1/12+j*pi/6时序列实部');subplot(5,2,4);stem(n,imag(x2)); xlabel ('时间序列n');ylabel('虚部');title('复指数z2=1/12+j*pi/6时序列虚部');subplot(5,2,5);stem(n,real(x3)); xlabel ('时间序列n');ylabel('实部');title('复指数z3=1/12时序列实部');subplot(5,2,6);stem(n,imag(x3)); xlabel ('时间序列n');ylabel('虚部');title('复指数z3=1/12时序列虚部');subplot(5,2,7);stem(n,real(x4)); xlabel ('时间序列n');ylabel('实部');title('复指数z4=2+j*pi/6时序列实部');subplot(5,2,8);stem(n,imag(x4)); xlabel ('时间序列n');ylabel('虚部');title('复指数z4=2+j*pi/6时序列虚部');subplot(5,2,9);stem(n,real(x5)); xlabel ('时间序列n');ylabel('实部');title('复指数z5=j*pi/6时序列实部');subplot(5,2,10);stem(n,imag(x5)); xlabel ('时间序列n');ylabel('虚部');title('复指数z5=j*pi/6时序列虚部');由上图的实部部分可以看出,Z=pi/6时,序列周期为12。

计算序列周期为2*6=12。

实验和理论相符。

3、绘出信号)1.0*2sin(5.1)(nnxπ=的频率是多少?周期是多少?产生一个数字频率为0.9的正弦序列,并显示该信号,说明其周期?程序如下:clf;n=0:40;x1=1.5*sin(2*pi*0.1*n);x2=sin(0.9*n);subplot(1,2,1);stem(n,x1); xlabel ('时间序列n');ylabel('振幅');title('正弦序列x1=1.5*sin(2*pi*0.1*n)');subplot(1,2,2);stem(n,x2); xlabel ('时间序列n');ylabel('振幅');title('正弦序列x2=sin(0.9*n)');运行结果如下:由上图看出:x1=1.5*sin(2*pi*0.1*n)的周期是10,而x2=sin(0.9*n)是非周期的。

理论计算中对第一个,N=2*pi/(0.1*pi)=10,第二个0.9不是pi的倍数,所以不是周期的。

因此可以看出,实验结果和理论相符。

4、使用帮助功能学习 square(方波), sawtooth(锯齿波)和sinc 函数,并绘图。

(1)、方波绘图程序如下:%用squaret=-2*pi:0.001:2*pi;x=square(t);plot(t,x);xlabel('t'),ylabel(' x=square(t)');(2)、三角波绘图程序如下:%用Sawtootht=-2*pi:0.001:2*pi;y=sawtooth(t);plot(t,y);xlabel('t'),ylabel(' y=sawtooth(t);');(3)sinc函数绘图程序如下:>> t=-pi:0.001:pi; x=sinc(t);>> plot(t,x);>> xlabel('t'),ylabel('sinc(t);');四、问题讨论与总结:1、离散正弦序列的性质:离散正弦序列就是一个连续的正弦信号被一系列冲激函数采样后的结果,原连续正弦函数一定是周期的,但采样后的离散序列却不一定是周期的。

对于离散序列x=sin(n*w) 来说,只有当2*pi/w是一个有理数时,也就是说当w是pi的倍数时,此离散序列才是周期的。

所以在本实验中x1=1.5*sin(2*pi*0.1*n)的周期是10,而x2=sin(0.9*n)是非周期的。

因为0.9不是pi的倍数。

2、离散复指数序列性质:对于离散复指数函数x=a*exp(z*n),只有当z是纯虚数,且纯虚数的系数是pi的倍数时,才是周期的。

其它情况下均不是。

这个性质由本次实验中的五个函数的图像可以被证明。

相关文档
最新文档