数字信号处理方面的python代码太少。鉴于python语言的流行,以及matlab对中国的不友好,准备将数字信号处理(陈后金老师版本)里的matlab代码全部python化。
'''
x[k] = K*a^k*u[k]
'''
import matplotlib.pyplot as plt
import numpy as np
a = float(input("a="))
K = float(input("K="))
N = float(input("N="))
k = range(0,int(N),1)
x = []
for i in range(len(k)):
tmp = K*np.power(a,k[i])
x.append(tmp)
plt.stem(k,x)
plt.xlabel("Time")
plt.ylabel("Amplitude")
plt.show()
'''
计算两个序列的卷积
'''
import matplotlib.pyplot as plt
import math
import numpy as np
x = [-0.5, 0, 0.5, 1]
kx = [-1,0,1,2]
h = [1,1,1]
kh = [-2,-1,0]
y = np.convolve(x