「Python」を活用するには − インストール −
プログラミングを進めるためにも、日常で使用しているパソコンにアプリケーションをインストールしたり、使用環境を整えないとなりません。無償で様々なパッケージが提供されていますが、種類がありすぎてどれをインストールして良いのか迷ってしまいます。
パッケージにもWindows、Linux、macOS用と分かれていますが、使用するパソコンによって決まります。日本語の環境にも対応していますが、科学技術計算などを行うためには、関連するドキュメントを英語で読めたほうが良いです。技術者ならば継続して英語も勉強することをお勧めします。
私は長年Mac派なので日頃からMacBookを使用しており、macOS版をインストールしています。最初は標準的なPython 3系の統合開発環境(IDLEと略記:Integrated DeveLopment Environment)をインストールしました。科学技術計算(特に行列計算)を処理できるようにするためには、サブライプラリであるNumPyをインストールしなければなりません。
NumPyのインストールやその後の保守管理が面倒にありますが、NumPy等が含まれている汎用的パッケージが配布されていました。IPython(Interactive Python)やSpyder(The Scientific PYthon Development EnviRonment;略語に強引にアルファベットを割り当てています)があり、私はSpyderを使用しています。
最初はSpyderのパッケージをインストールしましたが、Macのセキュリティ認証のために起動できませんでした。最終的には、Spyderも含む様々なPythonパッケージが使用できるAnacodaを導入しました。個人で使用する場合には、無償版であるIndividual Editionをダウンロードすることになります。PythonもAnacodaも蛇の名前でもあります。
Anacodaを起動するとANACONDA NAVIGATORの画面が表示され、蜘蛛の巣アイコンのSpyderも選択できます。IPythonについてもQt ConsoleやJupyter Notebookに含まれているので使用できます。
Spyderを選択して立ち上げます(Launch)。ようやくPythonで科学技術計算の基礎ライブラリであるNumPyが使用できます。NumPyの活用によって、各種の数学関数が使用でき、行列計算も高速で処理できます。
行列計算で逆行列を求める場合にも、NumPyライブラリーをインポートして、行列Aを定義し、行列BをAの逆行列を計算させ、行列AとBの積を取ると単位行列となっていることを確認できます。Pythonでは、C言語のように行列変数の厳密な定義も必要ないし、np.dot関数を使用すれば行列の積計算を行ってくれます。
In [1]: import numpy as np
In [2]: A = [[ 1, 0, 1],[-2, 1, 0],[ 2,-1, 1]]
In [3]: B = np.linalg.inv(A)
In [4]: np.dot(A,B)
Out[4]:
array([[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])
参考文献