1.从多项式乘法到卷积和

这里有两个多项式:

两个多项式相乘

看一下h(x)的0次方项的系数是怎么算的

你会发现,在求c0时,这个等式的右边的每一项都是数列中的某一项和数列中的某一项相乘,而且任何一对乘在一起的a和b,它们在数列中的下标的和,刚好是所求的c的下标0。

同样的,h(x)的3次方项

同样的,这个等式的右边的每一项都是数列中的某一项和数列中的某一项相乘,而且任何一对乘在一起的a和b,它们在数列中的下标的和,刚好是所求的c的下标3。

再举一个负数次方项的例子,h(x)的-2次方项

这个式子当中,任何一对乘在一起的a和b,它们在数列中的下标的和,刚好是所求的c的下标-2

然后,推广到一般情况

如果把数列当作序列,这就是序列a和序列b的卷积和公式

由此可以推出结论:

两个多项式f与g相乘的结果的系数序列,就是f和g各自的系数序列的卷积。

卷积其实是一种“附带了位置信息”的乘法。

P.S.

1.实际上,在matlab中以系数向量表示的两个多项式相乘,用到的函数conv(),其实就是卷积函数,"conv"是“卷积”的英文"convolution"的缩写

2.如果把以上所有式子中的x化妆成为z,上述推导过程其实就是论证Z变换的性质之一“时域卷积对应于z域相乘”的过程

2.从离散的卷积和到连续的卷积积分——matlab的启发

再举一个连续的例子:

这里有两个函数

现在我们先看一下在电脑如何画出这两个图的

新版的matlab有fplot()函数,可以实现像几何画板或者是Geogebra之类直接将函数表达式转化为图像的功能。

但是老版本的matlab,还是要通过离散进行逼近——这是更接近于计算机本质的表示方法,就跟计算机画圆一样

             %“%”符号后面跟着注释x=0:0.01:pi; %向量x=(0,0.01,0.02,...,3.13,3.14) ,记住这种写法%中间的%跟python不同,matlab里的步长是写在中间的y1=sin(x);    %将x的每一个值代入正弦函数,得到对应的y向量(数列)%即    向量 y1=(sin(0),sin(0.01),sin(0.02),...sin(3.13),sin(3.14))y2=cos(x);    %同样地,将x的每一个值代入余弦函数,得到对应的y向量(数列)%即    向量 y2=(cos(0),cos(0.01),cos(0.02),..cos(3.13),cos(3.14))plot(x,y1);  %将向量x中每一个维度的值与对应的y在同一维度的值,即(0,sin(0)),(0.01,sin(0.01))...,(3.14,sin(3.14))这些点%在坐标系中标出,然后用折线连起来%由于x内的相邻两项的值都“挨得很近”,相差很小(即步长很小)%画出来的图形与真正的正弦函数“看不出区别”

如果计算机需要画出y1(x)和y2(x)的卷积积分,计算机就会试着计算上述代码段中向量y1和向量y2的卷积和,就是拿出下面两个多项式,即(3)和(4)相乘,得到一个新的多项式,再取其各项系数作为结果向量,再按照上面注释提到的方法画图。

在这里可以推广一下:

任何一个连续的函数图像,在其定义域内都可以看作是步长无限趋于0的向量x作为自变量“一个个地带入函数y=f(x)”得到的
y的值所构成的(x,y)的点连成的。这些y也能构成向量。如果y的定义域是的话,x利用matlab中的写法就是

把f(x)写成类似于(3)的多项式就是:

卷积积分就是类似于式子(5)的两个多项式相乘,再把得到的多项式的各项系数提取出来,即

让高中生理解卷积——从多项式乘法开始相关推荐

  1. 解题报告(二)多项式问题(多项式乘法及其各种运算)(ACM/ OI)超高质量题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  2. 【数字信号处理】卷积编程实现 ( Matlab 卷积和多项式乘法 conv 函数 | 使用 matlab 代码求卷积并绘图 )

    文章目录 一.Matlab 卷积和多项式乘法 conv 函数 二.使用 matlab 代码求卷积并绘图 一.Matlab 卷积和多项式乘法 conv 函数 Matlab 文档地址 : https:// ...

  3. 求幂运算、多项式乘法及Horner法则的应用

    一,两种不同的求幂运算 求解x^n(x 的 n 次方) ①使用递归,代码如下: 1 private static long pow(int x, int n){ 2 if(n == 0) 3 retu ...

  4. PAT甲级1009 Product of Polynomials:[C++题解]多项式乘法、高精度乘法

    文章目录 题目分析 题目链接 题目分析 多项用一个数组来表示,数组下标表示多项式的次幂,存的内容表示多项式的系数. 然后用两重循环来计算多项式的乘法: for i : 第二个式子for j:第一个式子 ...

  5. 洛谷 - P3803 【模板】多项式乘法(FFT/NTT)

    题目链接:点击查看 题目大意:给出两个多项式 F( x ) 和 G( x ) 的系数,求其卷积后的系数 题目分析:存一个FFT的模板,原理学不明白,数论和dp都扔给队友了,当个快乐的fw 代码: // ...

  6. P4239 任意模数多项式乘法逆(多项式/ MTT)

    P4239 任意模数多项式乘法逆 这个题目简直就是毒瘤,不过还好我们可以使用vector封装要不然真的没法看,现在我们就会用vector封装MTT了,然后有一个代码细节就是这里的求逆还是在模意义下的, ...

  7. P4245 【模板】任意模数多项式乘法

    P4245 [模板]任意模数多项式乘法 https://www.luogu.com.cn/blog/AzusaCat/solution-p4245 首先这类问题指的是对于一个非NTT模数,我们如何计算 ...

  8. P4245 【模板】任意模数多项式乘法(NTT)

    题意: P4245 [模板]任意模数多项式乘法 题解: NTT模板,记录一下 代码: #include <bits/stdc++.h>using namespace std;#define ...

  9. P3803 【模板】多项式乘法(FFT)

    P3803 [模板]多项式乘法(FFT) 题目描述 给定一个 n 次多项式 F(x),和一个 m 次多项式 G(x). 请求出 F(x)和 G(x)的卷积. 从低到高输出F(x)*G(x)的系数 另一 ...

最新文章

  1. 向sqlce 里插入和取出一个Image
  2. 为什么泪水充满了我的眼眶,那是一种从未有过的感伤,
  3. No error message available, result code: E_FAIL(0x80004005)
  4. 如何有效地进行代码 Review?
  5. Linux命令Find实例
  6. LVS + Keepalived 双机热备+DR模式
  7. java.net.SocketException: Software caused connection abort: socket write erro
  8. 微信公众号开发获取code
  9. 据说这里有一件数据库保密检查神器……
  10. python自制网课答案查找器
  11. 通过Windows制作安装U盘安装Chromium os
  12. PL7501C原厂双节锂电池充电管理芯片
  13. KingbaseES 表空间加密-透明加密
  14. 527. Word Abbreviation
  15. 木秀于林,不惧风摧「博客出书的故事④」
  16. 乐行学院Redis5学习教程 第一章redis5的安装
  17. 阿里云服务器被挖矿的解决方法
  18. MTTF,MTBF,MTRF的概念
  19. 【文本分类】文本分类流程及算法原理
  20. 提升网站黏着度的技术手段其实跟“搞对象”完全一样,也有“潜规则”

热门文章

  1. 动规日常训练题解 难度普及+
  2. 插入100万条有随机姓名,随机电话等字段的数据最快需要几秒?
  3. 带你认识最基本的网页和网站,什么是静态网页和动态网页,有什么区别?
  4. 珍珠项链 (20 分)
  5. 【小白必胜-服务器】全网最简单Linux建站环境新手安装步骤
  6. 量化投资之风险指标分析(alpha、beta、sharpe等)
  7. Python入门100题之002:个税计算
  8. uni-app实战之社区交友APP(3)Vue.js和uni-app基础
  9. margin与padding
  10. 分享UG模具设计技巧