bode#
- scipy.signal.bode(system, w=None, n=100)[Quelle]#
Berechnet Bode-Größen- und Phasen-Daten eines Systems mit kontinuierlicher Zeit.
- Parameter:
- systemeine Instanz der LTI-Klasse oder ein Tupel, das das System beschreibt.
Das Folgende gibt die Anzahl der Elemente im Tupel und die Interpretation an.
1 (Instanz von
lti)2 (num, den)
3 (Nullstellen, Pole, Verstärkung)
4 (A, B, C, D)
- warray_like, optional
Array von Frequenzen (in rad/s). Für jeden Wert in diesem Array werden Betrags- und Phasendaten berechnet. Wenn nicht angegeben, wird ein angemessenes Set berechnet.
- nint, optional
Anzahl der Frequenzpunkte, die berechnet werden sollen, wenn w nicht angegeben ist. Die n Frequenzen sind logarithmisch in einem Intervall verteilt, das so gewählt wird, dass es den Einfluss der Pole und Nullstellen des Systems erfasst.
- Rückgabe:
- w1D ndarray
Frequenz-Array [rad/s]
- mag1D ndarray
Betrags-Array [dB]
- phase1D ndarray
Phasen-Array [deg]
Hinweise
Wenn (Zähler, Nenner) für
systemübergeben wird, sollten die Koeffizienten für Zähler und Nenner in absteigender Exponentenreihenfolge angegeben werden (z. B.s^2 + 3s + 5würde als[1, 3, 5]dargestellt werden).Hinzugefügt in Version 0.11.0.
Beispiele
>>> 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()