离散信号及离散系统的MATLAB编程实现
离散系统频域分析及matlab实现

《数字信号处理》课程设计报告离散系统的频域分析及matlab实现专业:通信工程班级:通信11级组次:姓名及学号:姓名及学号:离散系统的频域分析及matlab 实现一、设计目的1.熟悉并掌握matlab 软件的使用;2.掌握离散系统的频域特性;3.学会分析离散系统的频域特性的方法;二、设计任务1.设计一个系统函数系统的频率响应进行分析;2.分析系统的频域响应;3.分析系统的因果稳定性;4.分析系统的单位脉冲响应;三、设计原理1. 系统函数对于离散系统可以利用差分方程,单位脉冲响应,以及系统函数对系统进行描述。
在本文中利用系统函数H(z)进行描述。
若已知一个差分方程为∑∑==---=Mi Ni i i i n y a i n x b n 01)()()(y ,则可以利用双边取Z 变换,最终可以得到系统函数的一般式H(z),∑∑=-=-==Ni iiMi iiza zb z X z z H 00)()(Y )(。
若已知系统的单位脉冲响应,则直接将其进行Z变换就可以得到系统函数H(z)。
系统函数表征系统的复频域特性。
2.系统的频率响应:利用Z 变化分析系统的频率响应:设系统的初始状态为零,系统对输入为单位脉冲序列)(n δ的响应输出称为系统的单位脉冲响应h (n )。
对h(n)进行傅里叶变换,得到:∑∞∞∞-==-)(jw nj |)(|)(e H w j n n j e e H e n h ϕω)( 其中|)(|jwn e H 称为系统的幅频特性函数,)(ωϕ称为系统的相位特性函数。
)(jw e H 表示的是系统对特征序列jwn e 的响应特性。
对于一个系统输入信号为n )(ωj e n x =,则系统的输出信号为jwn e )(jw e H 。
由上可以知道单频复指数信号jwn e 通过频率响应函数为)(jw e H 后,输出仍为单频复指数信号,其幅度放大了|)(|jw e H ,相移为)(ωϕ。
对于系统函数H(z)与H(w)之间,若系统函数H(z)的收敛域包含单位圆|z|=1,则有jw e z jw z H e H ==|)()(,在MATLAB 中可以利用freqz 函数计算系统的频率响应。
典型离散信号及其MATLAB实现

实验二 典型离散信号及其MATLAB 实现一、实验目的1. 掌握MATLAB 语言的基本操作,学习基本的编程功能。
2. 熟悉连续信号经过采样前后的频谱变化,加深对采样定理的理解。
3. 掌握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 中:)**ex p(1:0n w j x N n =-=5.指数序列:n a n x =)(在MATLAB 中:na x N n .^1:0=-= 6.y=fliplr(x)——信号的翻转;x=square(t)——产生方波信号y=sawtooth(t)——产生锯齿波信号;y=sinc(x)——产生sinc 函数信号。
三、实验内容(一) 离散信号的产生离散信号的图形显示使用stem 指令。
1. 编写MATLAB 程序,产生下列典型脉冲序列。
(1) 单位脉冲序列:起点n0,终点nf ,在ns 处有一单位脉冲。
(2) 单位阶跃序列:起点n0,终点nf ,在ns 前为0,在ns 处及以后均为1(n0<=ns<=nf)。
(3) 实指数序列:n x )75.0(3=(4) 复指数序列:n j e x )7.02.0(4+-=其MATLAB 程序如下:n0=0;nf=10;ns=3;n1=n0:nf;x1=[(n1-ns)==0]; %单位脉冲序列n2=n0:nf;x2=[(n2-ns)>=0]; %单位阶跃序列n3=n0:nf;x3=(0.75).^n3; %实指数序列n4=n0:nf;x4=exp((-0.2+0.7j)*n4); %复指数冲序列subplot(2,2,1),stem(n1,x1);subplot(2,2,2),stem(n2,x2);subplot(2,2,3),stem(n3,x3);figuresubplot(2,2,1),stem(n4,real(x4)); %注意subplot 的变化 subplot(2,2,2),stem(n4,imag(x4));subplot(2,2,3),stem(n4,abs(x4));subplot(2,2,4),stem(n4,angle(x4));(二)离散时间信号的卷积在MATLAB中,利用函数conv(x,h)可以实现两个有限长度序列的卷积,要注意conv 函数是假定两个序列都从n=0开始的。
MATLAB 第2章 离散时间信号与系统

(2)移位:将 h(-m)移位 n,即得h(n-m).当 n为正整数时, 右移n位,当n为负整数时,左移n位.
(3) 相乘:再将h(n-m)和x(m)的相同m值的对应点值相乘. (4)相加:把以上所有对应点的乘积叠加起来,即得y(n)值. 依上法,取n=…, -2, -1, 0, 1, 2, …各值,即可得全部y(n)值.
y( 1 ) 0
1 1 y(1 ) 1 2 2
数字信号处理
图1-8 x(n)和h(n)的卷积和图解
第2章离散时间信号与系统
利用图1-8,求任意一个y(n)时,只需将两序 列对应位置上的点相乘再求和即可。
数字信号处理
第2章离散时间信号与系统
二. 常用的典型序列
1.单位采样序列(单位冲激序列,单位脉冲序列) ( n )
x(2n)
3
2 x(2 n)
2
4 2
1 1
0
1
n
0
1
2
3
n
数字信号处理
第2章离散时间信号与系统
2.2 离散时间系统
定义:一个离散时间系统是将输入序列变换成输出
序列的一种运算。
若以T[· ]来表示这种运算,则一个离散时间系统 可表示为:
y ( n ) T [ x ( n )]
离散时间系统中最重要、 最常用的是“线性移
例如 s i n n 4
N 8
/ 0 PQ / (2)当 2 / 0 不是整数,是一个有理数时,设 2
P和Q是互为素数的整数,取k=Q,则N=P; 例如 s i n 数字信号处理
4 5
时, 2 / 0
2 5 4 / 5 2
N 5
第2章离散时间信号与系统
使用matlab来实现 时域离散信号的产生实验心得

使用matlab来实现时域离散信号的产生实验心得【标题】使用Matlab实现时域离散信号的产生实验心得【导语】在信号与系统课程的学习中,时域离散信号的产生是一个重要的实验内容。
本文将结合个人实验经验,探讨如何使用Matlab来实现时域离散信号的产生,以及实验心得体会。
【主体内容】一、时域离散信号的概念时域离散信号是指信号在时域上是离散的,其取样时间是离散的。
与连续信号相对应,离散信号具有一些独特的特性和处理方法。
在实际应用中,我们经常需要生成各种形式的时域离散信号,用于系统模拟、滤波器设计等方面。
二、Matlab在时域离散信号产生中的应用1. 生成简单的离散信号在Matlab中,可以利用基本的数学函数和操作符来生成简单的离散信号。
可以利用sin、cos等函数来生成正弦信号、余弦信号,利用随机数函数来生成随机信号等。
Matlab还提供了丰富的绘图函数,可以直观地展示生成的离散信号。
2. 生成复杂的离散信号除了基本的数学函数外,Matlab还提供了丰富的信号处理工具箱,可以用于生成各种复杂的离散信号。
可以利用波形合成函数生成有限长序列、周期序列等特殊形式的信号;还可以利用滤波器设计函数生成特定频率特性的信号等。
三、实验心得与体会在实验中,我深切体会到Matlab在时域离散信号生成方面的强大功能和便捷性。
通过Matlab,我能够快速生成各种形式的离散信号,并对其进行分析、处理和展示。
Matlab的直观、交互式界面也使得实验过程更加高效和愉悦。
在实践中,我也发现了一些问题和经验总结。
在生成复杂离散信号时,需要深入理解各种信号处理工具箱的使用方法,以及不同函数的参数设置;在展示离散信号时,需要注意选择合适的绘图方式,清晰地展现信号的特点和规律。
【总结与回顾】本文通过介绍时域离散信号的概念和Matlab在信号生成中的应用,共享了个人的实验心得和体会。
希望能够对读者有所启发,开拓视野,加深对时域离散信号的理解和掌握。
离散信号的产生、显示及离散序列的卷积和matlab实现

离散信号的产生、显示及离散序列的卷积和matlab实现离散信号的产生可以通过一个生成离散序列的函数来实现。
Matlab提供了一些内置的函数来生成常见的离散信号,例如单位阶跃函数(heaviside)、单周期方波(square)、正弦信号(sin)、脉冲(impulse)等。
离散信号的显示可以使用Matlab的plot函数来实现。
将离散序列作为函数的输入参数,然后使用plot函数绘制出序列的图像。
离散序列的卷积可以使用conv函数来实现。
conv函数接受两个输入信号,并返回它们的离散卷积结果。
下面是一个示例代码演示离散信号的产生、显示和离散序列的卷积:```matlab% 产生离散信号n = 0:1:9; % 定义离散点的范围x1 = heaviside(n-2); % 单位阶跃函数x2 = square(n); % 单周期方波x3 = sin(n); % 正弦信号% 显示离散信号figure;subplot(3,1,1);stem(n, x1);title('单位阶跃函数');subplot(3,1,2);stem(n, x2);title('单周期方波');subplot(3,1,3);stem(n, x3);title('正弦信号');% 离散序列的卷积h = [1, 2, 1]; % 卷积核y = conv(x3, h); % 卷积运算figure;subplot(2,1,1);stem(x3);title('输入信号');subplot(2,1,2);stem(y);title('卷积结果');```在上面的代码中,首先定义了离散序列的范围n,然后使用内置函数生成了三个不同的离散信号x1、x2和x3。
接下来,使用subplot函数将三个离散信号的图像显示在一个图形窗口中。
最后,定义了一个卷积核h,并使用conv函数对x3进行卷积运算,得到卷积结果y。
MATLAB编程基础及基本离散信号的表示

MATLA B 编程基础及基本离散信号的表示一、实验目的:掌握MAT L AB 程序设计语言及其函数定义方法,利用MAT L AB 产生基本的离散时间序列。
二、实验内容1、掌握Mat l ab 选择语句、循环语句、函数的定义。
2、综合应用上述命令,完成下列任务:(1) 生成一个冲击响应⎩⎨⎧≠==0,00,1)(n n n δ,并计算)1()3(2)(--+=n n n x δδ 要求:1.以M 文件形式,n 在[-10,10]之间,用函数的形式实现)(n δ;2.调用自定义的冲击响应函数计算表示)(n x ;3.用stem 函数画出和)(n δ)(n x 的图像。
1.funct i on[x,n]=impse q (0,-10,10);n=[-10:10];x=[(n)==0];n=-10:10;x=impse q (0,-10,10);stem(n,x);xlabe l ('n');ylabe l ('δ(n)');title ('冲击响应');2.n=-10:10;x=2*impse q (-3,-10,10)-impse q (1,-10,10);stem(n,x);xlabe l ('n');ylabe l ('x(n)');title ('x(n)=2δ(n+3)-δ(n-1)');(2) 生成一个阶跃响应:⎩⎨⎧<≥=0,00,1)(n n n U ,并计算)1()2(3)(+--=n n U n x δ要求:1.以M 文件形式,n 在[-10,10]之间,用函数的形式实现)(n U ;2.调用自定义的阶跃响应函数计算)(n x ;3.用stem 函数画出和)(n U )(n x 的图像 1.n=-10:10;x=steps e q(0,-10,10);stem(n,x);xlabe l ('n');ylabe l ('u(n)');title ('阶跃响应');2.n=-10:10;x=3*steps e q(2,-10,10)-impse q (-1,-10,10);stem(n,x);xlabe l ('n');ylabe l ('x(n)');title ('x(n)=3u(n+3)-δ(n+1)');(3) 生成一个指数响应:n n x 8.0)(=,然后计算)2(*)()(-=n U n x n y要求:以M 文件形式,n 在[-10,10]之间,用stem 函数分别画出)(n x 和)(n y n=-10:10;x=(0.8).^n;y=x.*steps e q(2,-10,10);subpl o t(2,1,1);stem(n,x);xlabe l ('n');ylabe l ('x(n)');title ('指数响应');subpl o t(2,1,2);stem(n,y);xlabe l ('n');ylabe l ('y(n)');title ('y(n)=x(n)*u(n-2)');(4) 画出)5.0sin(2)3/1.0cos(3πππn n x ++=,要求:以M文件形式,n在[-20,20]之间。
离散时间信号处理与matlab仿真 概述及解释说明

离散时间信号处理与matlab仿真概述及解释说明1. 引言1.1 概述离散时间信号处理是指对离散时间信号进行分析、处理和转换的过程。
离散时间信号处理在许多领域中都起着重要作用,例如通信系统、音频处理、图像处理等。
通过对离散时间信号进行采样和量化,我们可以将连续时间信号转换为离散时间信号,并对其进行数字化处理。
随着计算机技术的发展,MATLAB成为了一种强大的工具,被广泛应用于离散时间信号处理。
MATLAB提供了丰富的函数和工具箱以及易于使用的界面,使离散时间信号处理变得更加简单和高效。
1.2 文章结构本文将按以下结构来介绍离散时间信号处理与MATLAB仿真:- 第2部分: 离散时间信号处理概述。
在这一部分中,我们将介绍信号和系统的基础知识,并比较离散时间信号与连续时间信号之间的差异。
此外,我们还将探讨离散时间信号处理在各个应用领域中的应用案例。
- 第3部分: MATLAB在离散时间信号处理中的应用。
这一部分将重点介绍MATLAB工具箱的使用方法,并提供离散时间信号处理算法在MATLAB中的实现方式。
同时,我们将通过一些具体案例来演示MATLAB在离散时间信号处理中的应用。
- 第4部分: 离散时间信号处理的常见问题和挑战。
在这部分中,我们将探讨采样频率选择与混叠效应、数字滤波器设计与优化原理以及非线性失真和量化误差分析等离散时间信号处理中常见的问题和挑战。
- 最后,我们将在第5部分总结本文,并对离散时间信号处理与MATLAB仿真的重要性进行回顾和总结,同时展望未来离散时间信号处理方法研究的发展方向。
1.3 目的本文目的是为读者提供一个全面且详细的概述,使其了解离散时间信号处理以及MATLAB仿真在该领域中的应用。
希望通过阅读本文,读者能够加深对离散时间信号处理基础知识的理解,并掌握使用MATLAB进行仿真和实现离散时间信号处理算法的方法。
此外,本文还旨在引起读者对离散时间信号处理领域中常见问题和挑战的关注,并对相关研究方向进行思考。
离散信号的MATLAB产生和图形显示

1.单位抽样响应:n=-5:5;x=[zeros(1,5),1,zeros(1,5)];subplot(2,1,1);stem(n,x);title('单位抽样序列');xlabel('n');ylabel('δ(n)');延迟2个单位:n=-5:5;x=[zeros(1,3),1,zeros(1,7)];subplot(2,1,1);stem(n,x);title('单位抽样序列');xlabel('n');ylabel('δ(n)');2.单位阶跃序列:n=-5:5;x=[zeros(1,5),1,ones(1,5)];subplot(2,1,1);stem(n,x);title('单位阶跃序列');xlabel('n');ylabel('u(n)');左移2个单位:n=-5:5;x=[zeros(1,3),1,ones(1,7)];subplot(2,1,1);stem(n,x);title('单位阶跃序列');xlabel('n');ylabel('u(n)');3.正弦序列:A=3;fai=pi/2;Fs=2;f=3;n=0:0.001:4;x=A*sin(2*pi*n/Fs+fai); subplot(2,1,1);plot(n,x);title('sin(n)');xlabel('n');ylabel('x(n)');4.复数序列:(取实部显示)n=0:0.0001:20;w=3;x=exp(j*w*n);subplot(2,1,1);plot(n,real(x));title('复数序列(实部显示)'); xlabel('时间');ylabel(振幅);(取虚部显示)n=0:0.0001:20;w=3;x=exp(j*w*n);subplot(2,1,1);plot(n,imag(x));title('复数序列(虚部显示)'); xlabel('时间');ylabel('振幅');复数序列(取模)n=0:0.0001:20;w=3;x=exp(j*w*n+n/10);subplot(2,1,1);r=real(x).^2;k=imag(x).^2;m=(r+k).^0.5;plot(n,m);title('复数序列(模)');xlabel('时间');ylabel('振幅');5.指数序列:n=0:0.2:10;a=2;x=a.^n;subplot(2,1,1);plot(n,x);xlabel('n');ylabel('x(n)');title('指数序列')注释:1.“plot”是绘制曲线图,“stem”是绘制火柴梗图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
function [x , n ] = impseq (n0, n1, n2)
n = [ n1: n2]; x = [ (n - n0) = =0 ];
Stem(n,x)
(2)单位阶跃序列
在 区间的值,MATLAB中可用下列表达式描述:
n = [ n1: n2]; x = [ (n - n0) > =0 ];
y(n)= x(-n)对应的代码为:y=fliplr (x); n= -fliplr (n);
注意:翻转后向量n的取值为负值。
(5)样本和与积
该运算是将序列中各样本值求和或求积,可分别采用函数sum(x)和prod (x)实现。具体应用时还可指定序列x参加运算的元素范围,即sum (x (n1:n2))和prod ( x (n1:n2))。
函数length (n)可取得向量n的长度。
函数find((n>a)&(n<b))可获取向量n在范围a<n<b内的取值。
(2)信号的乘除
MATLAB中两序列对应值的乘、除可分别采用点乘“.*”和点除“. /”运算符,运算时两序列的长度需相等,具体处理方法和序列求和差时的一致。
例.序列x1(n)、x2 (n),长度分别为n1和n2,其求积的MATLAB代码为:
(3)系统稳定性
LTI离散系统稳定性的判别可采用两种方法:
法1:对冲激响应序列h(n)绝对值求和,判别其是否为有限值,若有限,为稳定系统。对应语句为:sum ( abs (h)),其中函数abs是取序列h(n)的绝对值。
法2:利用系统函数H(z)的极点分布进行判断,若极点均在单位圆内,则为稳定系统。系统函数H(z)的极点也即为差分方程中y项对应的各系数[a0, a1, …, aN]构成的多项式的极点,而极点可采用求根函数roots获取。
>> h = filter ( b, a, x );
>> stem (n, h); %绘制冲激响应序列
>>axis ( [-20, 120, -1.1, 1.1 ]); %设定坐标轴取值范围
>>title ( ‘冲激响应’ ); xlabel (‘n’); ylabel ( ‘h(n)’ ); %对图形名称和x轴,、y轴进行标注
(3)移位
序列x (n)的移位操作不影响向量x,只需对向量n的每个元素加或减去一个移位值。如移位序列 等价为 ,对应的MATLAB语句为:
n=n+n0; y = x;
(4)折叠
在这个运算中,序列x (n)的每个样本都对n =0翻转,得到一个折叠后的序列y(n),MATLAB中可由函数fliplr (x)实现。
(6)信号能量
MATLAB中,计算序列x (n)能量的可采用下列两种办法:
法1:Ex = sum (x . * conj (x) ); %函数conj (x)是取复数x的共轭复数
法2:Ex = sum (abs (x) .^ 2 );
4、离散系统
一个离散时间系统,可将一个序列x (n)变换为另一个序列y (n),即将输入信号处理成输出信号。常用离散系统为线性时不变系统(LTI)。
axis([0, 20, 0, 10]);
title (‘例2序列’);
xlabel (‘n’); ylabel (‘x2(n)’);
图1-1-1序列波形图
2、常用信号的表示方法
(1)单位采样序列
在 区间的值,MATLAB中可用下列表达式描述
n = [ n1: n2]; x = [ (n - n0) = =0 ];
(3)实数指数序列
例如要实现序列 ,MATLAB中可用下列表达式描述:
n = [ 0 : 10 ]; x =(0.9 ).^ n ;
(4)复数指数序列
例如要实现序列 ,MATLAB中可用下列表达式描述:
n = [ 0 : 10 ]; x = exp( (2+3j)*n ) ;
(5)正余弦序列
例如要实现序列 ,MATLAB中对应的语句为:
%[ x, nx] =第一个信号
%[ h, nh] =第二个信号
nyb = nx (1) + nh (1); %两向量起点之和
nye = nx ( length (x))+nh ( length (h)); %两向量长度之和
ny = [nyb : nye];
y = conv (x, h);
(2)差分方程
数字信号处理课程实验报告
实验名称
离散信号及离散系统的MATLAB编程实现
系别
教师姓名
实验地点
实验日期
一、实验内容
1、用MATLAB仿真(编写)离散序列
2、常见序列运算
3、差分方程的求解
4、系统零极点的求解。
(红色部分为必做项目)
二、实验目的
1.复习离散时间的信号和系统,复习离散时间重要类型的信号和它们的运算的实现。
LTI离散系统也可用线性常系数差分方程描述:
y(n)的解在MATLAB中可通过调用滤波器函数filter(a, b, x)完成,其中a = [a0, a1, …, aN ] ( a0≠0 ),b = [b0, b1, …, bM ]分别对应差分方程中y和x的各项系数,x为输入信号序列,即将差分方程看成一个滤波器,x作为滤波器的输入信号,y为滤波器的输出值。
例,差分方程 ,计算并画出其冲激响应h(n), n = -20, … , 100。
在MATLAB命令窗口中,对应程序为:
>> b = [ 1 ]; a = [ 1, -1, 0.9 ];%注意确定a值时,需先将y项移至等式左侧
>> n = [-20: 120]; x = zeros (1, length (n) ); x (21) = 0; %描述冲激序列
3、序列运算
(1)信号的加减
MATLAB中可用算术运算符“+”和“-”分别实现序列的加法和减法运算,此时两序列的长度必须相等,否则需通过补零法改变信号的长度。
例.序列x1(n)、x2 (n),长度分别为n1和n2,其求和的MATLAB代码为:
说明:
函数min (n)可获取向量n的最小值,函数max (n)则获取向量n的最大值。
(1)卷积
线性时不变系统(LTI)的输入和输出关系可通过冲激响应h (n)表示
y(n)
即y(n)为x(n)与h(n)的线性卷积。MATLAB提供卷积函数conv来计算两个有限长度序列的线性卷积,并假定两个序列都从n=0开始。调用方式为:y=conv (x, h)。
例,x(n)=[1, 2, 3], h(n)=[2, 2, 3], n=[0, 1, 2], x(n)与h(n)的线性卷积代码为:
例,系统差分方程为: ,判断其稳定性。
MATLAB代码为:>> a = [1, -1, -0.9 ]; z=roots (a);
>> magz = abs (z)
magz= 0.9487
0.9487显然极点均在单 Nhomakorabea圆内,系统稳定。
五、实验总结
法1:
法2:
%产生P列x;x是一个行向量
%长的列向量
%长的行向量
说明:
运算符“’”为向量的转置操作符,实现行向量与列向量的相互转化;
函数ones(1,P)用以产生1行×P列的1矩阵,与此对应函数zeros(n,m)产生n行×m列的0矩阵;
矩阵 的冒号运算即 将矩阵所有列向量依次连接在一起,构成一列向量。
>> n = [-3, -2, -1, 0, 1, 2, 3, 4]; %自变量取值
>> x = [ 2, 1, -1, 0, 1, 4, 3, 7]; %因变量取值
说明:
(1)向量可用方括号[ ]表示。
(2)当向量取值连续变化时可用冒号运算符“:”简化赋值过程,如 的n值,可简化为
n=[-3:4]或n= -3:4。
2.熟悉MATLAB软件的集成开发环境,学会利用MATLAB编程及获得帮助的方法。
3.学会利用MATLAB的绘图功能。
三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况)
四、实验试做记录(含程序、数据记录及分析)
1、Matlab表示序列
MATLAB中,可采用向量表示序列,由于MATLAB中对序列下标默认为从1开始递增,因此要表示离散信号 ,一般应采用两个向量分别对信号的自变量和因变量进行描述。如 , n= -3~4,在MATLAB中表示为
(3)分号“;”表示不回显表达式的值。
(4)“%”表示其后内容为注释对象。
(5)符号“>>”是MATLAB命令窗口的输入提示符,此外,为便于多次调用,也可在m文件中输入相应的命令语句。
利用MATLAB,还可对信号的波形进行描述,常采用的绘图语句有stem,plot,subplot, axis,title,xlabel,ylabel,gtext, hold on, hold off, grid等。其中stem绘制离散图形;plot绘制连续图形;subplot用于绘制子图,应在stem或plot语句前调用;axis指定x和y轴的取值范围,用在stem或plot语句后;title标注图形名称,xlabel, ylabel分别标注x轴和y轴名称;gtext可将标注内容放置在鼠标点击处;hold on和hold off用于控制对象绘制方式,是在原图上还是在新图上绘制;grid用于绘制网格。以上函数具体使用方法可通过在命令窗口中输入help加函数名进行查阅,如“help stem”语句。部分绘图语句的应用见下面语句,对应的波形图为图1-1-1。
>> x=[1, 2, 3]; h=[2, 2, 3]; y=conv (x, h)