- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验2 信号的时域运算及matlab实现
实验目的:
了解连续时间信号的各种运算;
了解离散时间信号的各种运算;
实验原理:
1. 连续信号的时域运算
采用符号运算的方法可以简便地实现连续信号的时域运算,下面是实现信号相加的matlab命令
s=symadd(f1,f2)
ezplot(s)
另外,symmul(f1,f2)可实现信号的相乘;subs(f,t,a)命令则是将连续信号中的时间变量t用a替换。例如,subs(f,t,a-a0)可将f(t)移位到f(a-a0)。
2.离散序列的时域运算
对于离散序列来说,序列相加、相乘是将两序列对应时间序号的值逐项相加或相乘。若两序列不等长,则需通过补零的方式成为同维数的序列。例如两序列相加的子函数如下:
function [f,k]=sigadd(f1,f2,k1,k2)
k=min(min(k1),min(k2)):max(max(k1),max(k2));
s1=zeros(1,length(k));
s2=s1;
s1(find(kmin(k1)(kmax(k1))==1))=f1;
s2(find(kmin(k2)(kmax(k2))==1))=f2;
f=s1+s2;
stem(k,f)
实验内容:
1.信号,用matlab绘出 的时域波形。
2.编写实现序列相乘sigmul(f1,f2,k1,k2),序列反折sigfold(f,k),序列平移sigshift(f,k,k0),序列倒相sigfoldph(f,k)的子函数。
3.利用2中的函数完成:
已知,绘出离散序列及反折后的波形;
已知,绘出离散序列及反折后的波形;
实验报告要求:
列出实验内容中1,2的程序清单;
1.
function display()
syms t
f=(1+t/2)*(heaviside(t)-heaviside(t-3))
f_1=subs(f,t,t+2)
f_2=subs(f,t,t-2)
f_3=subs(f,t,-t)
f_4=subs(f,t,2*t)
f_5=-f
subplot(2,3,1)
ezplot(f)
title(f(t))
subplot(2,3,2)
ezplot(f_1)
title(f(t+2))
subplot(2,3,3)
ezplot(f_2)
title(f(t-2))
subplot(2,3,4)
ezplot(f_3)
title(f(-t))
subplot(2,3,5)
ezplot(f_4)
title(f(2t))
subplot(2,3,6)
ezplot(f_5)
title(-f(t))
函数调用:display()
2. 程序代码
function [f,k]=sigmul(f1,f2,k1,k2)
k=min(min(k1),min(k2)):max(max(k1),max(k2));
s1=zeros(1,length(k));
s2=s1;
s1(find(k=min(k1)(k=max(k1))==1))=f1;
s2(find(k=min(k2)(k=max(k2))==1))=f2;
f=s1.*s2;
subplot(1,3,1)
stem(k1,f1)
title(f1-k1)
subplot(1,3,2)
stem(k2,f2)
title(f2-k2)
subplot(1,3,3)
stem(k,f)
title(sigmul(f1,f2,k1,k2))
调用程序:
f1=[1 2 3 4 5];
f2=[4 4 3 3 5 5 6 7];
k1=[2 3 4 5 6];
k2=[1 2 3 4 5 6 7 8] ;
[f,k]=sigmul(f1,f2,k1,k2)
图形:
function sigfold(f,k)
k1=-k
subplot(1,2,1)
stem(k,f)
subplot(1,2,2)
stem(k1,f)
调试:f=[2 4 6 7];
k=[1 2 3 4];
sigfold(f,k)
图形:
序列平移:
程序代码
function sigshift(f,k,k0)
文档评论(0)