Octaveによる数値計算


数値計算の歴史はコンピュータの歴史と重なる。数値計算のための ソフトウエアはこの間ずっと開発され続けてきた。したがって、 よいソフトウエアの蓄積がある。理工系の学生が実際的なプログラミングを 覚えるためには、このようなプロの作った道具を利用して数値計算の勘を 身につけるところからスタートするのがよいであろう。その後、FORTRAN、 C、C++などにより、学習のためのプログラムを作るのがよい。 プロの作ったオープンソースの数値計算言語として勧められるのが Octaveである。Octaveは数値計算の知恵が凝縮しているともいえるLAPACK などの数値計算ライブラリを基にして作られている数値計算用の インタープリタ言語で、実に簡単かつ高速に数値計算結果が得られる。

Octaveのインストール


octaveは例えば Vine Linux1.1のVine PlusなどにRPMパッケージとして 収録されている。Debian Linuxのdeb形式パッケージやFree BSDのportsパッケージもある。 ソースからインストールすることも容易であるが、この点については 後に説明することにしよう。
$ octave
とktermなどから入力すると、Octaveが起動して
octave:1>
とインタプリタが起動する。ctaveのオンラインマニュアルは、このコマンドラインから
octave:1> help -i
とする。 Octaveを終了するためには
octave:10> exit
 とすればよい。

線形方程式の解法


行列方程式を解いてみよう。
$ octave
でOctaveを起動する。
octave:1> a=[2 3;5 6]
と入力すると、係数行列が入力される。一般にOctaveではコマンドの最後に ;をつけると、実行結果が表示されない。今の場合は;をつけていないので
a =
2 3
5 6
と入力結果が表示される。
octave:2> b=[3;5]
とすると右辺ベクトルが入力される。
b =
3
5 と表示される。これで、係数行列とベクトルが入力されたので、後はOctaveに 解かせるだけである。
octave:3> a\b
とすると解が計算されて
ans =
-1.0000
1.6667
と出力される。


戻る