Я верю, что Гайр прав.Из моего опыта использования скриптов-клонов Python Matlab они работают хорошо, за исключением плохой документации.Да, Rp и Rs - максимально допустимая пульсация в полосе пропускания и полосе пропускания соответственно.Wn - это цифровая частота среза, или граничная частота.
Итак ... вот некоторый код о том, как использовать его для репликации фильтра, который математика использует в качестве примера:
import pylab
import scipy
import scipy.signal
[b,a] = scipy.signal.ellip(6,3,50,300.0/500.0);
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
plt.title('Digital filter frequency response')
ax1 = fig.add_subplot(111)
h,w = scipy.signal.freqz(b, a)
plt.semilogy(h, np.abs(w), 'b')
plt.semilogy(h, abs(w), 'b')
plt.ylabel('Amplitude (dB)', color='b')
plt.xlabel('Frequency (rad/sample)')
plt.grid()
plt.legend()
ax2 = ax1.twinx()
angles = np.unwrap(np.angle(w))
plt.plot(h, angles, 'g')
plt.ylabel('Angle (radians)', color='g')
plt.show()
извините, формат такой хромой, но он работает!Вы заметите, что шкала частот отличается от шоу Matlab, это просто косметика.Вот что вы получаете: ![Elliptical Filter with AWESOME Cutoff](https://i.stack.imgur.com/Y95qf.png)