文档

转换

卷积和多项式乘法fi对象

句法

c = conv(a,b)
c = conv(a,b,'shape')

描述

c = conv(a,b)输出输入向量的卷积一种b,至少一个必须是fi目的。

c = conv(a,b,'shape')返回卷积的小节,如形状范围:

  • 满的- 返回完整的卷积。此选项是默认形状。

  • 相同的- 返回与输入向量相同的卷积的中心部分一种

  • 有效的- 仅返回该函数计算的卷积的那些部分,而无需零填充边缘。在这种情况下,输出向量的长度Cmax(长度(a)-max(0,长度(b)-1),0)

fimath与输入相关联的属性确定the数字型输出的属性fi目的C

  • 如果是一种或者b有一个本地fimath目的,转换使用它fimath对象计算中间数量并确定数字型属性C

  • 如果两者都没有一种也不b有一个附着的fimath,转换使用默认的fimath计算中间数量并确定数字型属性C

如果两个输入是内置数据类型,则转换将其投入到fi对象在执行卷积操作之前使用最佳精确规则。

输出fi目的C始终使用默认的fimath。

参考MATLAB®转换参考页面有关卷积算法的更多信息。

例子

下面的示例说明了用16-TAP FIR滤波器的22个样本序列的卷积。

  • X是一个签名值的22个样本序列,单词长度为16位,分数长度为15位。

  • H是16个水龙头滤清器过滤器。

u =(pi/4)*[1 1 1 -1 -1 -1 -1 1 -1 -1 -1 1 -1];x = fi(kron(u,[1 1]));h = firls(15,[0 .1 .2 .5]*2,[1 1 0 0]);

因为X是一个fi对象,您不需要铸造H进入fi在执行卷积操作之前对象。这转换功能使用最佳精确缩放来做到这一点。

最后,使用转换卷积两个向量的功能:

y = conv(x,h);

该操作导致签名fi目的y单词长度为36位,分数长度为31位。默认值fimath与输入相关联的属性确定the数字型输出。输出没有本地fimath

扩展功能

也可以看看

在R2009b中引入

这个话题有帮助吗?