トップページ -> プログラミング -> Octave の活用 -> Windows に Octave バージョン 3.2.4 と octave-forge をインストール(Windows 上の Cygwin にインストール)
[サイトマップへ], [サイト内検索へ]

Windows に Octave バージョン 3.2.4 と octave-forge をインストール(Windows 上の Cygwin にインストール)

Octave とは, MATLAB 互換の数値解析ソフトウエアです.

この Web ページでは,Octave バージョン 3 の Windows 版(Cygwin パッケージ)をインストール,テスト実行する手順を図解で説明する.2010/07 時点での Cygwin パッケージの Octave のバージョンは 3.2.4 です.

貴重な情報源: http://www40.atwiki.jp/gnuoctavejp (Octave for Windows メモの著者様による Wiki)

<要点>

Cygwin のパッケージからインストールしますので,

という場合に役立つでしょう.

■ このページで説明してること

【本 Web サイト内の関連 Web ページへのリンク】

Octave のオンラインマニュアル


前準備

前もってインストールしておくべきソフトウエア

  1. Cygwin の Web ページの記述に従って,Cygwin のセットアッププログラム setup.exe を入手しておくこと.

    前もって調べておく事項


    インストール手順

    Cygwinのセットアッププログラム setup.exe を使って,Octave をインストールする.簡単にインストールできる.

    ※ ついでに,gnuplot もインストールする.

    1. セットアッププログラムの開始

      [image]

      [image]

      [image]

      [image]

      [image]

      [image]
    2. パッケージ選択画面 (Select Packages)」(下図)まで進む

      [image]
    3. パッケージ選択画面で,パッケージを選ぶ

      下記のパッケージを選ぶ.

      「keep」になっている場合には,インストール済みなので,keep のままでよい.

      • Math/gnuplot ・・・ グラフ作成ツール.octave の計算結果からのグラフ作成にも使える
      • Math/octave
      • Math/octave-devel
      • Math/octave-doc
      • Math/octave-forge ・・・ 拡張パッケージ

      [image]
    4. 終了の確認

      [image]

    (参考)ファイルの配置

    Cygin の octave のパッケージを使ってインストールしたときのファイルの配置は次のようになる. 「パッケージを自前で追加したい」などのとき必要になる情報です.

    [image]

    動作確認

    試しに使ってみる.

    1. Cygwin のコンソールを起動
    2. octave の起動

      Cygwin のコンソール で次の操作を行う.

      octave
      

      [image]
    3. 試しに使ってみる

      Cygwin のコンソール で次の操作を行う.

      x = [1 2 3]
      y = [4 5 6]
      x + y
      x * y'
      

      [image]
    4. パッケージの確認
      pkg list
      

      [image]
    5. octave の終了
      exit
      

      gnuplot との連携の例

      Octave では,gnuplot の機能を呼び出してグラフを作る,というのが定番なので,試してみる.

      グラフの描画のために,Cygwin のコンソール で次の操作を行う.

      ※ startx を忘れるとエラーメッセージが出ます.(gnuplot が動かないので).

      startx
      octave
      x = [0, 0.2, 0.4, 0.6, 0.8, 1.0, 1.2]
      plot( x, sin(x) )
      

      [image]

      [image]

      (オプション)cygblas-0.dll の入れ替え

      cygblas-0.dll を入れ替えることで高速化が期待できる.実測値は、この Web ページの下に示しているので参考にしてください.

      1. GotoBLAS2 の入手とビルド

        Windows で GotoBLAS2 バージョン 1.13 と CBLAS をビルドとインストール」の手順に従ってください.

      2. GotoBLAS2 の libgoto2.dll を blas.dll と入れ替え

        Cygwin のコンソールで以下の操作を行う。

        cp /usr/bin/cygblas-0.dll /usr/bin/cygblas-0.dll.DIST
        cp /usr/lib/libgoto2.dll usr/bin/cygblas-0.dll
        

        [image]
        [image]

      性能測定の例

      参考 Web ページ http://www.ccn.yamanashi.ac.jp/~stomo/center_report/Octave.html

      • ハードウエア
        • Intel Corei7 860 (2.8GHz)
      • ソフトウエア
        • OS: Windows 7
        • Octave バージョン 3.2.4, 本ページの手順でインストール

      本来,性能値は,マシンの種類.ソフトウエアのバージョン,コンパイル時のオプションなどで大きく変わる値です. ここで示す性能値は,他のプロセスをとめるなどしていません. あくまでも「参考値」ということでご理解ください.ここの性能値を鵜呑みにしないで下さい.

      cygblas-0.dll の入れ替え前

      【実測値の例】Intel Corei7 860 (2.8GHz), Octave バージョン 3.2.4

      [image]
      (a) 行列と行列の積: X = rand(2000,2000); Y = rand(2000,2000); Z = X * Y

      [image]
      (b) LU 分解 (LU decomposition): X = rand(2000,2000); [L, U, P] = lu(X)

      [image]
      (c) 正方行列の逆行列: X = rand(2000,2000); [Z, RCOND] = inv(X)

      [image]
      (d) 行列式 (determinant): X = rand(2000,2000); [D, RCOND] = det(X)

      [image]
      (e) Singular Value Decomposition (SVD), X = U*S*V: X = rand(2000,2000); [U, S, V] = svd(X)

      [image]
      (f) QR factorization (QR decomposition ともいう): X = rand(2000,2000); [Q, R, P] = qr(X)

      [image]
      (g) 分散共分散行列: X = rand(2000,2000), Y = rand(2000,2000); Z = cov(X, Y)

      [image]
      (h) 分散共分散行列の固有値と固有ベクトル(主成分分析): X = rand(2000,2000); [v, L] = eig( cov(X) )

      [image]
      (i) princpmp 関数による主成分分析: X = rand(2000,2000); [pc, z, w, Tsq] = princomp(X)

      [image]
      (j) 2次元の畳み込み(コンボリューション): X = rand(2000,2000); B = rand(21); Z = conv2(X, B, 'full')

      [image]
      (k) 2次元の高速フーリエ変換 (FFT): X = rand(2000,2000); Z = fft2(X, 2000, 2000)

      [image]
      (l) convex hull: x = rand(1000000,1); y = rand(1000000,1); H = convhull(x, y)

      cygblas-0.dll の入れ替え後

      【実測値の例】Intel Corei7 860 (2.8GHz), Octave バージョン 3.2.4

      [image]
      (a) 行列と行列の積: X = rand(2000,2000); Y = rand(2000,2000); Z = X * Y

      [image]
      (b) LU 分解 (LU decomposition): X = rand(2000,2000); [L, U, P] = lu(X)

      [image]
      (c) 正方行列の逆行列: X = rand(2000,2000); [Z, RCOND] = inv(X)

      [image]
      (d) 行列式 (determinant): X = rand(2000,2000); [D, RCOND] = det(X)

      [image]
      (e) Singular Value Decomposition (SVD), X = U*S*V: X = rand(2000,2000); [U, S, V] = svd(X)

      [image]
      (f) QR factorization (QR decomposition ともいう): X = rand(2000,2000); [Q, R, P] = qr(X)

      [image]
      (g) 分散共分散行列: X = rand(2000,2000), Y = rand(2000,2000); Z = cov(X, Y)

      [image]
      (h) 分散共分散行列の固有値と固有ベクトル(主成分分析): X = rand(2000,2000); [v, L] = eig( cov(X) )

      [image]
      (i) princpmp 関数による主成分分析: X = rand(2000,2000); [pc, z, w, Tsq] = princomp(X)

      [image]
      (j) 2次元の畳み込み(コンボリューション): X = rand(2000,2000); B = rand(21); Z = conv2(X, B, 'full')

      [image]
      (k) 2次元の高速フーリエ変換 (FFT): X = rand(2000,2000); Z = fft2(X, 2000, 2000)

      [image]
      (l) convex hull: x = rand(1000000,1); y = rand(1000000,1); H = convhull(x, y)


    本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

    問い合わせ先: 金子邦彦(かねこ くにひこ) [image]