4月6日補足資料

Cygwin でプログラム
数値計算は計算プログラムを書いて行うわけですが、プログラムには様々な「言語」が
あるので、そのうちどれかを選択する必要があります。
プログラム言語には、人間が書いたプログラムを一度計算機用に翻訳したのち計算を実
行するものと、人間が書いたプログラムを計算機が読んでそのまま実行するものとがあり
ます(若干不正確な説明ですが)。前者を「システム言語」
、後者を「スクリプト言語」と
いいます。
システム言語には、FORTRAN や C、C++といったものが含まれます。これらの言語を
用いてプログラムを書く場合、一度、計算機が理解できるように翻訳する「コンパイル」
という手順が必要となります。コンパイルする機能を持つものを「コンパイラ」と呼び、
人間はコンパイラを使って自分の作ったプログラムをコンパイルする訳です。コンパイラ
は、「実行形式(ロードモジュール)
」と呼ばれる、計算機が理解できる形式のファイルを
作成してくれます。そして、この実行形式を動作させると計算が実行されます。ただし、
もしコンパイラが理解できないプログラムの書き方(文法のミス)をしていると、コンパ
イラが文句を言ってきます。この場合、実行形式は作成されません。このような場合には
その原因(「バグ」)を取り除かなければなりません。また、コンパイルがうまくいって実
行形式が生成されても、実行する段階で文句を言われることもあります。この場合でもバ
グ取りが必要です。最もタチの悪いのは、計算自体は行われるのですが、結果が期待した
ものにならない場合です。この場合のバグ取りが一番大変です。
一方、スクリプト言語には Python などがあります。スクリプト言語はプログラムをその
まま計算機が理解してくれるため、コンパイルが不要となります。スクリプト言語は使い
やすく、勉強しやすい、という利点がありますが、一般的に計算処理が遅いという問題が
あります(近年は解決しつつあるようです)。
まあ、とりあえず、Cygwin をインストールしてみましょう。
以下のサイトに Cygwin の使用方法などが掲載されていますので、アクセスして下さい。
http://www2.ktokai-u.ac.jp/~kfuji/cygwin/cygwin.htm
このサイトでは、Cygwin をインストールするため、以下のサイトにアクセスするよう、
指示されています。
www.cygwin.com
実際にこのページにアクセスすると、以下の画面が表示されます。上で示した Cygwin
の使用法サイトの画面とはちょっと異なっているので注意が必要です。
Cygwin のインストールを行うためには、上記画面の下にある「install it by running
setup-x86.exe (32-bit installation) or setup-x86_64.exe (64-bit installation)」の
「setup***.exe」のどちらかをクリックして下さい(皆さんの計算機が 32 ビットか 64 ビ
ットかで決まります。その判別方法はネットで検索して下さい)。あとは Cygwin の使用法
が書かれているサイトの指示通りに進めて下さい。ダウンロードサイトは日本のものが早
いのではないかと思います。
パッケージの選択では、使用法サイトに記載されているように、
「Devel」の「gcc:fortran」
「gcc:C++」をインストールするとともに、Python、Perl も使えるようにするため、
「Python」
「Perl」もインストールして下さい。
インストールにはそれなりに時間がかかるようです(私の場合は 20 分くらい)。
インストールが終わると、デスクトップ上に「Cygwin Terminal」という名前のアイコン
ができています。ダブルクリックして起動することを確認して下さい。
起動すると、俗に言う「端末」
「ターミナル」の画面がでてきます。ここからは UNIX の
基本的な知識が必要となりますので、分からない人は自分で頑張って勉強して下さい(例
えば、以下が参考になります:http://www.cc.kyoto-su.ac.jp/~hirai/text/unixcommand.html)
なお、端末上の位置は、インストールしたパソコンの「OS(C:)/Cygwin/home/」ディレク
トリに対応します。つまり、プログラムをテキストエディタ(メモ帳とか)で作成し、こ
のディレクトリ上に保存すれば、端末上で操作できるので、UNIX を知らなくても対応でき
ます。
さて、今回は Python でプログラミングをするので、Python がしっかりインストールさ
れているか確認しましょう。
Cygwin の画面上で「python」と打ち込んでみて下さい。
以下のように python のモードになっているようならば、正常にインストールされたこと
になります。
さて、Python ですが、以下のページが参考になるので、勉強してみて下さい。
http://www.python-izm.com/
また、Python を使うにあたっての注意点を、以下にいくつか示しておきます。
・Python はインデントでのブロック構造となっています。解説のホームページにおけるプ
ログラムでただの空白に見えるところも、TAB キーでインデントの扱いをする必要があり
ます。
・配列は「リスト」を利用することになるでしょう。
データの取り出し:http://d.hatena.ne.jp/yumimue/20071205/1196839438
多次元のデータ:http://atkonn.blogspot.jp/2008/01/python7.html
Numpy の Array(推奨)
:http://rest-term.com/archives/2999/
・ループ(for 文)では range 関数を利用するのが一般的のようです:
http://python.keicode.com/lang/control-flow-loop-for-while.php