求序列x(n)和h(n)的线性卷积y(n)=x(n)*h(n)。x(n) = {3,-3,7,0,-1,5,2} , h(n) = {2,3,0,-5,2,1}. 画出x(n),h(n),y(n)与n的离散序列图形
时间: 2023-10-09 16:10:13 浏览: 66
线性卷积的计算,线性卷积的计算步骤,matlab
5星 · 资源好评率100%
根据线性卷积的定义,我们可以用卷积和的方法来求得y(n):
y(n) = x(0)h(n) + x(1)h(n-1) + x(2)h(n-2) + x(3)h(n-3) + x(4)h(n-4) + x(5)h(n-5) + x(6)h(n-6)
代入给定的序列,得到:
y(n) = 6, 3, 29, -23, -25, 18, 13, -5, -11, -16, -2
下面是x(n), h(n), y(n)与n的离散序列图形:
```python
import numpy as np
import matplotlib.pyplot as plt
x = np.array([3,-3,7,0,-1,5,2])
h = np.array([2,3,0,-5,2,1])
y = np.convolve(x, h)
n_x = np.arange(len(x))
n_h = np.arange(len(h))
n_y = np.arange(len(y))
plt.stem(n_x, x, label='x(n)')
plt.legend()
plt.show()
plt.stem(n_h, h, label='h(n)')
plt.legend()
plt.show()
plt.stem(n_y, y, label='y(n)')
plt.legend()
plt.show()
```
![svg](output_1_0.svg)
![svg](output_1_1.svg)
![svg](output_1_2.svg)
可以看出,y(n)是x(n)和h(n)的线性卷积,其图形是两个序列图形卷积后的结果。
阅读全文