Return to コンピュータ演習

Python でコンピュータ演習(旧版アーカイブ)

Maxima でコンピュータ演習」の内容を Python で。

SymPy は Python で記号計算(symbolic computation)・計算機代数(computer algebra)・(以前は数式処理などとも呼ばれた)を行うライブラリです。ここでは,計算機代数システム Maxima を使ったページ「Maxima でコンピュータ演習」の内容を SymPy を使ってやってみます。

また,Matplotlib を使ったアニメーション作成についても解説します。

SymPy で微分積分・方程式の解

Python および SymPy の基本から,関数,微分・積分,方程式の解まで。

SymPy で常微分方程式

「理工系の数学C」の「SymPy で常微分方程式」の抜粋バージョン。詳細は以下のページをご覧ください。

  • 理工系の数学C:SymPy で常微分方程式

SymPy Plotting Backends でグラフ作成:Plot functions 編

ここでは,SymPy Plotting Backends (SPB) の Plot functions を使った 2次元グラフ作成について説明します。

Python の SymPy 自身にもグラフ作成機能はありますが,SymPy Plotting Backends (SPB) は,言わばその機能拡張版に相当します。 SPB によるグラフ作成には,The Graphics Module による方法と,Plot functions による方法の2種類の方法があります。ドキュメントによると,The Graphics Module のほうがより直感的で簡単であり,異なったグラフを重ねて表示させることも簡単にできるのでオススメのようです。Plot functions による方法は今後はアップデートされないようです。

以下のページの内容とほぼ同等。

  • Python によるグラフ作成 SymPy Plotting Backends 編

Matplotlib でグラフ作成:plt 編

Python の Matplotlib によるグラフ作成には,plt.*** というコマンドを使った plt (pyplot) 流(pyplot インターフェースとも)と,ax.*** というコマンドを使った ax 流(オブジェクト指向インターフェースとも)の2つの方法があります。ここでは,plt.*** のみを使ってグラフを作成する方法についてまとめておきます。

Matplotlib でアニメーション

補足:授業でやってみて気づいたのですが,以下のようにして作成した mp4 ファイルは,Windows の Edge では見ることができないようです。同じ Windows でも Firefox なら見れますし,Mac の Edge でも大丈夫です。(Mac の Firefox で準備しているので,気づかなかった。)なので,Windows で以下の実習をする場合は,互換性維持のため,

ani.save(“anim01.mp4”)

ではなく,

ani.save(“anim01.gif”)

などとして保存する必要があるだろう。以下を参照:

  • Matplotlib で作成した mp4 ファイルは Windows の Edge では見ることができない