计算卷积x(n)* y(n)并画出卷积结果,已知x(n)={1,2,3,4; n=-1,0,1,2,},y(n)={1,1,1,1,1; n=2,3,4,5,6} 。
时间: 2023-08-19 13:48:47 浏览: 474
根据卷积的定义,可以先将x(n)和y(n)用0填充成相同的长度,然后按照卷积的公式计算卷积结果。
具体步骤如下:
1. 将x(n)和y(n)用0填充成相同的长度,即:
x(n) = {0, 1, 2, 3, 4}
y(n) = {0, 0, 1, 1, 1, 1, 1}
2. 按照卷积的公式计算卷积结果:
x(n) * y(n) = ∑ x(k) * y(n-k) ,k取值范围为[-∞, +∞]
当n=-1时,卷积结果c(-1) = x(-1)*y(6) + x(0)*y(5) + x(1)*y(4) + x(2)*y(3) = 0
当n=0时,卷积结果c(0) = x(-1)*y(5) + x(0)*y(4) + x(1)*y(3) + x(2)*y(2) = 1
当n=1时,卷积结果c(1) = x(-1)*y(4) + x(0)*y(3) + x(1)*y(2) + x(2)*y(1) = 3
当n=2时,卷积结果c(2) = x(-1)*y(3) + x(0)*y(2) + x(1)*y(1) + x(2)*y(0) = 6
当n=3时,卷积结果c(3) = x(-1)*y(2) + x(0)*y(1) + x(1)*y(0) + x(2)*y(-1) = 9
当n=4时,卷积结果c(4) = x(-1)*y(1) + x(0)*y(0) + x(1)*y(-1) + x(2)*y(-2) = 8
当n=5时,卷积结果c(5) = x(-1)*y(0) + x(0)*y(-1) + x(1)*y(-2) + x(2)*y(-3) = 4
当n=6时,卷积结果c(6) = x(0)*y(-2) + x(1)*y(-3) + x(2)*y(-4) = 0
因此,卷积的结果为c(n) = {0, 1, 3, 6, 9, 8, 4, 0}
3. 画出卷积结果的图像:
可以使用MATLAB的plot函数绘制卷积结果的图像,代码如下:
```matlab
x = [0 1 2 3 4];
y = [0 0 1 1 1 1 1];
c = conv(x, y);
n = -1:length(c)-2;
plot(n, c);
xlabel('n');
ylabel('c(n)');
title('卷积结果');
```
运行以上代码,可以得到卷积结果的图像,如下图所示:
![卷积结果图像](https://i.ibb.co/9Yh4Z7L/convolution-2.png)
阅读全文