matlab学习笔记(六)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、信号基本运算的MATLAB实现

信号基本运算是乘法、加法、尺度、反转、平移、微分、积分,实现方法有数值法和符号法。
案例一:f(t)为三角信号,求f(2t) , f(2-2t)

 t=-3:0.001:3;
ft=tripuls(t,4,0.5); 
subplot(3,1,1);                                                                           
plot(t,ft);  grid on;
title ('f(t)');
ft1= tripuls(2*t,4,0.5);
subplot(3,1,2);                                                                           
plot(t,ft1);  grid on;
title ('f(2t)');
ft2= tripuls(2-2*t,4,0.5);
subplot(3,1,3);                                                                           
plot(t,ft2);  grid on;
title ('f(2-2t)');

在这里插入图片描述
案例二:已知f1(t)=sinwt , f2(t)=sin8wt , w=2pi , 求f1(t)+f2(t)和f1(t)f2(t) 的波形图

w=2*pi;
t=0:0.01:3;
f1=sin(w*t);
f2=sin(8*w*t);
subplot(211)
plot(t,f1+1,':',t,f1-1,':',t,f1+f2)
grid on,title('f1(t)+f2(t))')
subplot(212)
plot(t,f1,':',t,-f1,':',t,f1.*f2)
grid on,title('f1(t)*f2(t)')

在这里插入图片描述

二、计算两信号的卷积积分

卷积积分

信号的卷积是数学上的一种积分运算,两个信号的卷积定义为:
在这里插入图片描述
信号的卷积运算在系统分析中主要用于求解系统的零状态响应。一般情况,卷积积分的运算比较困难,但在MATLAB中则变得十分简单,MATLAB中是利用conv函数来实现卷积的。

格式:g=conv(f1,f2) 
说明:f1=f1(t),f2=f2(t) 表示两个函数,g=g(t)表示两个函数的卷积结果。

案例一:

f1(t)=ε(t-1)-ε(t-2)
f2(t)=ε(t-2)-ε(t-3)
求卷积g(t)=f1(t)*f2(t)

代码:

t1=1:0.01:2; t2=2:0.01:3;
t3=3:0.01:5;    %两信号卷积结果自变量t区间应为:[两信号起始时刻之%~两信号终止时刻之和]请自行推导该结论
f1=ones(size(t1));  %高度为一的门函数,时间从t=1到t=2
f2=ones(size(t2));  %高度为一的门函数,时间从t=2到t=3
g=conv(f1,f2);       %对f1和f2进行卷积
subplot(3,1,1),plot(t1,f1);  %画f1的波形
subplot(3,1,2),plot(t2,f2);  %画f2的波形
subplot(3,1,3),plot(t3,g);    % grid on; 画g的波形

运行结果:
在这里插入图片描述

案例二:

f1(t)=ε(t+1)-ε(t)
f2(t)=ε(t)-ε(t-1)
求卷积g(t)=f1(t)*f2(t)

代码:

t1=-1:0.01:0; t2=0:0.01:1;
t3=-1:0.01:1;   
f1=ones(size(t1)); 
f2=ones(size(t2)); 
g=conv(f1,f2);     
subplot(3,1,1),plot(t1,f1); 
subplot(3,1,2),plot(t2,f2);
subplot(3,1,3),plot(t3,g); 

运行结果;
在这里插入图片描述

案例三:
在这里插入图片描述

t=0:0.01:5;
t1=0:0.01:10;
f1=t;
f2=t.*exp(-t);
g=conv(f1,f2); 
subplot(3,1,1),plot(t,f1);
subplot(3,1,2),plot(t,f2);
subplot(3,1,3),plot(t1,g);

运行结果:
在这里插入图片描述

t=-5:0.01:0;
t1=-10:0.01:0;
f1=0;
f2=t.*exp(t);
g=conv(f1,f2); 
subplot(3,1,1),plot(t,f1);
subplot(3,1,2),plot(t,f2);
subplot(3,1,3),plot(t1,g);

在这里插入图片描述

三、两序列的卷积和

已知 f1(k)={1,1,1,2},f2(k)={1,2,3,4,5}求卷积和

x=[1,1,1,2];
h=[1,2,3,4,5];
y=conv(x,h);      
stem(y);         
axis([-1,10,-20,20]); 

运行结果:
在这里插入图片描述

  • 15
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
学习MATLAB时,编写学习笔记是一种很好的方法,可以帮助您记录重要的概念、语法和技巧,以及解决问题的步骤。以下是一些关于编写MATLAB学习笔记的建议: 1. 组织结构:使用清晰的标题和分节来组织您的学习笔记。将不同的主题分成单独的部分,并使用子标题来进一步细分内容。 2. 内容概要:在每个部分或子标题下,写下该主题的概要。这样可以帮助您回顾和理解该主题的关键点。 3. 示例代码和输出:对于每个主题,包括一些示例代码和相应的输出结果。这有助于您理解和演示具体的MATLAB语法和功能。 4. 问题与解答:如果您在学习过程中遇到了一些困惑或问题,将其记录下来,并在笔记中提出并解答这些问题。这样可以帮助您深入思考并加深对该主题的理解。 5. 笔记补充:除了基本概念和语法外,您还可以添加一些额外的笔记,如最佳实践、编程技巧、常见错误等。这些额外的笔记可以提供更多的实用信息和提示。 6. 参考资料:在您的学习笔记中,包括引用的参考资料,如教程、文档、书籍或网站链接。这样,您可以随时回顾并深入研究相关的主题。 7. 总结和复习:在学习笔记的结尾,添加一个总结部分,回顾和总结您学到的重点和关键概念。此外,定期复习您的学习笔记也是加深理解和记忆的好方法。 以上是关于编写MATLAB学习笔记的一些建议。希望这对您有所帮助,并祝您在MATLAB学习过程中取得成功!如果有任何其他问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值