Table of Contents
部分的な差動式(PDE)は、熱伝達、波伝搬、流体力学などのさまざまな物理現象をモデル化する基礎的です。 NumPyやSciPyなどのPythonライブラリを使用して、これらの式を数値的に解決するプロセスを簡素化します。 この記事では、これらのツールを使用して、PDEを解決するためのステップバイステップのアプローチを提供します。
問題の設定
PDEとドメインを定義して始めます。例えば、一次元熱式を考慮する:
] ⁇ / ⁇ t = α ⁇ 2u/ ⁇ 2
熱拡散αなどの初期条件、境界条件、パラメータを指定します。
ドメインの削除
空間ドメインをNumPy配列を使用して、離散点に分割します。例えば、ポイントのグリッドを作成します。
np[ と同じくらいの数値をインポートする
x = np.linspace(0, 1, 100)[]]
数値安定性と精度を制御する時間ステップと総シミュレーション時間を設定します。
数値メソッドの実装
有限差方式を使用して、誘導体を近似させます。熱式のために、明示的な方式は各点の温度を更新します。
[]u new = u + r * (u[i+1] - 2*u[i] + u[i-1])]]
[r]]は]α * dt / dx2として計算された安定性パラメータです。
シミュレーションの実行
毎回、ソリューションの配列を繰り返して、各反復で更新します。NumPy の操作で効率性を向上します。
]n のレンジ(ステップ):[
.nbsp; u[1:-1] = u[1:-1] + r * (u[2:] - 2*u[1:-1] + u[:-2])
各更新後に境界条件を適用して、問題の制約を維持します。
結果の可視化
Matplotlib のようなライブラリを使用して、温度分布を時間をかけて視覚化します。 初期状態と最終状態をプロットして、拡散プロセスを観察します。
事例コード:
[] インポート マット lib.pyplot を plt として]
plt.plot(x, u)]