- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
常用信号及MATLAB表示
5 常用信号的MATLAB表示
5.1单位冲激函数、单位冲激序列
示例7:t = -5:0.1:5;y = (t==0);subplot(121);plot(t, y, r);n = -5:5;x = (n==0);subplot(122);stem(n, x);
?
?
?
?
图5
运行结果如图5所示。
程序说明: (1)由n = -5:5得到一个1×11数组n;而在x = (n==0)中,n==0是一个向量运算,即向量n中的每一个元素与0比较是否相等,其比较结果0或1放在x中。这样得到的向量x也是1×11数组,且正好就是单位冲激序列。 (2)在MATLAB中,任何向量x的下标是从1开始的,不能取零或负值,而x(n)中的时间变量n则不此受限制。因此向量x的下标与时间变量n是两个概念,如本例中向量x(n)的下标是从1到11,而时间变量n是从-5到5。所以必须用一个与向量x等长的定位时间变量n,以及向量x,才能完整地表示序列x(n)。在信号的表示和运算中,这一点请务必注意;只有当序列x(n)的时间变量正好是从1开始时,才能省去时间变量n,因为此时向量的下标与时间变量相同。 (3)单位冲激函数的实现方法实际上与单位冲激序列是完全相同的,都是用序列表示。只不过表示连续时间信号的序列中两相邻元素所对应的时间间隔更小,如本例中t的间隔为0.01,而表示离散时间信号的序列中两相邻元素所对应的时间间隔一般为1。
由于单位冲激序列在信号与系统中经常使用,我们专门编制一个函数文件delta.m,在后面的实验部分直接调用该函数即可产生需要的波形。
% delta.mfunction [x, n] = delta(n1,n2,k)% 产生冲激序列δ(n-k),其中n1=n=n 2, n1=k=n2 if nargin ~=3disp(输入不正确,输入参数要有三个!);return;elseif ((kn1)|(kn2)|(n1n2))error(输入不正确,输入参数要应满足n1=k=n2!)endn = n1:n2;x = ((n-k)==0);
5.2单位阶跃函数、单位阶跃序列
只要将前面冲激函数(示例7)中的关系运算“==”改为“=”,就可得到单位阶跃函数、单位冲激序列,如图6所示。
图6
我们编制了函数文件stepseq.m来生成单位阶跃序列。 function [x, n] = stepseq(n1,n2,n0)% 产生序列u(n-n0),其中n1=n=n 2, n1=n0=n2
if nargin ~=3disp(输入不正确,输入参数要有三个!);return;elseif ((n0n1)|(n0n2)|(n1n2))error(输入不正确,输入参数要应满足n1=k=n2!)endn = n1:n2;x = ((n-n0)=0);
示例8:绘图表示 (1) 门函数;(2) 序列。t = -3 :0.05: 3;z1 = ((t+1) = 0);z2 = ((t-1) = 0);g = z1 - z2; % 门函数 figure;subplot(221)plot(t,g,r);axis([-3 3 0 1.1])x1 = stepseq(-5,10,-3); % 调用函数stepseqx2 = stepseq(-5,10,5); % 调用函数stepseqx = x1 - x2;n = -5:10;subplot(222)stem(n,x);axis([-5,10,0,1.1])运行结果如图7所示。
图7
5.3其他典型的信号
实指数信号
其MATLAB实现为:n = n1: n2; x = a.^n;
复指数信号
其MATLAB实现为:n = n1: n2; x = exp(sigma+jw)*n;
正(余)弦信号
其MATLAB实现为:n = n1: n2; x = cos(w*n+sita)
5.4工具箱中的信号产生函数
利用MATLAB信号处理工具箱提供的一些函数,可以很方便地产生三角波、方波等函数波形。
周期性三角波或锯齿波函数sawtooth
调用格式为:x = sawtooth(t, width)功能:产生一个周期为2π、幅度在-1到+1之间的周期性三角波信号。其中width表示最大幅度出现的位置:即在一个周期内,信号从t=0到width×2π时函数值从-1到+1线性增加,而从width×2π到2π又是从+1到-1线性下降。width取值在0 ~ 1之间。 若x = sawtooth(Ωt, width),则对应的周期为2π/Ω。
示例9:产生周期为0.2的三角波,width取值分别为
文档评论(0)