$$ (1+ω) y [n] = x [n] +ωy [n-1] $$
, где y [n] обозначает выход, а x [n] обозначает вход. образцов, ω 5: < /p>
Код: Выделить всё
import scipy.signal as signal
import matplotlib.pyplot as plt
b = [1]
a = [6, -5]
#loading origin-CH1 0.txt
x = []
with open("origin'-CH1 20.txt", 'r') as f:
for line in f:
x.append(float(line))
y = signal.filtfilt(b=b, a=a, x=x,method='gust')
#writing output to origin-CH1 0.txt
with open("origin'--CH1 0.txt", 'w') as f:
for i in y:
f.write(str(i) + '\n')
#plot
plt.plot(y, label="After Filter", color='red')
plt.plot(x, label="Before Filter", color='blue',alpha=0.5)
plt.show()
< /p>
Вы можете видеть, что существует значительная тенденция к начальной позиции фильтрованных данных, которые есть странно.
Я пытаюсь снизить значение ω, но это кажется не совсем полезным.
Почему это произойдет? /> Origin'-ch1 20.txt < /p>
Подробнее здесь: https://stackoverflow.com/questions/794 ... -or-bounda