首先我们要知道volterra级数,它是volterra滤波器的核心函数。就是下面这个式子
![80c18bcd7d114d90ece1640d790f4604.png](https://i-blog.csdnimg.cn/blog_migrate/3784d2fb5bfb39f6a6affc123e2bb44f.png)
M表示volterra的最大阶数
L1,L2,…Lm表示不同阶数的存储长度
w表示volterra的内核系数
第一次看到这个公式也是一脸懵比??然后我去网上搜了些资料,发现它和幂级数是相关的,下面是我自己的一点理解:
首先幂级数的表达式如下:
![b527c034b6311bd70d0fc165cd8daf03.png](https://i-blog.csdnimg.cn/blog_migrate/e029a5a9d709d8f0042d1506abb39122.jpeg)
我们很容易知道它的展开式
![b9cbd335942f169d1a80f1283fb62add.png](https://i-blog.csdnimg.cn/blog_migrate/e3e52e2bae4cbc5291fbc818e015654b.png)
通过与volterra级数比较,我们可以看到幂级数考虑了输入与输出之间的非线性关系,但是没有考虑记忆效应,也就是历史输入对当前系统响应的影响。所以在幂函数的基础上,引入时延,即为volterra级数。
对于通信系统来说,三阶volterra滤波器足以均衡各种线性和非线性损伤,下面是三阶volterra函数展开式
![fcae86cc2c7fd4c7030449bd15205333.png](https://i-blog.csdnimg.cn/blog_migrate/9d1aae3374f82b4f474eaf008c9149d2.jpeg)
从上面式子可以看出,每增加一阶,volterra的内核数呈指数级增加,会给计算带来很大的复杂度,所以要根据实际的系统合理的选择阶数和不同阶的记忆长度。