在計算機編程中,控制論是一個重要的概念。Python 作為一種廣泛使用的編程語言,也有許多方便使用的控制論庫,例如 SciPy 中的 signal 模塊。
# 導入必要的庫 import numpy as np from scipy import signal import matplotlib.pyplot as plt # 設定信號 N = 1000 t = np.linspace(0, 1, N, endpoint=False) x = np.sin(2 * np.pi * 10 * t) + np.sin(2 * np.pi * 20 * t) # 設定濾波器 b, a = signal.butter(4, 0.1, 'lowpass') # 進行濾波 y = signal.filtfilt(b, a, x) # 展示結果 fig, (ax1, ax2) = plt.subplots(2, 1, sharex=True) ax1.plot(t, x) ax1.set_title('Original signal') ax1.axis([0, 1, -2, 2]) ax2.plot(t, y) ax2.set_title('Filtered signal') ax2.axis([0, 1, -2, 2]) plt.tight_layout() plt.show()
上面的代碼演示了一個低通濾波的例子。首先設定了一個包含兩個正弦波的信號。然后使用signal.butter
函數生成了一個四階低通濾波器。最后使用signal.filtfilt
函數對信號進行濾波,得到了濾波后的信號。最后使用 Matplotlib 來展示原始信號和濾波后的結果。
通過 Python 提供的控制論庫,我們可以輕松實現許多控制論的應用,例如濾波、自適應控制、PID 控制等等,為計算機控制領域的研究者和開發者提供了強大的工具。
上一篇c json增刪改查
下一篇c json在線轉化