转换
卷积和多项式乘法fi
对象
句法
c = conv(a,b)
c = conv(a,b,'shape')
描述
c = conv(a,b)
输出输入向量的卷积一种
和b
,至少一个必须是fi
目的。
c = conv(a,b,'shape')
返回卷积的小节,如形状
范围:
满的
- 返回完整的卷积。此选项是默认形状。相同的
- 返回与输入向量相同的卷积的中心部分一种
。有效的
- 仅返回该函数计算的卷积的那些部分,而无需零填充边缘。在这种情况下,输出向量的长度C
是max(长度(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中引入
这个话题有帮助吗?