コンピュータ全般

 

UNIX/LINUX

大規模な数値計算やデータ解析を行う場合には、メモリや演算処理速度の大きなコンピュータ(ワークステーション、サーバ、スーパーコンピュータ)を利用します。実際に使用するときには自分の端末パソコンからこれらのコンピュータにアクセスします。こうしたコンピュータはOS(身近な例ですとWindowsに相当するもの)としてUNIX/LINUXを採用しているものがほとんどです。したがって、大規模計算を必要とする研究を始めるには、まずUNIX/LINUXについてその基礎を学ぶ必要があります。ちなみに、MacOSUNIXです。多くの書籍が利用可能ですので、自分に合いそうな一冊を選ぶとよいと思います。

 

例)

坂本文 (1996): たのしいUNIX UNIXへの招待—, アスキー出版局, 350pp.

坂本文 (1997): 続・たのしいUNIX —シェルへの招待—, アスキー出版局, 296pp.

その他web上のチュートリアル

 

コマンドとシェルスクリプト

上述のUNIX/LINUXではコマンドを打つことによってさまざまな処理を行うことができます。大量データに対して複雑な処理を繰り返す場合などには、これらのコマンドをひとまとめに記載したファイル(スクリプト)を作成してそれを実行するのが便利です。必須のスキルですので早い段階でこれを学ぶ必要があります。解析速度の向上だけでなく、ミスの減少、そして処理記録が残るという大きな利点があります。他の研究者と便利なスクリプト資源を共有したり、後日間違いをチェックしたりでき、研究の幅が広がるとともに効率もよくなります。汎用性の高いBourne-Shell系(shbash)またはC-Shell系(cshtcsh)を身につけましょう。ちなみに私はtcshを常用しています。

 

その他のスクリプト言語

その他の便利なスクリプト言語として、PythonPerlRubyなどが挙げられます。シェルスクリプトの達人には必要ないのかもしれませんが、私はPythonを常用しています(かつてPerlを使用していたこともありました)。Pythontcshスクリプトを作成し、これを実行することによってデータ処理を行うことが多いです。余裕がある場合には、これらの言語のどれかに挑戦してみるのもよいと思います。

 

パワフルな有料ソフト

Matlabhttp://www.mathworks.co.jp/

IDLhttp://www.exelisvis.com/language/en-US/ProductsServices/IDL.aspx

 

便利な無料ソフト

Rhttp://www.r-project.org/

Octavehttp://www.gnu.org/software/octave/