卷积计算

  • 前言
  • 一、卷积是什么?
  • 二、计算方法
    • 1.符号运算
    • 2.数值运算
  • 遇到的一些问题和解决方法
  • 一些总结

前言

用matlab也可以实现的卷积计算操作,主要有两种方法,第一种直接用符号运算,第二种就是用数值运算。


一、卷积是什么?

卷积积分是信号与系统时域分析中的重要方法之一。连续信号的卷积积分定义如下:

MATLAB进行卷积计算可以通过符号运算方法和数值计算方法来实现。
符号运算求解主要是从卷积积分的定义出发,采用积分公式直接计算,此时要注意积分变量和积分限的选取。
数值计算方法是通过时间间隔取足够小的离散时间信号的来实现的。可调用MATLAB中的conv()函数近似地数值求解连续信号的卷积积分。如果对连续时间信号和进行等时间间隔均匀抽样,则连续信号变为离放序列。当取样间隔够小时,即为连续时间信号和。因此连续时间信号的卷积积分运算转换为

采用数值计算法,只求当t=n▲的卷积积分的值,n为整数,即

实际上就是离散序列和的卷积和。当▲足够小时,上式就是卷积积分的结果,即对连续时间信号的较好数值近似
当取样间隔足够够小时,有

通过 MATLAB实现连续信号和的卷积,可以利用各自抽样后的离散时间序列的卷积再乘上抽样间隔。抽样间隔越小,误差也就越小。

二、计算方法

1.符号运算

其中用heaviside(t)表示阶跃函数,subs()是符号计算函数,表示将符号表达式中的某些符号变量替换为指定的新的变量,再进行积分操作,类似我们用图示法求解卷积的过程。

syms tao;
t=sym('t','positive'); %t是限定符号变量
xt1=str2sym('heaviside(t)-heaviside(t-2)');
xt2=str2sym('heaviside(t)-heaviside(t-3)+heaviside(t-1)-heaviside(t-2)');
xt_tao=subs(xt1,t,tao)*subs(xt2,t,t-tao);
yt=int(xt_tao,tao,0,t);
yt=simplify(yt)
ezplot(yt,[0,10]),grid on
title('符号运算法求解卷积');

2.数值运算

conv函数用于多项式乘法计算和矩阵卷积,用在离散信号相乘结果比较合适,然后再进行一些细节上的操作和绘图。
最后一个是阶跃函数的封装,matlab中的表示为
y=(t>0)

dt=0.001;t1=-0.5:dt:3.5;
f1=uCT(t1)-uCT(t1-2);
t2=t1;
f2=uCT(t2)+uCT(t2-1)-uCT(t2-2)-uCT(t2-3);
[t,f]=ctsconv(f1,f2,t1,t2,dt);function[f,t]=ctsconv(f1,f2,t1,t2,dt)
f=conv(f1,f2);
f=f*dt;
ts=min(t1)+min(t2);
te=max(t1)+max(t2);
t=ts:dt:te;
subplot(221)
plot(t1,f1);grid on;
axis([min(t1),max(t1),min(f1)-abs(min(f1)*0.2),max(f1)+abs(max(f1)*0.2)])
title('f1(t)');xlabel('t')
subplot(222)
plot(t2,f2);grid on;
axis([min(t2),max(t2),min(f2)-abs(min(f2)*0.2),max(f2)+abs(max(f2)*0.2)])
title('f2(t)');xlabel('t')
subplot(212)
plot(t,f);grid on;
axis([min(t),max(t),min(f)-abs(min(f)*0.2),max(f)+abs(max(f)*0.2)])
title('f(t)-f1(t)*f2(t)');xlable('t')function f=uCT(t)
f=(t>0);
end

遇到的一些问题和解决方法

1.sym还是str2sym
在吧heaviside表示为阶跃函数的符号定义中采用的sym在matlab版本中报错,修改为strtosym可以正常运行。

2,Heaviside还是heaviside

根据报错信息,修改为小写即可。

一些总结

采用了两种方法来计算卷积,第一种是比较直观的符号计算法,采用sym定义符号变量,得到要计算的两个函数符号表示,其中阶跃函数采用heaviside来进行表示,然后再利用subs操作换元,进而进行积分计算,简化后得到最终结果,ezplot绘图。第二种是更难理解的数值计算方法。巧妙利用了conv函数近似数值求解连续信号的积分。

matlab实现信号与系统中卷积的计算的两种方法相关推荐

  1. 请描述定时器初值的计算方式_单片机C语言编程中定时器初值计算的两种方法...

    单片机C语言编程中,定时器的初值对于初学者真的是比较不好计算,因此我总结了以下几种方法. 第1种方法: #define FOSC 11059200L //晶振的频率 #define TIMS (655 ...

  2. Linux系统中运行.sh文件的几种方法

    在Linux系统中执行.sh文件的几种方法: 1. cd到.sh文件所在的目录,然后执行./xxx.sh   [前提:该./sh文件要有可执行的权限,chmod u+x xxx.sh]  2. 在任何 ...

  3. 多元统计分析matlab,MATLAB的统计工具箱中的多元统计分析中提供了聚类分析的两种方法...

    MATLAB的统计工具箱中的多元统计分析中提供了聚类分析的两种方法: 1.层次聚类hierarchical clustering 2.k-means聚类 这里用最简单的实例说明以下层次聚类原理和应用发 ...

  4. linux系统中清空文件内容的三种方法

    1.使用vi/vim命令打开文件后,输入"%d"清空,后保存即可.但当文件内容较大时,处理较慢,命令如下: vim file_name :%d :wq 2.使用cat命令情况,命令 ...

  5. 【转载】取得系统中网卡MAC地址的三种方法

    From:http://blog.csdn.net/zhangting1987/article/details/2732135 网卡地址这个概念有点混淆不清.因为实际上有两个地址,mac地址和物理地址 ...

  6. 查看计算机.net环境版本,windows7系统查看NET Framework版本的两种方法

    现在,很多用户都会在电脑中安装NET Framework,因为一些程序需要NET Framework才能运行.那么,如果想要查看我们计算机中的 NET Framework版本,该如何操作呢?接下来,就 ...

  7. XP计算机调整对比度,Win7系统调节显示器屏幕对比度的两种方法【图文】

    win7系统开机后或者使用过程中,有时候我们会觉得电脑显示器的对比度不合适,需要进行调整,很多朋友不知道怎么调节显示器屏幕对比度?其实调节显示器屏幕对比度的方法比较简单,而且调节出一个合适的屏幕对比度 ...

  8. 计算机win10开机音乐,Windows10系统更改开关机声音的两种方法

    Win10正式版电脑在开机或关机时都伴随着系统自带的声音.而不少用户为了让自己的windows10系统电脑变得更加个性化一些,因此都想要自己手动更改开关机音乐.这该如何操作呢?下面,小编就向大家介绍两 ...

  9. 计算机cpu 二级缓存,Windowsxp系统开启cpu二级缓存的两种方法

    WindowsXP系统的CPU二级缓存在默认情况下是处于关闭状态的.一些用户为了发挥出CPU的最大效率,就希望能打开CPU二级缓存.这该如何操作呢?接下来,系统城小编就为大家详细介绍xp系统cpu打开 ...

  10. win7如何开计算机端口,win7旗舰版64位系统快速开启计算机端口的两种方法

    不知道大家对于 win7系统 计算机端口的了解有多少,PConline的小编先跟大家普及一下,所谓的计算机"端口"是英文port的义译,可以认为是计算机与外界通讯交流的出口.分软件 ...

最新文章

  1. [置顶] 应广大童鞋的要求提供一个封装模块,直接和ADB 服务进程交互
  2. CKEditor上传图片—配置CKFinder
  3. 深入理解领域驱动设计中的聚合
  4. 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)...
  5. Linux入门笔记——echo
  6. 文字 竖排居中_学会了这几招,瞬间就搞定PPT文字排版问题!
  7. 实验计算机控制器的实验结论,计算机毕业论文控制器实验报告.doc
  8. Linux移植随笔:git的使用
  9. elisa标准曲线怎么做_ELISA标准曲线制作方法.pdf
  10. ArchLinux安装简单安装教程
  11. sql server 2016新特性 查询存储(Query Store)的性能影响
  12. 深入理解JVM虚拟机(5)——JVM虚拟机类加载机制概述
  13. qq2018旧版本7.3.1下载_qq音乐2018老版本下载
  14. 域用户登陆显示计算机图标,PC用户或域用户登陆后任务栏无显示桌面的小图标...
  15. 微信小程序生成海报并保存到本地(附带二维码生成)
  16. 水电水利建设项目水环境与水生生态保护技术政策
  17. ftp文件/文件夹的上传和下载
  18. 大数据行业怎么样?工资可观么?
  19. 一 简单句和并列句(2021-10-29)
  20. Python进程池apply_async的callback函数不执行的解决方案

热门文章

  1. 凭证反过账 金蝶k3_金蝶K3总账凭证过账等处理方式
  2. 最新老男孩Linux云计算sre学什么
  3. Windows官方系统镜像下载及相关介绍
  4. 程序员欢乐送(60):我有一个大胆的想法!
  5. 计算机基础知识100题 含答案,计算机基础知识练习试题及答案
  6. 啊哈C语言--20220823练习
  7. C# WinForm 基础教程
  8. 无线摄像头如何连接服务器,网络摄像头怎样连接到云服务器
  9. TransE算法(Translating Embedding)
  10. prd移动端通用产品需求文档+Axure高保真app社交餐饮通用prd文档+产品业务说明+通用prd文档+通用prd模板+全局说明+需求分析+竞品分析+产品结构图+产品业务流程图+产品信息图+餐饮系统