Pythonは、数学的な計算に非常に役立つ言語です。ラプラス変換は、信号処理や制御理論などの分野で広く使用される変換です。Pythonを使用して、ラプラス変換を簡単に計算する方法を紹介します。
SymPyを使用してラプラス変換を計算する
SymPyは、Pythonの数式処理ライブラリの1つです。SymPyを使用すると、簡単に数学的な計算を行うことができます。以下は、SymPyを使用してラプラス変換を計算する例です。
from sympy.integrals.transforms import laplace_transform
from sympy.abc import t, s
f = t**2
laplace_transform(f, t, s)
出力結果:
(2/s**3, 0, True)
NumPyとSciPyを使用して逆ラプラス変換を計算する
NumPyとSciPyは、Pythonの科学計算ライブラリです。これらのライブラリを使用すると、逆ラプラス変換を簡単に計算することができます。以下は、NumPyとSciPyを使用して逆ラプラス変換を計算する例です。
import numpy as np
from scipy.integrate import quad
from sympy import inverse_laplace_transform, exp
F = lambda s: 1/(s**2 + 1)
f = lambda t: np.real(inverse_laplace_transform(F, s, t))
t = np.linspace(0, 10, 1000)
y = np.zeros_like(t)
for i in range(len(t)):
y[i] = quad(lambda x: f(x)*exp(x*t[i]), -10, 10)[0]
import matplotlib.pyplot as plt
plt.plot(t, y)
plt.show()
このコードは、F(s) = 1 / (s^2 + 1)の逆ラプラス変換を計算して、そのグラフをプロットします。
以上が、Pythonでラプラス変換を計算する方法の例です。