scipy.signal.

боде#

scipy.signal.боде(система, w=None, n=100)[источник]#

Вычислить данные амплитуды и фазы Боде для системы непрерывного времени.

Параметры:
системаэкземпляр класса LTI или кортеж, описывающий систему.

Следующее дает количество элементов в кортеже и их интерпретацию:

  • 1 (экземпляр lti)

  • 2 (num, den)

  • 'norm'

  • 4 (A, B, C, D)

warray_like, необязательный

Массив частот (в рад/с). Данные амплитуды и фазы рассчитываются для каждого значения в этом массиве. Если не задан, будет рассчитан разумный набор.

nint, необязательный

Количество частотных точек для вычисления, если w не задан. n частоты логарифмически распределены в интервале, выбранном так, чтобы включить влияние полюсов и нулей системы.

Возвращает:
w1D ndarray

Массив частот [рад/с]

mag1D ndarray

Массив амплитуд [дБ]

фаза1D ndarray

Фазовый массив [град]

Примечания

Если (num, den) передано для system, коэффициенты как для числителя, так и для знаменателя должны быть указаны в порядке убывания степени (например, s^2 + 3s + 5 будет представлен как [1, 3, 5]).

Добавлено в версии 0.11.0.

Примеры

>>> from scipy import signal
>>> import matplotlib.pyplot as plt
>>> sys = signal.TransferFunction([1], [1, 1])
>>> w, mag, phase = signal.bode(sys)
>>> plt.figure()
>>> plt.semilogx(w, mag)    # Bode magnitude plot
>>> plt.figure()
>>> plt.semilogx(w, phase)  # Bode phase plot
>>> plt.show()
../../_images/scipy-signal-bode-1_00.png
../../_images/scipy-signal-bode-1_01.png