[matplotlib animation] 99. マグヌス効果を考慮した斜方投射のシミュレーション – FuncAnimationによる可視化

matplotlib

はじめに

マグヌス効果を考慮した斜方投射のシミュレーションについて説明します。空気抵抗とマグヌス効果の両方が作用する場合の物体の動きをmatplotlibのFuncAnimationを使って視覚的に表現する方法を紹介します。物理シミュレーションを通じて、回転するボールがどのように軌道を変えるかを理解することができます。

解説

モジュールのインポート

バージョン

データの生成

データは常微分方程式を解くことで生成します。詳細については下記記事で解説しています。

[SciPy] 14. solve_ivpを使った空気抵抗とマグヌス効果を考慮した斜方投射の常微分方程式解法
空気抵抗とマグヌス効果を考慮した投射運動の常微分方程式をSciPyのsolve_ivp関数を用いて解く方法を解説します。物理モデルの構築から数値解法の実装まで、実践的なコード例を交えて詳しく説明します。

アニメーションの設定

最初に表示する図の設定

p1からp4までのプロットをあらかじめ作成しておきます。

アニメーション関数の設定

set_dataメソッドを使用して各プロットに順次データを適用することで、滑らかなアニメーション効果を生成します。

アニメーションの表示

軌跡を表示しない版

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

参考

[SciPy] 14. solve_ivpを使った空気抵抗とマグヌス効果を考慮した斜方投射の常微分方程式解法
空気抵抗とマグヌス効果を考慮した投射運動の常微分方程式をSciPyのsolve_ivp関数を用いて解く方法を解説します。物理モデルの構築から数値解法の実装まで、実践的なコード例を交えて詳しく説明します。
solve_ivp — SciPy v1.16.1 Manual
http://ayapin-film.sakura.ne.jp/Gnuplot/Docs/samples

コメント