*GNU Octave [#uc94f9d4]
#contets
#br

**Octaveって? [#b48be1bd]
OctaveはMatlabと互換性のある数値解析ソフトである。~
学生諸君にはうれしい あの計算や あれの計算が一瞬でできてしまう。~
レポートをoctaveでやりだすと止められないだろう。~
Matlabとの違いは、オープンソースであることと、Matlabより若干記述が楽なところ。~
シェルスクリプトで言うとB-ShellとZ-Shellの違いみたいな。~
~
つかプログラミング言語じゃないよな・・・まあいいか
**導入 [#geb88e08]
***Windows [#da8d9bea]

***Unix系 [#k516fb8c]
大抵のディストリはパッケージ配ってると思うのでそれぞれ入れてください。~
ソースからコンパイルする時もそんなに依存関係はありません。~
~
プロットにgnuplot-x11を使うので入れておきましょう。~
最新バージョンは2.9以降かな

**使ってみようh [#x86c288e]
端末でoctaveと打つと

 octave:1>

こんなかんじにでるとおもう。ので1+1などと入れてみよう

 octave:1> 1+1
 ans =  2

と言った感じに単純に計算をしてくれる。 他にも四則演算もろもろ括弧,二乗やsinなども使える。

 octave:1> (1+2)*3 - 2*2
 ans =  5
 octave:2> sin(2.3)
 ans =  0.74571
 octave:3> 4^2                    # ^はXORじゃないので注意!
 ans = 16

**変数 [#o93a201b]
変数ももちろん使える。

 octave:1> a=3
 a =  3
 octave:2> b=1-2
 b = -1
 octave:3> a-b
 ans =  4

定義済み変数ももちろんある `pi`などだ

 octave:1> pi
 ans =  3.1416

C言語で言うdefineではないので、書き換えることがもちろん可能

 octave:1> pi * 2
 ans =  6.2832
 octave:2> pi = 1
 pi =  1
 octave:3> pi * 2
 ans =  2

**行列 [#dcee62d5]
ここまでなら「他の電卓とかわらないし、bcこまんどで事足りるだろ常考……遅いし。」~
と言われるだろうが、ここからが本領発揮。octaveでは行列演算が出きるのだ。

 octave:1> [1 2 3]                    # [ ]にスペースを入れて記述
 ans =
    1   2   3
 octave:2> [1 2 3; 4 5 6; 7 8 9]    # ; を入れて次の行へ
 ans =
    1   2   3
    4   5   6
    7   8   9

演算は普通に演算子を書くだけ、変数にももちろん代入できる。
 octave:3> [1 2] + [3 4]
 ans =
    4   6
 
 octave:4> a = [1 2; 2 1] * [1 0; 0 1]
 a =
    1   2
    2   1
以下、応用例
 octave:5> [[1 2]; [3 4]; [5 6]]   # 二重に行列を書く。
 ans =
    1   2
    3   4
    5   6
 
 octave:6> a=[1 2; 3 4], b = [a [5;6]] #ちょいとややこしく
 a =
    1   2
    3   4
 b =
    1   2   5
    3   4   6
 #[[  a  ]    ] ←こんなかんじ
 
 octave:7> sin( [pi*0/2 pi*1/2; pi*3/2 pi*4/2])
 ans =
    0.00000   1.00000               # 要素ごとに関数をかける。
   -1.00000   0.00000

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS