Matlab 中的词干函数



我正在尝试绘制一个离散卷积:

n = 0:25;
x = 2 * (heaviside(n+2)-heaviside(n-12));
h = 0.9.^n .* (heaviside(n-2)-heaviside(n-13));
y = conv(x, h);
stem(n, y)

但是我遇到了一个问题,因为 n 的长度是 26,y 的长度是 51,但我想向图显示从 n = 0 到 n = 25 的卷积。如何修改此代码以获得此类结果?

如果您阅读 conv 函数的文档,您将了解到它有第三个参数:一个字符串,告诉您输出应该有多大。

y = conv(x, h, 'same');

将创建一个与x大小相同的y(因此n(。

没有更深入的卷积知识或类似:

如果您只是想让向量的大小相似,请像这样跳过向量的元素:

stem(n, y(1:2:end)) % Take every other element of y

这至少会产生一些带有离散点的曲线。

或者,将n长度设置为两倍:

stem(0:.5:25, y) % Double the amount of elements previously in n

最新更新