Counter 08/07/18より

Octave for windows メモ

(旧 Octave Cygwinメモ, 旧旧 Octave C++ Cygwinメモ)  ( 11/12/10 更新, 11/12/23 リンクリスト更新)

このページは,もうメンテされていません。
現在は,
「GNU Octave JP」というwikiで活動しています。

個人的なメモなのですが,HomePage に載せることにより, ひょっとしてだれかのお役にたつかもしれないと思い掲載することにしました。 (備忘録ににもなるかな。)

07/06/12のメモにもありますが,日付ごとに"070612"のようなリンクタグを埋め込んであります

http://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#070519

上のように特定の日付のメモにリンクを貼りたいときにお使いください。

特にこのページに関してリンクの許可は要りません。ただ,やはりコメントをいただけると幸いです。

E-mail : tmacchant_at_yahoo_dot_co_dot_jp (_at_=@, _dot_=. )

ただし,質問されたことを「データ解析ツールoctaveを語ろう Part 2」(11/12/23 リンク先変更) または, 「GNU Octave JP」にあげることがありますので, その旨をご了解ください <m(__)m>。


Octave本家の 速報は「GNU Octave JP」または,
2chの「データ解析ツールoctaveを語ろう Part 2」 に書き込みむ場合があります。



11/12/10

MinGW 版 Octave-3.4.3 バイナリが Octave-Forge のサイトにアップロードされました

Nitzan Arazi さんによりビルドされたOctave-3.4.3 バイナリが Octave-Forge のサイトにアップロードされました。 Octave 本体だけでなく,Octave-forge パッケージも充実しています。

http://sourceforge.net/projects/octave/files/Octave_Windows%20-%20MinGW/Octave%203.4.3%20for%20Windows%20MinGW%20Installer/

パッケージの内容やインストール方法はサイトに書かれています。 基本的には11//09/08に書いた方法と同じです。 しかし,Octave-forge サイトに書かれたインストール方法の方が詳しく書かれています。 したがって,それにあわせて改めて書かせていただきます。 (基本的には和訳ですが,一部私の加筆もあります。)

パッケージはいずれも,7zip という圧縮形式で圧縮されています。 解凍ソフト(7zip File Manager)は,7-Zipのホームページ(日本語) から入手できます。

中身は
中身は

Octave 本体のインストール

以上により次のことができるようになります。

Octave- Forge パッケージのインストール

Notepad++(テキストエディタ) の インストール(オプション,推奨)


ちなみに筆者は,Notepad++ でなく SciTE を使っています。

Topに行く。


11/09/15

MinGW 版 Octave-3.4.2 パッケージがアップデートされました

11/09/0611/09/08 で紹介したMinGW 版 Octave-3.4.2 のパッケージですが, octave 本体のパッケージと octave-forge パッケージがアップデートされました。
Updated Octave3.4.2 Mingw for testing (was: Mingw Octave 3.4.2 - blank gnuplot printouts)

本体のパッケージは,私の不注意で gnuplot の実行で必要なファイルが抜けていたので, print コマンドが正常に働かない状態でした。
Mingw Octave 3.4.2 - blank gnuplot printouts
この点が修正されました。

また,Octave-forge パッケージの更新がなされました。

Octave-forge パッケージの更新は以下のとおりです。

以上を受けて11/09/06 を再改定しました。

アップデートは一度,インストールしているフォルダを基本パッケージも含めて消去してから, 11/09/06 で紹介した手順で再インストールする方法がお勧めです。

Topに行く。


11/09/08

MinGW 版 Octave-3.4.2 の octave-forge パッケージがアップデートされました

11/09/06 で紹介したMinGW 版 Octave-3.4.2 がパッケージですが, octave-forge パッケージがアップデートされました。

11/09/07 付けの新しい Octave-forge パッケージ(Octave3.4.2_gcc4.5.2_pkgs_20110907.7z)
となります。

変更点は以下のとおりです。

アップデートは一度,インストールしているフォルダを基本パッケージも含めて消去してから, 11/09/06 で紹介した手順で再インストールする方法がお勧めです。 (ただし,octave-forge パッケージは,Octave3.4.2_gcc4.5.2_pkgs_20110907.7z を用いてください)。

Topに行く。


11/09/06(11/09/08, 11/09/15 に改定)

MinGW 版 Octave-3.4.2 がパッケージ化されました

私が作成したバイナリをもとに MinGW 版 Octave-3.4.2 が,Nitzan Arazi さんによりパッケージ化されました。 Octave 本体だけでなく,Octave-forge パッケージも充実しています。

Octave 本体と関連プログラム(20110914 版, Octave3.4.2_gcc4.5.2_20110914.7z

Octave-forge パッケージ (20110914 版,Octave3.4.2_gcc4.5.2_pkgs_20110914.7z

いずれも,7zip という圧縮形式で圧縮されています。 解凍ソフト(7zip File Manager)は,7-Zipのホームページ(日本語) から入手できます。インストール方法については,後述します

中身は

  • GNU Octave, version 3.4.2 (i686-pc-mingw32)
  • atlas (SSE3) libraries
  • MSYS + MinGW toolchain
  • gnuplot 4.4.3
  • ghostscript 9.0.2
  • fig2dev 3.2.5c
  • octave-forge パッケージ (20110914 版)
    • actuarial-1.1.0
    • ad-1.0.6
    • audio-1.1.4
    • benchmark-1.1.1
    • bim-1.0.1
    • bioinfo-0.1.2
    • civil-engineering-1.0.7
    • combinatorics-1.0.9
    • communications-1.0.11
    • control-2.1.55
    • data-smoothing-1.2.0
    • dataframe-0.8.2
    • econometrics-1.0.8
    • fenv-0.1.0
    • financial-0.3.2
    • fpl-1.2.0
    • fuzzy-logic-toolkit-0.2.3
    • ga-0.9.8
    • general-1.2.2
    • generate_html-0.1.3
    • gnuplot-1.0.1
    • gpc-0.1.7
    • gsl-1.0.8
    • ident-1.0.7
    • image-1.0.14
    • informationtheory-0.1.8
    • integration-1.0.7
    • io-1.0.14
    • irsa-1.0.7
    • java-1.2.8
    • linear-algebra-2.0.0
    • mapping-1.0.7
    • miscellaneous-1.0.11
    • missing-functions-1.0.2
    • msh-1.0.2
    • multicore-0.2.15
    • nlwing2-1.2.0
    • nnet-0.1.13
    • nurbs-1.3.4
    • ocs-0.1.1
    • oct2mat-1.0.7
    • octclip-1.0.0
    • octgpr-1.2.0
    • odebvp-1.0.6
    • odepkg-0.8.0
    • optim-1.0.16
    • optiminterp-0.3.3
    • outliers-0.13.9
    • physicalconstants-0.1.7
    • plot-1.0.8
    • quaternion-1.0.0
    • secs1d-0.0.8
    • secs2d-0.0.8
    • signal-1.0.11
    • simp-1.1.0
    • sockets-1.0.7
    • specfun-1.0.9
    • special-matrix-1.0.7
    • spline-gcvspl-1.0.8
    • splines-1.0.7
    • statistics-1.0.10
    • strings-1.0.7
    • struct-1.0.9
    • symband-1.0.10
    • symbolic-1.0.9
    • tcl-octave-0.1.8
    • time-1.0.9
    • tsa-4.1.1
    • video-1.0.2
    • vrml-1.0.12
    • windows-1.1.0
    • xraylib-1.0.8
    • zenity-0.5.7
Octave 本体のインストール
・7zip File Manager で Octave3.4.2_gcc4.5.2_20110914.7z を解凍し,階層化されたフォルダを好きなフォルダにおきます。
 たとえば,C:\Octave におくと,C:\Octave\Octave3.4.2_gcc4.5.2\ にインストールされます。
・Octave のショートカットファイル ( octave.lnk ) をカスタマイズして,octave を起動できるようにします。
 Octave3.4.2_gcc4.5.2\bin フォルダにあるアイコンファイル Octave.ico へのショートカットの設定も適宜行ってください。

Octave- Forge パッケージのインストール
・7zip File Manager で Octave3.4.2_gcc4.5.2_pkgs_20110914.7z を解凍し,Octave 本体と同じ場所に上書きします。
・Octave を起動し,次のコマンドを入力します。
     pkg rebuild -auto
     pkg rebuild -noauto ad windows
・Octave をいったん終了し,起動しなおします。
     pkg list
 でパッケージのリストを出し,インストールを確認します。 '*'がついているものが,アクティブ(ロードされた状態)になっていることを示します。

上のコマンドでは,ad と windows パッケージを auto load (起動時自動ロード)しないように設定しています。 これは両パッケージがロードしてあると clear all コマンドで Octave が強制終了してしまうからです。 これらのパッケージを使うときは,pkg load windows のようにして使用するようにしてください。

不要なパッケージをアンインストールする場合は,pkg unistall (package name) のようにします。

なお,このパッケージにはマニュアルがついていないので, http://www.tatsuromatsuoka.com/octave/Eng/Win/ から,ダウンロードしてください。
 pdf 版 octave-3.4.2.pdf.zip : html 版 octave-3.4.2.html.zip

まだ,使用し始めなので不具合などがでた場合は,このメモで取り上げる予定です。

Topに行く。


11/07/21

MinGW 版 Octave-3.4.2 の testing binaries を更新しました。

make checkででていた2つのエラー(ひとつはかなり致命的なバグ)のと Octave をコマンドプロンプトの右上隅の「x」ボタンで 終了させると Windows のポップアップがでてしまうとバグにパッチをあて, ビルドしなおしました。

File list of Octave for Windows

環境変数を設定して,mkoctfile や pkg installを使用できるようにできる, スタートアップのバッチファイル(octave.bat)を加えました。 また,テストとして odepkg-0.8.0 と miscellaneous-1.0.11 の octave-forge のパッケージを組み込んであります。

ページの見易さや変更点の Log ファイルを載せるなどわかりやすくしました。

2011-07-19 以前にダウンロードされた方は,お手数ですが入れ替えをお勧めします。

Topに行く。


11/07/02

MinGW 版 Octave-3.4.2 の testing binaries をアップロードしました。

Benjamin Lindner 氏が忙しいのか,なかなか windows 版(MinGW)の Ver. 3.4 がでないので,本家の ML などでも 3.4 がまだでないのかという投稿が出てくるようになりました。 そこで,あくまで試用版として

File list of Octave for Windows

に octave-3.4.2 の試用版 (testing binaries) をアップロードしました。 Octave MLでは,自分で octave を MinGW でビルドしたいという声もありました。 そういうわけで,私が使っている Msys, MinGW, GnuWin32 の環境, ビルドに使っている依存ライブラリもアップロードしてあります。

インストーラーなどというものもなく,あまり解説もありません。 Octave-forge のパッケージも組み込んでありません ちょっと試して見るだけなら初心者でもできますが, productive use には使用に耐えないと思います。

といいつつ,いろんな方につかっていただいて, 報告などいただければと思っています。

Topに行く。


11/06/13

Octave を使った講義資料をアップロードしました。

私が担当している Octave を使った講義の講義資料をアップロードしました。

平成 23 年度 コンピュータアルゴリズム 松岡担当分 講義資料(公開版)

著作権上の都合でオリジナルの資料でないですが,参考にはなると思います。

Topに行く。


11/04/01

Cygwin 版 Octave 3.4.0がリリースされています。

ちょっと前になりますが Cygwin 版 の Octaveが 3.4.0がリリースされ, 現在 3.4.0-3 となっています。 Windows Native (MinGW) 版は現在準備中でしばらく時間がかかると思いますので Windows で Ver.3.4 を体験したい方はこちらをお使いください。

ただ,期待の fltk のグラフィックが私が使用している限り, プロットがされない状態で gnuplot をしか使えない状態です。

Cygwin のサイトから setup.exe をダウンロードし,インストールしてください。 カテゴリーは,Math です。

Topに行く。


11/02/02

Octave-3.3.91 の Windows バイナリをアップロードしました

Octave 3.3.91 が出たのでビルドしてアップしました。テンポラリファイルまわりと, datevec 関数が1970年以前に対応しないというバグが解消されました。 そのほかのコードの改良もなされています。 そういうわけでバイナリを作成しなおしました

http://www.tatsuromatsuoka.com/octave/Eng/Win/

インストールの方法などは Readme_octave-3.3.91.txt を見てください。

あまりテストはしていませんし,まだ問題もあります。 pkg installに必要なMsys, MinGW, MinGW GCCなどを別の zip で用意しました。 ビルドの使用したライブラリも含まれていますので,この環境を利用すれば Unix な環境でビルドの経験のある方はセルフビルドも可能だと思います・

是非,試用をしてみてください

Topに行く。


11/01/29

Octave-3.3.90 (3.4 のプレリリース) のWindows バイナリをアップロードしました

Octave 本家の ML で最新の Octave のバイナリはとたずねられたので, Octave 3.4.0 のプレリリースである Octave-3.3.90 をビルドしていたので, いい機会だと思い簡単なバイナリパッケージを作成しました。

http://www.tatsuromatsuoka.com/octave/Eng/Win/

インストールの方法などは Readme_octave-3.3.90.txt を見てください。

あまりテストはしていませんし,まだ問題もあります。 pkg installに必要なMsys, MinGW, MinGW GCCなどはバンドルしていません。 また,octave-forge もついていません。 

問題のあるバイナリですが,fltk によるグラフィックスのパフォーマンスなどを, 体験することができます。

興味をもたれた方は,使ってみてください。fltk によるグラフィックスは, 3.2 からすると格段によくなっています。 3D のグラフィックスについては gnuplot に比べかなり,ハンドリングはよくなっています。

また,gnuplot 周りのバグのかなり修正されています。

よろしければ,ご試用いただき問題などがあれば, octave 本家でたずねていただきたいのですが無理という方は「GNU Octave JP」か 2chの「データ解析ツールoctaveを語ろう Part 2」に書き込みください。

ご協力お願いします。

Topに行く。


11/01/09

書籍「Octaveの精義」が出版されました

東京電機大学の松田 七美男 先生著の Octave 関する書籍, 「Octaveの精義」が出版社「カットシステム」から発売されました。 (参考 URL http://www.cutt.co.jp/book/978-4-87783-231-5.html )

Octave について書かれた書籍は, 多くはないものの,これまでもありましたが, その中でも最も内容が充実していて,わかりやすい書籍であると思います。 Octave には日本語のマニュアルはありませんので, Octave を使いこなしたい人には,非常に役に立つと思います。

また,現在の Octave の問題点やそれに対する対処の方法も書かれていて, よくできた本だといえるでしょう。

ここでは,主にWindows ユーザーの立場から見た補足をしたいと思います。
(現在までに,気づいた点。必要に応じて加筆するかも知れません。)

gnuplot について
Octave-3.2.4 と gnuplot 4.4 の相性が悪いことについて, gnuplot 4.2.5 による解決法が載せてありますが, windows では,残念ながら gnuplot 4.2 は, Octave ver 3 からは使用できませんので, postscript でグラフが半分にしか表示できないの不具合の修正は, この方法では行えません。
ただし, Octave ML でのやりとり(英語) が役にたつかもしれません。
なお,この問題は,開発版では修正されていますので, 次期バージョン(3.4)では,問題なくなるはずです。

サンプルスクリプトの実行について
サンプルスクリプトには,ovs と拡張子がつけられていて, コマンドラインから,
octave -q scripts.ovs
の形式で実行するように, 書かれています。 しかし,windows の「コマンドプロンプト」に使用に慣れていない人は, 「1.1.4 非対話モード」のsource() コマンドでの実行をお奨めします。

Octave のインストールについて
「付録 A.7.1」の Octave のインストールについて, 「オプションパッケージの選択を求められますが, 特に何も選択する必要はありません。」 と記載されていますが, odepkg のように有用なパッケージもあるので, 必要に応じてインストールするか, 面倒な方はすべてをインストールしてください。 ただし,oct2mat パッケージは, プロットなどに副作用をともなうので, 10/04/22 を参考に処置をしてください。
なお,plot パッケージについては, バンドルされている ver. 1.0.7 より,本書で利用されている ver. 1.0.8 には,gplot3 が含まれますので, 「付録 A.6」の記載の方法で組み込むといいと思います。

Topに行く。


10/12/11

GotoBLAS2 について

GotoBLAS2 は,テキサス大学にいらっしゃった, (今は,Microsoft 社に移られたそうです。) 後藤 和茂 氏による無料で使用できる 高性能なBLAS の一つです。 (BLASってなにという方は, ここを参照) 非常に性能が良く,良く利用されている ATLAS よりも大体の場合において高性能で, 安定です。

GotoBLAS2 は,テキサス大学の独自のライセンスで配布されてきたので, ソースからビルドした場合のみ無料でした。 最近,ライセンスが Open source の BSD ライセンス に変更され, BSD ライセンスのもとに使用できるようになりました。 ただし,後藤 氏自体は,Microsoft 社に移られてしまったので, 今後,後藤 氏自体のアクティブなコミットは期待できないと思いますが, 現時点では,最高の性能の BLAS であるといえます。

BLAS は,CPU のごとに最適化したものを利用すると行列計算が高速になります。 MinGW 版の Octave-3.2.4 には,ATLAS が実装されていますが, 不具合などのため, 現在ではあまり速いとはいえない SSE2 レベルでの最適化しかされていません。

この MinGW 版の Octave-3.2.4 の BLAS を GotoBLAS2 で置き換えられることを, 九州大学の金子先生が,HP で述べられています。 (ただし,書かれている時点では,GotoBLAS のライセンスが以前のものだったので, ライセンスの条項についての記載は, 昔のライセンス条項で書かれているようです。 (10/12/11 時点)

リンクリスト の ・Windows に Octave バージョン 3.2.4 をインストール にから,情報を得ることができます。

Windows 上での Goto BLAS のビルドには,Cygwin が必要で, 金子先生のページに丁寧な解説があります。ただし,2点ほど注意を喚起しておきます。

Cygwin のディレクトリにパスを設定することを書かれています。 Unix likeなツールとして Cygwin のみを使われるかたには, もちろん便利な方法です。 しかし,Cygwin 以外で Gnuwin32 など Unix Likeなツールを使っているときは, グローバルパスをかけるのは,コンフリクトの原因となるのでお奨めできません。 そのときは,octave のスタートアップファイルに

putenv('PATH',[getenv('PATH') ';C:\cygwin\bin']);
のように書くといいと思います。(現時点でまだ未確認です<m(__)m>。) また,Cygwin をアンインストールする場合, レジストリーキーの削除について書かれていますが, 現在の Cygwin-1.7 では,レジストリを使わなくなったので,この操作は不要です。

Topに行く。


10/07/01

Cygwin 版 Octave 3.2.4 が3.2.4-3 になりました

ちょっと前になりますが Cygwin 版 の Octaveが 3.2.4-3 になりました。 GraphicsMagick-1.3.7 以上 に関する不具合の修正のようです。

Cygwin のサイトから setup.exe をダウンロードし,インストールしてください。 カテゴリーは,Math です。

なお,Cygwin の公式サイトの gnuplot も4.4.0 にバージョンアップしているようです。

Topに行く。


10/04/22

Qt Octave の新バージョンが出たようです(おまけ,Xoctave,SciTE のカスタマイズ)

Octave の GUIフロントエンドとして有名なQt Octave の新バージョンが出たようです

http://www.outsch.org/2010/04/05/qtoctave-0-9-1-win32-bugfix/

octave 3.2 以上を使用する設定となっているようです。 個人的には,GUI フロントエンドは使わないので詳しいことは書けませんが 興味のあるかたはどうぞ

ところでGUI フロントエンドに Xoctave というのもあります。 名前からして,Unix 専用かと思っていましたが,windows 版もあるようです。

Xoctave : GNU Octave Interface

まだ,試していませんが ScreenShot を見る限りなかなかよさそうです。 Octave の本家の ML でも,octave のGUI フロントエンドの例として,Qt Octave と並んで 紹介されています。

個人的には,SciTE のカスタマイズをやって今はそれを使っています。 フロントエンドではなく,あくまでもスクリプト実行ツールですが,個人的に気に入ってます。 一応,英語のページを用意しました。日本語化もやってますので そのうちここで紹介したいと思います。 Notepad++ やその他のエディタでも同様なことはできるとおもいますが, SciTE が今私の一番使っているエディタなので SciTE でやりました。

SciTECustomizeForOctave

また,上記を受けリンクリストを更新しました。

Topに行く。


10/04/03

MinGW 版 Octave-3.2.4 for Windows が出ました

ちょっと前になりますがMinGW 版 Octave-3.2.4 for Windows ががリリースされました。 以下からダウンロードができます。

http://sourceforge.net/projects/octave/files/Octave_Windows%20-%20MinGW/Octave%203.2.4%20for%20Windows%20MinGW32%20Installer/Octave-3.2.4_i686-pc-mingw32_gcc-4.4.0_setup.exe/download

基本的には,バグフィックスですが,3.2.4 からフィックスされたバグも,結構多いので 3.2.4 がお勧めです。

サポートされている octave-forge のパッケージが増えました。auto load ではありませんが, java や jhandles などが含まれています。詳しいことは

リリースノートをお読みください。

改善点などでリリースノートに詳しく書かれていない点などについて書きます。

gnuplot がver 4.4.0 になるときに windows terminal の周りのバグ(ベクトルデータでグラフをコピーすると 崩れたフォーマットになって使えない,pause mouse コマンドがバグがあったので ginput が使えないなど)が改善 されて,かなり便利になったと思います。

octave 3.2.3の時書きましたが gnuplot は wxt ターミナルに対応しています。 MSVC版は,wxt ターミナルがデフォールトだったのですが,本バージョンではデフォールトではありません。 リリースノートに書いてありますが
putenv("GNUTERM","wxt")
....Octave\3.2.3_gcc4.4.0\share\octave\3.2.3\m\startup\octaverc になどに加えてください。

エディタについては,NotePad++ が 5.6.7 にあがっています。各国語対応についてがすすんでおり,日本語についても, メニューの 「Encoding」→「Character sets」→「Japanese」→「Shift-JIS」 でカーソル移動などで文字化けすることなしに使えるようです。 なお,メニューまで日本語化したものを使用したいときは,09/05/22 のエディタ(NotePad++ の日本語版,SciTE の日本語化など)についての記述を参考にしてください。 なお,SciTE の日本語化などについては,加筆したい点があるのですが,別の機会をみて書きたいと思います。

Less での日本語表示については 08/03/20 を参考にしてください。

中身は

  • GNU Octave, version 3.2.4 (i686-pc-mingw32)
  • atlas 3.8.2 libraries
  • mingw32 (GCC 4.4.0 on http://www.mingw.org)
  • gnuplot 4.4.0 (octave 用にカスタマイズされている)
  • mini-MSYS 1.0.11
  • notepad++ 5.6.7 as text editor
  • Some componets of octave-forge packages
    • actuarial-1.1.0 (New!)
    • audio-1.1.4
    • benchmark-1.1.1
    • bim-1.0.0 (New!)
    • bioinfo-0.1.2
    • combinatorics-1.0.9
    • communications-1.0.10
    • control-1.0.11
    • data-smoothing-1.2.0
    • econometrics-1.0.8
    • fenv-0.1.0 (New!)
    • financial-0.3.2
    • fixed-0.7.10
    • fpl-1.0.0 (New!)
    • ga-0.9.7
    • general-1.2.0 (updated)
    • generate_html-0.1.2 (New!)
    • gnuplot-1.0.1 (New!)
    • gpc-0.1.7
    • gsl-1.0.8
    • ident-1.0.7
    • image-1.0.10
    • informationtheory-0.1.8
    • integration-1.0.7
    • io-1.0.11 (updated)
    • irsa-1.0.7
    • java-1.2.7 (New!)
    • jhandles-0.3.5 (New!)
    • linear-algebra-1.0.8
    • mapping-1.0.7
    • miscellaneous-1.0.9
    • missing-functions-1.0.2
    • msh-1.0.0 (New!)
    • nlwing2-1.1.1 (New!)
    • nnet-0.1.10
    • nurbs-1.0.3 (New!)
    • ocs-0.0.4 (New!)
    • oct2mat-1.0.7 (New!)
    • octcdf-1.0.17 (updated 1.0.17+)
    • octgpr-1.1.5 (New!)
    • odebvp-1.0.6
    • odepkg-0.6.10 (updated)
    • optim-1.0.12 (updated)
    • optiminterp-0.3.2
    • outliers-0.13.9
    • physicalconstants-0.1.7
    • plot-1.0.7
    • quaternion-1.0.0
    • signal-1.0.10
    • simp-1.1.0 (New!)
    • sockets-1.0.5
    • specfun-1.0.8
    • special-matrix-1.0.7
    • spline-gcvspl-1.0.8 (New!)
    • splines-1.0.7
    • statistics-1.0.9
    • strings-1.0.7
    • struct-1.0.7
    • symband-1.0.10 (New!)
    • symbolic-1.0.9
    • time-1.0.9
    • video-1.0.2 (New!)
    • windows-1.0.8 (updated to 1.0.8+)
    • zenity-0.5.7

リリース後にわかった問題として,一番大きな点は,oct2mat という octave-forge のパッケージが,plot コマンドを 邪魔することです。oct2mat パッケージは m ファイルを Matlab の互換フォームに対応させる変換させるもののようです。 以下の octave-forge のパッケージごとのマニュアルの oct2mat パッケージの 関数 freetb4matlab についての説明を読んでください

octave-forge のパッケージごとのマニュアル

oct2mat パッケージは使用するときにだけ,pkg load oct2matpkg unload oct2mat で切り替えて使うのがいいでしょう。 したがって,一度 octave のプロンプトから,

pkg rebuild -noauto oct2mat

を実行して,noauto に変更しておいてください。(pkg listで確認をしてください。) Matlab を使わないのであれば,インストール時にこのパッケージをインストールしないのも手です。

また,私が失敗したことですが,gnuplot が4.4.0 から wxt ターミナルがデフォールトになっています。 自分の好みは windows ターミナルなので,環境変数 GNUTERM を設定することによって windows ターミナルを デフォールトにしていました。このとき,GNUTERMwin と設定していました。 gnuplot としては大丈夫なのですが,octave が環境変数 GNUTERM を見るときは, GNUTERMwindows かを見ています(短縮名 win は認識されません)。 このおかげで,windows ターミナルが正常に動かないということがありました。 私のうっかりミスですが,そのような方もいらっしゃるかもしれないと思い書きました。 一連にの経緯については以下をご覧ください。

http://old.nabble.com/flicking-problem-again-Octave-3.2.4-mingw32-td28038688.htm

また,octave-forge の plot パッケージを組み込んでいるとこのパッケージにも ginput が あり,octave 本体の ginput とぶつかり正常に動かないことがわかっています。 したがって,...\Octave\3.2.4_gcc-4.4.0\share\octave\packages\plot-1.0.7ginput.mginput.old.m などに名前を変更して無効化してください。 CPU がシングルコアの場合 windows でパイプ(注:octave が gnuplot と通信に使っている仕組みです。) 仕様のためginput の反応に数秒以上かかり,使用に耐えないことがあります。 (Cygwin の場合パイプの仕組みに工夫をしてあるようなので,この問題は起こりません。)  ginput の反応が遅くて困る場合は, ...\Octave\3.2.4_gcc-4.4.0\share\octave\3.2.4\m\plot__gnuplot_ginput__.m の 112 行目付近を次のように変えてください。

    str = {};
    while (isempty (str))
      sleep(0.05); # この一行を加える
      str = char (fread (istream)');

sleep(0.05); を加えることにより,octave の CPU 占有率を下げます。 それにより gnuplot のレスポンスあがり,スピードの増加を図れます。 マルチコアの新しい CPU では,この問題はあまり関係がないようですので 実際に ginput を使用してみて,変更を加えるかどうかを考えるといいと思います。

これは以前からよく知られていることですが, パス名に半角スペースのあるフォルダ(C:\Program Files\ など)に Octave のバイナリーをインストールすると,'pkg install' が使用できないのでデフォールトの インストールフォルダーが C:\octave\3.2.3_gcc-4.4.0 になっています。 ちなみに私は,C:\Programs\octave\3.2.3_gcc-4.4.0 にインストールしています。

Topに行く。


10/02/02 (10/04/03 一部修正 )

Cygwin 版 Octave 3.2.4 がでました

ちょっと前になりますがcygwin 版 のocatave-3.2.4-2, octave-forge-20090607-2がリリースされました。 ご存知かと思いますが,cygwin は,2009-12-23 から cygwin-1.7.1 が公式版になっています。

Cygwin のサイトから setup.exe をダウンロードし,インストールしてください。 カテゴリーは,Math です。

基本的には,バグフィックスですが,3.2.4 からフィックスされたバグも, 結構多いので 3.2.4 がお勧めです。

なお,現在,octave-3.4のリリースに向けて作業が進められており,3.2.4 は 3.2 シリーズの最後のリリースになると 思います。以前の MSVC 版のメインテナーの Michael さんが,MSVC での開発版の ビルドに着手されています。どのような形になるかは分かりませんが,3.4 からは MSVC 版が復帰するかもしれません。 (←のように書いたですが,いまのところ MSVC 版の復活の予定はないようです。次の Nabble のアーカイブを見てください。10/04/03 修正1)

http://n4.nabble.com/Patches-for-MSVC-tc1651114.html#a1692966

(10/04/03 修正 2) cygwin の公式サイト の gnuplot は,version 4.2.4 のままでとまっているようです。すでに,gnuplotは,公式版version 4.4.0 がリリースされていて cygwin 版のバイナリ gnuplot の公式サイトからダウンロードできます。 (実は,このバージョンから,私がビルドしています。) これを使うことにより gnuplot で 2D の mouse zooming ができます。 また,私のサイトで配布している gnuplot 4.5 (cvs) 版もあります。 以下のサイトからそれぞれどうぞ。

gnuplot 公式ダウンロードサイト (Cygwin 版 4.4.0 は gp440win32x11.zip)

松岡の個人的なgnuplot 4.5 (cvs) バイナリのダウンロードサイト - gnuplot 4.5 (cvs) cygwin binaries prepared by gcc-4.x.x

(10/04/03 修正 2 終わり)

なお,MinGW 版は現在 Benjamin さんが,作業を進めておられるようなのでしばらくお待ちください。

Topに行く。


09/11/23

Benjaminさんが MinGW でoctave をビルドするための HOWTO を書き始めました

MinGW 版 Octave の maintainer の Benjamin さんが MinGW でoctave をビルドするための HOWTO を書き始めたとの報告が Octave の maintainers の ML でありました。

http://old.nabble.com/HOWTO-for-building-octave-using-mingw-msys-p26465144.html

これは,octave-forge の SVN の Tree 上に置かれていますが,テキストファイルなので直接読んだり, ダウンロードできるようです。

https://octave.svn.sourceforge.net/svnroot/octave/trunk/octave-forge/admin/Windows/mingw32/HOWTO.txt

リンクリストも更新しました。

Topに行く。


09/11/21

MinGW 版 Octave-3.2.3-2 for Windows が出ました

Octave 3.2.3-2/mingw32 がでました。 09/10/28でアナウンスしたもののバグフィックス版です。

http://old.nabble.com/Octave-3.2.3-2-mingw32-available-tt26353433.html に記載されていますが,以下のようになります。

  • SSE3のATLASのある種の複素行列の計算SSE3版のATLASを組み込むとseg-faultしてハングする問題は未解決なので この版ライブラリがの削除された。(インストーラーには,出てくるようですね。SSE3版が選択されたらSSE2版を手動で選択 しなおしてください。)
  • jpeg-7の周りのバグフックス。(jpegファイルのimreadがエラーで読めないのを修正)
  • メニューでのoctaveのドキュメントへのショートカットのパスが正しく指定されていないことの修正
  • gnuplot のドキュメントが抜けていたのを修正

SSE3のATLASのある種の複素行列の計算SSE3版のATLASを組み込むとseg-faultしてハングする問題は次をみてください

http://old.nabble.com/Octave-3.2.3-mingw32-crashes-on-a-simple-complex-operation-tt26159558.html

Topに行く。


09/10/28

MinGW 版 Octave-3.2.3 for Windows が出ました

09/10/24でMinGW 版 Octave-3.2.3 はスキップされるのではといいいましたが,ちゃんと出ました。 がせねた流してすみません

09/10/24に書いてありますが 3.2.3 は 3.2.2 より多くのバグがフィックスしてありましので お勧めです。また,後述してありますがより安定したコンパイラへの変更がなされているので この機会に是非バージョンアップをおすすめします。

09/10/28 現在,http://octave.sourceforge.net/でのWindows 版へのリンクがまだ古いままなのでMLに訂正を求めています。 次のアドレスをお使いください。

http://sourceforge.net/projects/octave/files/Octave_Windows%20-%20MinGW/Octave%203.2.3%20for%20Windows%20MinGW32%20Installer/Octave-3.2.3-3_i686-pc-mingw32_gcc4.4.0_setup.exe/download

また,詳しいことは リリースノートをお読みください。

最大の変更点は通常のユーザーには分かりにくいかも知れませんが,今回から gcc が TDM 版 4.3.0から MinGW 公式版4.4.0になっていることです。MinGW 公式版4.4.0は,TDM 版 4.3.0 に くらべコンパイラのバグが少なくclear allのバクも少なくなっています。

個人的に私は,MinGW 公式版 gcc-4.4.0 を使ってビルドしていたおり,clear all でのハングが少ないことなどを MLで報告していたことが Benjamin さんがコンパイラを切り替えるきっかけとなったのかなとうれしいです。

その他としては gnuplot が wxt ターミナルに対応したことです。 MSVC版は,wxt ターミナルがデフォールトだったのですが,本バージョンではデフォールトではありません。 リリースノートに書いてありますが
putenv("GNUTERM","wxt")
....Octave\3.2.3_gcc4.4.0\share\octave\3.2.3\m\startup\octaverc になどに加えてください。

エディタについては,09/05/22を参考にしてください。

Less での日本語表示については 08/03/20 を参考にしてください。

3.2.2 同様インストール時のATLASについては,原則自動検出で選択されたものでいいです。 HT-Pentium は SSE3 対応なのですが,Core2Duo(SSE3) と表示されていますが,そのままで 結構です。Octave-3.0.2版にくらべかなり,性能がいいと思います。

また,FFTのライブラリであるFFTWにSSE/SSE2とgenericがつきました。 インストール時に自動選択されようです。

中身は

  • GNU Octave, version 3.2.3 (i686-pc-mingw32)
  • atlas 3.8.3 libraries (atlas librariesが高速になっています。 )
  • mingw32 (GCC 4.4.0 on http://www.mingw.org)
  • gnuplot 4.3.0-2009-07-08 CVS with the wxt terminal
  • mini-MSYS 1.0.11
  • notepad++ 5.5.1 as text editor
  • Some componets of octave-forge packages
    • audio-1.1.4
    • benchmark-1.1.1
    • bioinfo-0.1.2
    • combinatorics-1.0.9
    • communications-1.0.10
    • control-1.0.11
    • data-smoothing-1.2.0
    • econometrics-1.0.8
    • financial-0.3.2
    • fixed-0.7.10 (New!!)
    • ga-0.9.7
    • general-1.1.3
    • gsl-1.0.8
    • ident-1.0.7
    • image-1.0.10
    • informationtheory-0.1.8
    • integration-1.0.7
    • io-1.0.9
    • irsa-1.0.7
    • linear-algebra-1.0.8
    • mapping-1.0.7
    • miscellaneous-1.0.9
    • missing-functions-1.0.2
    • nnet-0.1.10
    • octcdf-1.0.13
    • odebvp-1.0.6
    • odepkg-0.6.7
    • optim-1.0.6
    • optiminterp-0.3.2
    • outliers-0.13.9
    • physicalconstants-0.1.7
    • plot-1.0.7
    • quaternion-1.0.0
    • signal-1.0.10
    • sockets-1.0.5
    • specfun-1.0.8
    • special-matrix-1.0.7
    • splines-1.0.7
    • statistics-1.0.9
    • strings-1.0.7
    • struct-1.0.7
    • symbolic-1.0.9
    • time-1.0.9
    • windows-1.0.8
    • zenity-0.5.7

パス名に半角スペースのあるフォルダ(C:\Program Files\ など)に Octave のバイナリーをインストールすると,'pkg install' が使用できないのでデフォールトの インストールフォルダーが C:\octave\3.2.3_gcc-4.3.0 になっています。

Topに行く。


09/10/24

Cygwin 版 Octave 3.2.3 がでました

ちょっと前になりますがcygwin 版 のocatave-3.2.3-1, octave-forge-20090607-2がリリースされました。 ただし,cygwin-1.7 でのみのリリースなので

Cygwin release 1.7 in BETA testing の new setup-1.7.exe から setup-1.7.exe をダウンロードし,インストールしてください。 基本的には,バグフィックスですが,3.2.2 からフィックスされたバグも, 結構多いので(20 個くらいあります) 3.2.3 がお勧めです。 一例として,わたしもかかわったバグフィックスは, gnuplot 利用して連続してプロットすると x11, windows, wxt ターミナルにおいて,グラフ全体がちかちかする現象がありました。Ben Abbott 氏が作成された X11 ターミナルに対してのパッチを windows や wxt ターミナルにも適用するようにしました。

cygwin 版の ocatave-3.2.3 をお使いで, gnuplot で 2D の mouse zooming を使いたい方は,

gnuplot 4.5 (cvs) cygwin binaries prepared by gcc-4.x.xgp45-winbinX11-cygwin-1.7.zip をお使いください。

なお,完全に書き忘れ^^;ですが,MinGW 版の octave は 現在 3.2.2 です。 Benjamin さんの動きを見ていると 3.2.3 は,スキップされるのではとおもいます。

Topに行く。


09/09/01

Cygwin 版 Octave 3.2.2 がでました

cygwin 版 のocatave-3.2.2-1, octave-forge-20090607-2がリリースされました。 ただし,cygwin-1.7 でのみのリリースなので

Cygwin release 1.7 in BETA testing の new setup-1.7.exe から setup-1.7.exe をダウンロードし,インストールしてください。 Category は Math を選んでください。 octave だけ選ぶと gnuplot がインストールされないので,gnuplot も忘れずにインストールしてください。

cygwin-1.7.0 用の gnuplot 4.3 cvs をup loadしました。cygwin 版の ocatave-3.2.2 をお使いで, gnuplot で 2D の mouse zooming を使いたい方は,

gnuplot 4.3 (cvs) cygwin binaries prepared by gcc-4.x.xgp43-winbinX11-cygwin-1.7.zip をお使いください。

Topに行く。


09/08/06

MinGW 版 Octave-3.2.0 for Windows でplotが異常に遅くなる場合があることへの対処法

MinGW 版 Octave-3.2.0 for Windows でplotが異常に遅くなる場合があることが,Octave本家のMLで話題になりました。

Plotting with 3.2.0 on Windows is SLOOOOOOWWWW

thread をよんで貰うと分かるでのですが原理的にはコアが一つのコンピュータでおこり, HT-Pentium 以上 cpu 搭載のコンピュータでは起こらないことがわかりました。

Windows での pipe の実装の問題と octave 側の問題がありますが,octave 側の m ファイルのコードを工夫することで この問題を回避できることが Olli Saarela さんがコードかかれ,私が試すことでわかりました。 m ファイルの問題ですので,インストールされた octave スクリプトを少し書き換えればいいだけです。

...\Octave\3.2.0_gcc-4.3.0\share\octave\3.2.0\m\plot\__gnuplot_get_var__.m の130行目の

       if (! isempty (str)) 

        if (isempty (str)) 
          sleep(0.05); 
        else
で置き換えることで回避することができます。

MinGW 版 Octave-3.2.0 for Windows でplotが異常に遅くなる問題にあったかたは, 上記の修正を試みられることをお勧めします。

Topに行く。


09/07/03

Cygwin 版 Octave 3.2.0 がでました

cygwin 版 のocatave-3.2.0-2, octave-forge-20090607-2がリリースされました。 ただし,cygwin-1.7 でのみのリリースなので

Cygwin release 1.7 in BETA testing の new setup-1.7.exe から setup-1.7.exe をダウンロードし,インストールしてください。 CategoryはMathを選んでください。 octaveだけ選ぶとgnuplotがインストールされないので,gnuplotも忘れずにインストールしてください。

cygwin-1.7.0 用のgnuplot 4.3 cvs をup loadしました。cygwin版のocatave-3.2.0をお使いで, gnuplotで2D のmouse zoomingを使いたい方は,

gnuplot 4.3 (cvs) cygwin binaries prepared by gcc-4.x.xgp43-winbinX11-cygwin-1.7.zip をお使いください。

Topに行く。


09/06/25

Wiki 「GNU Octave JP」 の立ち上げについて

「データ解析ツールoctaveを語ろう」 の916-927番あたりのスレッドで octave に関する Wiki を立ち上げてはということになり,立ち上げてみました。

「GNU Octave JP」

立ち上げたばかりなので,まだコンテンツがほとんどありませんが,少しずつ充実できればなと思います。 また,wiki なので皆様からの投稿をお待ちしております。 スパム対策に非ログインユーザーの連続投稿回数に制限を加えていますが20回に設定していますので, 実用上問題はないかと思います。

よろしくお願いします

Topに行く。


09/06/11

MinGW 版 Octave-3.2.0 for Windows が出ました (06/25 補足)

つい,最近3.0.5が出たばかりなのですがもう,3.2.0がでました。

http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=287261

おそらく,Benjaminさんは,開発版のソースで準備をすすめられたいたのだと思います。 3.2.0 自体の改変の詳細は以下をご覧ください。

http://www.gnu.org/software/octave/NEWS-3.2.html

いろいろな関数も追加され,MATLABとの互換性が増しているようです。 私が大きいなあと思ったところは疎行列(sparse Matrix)用の関数が変更になった点です。 これからは疎行列に対してもたとえば LU 分解なら以前はspluを使用していましたが, [L, U, P] = lu (A)と書けば, A が疎行列なら疎行列用の演算がなされ,L, U, P も疎行列となります。 MATLAB と同じ仕様になったので,ここでも MATLAB との互換性が強化されたといえます。

エディタについては,09/05/22を参考にしてください。

Less での日本語表示については 08/03/20 を参考にしてください。(06/25 補足)

中身は

  • GNU Octave, version 3.0.5 (i686-pc-mingw32)
  • atlas 3.8.3 libraries (atlas librariesが高速になっています。 )
  • mingw32 (TDM GCC 4.3.0-2)
  • gnuplot Version 4.3.0-2008-11-21 CVS patchlevel 0 octave-mingw32
  • mini-MSYS 1.0.11
  • notepad++ 5.3.1 as text editor
  • Some componets of octave-forge packages
    • audio-1.1.4
    • benchmark-1.1.1
    • bioinfo-0.1.2
    • combinatorics-1.0.9
    • communications-1.0.10
    • control-1.0.11
    • data-smoothing-1.2.0
    • econometrics-1.0.8
    • financial-0.3.2
    • ga-0.9.7
    • general-1.1.3
    • gsl-1.0.8
    • ident-1.0.7
    • image-1.0.10
    • informationtheory-0.1.8
    • integration-1.0.7
    • io-1.0.9
    • irsa-1.0.7
    • linear-algebra-1.0.8
    • mapping-1.0.7
    • miscellaneous-1.0.9
    • missing-functions-1.0.2
    • nnet-0.1.10
    • octcdf-1.0.13
    • odebvp-1.0.6
    • odepkg-0.6.7
    • optim-1.0.6
    • optiminterp-0.3.2
    • outliers-0.13.9
    • physicalconstants-0.1.7
    • plot-1.0.7
    • quaternion-1.0.0
    • signal-1.0.10
    • sockets-1.0.5
    • specfun-1.0.8
    • special-matrix-1.0.7
    • splines-1.0.7
    • statistics-1.0.9
    • strings-1.0.7
    • struct-1.0.7
    • symbolic-1.0.9
    • time-1.0.9
    • windows-1.0.8
    • zenity-0.5.7

3.0.5 同様インストール時のATLASについては,原則自動検出で選択されたものでいいです。 HT-Pentium は SSE3 対応なのですが,Core2Duo(SSE3) と表示されていますが,そのままで 結構です。Octave-3.0.2版にくらべかなり,性能がいいと思います。 パス名に半角スペースのあるフォルダ(C:\Program Files\ など)に Octave のバイナリーをインストールすると,'pkg install' が使用できないのでデフォールトの インストールフォルダーが C:\octave\3.2.0_gcc-4.3.0 になっています。

Topに行く。


09/06/02

MinGW 版 Octave-3.0.5 for Windows 用のimage package のバイナリを配布

MinGW 版 Octave-3.0.5 for Windows 用のimage package のバイナリを配布することにしました。

http://www.tatsuromatsuoka.com/octave/Eng/Win/

image-1.0.8_prebuild_oct_3.0.5_mgw.zip,, Prebuild image-1.0.8 package for Octave 3.0.5 for Windows MinGW32 Installer. Please read the Readme.txt in the archive file to install.

をご利用ください。

Topに行く。


09/05/31

MinGW 版 Octave-3.0.5 for Windows 情報 (06/25 補足)

MinGW 版 Octave-3.0.5 for Windows の情報です。

http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=287261

エディタについては,09/05/22を参考にしてください。

Less での日本語表示については 08/03/20 を参考にしてください。(06/25 補足)

中身は

  • GNU Octave, version 3.0.5 (i686-pc-mingw32)
  • atlas 3.8.3 libraries (atlas librariesが高速になっています。 )
  • mingw32 (TDM GCC 4.3.0-2)
  • gnuplot Version 4.3.0-2008-11-21 CVS patchlevel 0 octave-mingw32
  • mini-MSYS 1.0.11
  • notepad++ 5.3.1 as text editor
  • Some componets of octave-forge packages (20080831)
    • audio-1.1.2
    • benchmark-1.0.0
    • bioinfo-0.1.1
    • combinatorics-1.0.7
    • communications-1.0.8
    • control-1.0.7
    • data-smoothing-1.1.1
    • econometrics-1.0.7
    • financial-0.3.0
    • fixed-0.7.8
    • ga-0.9.4
    • general-1.0.7
    • gsl-1.0.7
    • ident-1.0.6
    • informationtheory-0.1.6
    • io-1.0.7
    • irsa-1.0.6
    • linear-algebra-1.0.6
    • miscellaneous-1.0.7
    • missing-functions-1.0.1
    • nnet-0.1.8
    • odebvp-1.0.5
    • odepkg-0.6.4
    • optim-1.0.4
    • optiminterp-0.3.1
    • outliers-0.13.8
    • physicalconstants-0.1.6
    • plot-1.0.6
    • signal-1.0.8
    • sockets-1.0.5
    • specfun-1.0.7
    • special-matrix-1.0.6
    • splines-1.0.6
    • statistics-1.0.7
    • strings-1.0.6
    • struct-1.0.6
    • time-1.0.8
    • vrml-1.0.7
    • zenity-0.5.6

インストール時のATLASについては,原則自動検出で選択されたものでいいです。 HT-Pentium は SSE3 対応なのですが,Core2Duo(SSE3) と表示されていますが,そのままで 結構です。Octave-3.0.2版にくらべかなり,性能がいいと思います。

Octave-Forge のパッケージで比較的使用者の多いと思われる,image パッケージが含まれていません。 'pkg install' コマンドでインストールできます。ただ,最新版のimage パッケージ image-1.0.9 は, Octave 3.1.x 用なので,image-1.0.8 を使用する必要があります。 octave-forge packages (20080831)のimage-1.0.8 にはバグがあるので, 私が,バグを修正したものとその使い方を書いたものを アップロードしてありますので,そちらをお使いください。

http://www.tatsuromatsuoka.com/octave/Eng/Win/

image-1.0.8p.zip, corrected image-1.0.8 package for Octave 3.0.5 for Windows MinGW32 Installer. Please read the Readme.txt in the archive file to install.

をご利用ください。
なお,Readme.txtに書いてありますが,パス名に半角スペースのあるフォルダ(C:\Program Files\ など)に Octave のバイナリーをインストールすると,'pkg install' が使用できないようです。 その場合,いったんアンインストールして,パス名に半角スペースのないフォルダ(C:\Programs\ など)に octave を再インストールしてください。

Topに行く。


09/05/22

MinGW 版 Octave-3.0.5 for Windows がでました(09/06/12修正)

ついに,MinGW 版 Octave-3.0.5 for Windows がでました

http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=287261

まだ,インストールをしたばかりなので,詳細は追って書きます。 MSVC 版 は,09/04/08に書いたようもう配布されませんので,MinGW 版が正式版となります。

エディタについては,以前紹介したようにバンドルされている Notepad++ (英語版)では, ツールバーのFormat→Encode in UTF-8を指定すればいいようです。

日本語をSJISで使うには MSVC 版にバンドルされていた SciTE を
08/07/15 2. SciTE1.76について(09/07/03修正)』を 参考にして日本語を扱えるようにして使うか,
(参考情報 『08/12/04 SciTE 1.77について』補足情報)
08/12/16 NotePad++ EUC-JP 対応版について(09/07/03修正)』に詳細を記載した EUC-JP 対応版 NotePad++ をお使いください。

なお,SciTEは最新バージョンは1.78になっています。

Topに行く。


09/05/06

MinGW 上での Octave のビルドキットの配布を初めました

Octave を自分でビルドして使うことは,一般には必要のないことだとは思いますが, 多次元偏微分方程式の解法などのように比較的大規模な行列計算が必要となる場合もあります。 この場合,高速化のために使用しているコンピュータのCPUに最適化した BLAS(Basic Linear Algebra Subprograms)を 使用することは,いまや数値計算の世界では常識となっています。 幸い現在では,ATLAS (Automatically Tuned Linear Algebra Software)や テキサス大学の後藤研究員が中心となって開発した GotoBLAS など 優れた最適化 BLAS がフリーで使用できます。 (ただし,ATLAS と違い GotoBLAS は,ライセンス条項にかなりの制限がありますので ライセンスをちゃんと読んで使用してください。 09/03/1609/03/17を参照。)

これらを利用するためには,使用者自身のコンピュータで最適化 BLAS をビルドし, それとリンクした Octave を自分でソースコードからビルドするという作業が必要です。

Unix 上では,ユーザーが自分でソースからソフトウェアをビルドすることは, それほどめずらしいことではありません。Windows 上でも最近は,Cygwin という Linux (大雑把にいってUnix の種類の一つ) のAPI (Application Programming Interface)を提供し,Unix 上のソフトを実行可能にした システムの上ではOctave のビルドは,比較的容易にできるようになっており, 以前このページでも紹介しています。(09/03/1609/03/17

しかし,Octave のようなもともと Unix 上で開発されたソフトウェアを Windows 本来の API だけでな開発するためのシステムである MinGW + Msys 上では,これらはそれほど容易なことではありません。 Unix API上にあり,Windows API 上にない機能については,Octave ソースそのものを書き換えることが 一番大変なことですが,これについては,Michael 氏や Benjamin 氏の努力で Octave ソースに組み込まれるように なりました。それでもなお,Octave をビルドするための周辺のライブラリやプログラムを そろえることは,容易ではありません。

以前,Benjamin 氏の MinGW 版のOctave が公式リリースされるまで, MinGW 上でのバイナリを試験的に配布していた経験を生かし, MinGW 上での Octave のビルドキットの配布をすることにしました。 今回,コンパイラをGCC-4.3.3-dw2-TDMに変更し,ライブラリを全面的にビルドしなおしています。

File list of Octave for Windows の

0005 OctaveBuild.zip (kit 本体)と 0006 ReadmeBriefOctBuildMingw.html (仕様書)が相当します。

見ればわかると思いますが,英語です。これは,このような情報は日本だけではなく世界中で不足しているので 英語で書いてあります。日本語に訳す気はありませんので,ご了解ください。 なお,そこにもかいてありますが,懇切丁寧には書かれていません。MinGW や Msysという言葉が,当たり前のように わかる人やわからなくても 自分で調べて何とかしようというような覚悟のある人むけです。 もともと,Octave を自分でビルドするということは, それなりの高いレベルの計算が必要な人か, よっぽどの好き者(私はどちらかというと後者ですが^^;)以外には労力が大きいのでお勧めできないからです。

もし,このビルドキットに質問がある場合は,Octave ML の help_at_octave.org (_at_=@) か 「データ解析ツールoctaveを語ろう」 で行ってください。このようなことに関する質疑応答は,公開された場所で行われることにより,多くの方に 情報提供をおこなうことになるからです。個人のアドレスに質問されたかたは,上記のいずれかに勝手に あげることがありますことをご了解ください <m(__)m>。

Topに行く。


09/04/27

MSVC 版 Octave のバイナリが配布中止

MSVC 版 Octave にライセンス上の問題があり配布が中止になりました。

議論の始まりとなったスレッド "No symbolic package in future (Windows/VC++) releases"

そのスレッド中でのMichael氏からのMSVC版の削除の報告

困ったこと :-( ではありますが仕方ありません。 VC++のランタイムライブラリを Octave パッケージに入れて配布することがだめだったようです。 MSVC 版の配布を続けるには,VC++のランタイムライブラリを含めない形にして, VC++のランタイムライブラリは,Microsoft のインストール先を示すなどして, ユーザーが別にダウンロードしてもらう形式にするべきだったようです。

将来の octave では lapack 3.2 を採用の計画があります。Lapack 3.2 は fortran90 を使用します。 MSVC では Fortran のソースコードは,f2c 使ってコンパイルしておられましたが,f2c は fortran90 に対応していないため,MSVC では将来的に Octave のビルドはできなくなります。 それで,Michael 氏は,octave の次のバージョン(3.2)にむけて, MinGW への切り替えをすでに決めていらっしゃいます。

http://www.nabble.com/Re:-Octave---Fortran-continued-p21249982.html

そのため,VC++のランタイムライブラリの削除版を再パッケージ化して配布する気はないようで単に, 配布停止となったようです。 08/10/15 に紹介している MinGW 版 (3.0.2) をお使いください。

このパッケージに入っている octave のショートカットで出てくるコンソール画面は 日本語に対応していないので,日本語の表示が必要な方は octave.exe に対し自分でショートカットを 作り直してください。作り直したショートカットを右クリックするとプロパティがでます。 「ショートカット」タブでアイコンの変更ができるほか,各種変更ができます。「オプション」タブでは, 「編集オプション」の簡易編集モードを使うとマウスの右ボタンを使った範囲指定やコピー,ペーストができる ので便利です。そのほか,プロパティで「フォント」,「レイアウト」,「画面のサイズ」, 「画面のバッファのサイズ」なども変更できます。 適宜カスタマイズして使ってください。

エディタについては,バンドルされている Notepad++ (英語版)では,日本語はutf-8のみ正しく扱えるようです。

日本語をSJISで使うには MSVC 版にバンドルされていた SciTE を
08/07/15 2. SciTE1.76について(09/07/03修正)』を 参考にして日本語を扱えるようにして使うか,
(参考情報 『08/12/04 SciTE 1.77について』補足情報)
08/12/16 NotePad++ EUC-JP 対応版について(09/07/03修正)』に詳細を記載した EUC-JP 対応版 NotePad++ をお使いください。

なお,Benjamin氏がMinGW版で3.0.5のリリースを予定されているそうです。

http://www.nabble.com/Re:-Windows-build-p23245285.html

Topに行く。


09/04/15

Octave 3.0.5 でました

09/04/08のメモに書いた Octave 3.0.5 がでてました。 以下はソースのダウンロード先です。(バイナリではないので注意!!)

http://www.gnu.org/software/octave/download.html

Topに行く。


09/04/08

Octave 3.0.4 にバグが見つかり,3.0.5が出るようです。

Octave 3.0.4 に割と大きなバグが見つかりました。3.0.xは,これで最後なので, 開発版に取り入れられたパッチのバックポートやコードの整理をすすめて結果,3.0.4の RC(Release Cadidate)はRC7までいったのですが,隠れた見落としがあったようです。

http://www.nabble.com/Possible-bug-in-"load"-function-in-octave-3.0.4-td22892300.html

というわけで3.0.5を出すべきだという議論になり,3.0.5RC1がでました。

http://www.nabble.com/3.0.5---td22924551.html

http://www.nabble.com/3.0.5-rc1-td22926230.html

ボランティアベースのプロジェクトなのである意味仕方ないとこともありますので, 開発グループを温かい目で見てやってください。逆にバグなどを発見したときは,MLで報告 していただくことで,octaveプロジェクトに貢献していただくことになると思います。 ユーザーからのフィードバックがあってこそのプロジェクトだと思います。

バグをらしきものを発見したが,英語に自信がないという方は, 「データ解析ツールoctaveを語ろう」 に書き込んでください。内容をそこで議論し,本家にあげる必要ありとおもった場合は, 本家にあげるよう努力したいと思います。

Topに行く。


09/04/02

Octave 3.0.4 のソースが公開されました

http://artax.karlin.mff.cuni.cz/~hajej2am/ulozna/octave/

Octave の公式ページには,そのうち公開されるでしょう。基本的にはバグフィックスが中心です。 3.0.4 は,3.0.x シリーズ最後のバージョンになる予定です。 これからは,Ver 3.2に向けて3.1.xの開発版での作業が中心となると思います。

http://www.nabble.com/3.0.4-release-td22822789.html

なお,

http://www.nabble.com/Re:-Octave---Fortran-continued-p21249982.html

にあるように,開発版では,MichaelさんのMSVCでの仕事とBenjaminさんのMingw版での仕事は Mingwをつかった開発に移行すると思われます。 そのため,MSVC版は3.0.3で終了し,3.0.4ではMingw版がリリースされると踏んでいます。

Topに行く。


09/03/17

OctaveへのATLAS組み込みについて(マルチコア CPU の場合)

「データ解析ツールoctaveを語ろう」 で行列計算の高速化について議論していました,ATLASもMulti-coreに対応していることが分かりこれを利用すれば Core2Duoなどで大変高速に行列演算ができることがわかりました。

823, 824番のスレッドにその結果が報告されています。それによると ATLAS と GotoBLAS はほぼ同じ程度の性能が出せることが分かりました。ただし,GotoBLAS より組み込みは手間と時間を要します。 Windows に ATLAS と CBLAS をインストール(Windows 上の Cygwin にインストール) に詳しい解説があります。

ATLASはGotoBLASとは違い BSD-style license で条件を満たせばバイナリの再配布が可能で同じCPUを使っている 方に自分がビルドしたライブラリを渡せしたりできるため,その点からの使いがってはいいです。 ライセンスの詳細は以下をご覧ください

What software license does ATLAS use (AKA: in what ways and for what purposes am I allowed to use ATLAS)?

私もMinGW で multi threads のATLASの組み込みに現在トライしています。 うまくいきましたら報告をしたい思います。

Topに行く。


09/03/16

ATLASやGotoBLASの組み込みによるOctaveの行列計算の高速化について

「データ解析ツールoctaveを語ろう」 755番の書き込みに http://hiyokoz.blogspot.com/2008/04/octave.html に記載されたMacのAccelerate frameworkの速さの記事が話題になりました。 その後のスレッド上でWindows上でもATLASGotoBLAS (Gotoは'後藤'先生のGotoであってgo to ではないです。 実は,私はずっとgotoだとおもっていました^^;)について議論され,Windows上でもATLASやGotoBLASの組み込みにより かなりoctaveで行列計算の高速化ができることが分かりました。GotoBLASはHyper Threadingでは それほど威力を発揮しないものの物理コアのあるCore2Duoではかなりの威力を発揮するようです。 (Core2quadではもっといいのはと思いますがHT Pentiumの私にとっては試すことができません。)

投稿者の方は,810番のスレッドでWindows に Octave バージョン 3 と octave-forge をインストール(ソースコードからビルド.Windows 上の Cygwin にインストール を紹介されました。大変丁寧に書かれていて非常に参考になります。Cygwin版のOctaveもgcc-4がでて昔のようにインタープリタが遅いということもなくなりましたので,現状ではCygwinでのOctaveでGotoBLASを組みこんで使うのがよいと思います。

ただし,GotoBLASは,学術用,研究用,試験用,個人用にはフリーですが組み込んだバイナリーを配布するには テキサス大学からライセンスを買う必要があります。このため,フリーで使うためにはソースからのビルドをする 必要があります。

私はmingwでGotoBLASの組み込みに現在トライしていますが, Lapackの組み込みが思うようにいかずmake checkの疎行列のテストでハングアップして,成功していません。 ただし,ATLASなら,現在組み込みに成功しています。私の自宅で使っているCeleron M 1.2 GHzの場合は GotoBLASよりATLASの方が高速でした。そのため,ATLAS だけの記事でも意味はなくはないと思い, ライブラりの再構築を始めています。

なお,バイナリー配布の MSVC 版や MinGW 版の Octave には ATLAS が組み込まれていますが, 配布者のコンピュータに最適化されたものなので,やはり自分のパソコンで最適化したものにはかないません。 通常の使用では,バイナリー配布のOctaveで十分だと思います。ただ,大規模な偏微分方程式の解法などでは大規模な行列計算を行う必要があり,行列計算の高速化は非常に価値が高いので,そのような方にはお勧めです。

Topに行く。


09/01/31

Cygwin版octaveが3.0.3になりました

Cygwin版octaveが3.0.3になりました。リンクリストの ・Cygwin Information and Installationからcygwinのページにいき,cygwin setupでインストールしてください。

ただし,パッケージの時のエラーによりmkoctfileが動きません。 当然pkg installも動かないでしょう。しかし,簡単にフィックスできます。Cygwin のプロンプトから

$ mv /usr/lib/octave-3.0.3/libctave.dll.a /usr/lib/octave-3.0.3/liboctave.dll

と打てば簡単に動作するようになります。また,すぐにフィックスされるでしょう。

今回は初めからgcc-4(gcc-4.3.2 dw2)でコンパイルされているので, Windows Native版にはかないませんが,そこそこのパフォーマンスも出ます。 また,周辺のSuiteSparse,glpkなどのライブラリも更新されています。 これにより,自分で簡単にソースからoctaveをビルドできます。ソースを解凍したしてディレクトリから

$ CC=gcc-4 CXX=g++-4 F77=gfortran-4 ./configure
$ make
$ make check
$ make install-stirp

で簡単にインストールできます。

自分でビルドする利点は,自分のマシンに対する最適化ができる点にありますので, この点については,いずれ改めて書きたいと思います。

Topに行く。


08/12/16

NotePad++ EUC-JP 対応版について(09/07/03 修正)

Benjamin氏による Mingw 版の Octave にはスクリプトエディターとして Notepad++ がついてきます。 (08/10/05 1. Octave Forge MinGW Windows (Benjamin氏による正式版)がリリースされました  を参照のこと) Notepad++ は,プログラマー向けのパワフルなエディタとして最近注目を集めているようです。 もちろん Matlab スクリプト用のシンタックハイライトに対応しています。 ただし,日本語は,utf-8やsjisでは使えるですがsjisの場合カーソル移動時に文字化けするなどの 難点があるようです。

NotePad++ EUC-JP 対応版は, EUC-JP をサポートしているだけでなく, 「カーソル移動時に,一部の日本語表示が化けるのを修正(EUC-JP,SJIS)」, 「ショートカットをドラッグすると,リンク先を開くよう変更」がなされているようです。

Windowsユーザーの方でOctaveのスクリプトを NotePad++ で入力し, コメントや文字列などで日本語の入力をされたい方には,お勧めです。

download したものを解凍するとansi版とunicode 版のそれぞれのフォルダができます。 ....\3.x.x_gcc-4.3.0\tools\notepad++のファイルをすべてNotePad++ EUC-JP 対応版のunicode 版 のファイルで置き換えてください。細かい設定は,SciTEとは違いメニューでできるのでお好みで変更してみてください。

http://notepad-plusplus-euc-jp.hp.infoseek.co.jp/

Topに行く。


08/12/04

SciTE 1.77について

MATLABモードでコメントや引用符で閉じたところ以外に全角文字を書くと SciTEが異常終了するというバグがありました。SciTE1.76では完全ではないものの このバグが修正されていると報告しました。 (08/07/15 2. SciTE 1.76について を参照のこと)

SciTE 1.77.ではこのバグがさらに修正されており, 昨日から使っていますが全角文字をコメントフィールドや 引用符のなか以外で全角を書いても今のところ落ちたことがないです。 ぜひ,Windowsユーザーの方でOctaveのスクリプトをSciTEで書いている方は バージョンアップを強くお勧めします。

http://www.scintilla.org/SciTEDownload.html

Windows → Windows Executables → A full download (830k)の「full download」をクリックすると 'wscite177.zip'がdownloadできます。カスタマイズの方法は 08/07/15 2. SciTE 1.76について を見てください。

ただし,フォントのサイズは例ではMSGOTHIC, size:10 にしていますが,カンマが見にくい ですのでMSGOTHIC, size:11がいいかもしれません。好みにもよりますので,各人で調整してください。

Topに行く。


08/11/24

Octave 3.0.3 Octave 3.0.3 for Windows Installer (MSVC版)がリリースされました(11/25修正)

http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=40078

かなり時間をかけて,Michaelさんが準備されていたので完成度は高いと思います。 主な変更点は以下の通り,

  • Octave DEの見送り。GUIを使いたい人は,QtOctaveを使いましょう。(リンクリスト参照のこと。)
  • CVS版のgnuplotを採用。gnuplotで2Dのグラフのマウスによるズームが可能です
  • SciTEが1.76になっていること。(日本語入力時のハングが,だいぶ解消されています。)
    08/07/15 2. SciTE 1.76についてを参照のこと)
  • playrec package (record and play sounds under Windows)がついていること
  • MSVC-2008 Express Edition でビルドしてあること
詳しいことは以下のリリースノートを参考にしてください。

http://sourceforge.net/project/shownotes.php?release_id=642199&group_id=2888

Topに行く。


08/10/05

1. Octave Forge MinGW Windows (Benjamin氏による正式版)がリリースされました

http://sourceforge.net/project/showfiles.php?group_id=2888

BenjaminさんのMingw版Octave(3.0.2+forge 20080831)ががついにアップロードされました。 GCC-4.3.0-tdm-dw2でビルドしてあり,GCCとminiMsysがつくことからmkoctfileのために MSVC Express Edtion のような容量を要する言語を導入する必要がないため, mkoctfileを使いたい人には,こちらのほうがお手軽でお勧めです。

gnuplotは4.3(CVS版)をコンソールモードで動くgnuplotをpgnuplot.exeとして添付してあり, マウスによる2Dプロットのズームが使えます。やはり,gnuplotはマウスズームがきかなくてはという人にもお勧めです。

Octave-forge-20080831のサポートは部分的であり,あとは自ら開発環境をつかってpkg installを使って インストールする必要があります。実装されていないパッケージは,あまり一般的には使用しないものが多いですが, これらは外部ライブラリを必要とするなどするものが多く,この点では玄人好みのバージョンといえるでしょう。

なお添付されるエディタはnotepad++ 5.0.3です。SciTEが使いたい人は, .../share/octave/3.0.2/m/startup/octavercでのEDITOR関数の設定を変更してください。

Octave-forgeのサポートなど,より詳しい情報は,以下のOctaveForgeのMLのBenjamin氏のアナウンスをご覧ください。

http://sourceforge.net/mailarchive/forum.php?thread_name=48E3C35E.7020200%40gmx.net&forum_name=octave-dev

2. Octave 3.0.3 のソースが公開されました

http://artax.karlin.mff.cuni.cz/~hajej2am/ulozna/octave/

Octave の公式ページには,そのうち公開されるでしょう。基本的にはバグフィックスが中心です。Michael氏はおそらく この3.0.3でMSVC版のUpdateをするのではと踏んでいます。

Topに行く。


08/09/23

1. Mingw版 Octave-3.0.2 + Octave-forge-20080831のバイナリを配布しました

MSVC版は3.0.2は出ないそうです。BenjaminさんのMingw版Octaveがまだでないので 痺れをきらして, Mingw版 Octave-3.0.2 + Octave-forge-20080831のバイナリを配布することにしました。

http://www.tatsuromatsuoka.com/octave/Eng/Mingw/

Benjaminさんが,Mingw版のOctaveを出すことを信じて,一応私からは最後のバイナリ配布と位置づけています。

2. cygwin用Octave 3.0.2-2 + forge 20080831-2が setupから,インストール可能になりました

http://cygwin.com/

cygwin用Octave 3.0.2-2 + forge 20080831-2は,gcc-4による高速版ですが,cygwin setupでインストールできるようになりました。 カテゴリはMathで,expの○ボタンを選択してインストールします。

Topに行く。


08/09/17

Marco Atzeri氏によるOctave 3.0.2 + forge 20080831 cygwin公式版と gcc-4による実験版について

cygwin公式版の3.0.2+Forge20080831がリリースされました。

http://cygwin.com/


からsetup.exeを利用し,Math Categoryからインストールしてください。

cygwinのgcc-3.3以降では,例外処理が遅くなるsjlj EH(Exception Handling)問題があり, 私が,gcc-3.2で使われていた例外処理であるdwarf2 EH版のコンパイラを自力で ビルドしてこれまで,遅くならない非公式版octaveを出してきました。

最近,アルファ版ですがgcc-4(4.3.2)がでてこれでOctaveがビルドできることがわかりました。 gcc-4は,dwarf2 EHを用いるので私のバイナリとほぼ同程度の速度がでてより安定なOctaveがビルドできます。 Marco Atzeri氏は,このgcc-4による3.0.2++Forge20080831を実験版としてリリースされています。

http://matzeri.altervista.org/

から,Octave-3.0.2-2とOctave-forge-20080831-2をダウンロードしてください。

このリリースにより私が続けてきた非公式版cygwin版octaveは,その役割を終えたといえます。したがって,私のページは 近いうちにどじます。これからどうするかは未定ですが,せっかく続けてきたので何らかの形の貢献を考えています。 なお,公式リリースではgnuplotは4.3.2を用いるためマウス・ズームができません。 マウス・ズームを使うためには,gnuplotは4.3(cvs)版を用いなければなりません。 これにつきましては私のgnuplotのページからダウンロードできますのでマウスによるズームを使いたい方は以下から ダウンロードしてください。

http://www.tatsuromatsuoka.com/gnuplot/Eng/cygbin/

Topに行く。



08/09/05

Octave 3.0.2 + forge 20080831 on cygwin (by gcc-dw2)の修正

vrml (main) と symband (extra)がForgeに入ってなかったのと気づき,また,新たにftp (main)の
ビルドに成功したので,全体を書き直したものと, vrml, symband, ftpのプレビルドしたものそれぞれを
tar.bz2でアーカイブしたものをおきました。

http://www.tatsuromatsuoka.com/octave/Eng/Cygwin/


Topに行く。



08/09/01

Octave 3.0.2 + forge 20080831 on cygwin (by gcc-dw2)のリリース

octave-forge-bundle-2008031が0824版の修正版としてリリースされました。
このforgeを利用してOctave 3.0.2 + forge 20080831 on cygwin (by gcc-dw2)をリリースしました。

http://www.tatsuromatsuoka.com/octave/Eng/Cygwin/


マニュアルにグラフがつくなど,細かい改良がなされているようです。

Topに行く。



08/08/26

Octave-3.0.2 とoctave-forge-bundle-20080824のリリース

Octave-3.0.2 とoctave-forge-bundle-20080824がリリースされました。
各メインテナーは3.0.2自体の準備はできていますので,ForgeのつかないMac OS X用のバイナリは
すでに配布されてます。Windows版はいずれもForgeがつくのでForgeの準備をしているところだと思います。
私も,cygwin用バイナリ(gcc-dw2版)のForgeと格闘しています。

Topに行く。


08/08/13

開発版のMSVC Octave-3.1.50 のgnuplot-4.2.3を使用する

MSVC Octave-3.1.50にバンドルされているgnuplotは4.2.3です(MSVC-octave3.0.1情報参照)
これを使用することにより,print('hoge.emf', '-demf')で,グラフをemf形式で保存できます。
emf形式は,Winfdowsの標準グラフィック形式なのでOfficeソフトなどに容易に貼り付けることができます。
ベクターフォーマットなので後からの加工もできます

まずOctave-3.1.50をインストールします。
すでにoctaveがインストールされているのでインストールしようとすると警告がでます。
インストールするフォルダー名を違うものにすれば問題ないです。
たとえば,いままでのoctaveが'C:\program Files\octave'にインストールされているならば,
'C:\program Files\octave-3.1.50'にインストールしてください。このときVS2008をインストールしていない方は
Cのランタイムライブラリもインストールを忘れずに。
あとは,'C:\program Files\octave\share\octave\site\m\startup\octaverc'に

 gnuplot_binary('C:\progra~1\octave-3.1.50\bin\pgnuplot')
 
を記述してセーブしてください。
なお,Octave-3.1.50を使用しない場合,binフォルダーにあるもの以外消去してかまいません。
 
また,Octave-3.0.1-vs2008をインストイールしてある場合は,C:\program Files\octave-3.1.50\binにある
wgnuplot.exe,pgnuplot.exe,pgnuplot_win.exe,wgnuplot.mnu,wgnuplot.hlpをコピーして,
Octave-3.0.1-vs2008のインストールされているbinフォルダーにあるものと置き換えるだけで結構です。

Topに行く。


08/07/21

開発版のOctave-3.1.50 MSVC版がでました。

Ver.3.2(正式版)を目指した。Ver 3.1のリリースが,公式に始まり,Octave-3.1.50のソースが
配布されました。Michael氏は早速MSVC版のリリースをされました。
目玉はOpenGL/FLTKによるgraphics backendの実験的な実装です。

http://sourceforge.net/project/showfiles.php?group_id=2888

OpenGL/FLTKによるgraphics backendの使い方などの,詳しいことは,リリースノートをご覧ください。

http://sourceforge.net/project/shownotes.php?group_id=2888&release_id=614662


 Topに行く。


08/07/15(09/07/03修正)

1. MSVC-octave 3.0.1 情報

Jhandlesでのprintコマンドについて
 Jhandlesをグラフックバックエンドにした場合。print commandはpostscriptしかサポートしていません。  他の形式に変換するには,ghostscript, pstoeditなどが必要です。

Jhandlesとgnuplotを両方インストールした場合の切り替え

 gnuplot-->Jhandles 
  octave>pkg load jhandles

 Jhandles-->gnuplot 
  octave>pkg unload jhandles 

gnuplotでもprint('hoge.emf', '-demf')はこける。(emf形式のグラフが作成できない。)
 これは,MSVC-Octaveがgnuplotが4.2.2だからです。gnuplot 4.2.3では起こりません。  したがって,cygwin版octaveやMSVCでもcygwin版gnuplotを使えば起こりません。  次のリリースでバンドルするgnuplotを4.2.3に修正するそうです。

以上の情報はOctave本家のMLでMichael氏に直接確認したものです。 なお,MSVCでcygwin版gnuplotを使うには,以下をご覧ください。

http://www.geocities.jp/tmoctwin/gp43X11msvc.html

2. SciTE 1.76について(09/07/03修正)

SciTEは,windows上でcygwinでEmacsを使用する場合を除いて,Octaveのスクリプトを編集するためには, 使いやすいなテキストエディタの一つです。 ただし,MATLABモードでコメントや引用符で閉じたところ以外に全角文字を書くと SciTEが異常終了するというバグがありました。SciTE 1.76では完全ではないもののこのバグが修正されています。 (バージョンがあがるごとにバグはよくなっていますが,ver. 1.78 でも完全ではありません 09/07/03)

http://www.scintilla.org/SciTE.html

Windows → Windows Executables → A full download (xxx k)の「full download」をクリックすると 'wscite1xx.zip' がdownloadできます。

これを解凍すると wscite というフォルダができますので,これをたとえばC:\Program Filesに移動します。 次に (Octaveをインストールしたフォルダ)\share\octave\3.x.x\m\startup\octaverc の最終行に

EDITOR('C:\Progra~1\wscite')

を加えてください。

以前06/05/27にも書きましたが,日本語表示のためにはカスタマイズが必要です。 その当時より少し変更していますので,改めてSciTEUser.propertiesの設定を書きます。

#*****ここから
# For Japanese version Windows, We must set or override code.page=932
# and character.set=128.
  code.page=932
  character.set=128
# 固定幅フォントでMSGOTHIC, size:11を設定
  font.monospace=font:MSGOTHIC,size:11
# 固定幅フォントでTerminal, size:10を設定する場合 (参考です)
#  font.monospace=font:Terminal,size:10
  font.base=$(font.monospace)
  font.small=$(font.monospace)
  font.comment=$(font.monospace)
  font.text=$(font.monospace)
  font.text.comment=$(font.monospace)
  font.embedded.base=$(font.monospace)
  font.embedded.comment=$(font.monospace)
  font.vbs=$(font.monospace)
# 行番号も初めから表示。基本三桁、必要なら桁を増やす。
  line.margin.visible=1
  line.margin.width=3+
# Octave用設定
  tab.size.*.m=4
  indent.size.*.m=4
  open.suffix.*.m=.m 
  Octave|m||\
# 必要?
  edge.mode=2
#wrap  
  wrap=1
#選択時の色の調整
selection.alpha=256
selection.back=#A0A0F0
#ツールバーを表示
 toolbar.visible=1
#ステータスバーを表示
 statusbar.visible=1 
#起動時のWindowの設定
 position.left=500
 position.top=300
 position.width=800
 position.height=600
#eolをLFに
 eol.mode=LF
#eolを表示
 view.eol=1
#white spaceを表示
 view.whitespace=1
 view.indentation.whitespace=1
#**********ここまで

また,matlab.propertiesの12行目(付近)
file.patterns.octave=*.m.octave

file.patterns.octave=*.m;*.m.octave
に変更する必要があります。

なお,SciTE 日本語翻訳 & 1.62+ パックの使い方

http://h12u.com/scixx/about162plusjpn.html

「jalocale - メニューの日本語化ファイル」(locale.properties) をSciTEをインストールしたフォルダー(たとえば c:\Program Files\wscite) にコピーすればメニューが日本語化されます。

 Topに行く。


08/06/29

1. Page を移転しました


メンタル面の不調により更新をお休みしておりました。
新たにサーバーをレンタルし,こちらに移動して参りました。
今後ともよろしくお願いします。

http://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html


2. VS2008 expess ビルドのMSVC Octave 3.0.1がでました


Microsoftの配布するフリーのVisual Studioが2008にバージョンアップされたのに伴い,
http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=40078
VS2008でビルドしたOctave 3.0.1がでました。octave-3.0.1-vs2008-setup.exeというファイル名で配布されています。
Intel系CPUではSSE3に最適化されているため,SSE3がサポートされていないPCには通常のバージョンをおすすめします。
詳しくはリリースノートで

http://sourceforge.net/project/shownotes.php?release_id=597120&group_id=2888


3. Cygwin版公式版 Octave 3.0.1がでました


08/04/04の記事で紹介した,Marco AtzeriさんがCygwin公式版 Octave 3.0.1をリリース
されました。Cygwin setupでCategory Mathよりインストールしてください。

http://www.cygwin.com/

 Topに行く。


08/05/08

Octave-3.0.1 MSVC-buildのリリース


Octave-3.0.1MSVC-buildがリリースされました。
今回の目玉はMichael氏によるGUIインターフェースです。(アルファ版ですが)
また,Octave-forgeもだいぶ充実しています。
私のバイナリは,....^^;新しいforgeにてこづってます。今しばらくお待ちを。


 Topに行く。


08/04/22

Octave-3.0.1のリリース


Octave-3.0.1がリリースされました。現在,ビルドおよびテスト中です。cygwin版,mingw版を早めに
アップロードできるようにしますが,octave-forgeがでた後になると思います。
Davidさんは,3.0.1がでてらそれほど間をおかずに出すいわれていたのでそれほど時間はかからないと思います。
Octaveのソースのダウンロードのページに行くと気づかれると思いますが,今回はstable3.0.1があるだけです。
実は,次なるバージョンを目指した3.1ブランチが,開発レポリジトリにはできているようです。

 Topに行く。


08/04/07

QtOctaveのメニューについて


私は,個人としてはあまり使わないのですが,GUIがほしいといわれるとQtOctaveを勧めています。
ところでヘルプを呼んでみるとメニューのカスタマイズも可能なようです。
うまくいくかどうか分かりませんが,メニューの日本語化も可能かもしれません。
挑戦するような方がいるといいなと勝手に思っています。
うまくいっても行かなくても結果を,私に連絡していただくか,
村上先生のHPの掲示板(リンクリスト参照)にアップしていただけるとありがたいです。

 Topに行く。


08/04/05

3.0.1 release?

http://www.nabble.com/3.0.1-release--to16461978.html

jwe(John W. Eaton)氏が3.0.1aのテスト用のプレリリースをOctaveのmaintainersのMLだされました。
私は,cygwinとmingwでビルドして報告しました。一つのソースにwin32 nativeのコードのヘッダー
(windows.h)の取り込みなされていない点を指摘した以外,に問題はありませんでした。
3.0.1のリリースは近いです。
なお,いまMichaelさんが休暇中なのでMSVCでのビルドに挑戦したいというつわものがおられましたら,
スレッドに書かれているURLからソースをダウンロードして結果をOctaveのmaintainersのMLで
報告してみてください。

 Topに行く。


08/04/04

Marco Atzeriさんのoctave on cygwin

http://http://matzeri.altervista.org/

Marco Atzeriさんがoctave-3.0.xシリーズのcigwin portについて準備中です。
standardなgccでビルドしてあるので,遅いのは否めませんが,私のバイナリより安定しています。
cygwin1.dllの改良のせいか旧2.1.73よりは若干速いようです。ハードな用途でなければ十分に使えるでしょう。
早くcygwinの公式portになればいいなと思います。
私のバイナリは,cygwinチームが例外処理のslowness issueを解決するまでは,challegingなdistributionとして
配布を続けていきます。

 Topに行く。


08/03/30

OctaveのIDE

http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-1150.html

http://sourceforge.net/projects/octclipse/

今,OctaveのMLでGUIに関する議論が盛んですが,その話題ででてきたOctave用IDEです。
Windows版もあります。起動してみただけですが,Visual Studioにも似た外観でなかなか本格的な雰囲気でした。


 Topに行く。


08/03/20(08/03/21 修正)

lessについて

Octaveは,標準でpagerのlessを使ってページごとの表示をします。これまでは,英語での表示 しか使わなかったので気にはしていたのですが,無視していた問題があります。 そのままでは日本が化けるという問題です。 しかし,最近のlessは,多言語対応になっており,Unix 由来のソフト に共通のロケールのLANG環境変数などを正しく設定すれば,文字化けしないことに 気づきました。

Windows Nativeのlessでは,LANGにja_JP.SJISを設定すればいいです。いろいろ方法があります。

1. Windows自体の環境変数を設定する。
マイコピュータのを右クリックしてシステムのプロパティを立ち上げ,詳細設定,環境変数の設定
で設定しておけばいいと思います。「環境変数の設定」がよくわからない人は,
http://www.nsknet.or.jp/~tony/TeX/install/win/gs.htm#nt

参考にしてください。

2.バッチファイルなどで行う。
また,octaveのスタートアップをバッチファイルなどで行っているかたは,

set LANG=ja_JP.SJIS
をバッチファイルに加えてください。WSHをなどをお使いの方は猛者なので説明は不要でしょう。

3.Octavesで設定する。
octaveには,putenvという関数があり,環境変数を設定できますのでこれを,起動時の設定ファイルに

putenv('LANG','ja_JP.SJIS');
を設定します。

octaveの設定ファイルは,
(Octaveをインストールしたフォルダ)\share\octave\site\m\startup
(Octaveをインストールしたフォルダ)\share\octave\3.0.0\m\startup
にそれぞれ,octavercがあります。
ユーザーのホームディレクトリにファイル'.octaverc'を自分で作成することができます。 (エディタで名前をつけて保存で作成してください。explorerからは作成できません。)

現在のwindowsでのoctaveの設定では,バージョンの異なるoctaveを 同じフォルダーに入れることはないで最初の2つの区別は実質ありません。 ただし,()\share\octave\3.0.0\m\startupは,octave自身が設定をいれており また,octaveのそれぞれのパッケージャーが扱っているところです。 上の2つの前者,後者いずれも,これらで行った設定は全ユーザーに影響を与えます。 設定を自分だけにしたい場合は,'.octaverc'に設定してください。 この場所がわからない場合は,octaveのプロンプトから

octave> tilde_expand('~/.octaverc')
ans = C:\Documents and Settings\Tatsu/.octaverc
で場所を知ることができます。

このページでも紹介した,ckw-mod では less がかかると私の場合は表示に問題が生じました。 ただし,現在のckw-modをメンテしている方に伺ったところ,octaveに添付している less自体のページングには問題がないのことで環境などにも左右される問題かもしれません。 これについては,少し調べて見たいと思います。 (現時点では個人的なコンピュータトラブルで起こったものと推測され,問題は解消されました。 他の方でトラブルに見舞われた方はご連絡ください。 3/21加筆)

したがって,もし,ckw-modで問題が生じた方は,lessの起動をとめることで とりあえず実用上の問題は回避できます。octavercなどに

page_screen_output(false);
の記述をいれページングを切り,その代わりckw.cfgで
Ckw*saveLines: 3000
などとして,lessがなくてもckwのバッファで十分バックスクロールができるようにしておいてください。 ページャーに慣れていない方は,このほうが使いやすいかもしれません。

なお,cmd.exeでも,lessはちゃんと動きます。評判はそれほどよくない cmd.exe ですが,簡易編集モードを設定すれば結構使えます。

簡易編集モードの設定は,cmdのウィンドウバーを右クリックしてメニューを出し, プロパティを出します。編集オプションの簡易編集モードが標準でoffになってますので, ボックスをチェックしてonにしてください。フォントや画面の色,画面サイズがカスタマイズできます。最後に「このウィンドウを起動したショートカットを変更する」を選んで設定を保存してください。 簡易編集モードの使い方はWindows 「スタート」から「ヘルプとサポートセンター」を起動し, 簡易編集モードとキーワードをいれて検索してください。

最後にCygwinの場合は,ホームディレクトリーの.bashrcに

export LANG=ja_JP.SJIS
export LESSCHARSET=dos
を加えてください。よくホームページなどに記述されているjam less(jless)は, 現在更新がとまっています。 あくまでも推測ですが,本家のlessが多言語対応になったので更新されていないのではと推測します。

また,08/03/17で紹介したgnuplotもスタートアップのバッチファイルを更新
しました。

http://www.geocities.jp/tmoctwin/

Topに行く。


08/03/17

MSVC-Octaveからgnuplot 4.3 (cvs) (Cygwin)を使用できるセットをUPしました


http://www.geocities.jp/tmoctwin/

mingw版に加え,MSVC版octaveでも,mouse zoomingができるcygwinのgnuplot_x11を最小リソースで使用できる
環境を準備しました。


 Topに行く。


08/03/10

Cygwin版,Mingw版のOctaveバイナリを更新しました


http://www.geocities.jp/tmoctwin/

3.0.1のリリースの情報もあり,迷っていたのですがOctave-forgeの20080216版が出たので
これに対応ししました。ただ,それだけでなく。Cygwn版は,gcc自体をオプションをsjljを
disableにする以外は,cygwinの標準のビルドと同じオプションで再ビルドし,ライブラリは
影響を与えないものについては標準のcygwinコンパイラでビルドしなおしました。
この外部ライブラリだけでも使用する価値があると思います。
mingw版では,mouse zoomingができるcygwinのgnuplot_x11を最小リソースで使用できる
環境を準備しました。

 Topに行く。


08/03/04

QtOctave Portable for windows の新しいバージョンがリリースされました


http://www.geocities.jp/tmoctwin/

Octaveのフロントエンドとして地位を確立しつつあるQtOctaveですが,新バージョンがリリースされました。
上のサイトにミラーをしてます。ご活用ください。

 Topに行く。


08/01/29

Octave 3.0.0 mingw testing binariesをリリースしました


http://www.geocities.jp/tmoctwin/

これまでTrial binaryでしたが,今回,Octave-forgeをサポートしたので,testingとしました。
Readmeを更新し,また,ckw-mod(詳しくは増田先生のページの
GNU Octaveの各種設定・カスタマイズの高機能ターミナルエミュレータ ckw を利用するを参照してください。)
を導入しました。

 Topに行く。


08/01/08

講義 07年度コンピュータアルゴリズム 松岡担当分のリンクを変更しました


講義 07年度コンピュータアルゴリズム 松岡担当分は,Octaveによる数値計算入門のページです。
これまで使用していたサーバーが使用できなくなったため,臨時に場所をかえてあります。
リンクリストから,ページにいけます。 パスワードがかけられないので,公開版できるもの以外はアップロードしてありません。


 Topに行く。


07/12/30

MSVC版Octaveが3.0.0になりました


http://sourceforge.net/project/showfiles.php?group_id=2888

07/12/28についにMichael氏によるOctave-3.0.0がリリースされました。
これで一般のユーザーのも皆さんも

GNU Octave, version 3.0.0
Copyright (C) 2007 John W. Eaton and others.

の画面に出会えます。うれしい限りです。


 Topに行く。


07/12/26

1. MSVC Octave-2.9.19のパッケージミスの修正方法
http://www.geocities.jp/tmoctwin/

MSVC Octave-2.9.19のパッケージミスがあることがわかりました。この不具合は簡単に修正できます。
..\bin フォルダにliblapack.dllというものがあるのですが,これを複製してlapack.dllと変更してください。


2. QtOctave Portable 0.6.8のMSVC版のOctaveについて
OctaveのフロントエンドであるQtOctave Portable 0.6.8には,MSVC版のOctave-2.9.15がついていますが,
....\Octave の中身を新しいのバージョンのOctaveの中身に置き換えるだけで使えます。
以下にスナップショットの例があります。

http://www.nabble.com/Re:-Octave-MSVC-is-replacable-in-QtOctave-portable.-tt14493640.html


 Topに行く。


07/12/24

 Octave-3.0.0がついにリリースされました。Octave-3.0.0のCygwin版とMingw版のBinaryの配布


http://www.cae.wisc.edu/pipermail/octave-maintainers/2007-December/005376.html

07/12/21にOctave-3.0.0がついにリリースされました。
上のjweからメールの中に自分の名前が載っているのをみてジーンときました。
なかなかいいものですよ。他の方もOctaveのボランティアに参加しませんか?
4.0.0は遠そうですが,3.1.0に貢献するのもありますよ。


また,Cygwin版とMingw版のBinaryを準備しました。

http://www.geocities.jp/tmoctwin/

 Topに行く。


07/12/18

1.Octave-2.9.19のMSVCb版とCygwin版のBinaryの配布


http://www.geocities.jp/tmoctwin/

上のWebかリンクリストからとりにいってください。
Octave MLでは,いろんな報告がまだでてます。しかし,2.9.19を急いでリリースしたときとは違い,
重要なバグは出ていないようです。Ver.3.0へのアップデートは,jwe(John W. Eaton)氏
の決心しだいであると推測しています。クリスマスプレゼントは出るのかどうか。楽しみです。


2.Octave教科書

http://www.kohgakusha.co.jp/books/detail/978-4-7775-1326-0

「Octave教科書 」という書籍が出ているのに昨日気づきました。
Octaveが日本でもメジャーになりつつある証拠かなと思います。
そのことは,うれしいことです。もっといろいろな書籍がでるといいなと思います。


 Topに行く。


07/12/13

1.Octave-2.9.19のリリースとMingw版のBinaryの配布


http://www.geocities.jp/tmoctwin/

驚くなかれもう2.9.19が出ました。David氏はVer.3.0のリリースをクリスマスプレゼントに
したらとのたまわっています。本当かな?

http://www.cae.wisc.edu/pipermail/octave-maintainers/2007-December/005269.html

2で書いているように新しいOctave-forgeがでたので,Cygwin版はとりあえず後回しで2.9.18のままですがmingw版の
2.9.19のバイナリはアップしています。しかし,Octave-2.9.18では以下のようにPlot関係でかなり問題なバグがあるので,
http://www.cae.wisc.edu/pipermail/octave-maintainers/2007-December/005218.html

Fixした__line__.mとsurface.mのDownloadについての情報がリンクリスト
の・Octave 2.9.xx Cygwin testing binaries (English)に載せてあります。


2.octave-forge-bundle-20071212がでました

octave-forge-bundle-20071212がでました。リンクリストの・sourceforge.net(English)
からダウンロードできます。


 Topに行く。


07/12/10

Octave-2.9.18のリリースとOctave-2.9.18のCygwin版とMingw版のBinaryの配布


http://www.geocities.jp/tmoctwin/

07/12/04にOctave-2.9.18がリリースされました。今度こそVer.3.0の最後プレリリースとなるのか否か?
そこでなんとか,Cygwin版とMingw版のバイナリを作成し配布しています。Cygwin版にはOctave-forgeも
つけているのですが,David氏によるとこれもまもなく新しいものが出るようです。
Developper達のパワーに脱帽という感じです。私のMingw版のリリースは,PreliminaryからTrialに
名称を変えました。これは,若いチャレンジャーに挑戦して欲しいという中年のおじさん(=筆者)の
身勝手な気持ちもこめられています。


 Topに行く。


07/12/07

Animal Breeding and Softwareへのリンクをリンクリストに入れました。


帯広畜産大学の増田豊によるページです。このページの「GNU Octaveに関するメモ」は大変よくできています。
「その他ソフトウエアに関するメモ」も力作でなかなか興味深いです。

Animal Breeding and Software


 Topに行く。


07/12/02

MSVC Octave-2.9.16用のgnuplot_fixed.zipの中のgnuplotの不具合が解消されました。

MSVC Octave-2.9.16用のgnuplotですが,Michael氏は,リリース直後にカラーパレットに関する不具合を見つけ,
gnuplot_fixed.zipとして配布されました。しかし,MSVCのランタイムライブラリが,コンピュータによっては
ソフトウェアが要求するためすでにインストールしてある場合があり,このランタイムライブラリのバージョンによっては
gnulot_fixed.zipの中のgnuplotが動かないという不具合が発見されました。
07/11/29にこの問題とさらに見つかったメモリーリークの問題を修正したgnuplot_fixed.zipが配布されました。
MSVC Octave-2.9.16をインストールしている方は,gnuplotをこの新しいものに置き換えてください。

・sourceforge.net(English)


 Topに行く。


07/11/21

QtOctave Portable:Qt4.0をにしたOctaveのGUIフロントエンドのWindows版を見つけました

http://qtoctave.wordpress.com/

QtOctave Portable:Qt4.0をにしたOctaveのGUIフロントエンドのWindows版です。
Michael氏のMSVC版のwindows版のOctave(現在は2.9.15)が含まれています。
私の英語のホームページにもバイナリーをミラーしています。

http://www.geocities.jp/tmoctwin/


 Topに行く。


07/11/15

Benjamin Lindner氏のTesting buinaries of Octave-2.9.12 on mingwがUploadされました。

http://www.dbateman.org/?page=octave&lang=EN

David's Octave webpages (English)にBenjamin Lindner氏のTesting buinaries of Octave-2.9.12 on mingwがおかれています。
詳しいことは以下をご参照ください。(English)

http://www.cae.wisc.edu/pipermail/octave-maintainers/2007-November/004755.html


 Topに行く。


07/11/14

Octave-2.9.17のリリースとOctave-2.9.17Cygwin版Binaryの配布とVer.3.0への動き

http://www.geocities.jp/tmoctwin/

07/11/10に早くもOctave-2.9.17がリリースされました。同じことを言いますがこないだ2.9.16のバイナリーをアップしたばかりなのに。
ついに,Jonn W. Eaton 氏が3.0に向けて動き出す宣言をしました。

http://www.cae.wisc.edu/pipermail/octave-maintainers/2007-November/004882.html

 Topに行く。


07/11/05

Octave-2.9.16のリリースとOctave-2.9.16Cygwin版Binaryの配布

http://www.geocities.jp/tmoctwin/

07/10/31に早くもOctave-2.9.16がリリースされました。こないだ2.9.15のバイナリーをアップしたばかりなのに。
というわけで私の予想は見事に裏切られ,これからは3.0にむけて最後の不都合のFixという形ですすんでいくのでしょう。
いずれにしてもVer.3.0の登場は,近いと思います。


 Topに行く。

07/10/29

Octave-2.9.15Cygwin版Binaryの配布

http://www.geocities.jp/tmacchant/

07/10/16にOctave-2.9.15がリリースされ,早速ビルドしたのですが,いろいろあってやっとアップしました。
今回の目玉は,特に目玉というものはありませんが,ヘルプやマニュアルはかなり完全に近いものになってきており,
Octave 3.0もそう遠くないといった雰囲気です。
ひょっとしたら2.9.xxxシリーズ最後かもしれません。
pkgコマンドのpkg prefixの仕様が変更になっており,戸惑いました。他にも細かい変更があるかも知れませんが,
マニュアルやHelpで確認してください。


 Topに行く。

07/10/21

1. Octave-2.9.15のリリースとMSVC版の更新
07/10/13にOctave-2.9.15がリリースされました。MSVC版も2.9.15になりました。

http://sourceforge.net/project/showfiles.php?group_id=2888&package_id=40078

私のcygwin版はできれば来週にアップする予定です。(ビルド自体は終了し,整理などをしてます。)
今回は,大きな変更はないのですが,pkgコマンドなどの使用の細かい変更があります。
まだ,確定はしておりませんが,2.9.xxとして最後のリリースとなり次は3.0かも知れません。
すくなくとも3.0に向けてかなり近いづいてきていることはたしかなようです。

2. Tatsuro's Octave for Windows Page (English)を開設しました。
リンクリストに書きましたが,このページの英語版というわけでは,ありませんがInternationalな
情報発信も考え作成しました。試験的な,mingw版バイナリ(ただし,熟練者向き)などもおいてあります。
もちろんこのページは続けますが,いろんな配布物やテストコードなどはこちらに移っていくかも知れません。


 Topに行く。

07/09/20

Octave-2.9.14のリリースとCygwin版Binaryの配布

http://www.geocities.jp/tmacchant/

07/09/17にOctave-2.9.14がリリースされ,早速ビルドし,アップしました。
2.9.xxもコードがかなり洗練されてきており,ほとんどトラブルなくビルドできます。
今回の目玉は,Qhullライブラリによるgeometric functionsの正式サポートのようです。
(2.9.13まではOctave-forgeのパッケージでした。したがって,geometryパッケージはOctave-forgeからはなくなります。)
私もよくわからないので今回から上のページにマニュアル(English)をおいていますので
詳しいことはマニュアルを読んでください。最近は,マニュアルもだいぶ充実してきました。
また,gnuplot4.3のCVS版(09/01版)にして,マウスズーミングが利かなくなってしまった点が全部ではないのですが
ある程度改善されているようです。

 Topに行く。


07/08/29

Cygwin版Octave 2.9.13のBinaryを大幅改定しました。

http://www.geocities.jp/tmacchant/

ずっとCygwin でのOctaveビルドにはgcc3.3.3-3しか使えない思っていたのですが,gcc-3.4.4-3が使える
ようです。gcc-3.4.4-3を'--disable-sjli-exceptions'でビルドして
このgccでビルドしたCygwin版Octave-2.9.13のBinaryを作成し,公開しております
今回はほとんどの場合exitが正常にいきます。メモリを食うスクリプトようなの場合だろうとは
思いますが,時々segmentation faultがでます。^^;
Oregonatorのテストをしたら逆に少し遅くなりましたが,起動スピードやなりよりpkgコマンドでの
パッケージングのスピードが大幅に改善されているので使い勝手はいいです。
今回は,すべてではありませんが,Octave-forgeのfunctionもビルドして,アップしています。
自分では,それなりに使えるツールになったなと思っています。

また,Benjamin Lindar氏がmingwでのOctaveのビルドに成功し,source-forgeでの公開を目指して
おられるようです。私も試しにmingwでのOctaveのpreliminaryなものをビルドをしてみました。
実行速度は,Michael氏のMSVC版とほぼ同等でした。
Benjamin Lindar氏のOctaveがどのようなものになるかはわかりませんが,どっちを使うか迷いそうですね。

私自身は,最近,Xサーバーとして,mingwで構築されたXmingが性能がよくなっており,
gnuplotはどちらかというとCygwin版をつかっている関係と自分が作ったものに情がわいて,
Cygwin版を使っています。


 Topに行く。


07/08/04

Cygwin版Octave 2.9.13のBinaryを作成し,公開しました。

http://www.geocities.jp/tmacchant2/

sjlj exceptionのを問題でビルドしたOctaveが遅くなる問題がありますが。
今回,gcc-3.3.3-3を'--disable-sjli-exceptions'でビルドして
このgccでビルドしたCygwin版Octave-2.9.13のBinaryを作成し,実行速度を速め,公開しております
ただし,そのせいなのでしょうが,exitが正常にいきません。^^;
だいぶ待たされたあと,segmentation faultかcore dumpedがでて異常終了します。
実行速度は,以前のものに比べるとだいぶ速いので,それを考慮して割り切ってお使いください。

gnuplotのpipelineの問題を回避するために新しいCVS版の4.3をビルドしてこれもつけております。
gnuplotのビルドにはgcc-4.2.1を使いました。gcc-3.3.3でビルドしたものと比べ定量的な評価は
していないのですが,体感ではレスポンスがよくなっています。
したがって,Octaveもgcc Ver.4でのビルドを試みましたが,うまくいきませんでした。
gcc-Ver.4が使えるようになるといいなと思います。

また,mkoctfileやpkgコマンドのために今回ビルドに使用したgcc-3.3.3もアップしてあります。

速度的には,MSVC版にはかないませんが,plotの安定性はこちらのほうが上だと思います。
MSVC版はwindows版gnuplotのwxt terminalの完成度がまだまだのためな気がします。


 Topに行く。

07/07/31

Octave 2.9.13のリリースとMSVC版のWindows Binaryとしての正式採用。

Octave 2.9.13がリリースされ,MSVC版がWindows Binaryとしての正式採用されました。
いままで,David Bateman氏のページにおいてあったのですがこれからはsourceforge.netに おかれるようです。

http://sourceforge.net/project/showfiles.php?group_id=2888

2.1.92-3よりも起動も動作も速くなっており,だいぶバグもFixされているようです。

********speed test
****MSVC-2.1.92-3
octave:2> testOregoB
ans =  1.8906

****MSVC-2.1.93
octave:2> testOregoB
ans =  1.6563

****2.1.50
>> testOregoB
ans = 1.4680

********testOregoB.m
clear;
## The `oregonator'.
##
## Reference:
##
##   Oscillations in chemical systems.  IV.  Limit cycle behavior in a
##   model of a real chemical reaction. Richard J. Field and Richard
##   M. Noyes, The Journal of Chemical Physics, Volume 60 Number 5,
##   March 1974.function dx = oregonator_m (x, t)

function dx = oregonator_m (x, t)

  dx = zeros (3, 1);

  dx(1) = 77.27*(x(2) - x(1)*x(2) + x(1) - 8.375e-06*x(1)^2);
  dx(2) = (x(3) - x(1)*x(2) - x(2)) / 77.27;
  dx(3) = 0.161*(x(1) - x(3));

end

% The test of `oregonator'.
x0 = [ 4; 1.1; 4 ];
%t = [0, logspace (-1, log10(303), 150), logspace (log10(304), log10(500), 150)];
%t=linspace(0,500,1000);
t=0:0.5:500;
ts=cputime();
y = lsode ('oregonator_m', x0, t);
cputime()-ts
plot (t',y(:,1));
ただ,空白のあるパスにインストールする(c:\Program Files\... など)にインストールすると
mkoctfileが依然として動作しません。
空白のあるパスにインストールしても,うまく動きません。
*********
octave:3> mkoctfile oregonator99.cc
'C:\Programs\Octave-2.9.13\bin\mkoctfile-2.9.13" "oregonator99.cc' は、内部コマ
ンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
*********
octave:6> system('cmd')
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

E:\backtatsu070730\program\Octave\test>mkoctfile oregonator99.cc
*********
とすれば,なんとかしのげますが。
一応,Michael Goffioul 氏には報告してあります。


 Topに行く。


07/07/21

1. メモリストを作りました

長くなってきたので,メモリストを作りました。ご活用ください。

2. Octave 2.9.12のplotについて

最近わかったのですが,MATLABとの互換性のため,plotの仕様がかなり変わっています。

1.plotは,プログラム終了時にまとめて行われます。
 途中でプロットするには,'drawnow'コマンドをいます。
2.plotコマンドはaxisとかlabelをリセットします。
 したがって,plotコマンドの後にaxisとかlabelコマンドを書き,drawnowでグラフをプロットさせます。
3.plotコマンドなどの新しいplotシステムのドキュメントはまだ,不十分です。

これは,subplotの使い方などでに大きな影響を与えます。
2.1.xxでは,以下のように書いていたsubplotは,違った書き方になります。

%****subplot exmple for octave 2.1.xx
subplot(111);clg;
x=linspace(0,3*pi,301);
subplot(211);
xlabel("x \n");
ylabel("sin(x)\n");
axis([0 2*pi -1.1 1.1]);
plot(x,sin(x));
%
subplot(212); 
xlabel("x \n");
ylabel("cos(x)\n");
axis([0 2*pi -1.1 1.1]);
plot(x,cos(x));
Octave 2.9.12では,次のように違った書き方になります。
%****subplot exmple for octave 2.9.12
subplot(111);clg;
x=linspace(0,3*pi,301);
subplot(211);
plot(x,sin(x));
xlabel("x \n");
ylabel("sin(x)\n");
axis([0 2*pi -1.1 1.1]);
drawnow;
%
subplot(212);
plot(x,cos(x));
xlabel("x \n");
ylabel("cos(x)\n");
axis([0 2*pi -1.1 1.1]);
drawnow;
もしどちらでも通用するものを書くとすれば,以下のようになります。
%****subplot exmple for both octave 2.1.xx and 2.9.12
subplot(111);clg;
x=linspace(0,3*pi,301);
subplot(211);
xlabel("x \n");
ylabel("sin(x)\n");
axis([0 2*pi -1.1 1.1]);
plot(x,sin(x));
xlabel("x \n");
ylabel("sin(x)\n");
axis([0 2*pi -1.1 1.1]);
drawnow;
%
subplot(212);
xlabel("x \n");
ylabel("cos(x)\n");
axis([0 2*pi -1.1 1.1]);
plot(x,cos(x));
xlabel("x \n");
ylabel("cos(x)\n");
axis([0 2*pi -1.1 1.1]);
drawnow;


 Topに行く。


07/06/19

SciTEの設定について

SciTEの設定でselection.backが1.7x以降では,きかないなと思っていましたが,

https://sourceforge.net/projects/scintilla/

にバグレポートコーナーがあってバグではとたずねたところ,
仕様が変わってselection.alphaを256に設定する必要があるようです。
06/05/27のSciTEの記事に変更を加えました。
また,このページのリンクタグをまちがって"#070527"としていたのを"#060527"
に修正しました。

 Topに行く。


07/06/12 (07/06/13 一部加筆)

Cygwin版Octave 2.9.12のBinaryを作成し,公開しました。

http://www.geocities.jp/tmacchant/

MSVC版があるのにsjlj exceptionの問題でわざわざ遅いcygwin版を
公開するのもどうかとは思うのですが,せっかくビルドしたので公開することにしました。
MSVC版のテストなどにお使いください。
現在,MSVC版はgnuplotでのsubplotがうまくいかない場合があります。一応これでは起こりません。
例によって英語のページで,インストールガイドのReadme.txtも英語です。
gnuplot_binaryが意味のない変数になっていますので,
pgnuplotでWindows版のgnuplotを現在使うことはできません。
(これは,間違いで gnuplot_binary("pgnuplot") とすれば使えるようです。
とご指摘を受けました。ありがとうございます。ただし,あまりうまく動かないようです。 07/06/13)


日付ごとに"070612"のようなリンクタグを埋め込みました。

私の個人の便宜のためですが,特定の場所にリンクを貼りたい場合に使えます。
http://www.nuce.nagoya-u.ac.jp/e8/Matsuoka/OctaveWinMemo.html#070519
という感じでお使いください。


 Topに行く。

07/06/07(07/06/12 文章追加)

MSVC Octave 2.9.12-3がリリースされました

2.9.12-3は,かなりお勧めです。
また,MSVC版でoctファイルを作るためのInstructionを無謀にも英語で書きました。
http://www.nuce.nagoya-u.ac.jp/e8/Matsuoka/msvcoctmemo.html

要望があれば,日本語版も作りますが,なければ作りません。
メアドはそのページの最後に@をat '.'をdotのように書いてあります。
ご意見はそちらにください。
ただし,一言,現状ではバグのため,C:\Program Filesのようなフォルダー名に
スペースが場所にインストールするとmkoctfileがうごきません。
(ここは,07/06/12 文章追加)

また,MaintanerのMLをみていたら,MingwでOctave 2.9.12をビルドしたという人が現れました。
これは期待できそう。

一応,自分でもCygwin上ではgcc-3.3.3-3を使ってビルドして見ました。
SuitesparseのCxsparseがどうしてもうまくいかずほおってあります。
sjlj-exceptionをdisableしたgcc-3.3.3-3ではうまくビルドできず,通常のgcc3.3.3-3でビルドしました。
そのせいかodeのソルバーlsodeはMSVC版に比べるとずいぶん遅いです。
行列計算は,2.1.73より速くなって以下のLU分解のtestでは,MSVC版ともそれほど遜色ありませんでした。
2.1.xxでは以下のようなLU分解をのテストをしても何も高速化できず,かえって遅くなっていたのですが,
これが見事にLU分解の効果がでます。
(これまではLとUを強引にsparse化して高速化する必要がありました。それよりも速いです。)

% LU分解のテスト
Num=1000; ItNum=10;
id=1:Num;
rand("seed",1);
A=rand(Num)-0.5;
rand("seed",2);
B=rand(Num,ItNum)-0.5;
[L U P]=lu(A);
%単純な左除算による繰り返し。
disp("Simple left division");
ts=cputime();
for k=1:ItNum
  b=B(:,k);
  x=A\b;
end
cputime()-ts
x1=x;
%LU分解による繰り返し。
ts=cputime();
disp("LU decomposition");
ts=cputime();
for k=1:ItNum
  b=B(:,k);
  c=P*b; y=L\c; x=U\y;
end
cputime()-ts
x2=x;
plot(id,x1,"o1",id,x2,"+2");
(LU分解については,07/06/12 文章追加)


 Topに行く。

07/05/30

Octave 2.9.12(pre-release version of Octave 3.0)がリリースされました

OctaveのHomepageによるとOctave 2.9.12(pre-release version of Octave 3.0)がリリースされました。
http://www.dbateman.org/?page=octave&lang=EN からMSVC版も取れます。
MSVC版は,JAVAのRuntimeが必要です。要注意。

Cygwinでinstallするには,pt-loop.ccというファイルにパッチを当てる必要があります。
https://www.cae.wisc.edu/pipermail/bug-octave/2007-May/002487.html
ビルドはそこさえクリアすればできます。 結構,快適に動きそうです。2.9.12版に乗り換えようかと思います。

また,MSVC版でoctファイルを作るには,技がいります。
Michael Goffioul さんと直接メールして聞き出しました。
今日は,時間がないのでまた,機会を見てここに書きたいと思います。


 Topに行く。

07/05/19

ちょっとメモ書き

MSVC compiled 2.9.9+ CVS version of octave with a Windows installer 続報
http://www.dbateman.org/?page=octave&lang=EN
少しさわってみると,コンソール画面を提供するConsoleというプログラムが裏でコマンドプロンプトをつかっていて
これがコードページが日本語だと,表示がみだれてしまうのでなんか使えないなと思っていましたが
それを解決すれば,結構使えそうです。
 簡単には,octaveのプロンプトから 

system("us");
と打つだけです。スタートアップにでもいれておけばいいでしょう。
私は例によって,ckwを使うことにしようと思います。
最近,MSVC Express Editionをいれたので,時間があればmkoctfileに挑戦しようかと思います。

Cygwinネタ
 Cygwinのftpのサイトからgcc-3.3.3のソースをとってきて,そこにあるスクリプトを参考にすれば,
Cygwin上のOctaveを遅くするsjlj exceptionをdisableにしたgcc-core, g++, g77がビルドできて,これでOctaveも
ビルドできる。やはり速くなるようであるが,上の2.9.9のほうが速いので熱意は冷めている。

#gcc のビルドのスクリプトは本当は手間のかからないようにするスクリプトであるがどうもそのままでは動かない。
マニュアルでいろいろ変えて動かした。試行錯誤の結果がgcc -v ででるので,ビルドしなおそうとしたが,
どうも今回はうまくいかない。うーん。


 Topに行く。

07/01/16
MSVC compiled 2.9.9+ CVS version of octave with a Windows installer

Octave のMainterのMLのアーカイブをみてたらこんなん見つけました
MSVC compiled 2.9.9+ CVS version of octave with a Windows installer
http://www.dbateman.org/?page=octave&lang=EN
ちょっと試したけど不安定そう。でもこれからを期待したいです。


 Topに行く。


06/05/27 (07/06/19 一部修正)

ちょっとメモ書き(時間があれば整理します。できそうにありません。すみません)

SciTE

Octave-2.1.73などの現在Windows版として公式配布されているものには,
SciTEというEditorが標準でついてくる。
SciTEは,octaveのキーワードハイライトができるので,
コードを書くのにいい。
有名なPaul Soederlindさんもお勧め。
しかも,バイナリーも小さいのでよい。

ただし,日本語のサポートが標準ではない。
文字幅が固定でない。
拡張子mのファイルがdefaultのままではでは,キーワードハイライトできない。
などがあり,カスタマイズが必要。

SciTEUser.propertiesに以下を設定している。(07/06/18修正)
"#"はコメントを表す記号です。#を前につけるとその設定は無効になります。

# For Japanese version Windows, We must set or override code.page=932
# and character.set=128.
code.page=932
character.set=128
#
# フォント Terminal, size:11,等幅フォントにする。
font.monospace=font:Terminal,size:11
font.base=$(font.monospace)
font.small=$(font.monospace)
font.comment=$(font.monospace)
font.text=$(font.monospace)
font.text.comment=$(font.monospace)
font.embedded.base=$(font.monospace)
font.embedded.comment=$(font.monospace)
font.vbs=$(font.monospace)
#
# 行番号を表示 3桁。必要なら増やす。3のあとの'+'が必要なら増やすの意味。 
line.margin.visible=1
line.margin.width=3+
#
# Octave用
tab.size.*.m=4
indent.size.*.m=4
open.suffix.*.m=.m 
Octave|m||\
#
# 長い行対策に必要か?
edge.mode=2
#
# 選択時の色を濃い目に :Ver.1.7x以降ではselection.alpha=256も設定が必要。
selection.alpha=256
selection.back=#A0A0F0
#
# 起動時の位置,大きさの設定
#position.left
#position.top
position.width=640
#position.height  
#
# タブバーの表示
tabbar.visible=1
# ステータスバー(line, column, INS, CR+LFなど状態を下方に表示するバー)の表示
statusbar.visible=1
# ツールバーの表示
toolbar.visible=1

また,matlab.properties

file.patterns.octave=*.m.octave

file.patterns.octave=*.m;*.m.octave
に変更した。

なお,SciTE 日本語翻訳 & 1.62+ パックの使い方
http://h12u.com/scixx/about162plusjpn.html
日本語用メニューやカスタマイズしたbinaryがおいてある。



cygwinのgcc 3.3.3でmkoctfileを使う。

現状ではcygwinで標準配布のoctaveはgcc3.3.3でビルドされている。
また,現在のcygwinのgccは標準でgcc3.4.4がインストールされる。

gcc3.4.4でoctave本体をビルドすると問題があることから
octファイルもgcc3.3.3でビルドすることが推奨されている。

gcc3.4.4でビルドしものは運がよければ使えるが,octaveが落ちることもあるので
使えない。
gccを3.4.4から3.3.3にcygwinインストーラーをつかってdowngradeする方法がある。
利点
 操作はシンプル。
欠点
 他のものをビルドするとき,gcc3.4.4が使えない。(困ることがあるか不明)
 cygwinインストーラーでsetupしなおすとき注意しないと3.4.4に勝手に戻される
 ので,いちいちsetupの設定を3.3.3をkeepするように戻す必要がある。



Octaveworkshop関連

1.プロット周りのバグの回避

Octave Workshopに付属の
MinGWのOctave 2.9.4はどうもプロット周りにバグがある。
関連情報は以下
MinGW version binary gobbledygook error messages?
http://velveeta.che.wisc.edu/octave/lists/archive//octave-maintainers.2006/threads.html#00400

うまくプロットできない場合は__gnuplot_plot__で直接gnuplotでplotすることで,
とりあえずは回避できそう。


2.mkoctfileの利用

Octave 2.9.4(mingw)

octファイルで関数をbinary化するとcygwinの場合で同じことした場合よりかなり
速くなる場合がある。
(私の例では,5倍違った。これは極端な例だと思う。)
Windows Nativeのせいなのだろうか。
ということでプロット周りのバグは上で回避してでもつかっていきたくなった。
(このページのタイトルは変更しないといけないと思います。^^;
そのうち変更します。)

mkoctfileを起動するには
octave-launcher.vbsでOctave 2.9.4(mingw)(workshopでなくコマンドプロンプトモード)
で立ち上げ,プロンプトで
system('sh')
とうち,shを起動すればmkoctfileを使用できる環境になる。
ただし,mkoctfileを一箇所書き直す必要がある。
デフォールトのインストールでは
C:\octave-workshop\msys\octave-2.9.4\bin
にmkoctfileがあるが
エディターで

: ${SED="/c/octave/msys/bin/sed"}


: ${SED="/usr/bin/sed"}
に書き換える必要があった。


# 最近,Cygwin Terminalをck,コマンドプロンプト用窓をckwにしている。
これはすばらしい使い心地です。
http://www.geocities.jp/cygwin_ck/


 Topに行く。

06/03/13

ちょっとメモ書き(時間があれば整理します。)

Ocatave Workshop
http://www.math.mcgill.ca/loisel/octave-workshop/
Mingwベースの統合環境の試み β版
Ocatave 2.9.4をベース
大きなデータのプロットでバグがでたが計算そのものはうまくいっているよう。
バグがでるとOctaveを再起動する必要あり。
起動は重い。
速度は,cygwin baseで私がビルド(Octave 2.1.72 gcc3.2を使用)のものより,少し速い。
ATLASを組み込めばさらに速くなると思われるが自分でビルドするのは難儀そう。
これが実用になればこのページのタイトルを変更すべきなんでしょうね。

Octave-Compiler.org
http://www.program-transformation.org/Octave/WebHome
これができるとOctaveの利便性が非常に大きくなるだろう。

GLPKOCT - Octave Interface to GLPK
http://www.dii.unisi.it/~giorgetti/
Octave-forgeのlpは信頼性に問題があるようなので有用なのでしょう。
まだ,ためしていない。(個人的には線形計画法を用いる場面はないので)
(上のOcatave WorkshopのOctaveでは取り込み済み。)
GLPKOCT - Octave Interface to GLPK
    :
GLPKOCT is an Octave interface for the GLPK library.

Main features:

Solution of LP/MILP problems;
Selection of simplex or interior point methods;
Definition of control parameters;
Examples of use.
Current version is 1.0
(released on 3/17/05)


 Topに行く。


05/11/11

Octave 2.1.71Cygwin標準配布版の速度と現在gcc-3.2を使う方法

05/6/7のOregonatorのテストをCygwinの標準配布のもので試してみた。
ans = 12.238
となった。
ちなみにStand-alone版として配布されている2.1.50では
ans = 3.6870
であった。
自分でgcc-3.2を使って作成した2.1.71では
ans = 4.3510
であった。
gcc-3.3.3でビルドしてあるのが原因かもしれない。
ただ自分でgcc-3.3.3でビルドした2.1.49では
ans = 21.042
だった(05/6/7)ことを考えると最適化がすすんでいるとも考えられる。
まあ当面,自分でビルドした2.1.71を使うことにしよう。
Cygwin上ではgcc-3.2でのOctaveのビルドもまだ選択肢の一つとして考慮する余地があるということになる。

注意:現在のCygwin Installerをつかうと05/06/09の方法でgcc-3.2をInstallすることができないようである。
gcc-3.2をつかうには,つぎのようにする。
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII3.0/cygwin.htm
から
cygwinDevel.exe (34.6 Mb)を持ってきて適当なフォルダーにインストールすると
Local Directryからのインストールできるフォルダイメージが出来たあとcygwin installerが起動する。
このcygwin installerは古いので,キャンセルしていったん終了する。
(ここまでは前回と同じ)
フォルダイメージ(devel)のrelease/gccにいきgcc-3.2-3.tar.bz2をコピーして
適当な場所に持っていく。たとえば,/usr/local/gcc-3.2など。
そこで

tar xvfjk gcc-3.2-3.tar.bz2
のように展開する。
すると/usr/local/gcc-3.2/usr以下に展開される。
gcc本体はこのbinにあるのでここにPATHを通す。たとえば
export PATH=/usr/local/gcc-3.2/usr/bin:$PATH
とする。
このようにすれば,gcc3.2をつかってOctaveをビルドすることができる。

 Topに行く。


05/09/30

Octave 2.1.71がCygwinの標準配布になった

まったく気づいていなかったのだがOctave 2.1.71がCygwinの標準配布になった。CategoryはMath。
fftwが使われているよう。octave-forgeなどもある。
gnuplotとしてcygwinのgnuplotを使うようになっている。
wgnuplotをつかうためにはgnuplot_binaryを設定しないといけないだろう。
なんにしても推薦バージョン2.1.71が簡単に使えるようになったのはめでたいことだ。


 Topに行く。

05/06/09

gcc-3.2でのOctaveのビルド

gcc-3.2でOctaveをビルドして速度が向上するかどうか試してみた。
gcc-3.2のcygwinバイナリーは,通常のサイトにはもはや置いていない。
ソースからのgcc-3.2のビルドを試みるも失敗。

そこでOctave MLを探して
http://www.octave.org/mailing-lists/help-octave/2004/2419
を発見。ここに書いてあるとおりにする。

まず,cygwin installerでgcc-3.3.3をuninstallする。
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII3.0/cygwin.htm
からcygwinDevel.exe (34.6 Mb)を持ってきて適当なフォルダーにインストールすると
Local Directryからのインストールできるフォルダイメージが出来たあとcygwin installerが起動する。
このcygwin installerは古いので,キャンセルしていったん終了する。
その後,いつも使っているCygwin installerを起動し,Install From Local Directoryを選び,
Local Package Directoryでイメージを 置いたところを指定する。

Octaveのcygwinバイナリーを導入するときと同様にsetup.iniについて警告がでるが
無視して継続し,カテゴリーDevelのgcc-3.2-3をinstallする。
Octaveのビルドは普通に行えばよい。
このようしてinstallしたgcc-3.2でバイナリ配布のOctaveをもちいる場合,
mkoctfileはオリジナルのものをそのまま用いる。

このやり方ではgcc-3.3.3とgcc-3.2の共存はできないので
共存させたい人は工夫がいるだろう。
Octave2.1.49を./configure --prefix=/usr/local/bin/octave --enable-shared --enable-dl --disable-static
で作成し05/6/7のOregonatorのテストをおこなった。
結果はが21.042から5.3280となり,
バイナリ配布のものとほぼ同程度のスピードとなった。

結論。
現時点では,Octaveのビルドはgcc-3.2で行うほうがよい。
liboctaveについてスピードが違うのかまだ検証していない。

もう一度最近のOctaveをビルドして見る気になってきた。


 Topに行く。

05/06/07

Cygwin上Octaveの速度について

cygwin上でOctaveを自分でビルドすると遅いと感じていたが
これについてのOctave MLで記事があった。
http://www.octave.org/mailing-lists/help-octave/2005/1925

実際05/5/28,6/2で紹介した2.1.49を自分で普通にビルドしたものと
以下のスクリプトで比べてみた。

## The test of `oregonator'.
x0 = [ 4; 1.1; 4 ];
%t = [0, logspace (-1, log10(303), 150), logspace (log10(304), log10(500), 150)];
t=linspace(0,500,1000);
ts=time();
y = lsode ('oregonator', x0, t);
time()-ts
plot (t,y);


関数 oregonatorは/usr/doc/octave-2.1.49/examplesのoregonator.mに記載されているものである。
初期条件はOctaveのhelpのExampleにある条件である。

バイナリ配布 ans = 5.4920 
自分でビルド ans = 21.042

3.8倍程度の差がある。
ちなみにstand alone配布の2.1.42(p4atlas) ans = 3.4410であった。

oregonatorをoregonator.octのようにコンパイルしたものを用いると

バイナリ配布 ans = 0.3920
自分でビルド ans = 1.1680

ともにぐっと高速化されるがやはりバイナリ配布のほうが3倍ほど速い。
Octave MLによるとgcc.>=3.3だと遅くなるようである。
ここで書いてあるようにgcc3.2でビルドをいずれためして見たい。


 Topに行く。


05/06/02

Cygwin用のOctave パッケージ(補足)

05/5/28にTechnique #1で失敗する場合について書いたが,
フォルダーごと落として
Install From Local Directoryをやればいいことが判明。
ftp://ftp.octave.org/pub/octave/cygwin から
nmpc/  octave/  octave-forge/  octave-headers/ setup.ini*
をフォルダーごとコピーしてイメージを適当なフォルダに作る。
Cygwin InstallerでIntall From Local Directoryを選び,
Local Package Directoryでイメージを置いたところを指定するとよい。
setup.iniのバージョンについて警告がでたが無視してインストールした。
問題があるかとうかは不明。
ちなみにCategoryはMathである。
mkoctfileをいじる必要があるのはおなじなので,05/5/28のようにすればよい。


 Topに行く。

05/5/28

Cygwin用のOctave パッケージ

久々の更新。
OctaveのCygwin用binaryパッケージを発見。
なんと本家のWikiからたどれるページにある。
http://www.octave.org/からWikiにいきCategoryInstall へ飛びOctaveForWindows
にいくとさまざまなinstall方がが書いてある。
http://wiki.octave.org/wiki.pl?OctaveForWindows
Octave on CygwinのTechnique #1のとおりにやればinstallできるはずなのだが
Cygwin Installerでsetup.iniにアクセスできんといってはじかれる。
研究室の別のマシンだとなぜかうまくいく。どういうことなのだろう。

しかたがないので ftp://ftp.octave.org/pub/octave/cygwinから圧縮ファイル
octave-2.1.49-2.tar.bz2
octave-headers-2.1.49-2.tar.bz2
octave-forge-2003.06.02-1.tar.bz2
nmpc-1.0.4-1.tar.bz2
をとってきて,cygwinプロンプトからtar xvfjk  xxxxxxxxxx.tar.bz2のように展開。
usr以下にファイルやフォルダができるのでこれを/usrへ移動。
(WindowsのExplorerなどで動かすときは,cygwin\binが/usr/bin, cygwin\libが/usr/libにmountされていることに注意!!)
(nmpcは化学工学用のシミュレーションパッケージである。私は所属している学科が化学工学なので興味がありinstallした。)
これにてoctaveがcygwin上で使える。

このパッケージの特徴はmkoctfileが使えるのでoctave C++ (liboctave)が使えることである。
ただし,古めのものなのでmkoctfileをすこしいじる必要がある。
/usr/bin/mkoctfile-2.1.49の
: ${FLIBS="-L/usr/lib/gcc-lib/i686-pc-cygwin/3.2 -L/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../.. -lm -lfrtbegin -lg2c -lcygwin -luser32 -lkernel32
という行のgccが3.2なので現在ものに書き直す。(現時点では3.3.3) 
i686-pc-cygwin/3.2をi686-pc-cygwin/3.3.3に2箇所書き直す。
これにてうまくいくはず。
/usr/doc/octave-2.1.49/examplesのhello.ccを
mkoctfile hello.ccでhello.octができたら成功だろう。
--link-stand-aloneでstand aloneのバイナリーも作成できる。

現状ではATLASやFFTWがサポートされていないようなのでこの点は不満だが簡単にliboctaveが使える。
また,最近のoctaveはcygwin上で自分でビルドすると実行速度が遅いのだがこれは比較的速い。
Stand aloneインストール2.1.50より若干遅い程度である。
CygwinでOctaveを使うときは実用的であろう。

cygwin上で自分でビルドしたOctave2.1.67などは非常にメモリを食いCPUの占有率も高いためか実行速度が遅い。
celeron2GHz+memory 512+windows xp sp2なのであるがコンピュータ資源の臨界を越えているのかもしれない。
したがって,別の環境であればそれほど重くならないかもしれない。

liboctaveをmingwで構築する

以下は完全なメモ書き以外のなにものでもないが,これでも役にたつ人がいるかもしれない。
また,自己責任でやってください。

mingw+msys+msys DTKをすべて導入する。
ATLASはしょうがないのでcygwinで構築する。
FFTWはmingw+msys+msys DTKで構築できる。
./configure は --disabel-readline, --enable-shared
makeはエラー覚悟の上make -i &> make.err.txtで実行する。
make.err.txtにエラーのlogをとる。

srcの中のsighandlers.cc: In function `void octave_signal_handler()':
sighandlers.cc:116: `SIGCHLD' undeclared (first use this function)
sighandlers.cc:116: (Each undeclared identifier is reported only once for each
   function it appears in.)
sighandlers.cc:124: `SIGPIPE' undeclared (first use this function)
sighandlers.cc: In member function `bool
   octave_child_list::octave_child_list_rep::wait()':
sighandlers.cc:857: `WNOHANG' undeclared (first use this function)
sighandlers.cc:857: `waitpid' undeclared (first use this function)

857あたりをなぶる。
bool
OCL_REP::wait (void)を

bool
OCL_REP::wait (void)
{
/*  bool retval = false;

  for (iterator p =
 
begin
();  p ! = 

   end ();  p++) { octave_child& oc=   
    *p;
      pid_t pid = 

      oc.pid; if  (pid

      > 0)  {
	int
	  status; if

	  (waitpid (pid, &status, WNOHANG) >  0)
	    {
	      oc.have_status = 1;

	      oc.status = status;

	      retval = true;

	      break;
	    }
	}
    }

  return retval;*/ return true;
}

のように単にtrueを返すようにした。

また,lo-cutils.cのoctave_gethostnameの返り値を強制的0にした。
pathsearch.oができないのでエラーがでる。これを除いてにライブラリおよびdllを構築する。
make.err.txtで
ar rc liboctave.a Bounds.o.......
でpathsearch.oをのぞいてコマンドラインをつくり,msysプロンプト上でliboctave.aを作る。
libcruft.aはなにもしなくてもできた。

./confugre で`--enable-dl'も指定すれば,実行時dllを使うライブラリができる。
このときはg++ -shared -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--out-implib=liboctave.dll.a -o liboctave.dll \
Bounds.o ...
でpathsearch.oをのぞいてコマンドラインをつくり,msysプロンプト上でliboctave.dllを作る。
ただし,msys上ではシンボリックリンクが無効なので,liboctave.dll.2.1.xxなどをliboctave.dllとする。
mkoctfileでのリンク用に
libcruft.dll.a.2.1.xxから libcruft.dll.a
liboctave.dll.a.2.1.xx からliboctave.dll.a
liboctinterp.dll.a.2.1.xx からliboctinterp.dll.aなども同様に作成する。
このやり方はdll依存はたまに傷だが実行ファイルが飛躍的に小さくなるので私はこれで作っている。

私の環境だとlsodeを繰り返して使うような計算だとcygwin上より計算速度がかなり向上した。


 Topに行く。

04/12/27

Octave C++で連立微分方程式を解く

連立微分方程式を解く必要が出てきたが,
例によってインタープリタの速度に不満を感じたのでOctave C++への移行を試みた。
LSODEの使い方をなんとか探りだす。
分かってしまえば当たり前だがわかるまでに結構時間がかかった。

関数名の設定はODEfuncを使う。
LSODEでODEfuncで設定した関数と初期条件と積分の初期値を設定する。
解を出すにはdo_integrateを使う。

サンプルコードを2つ挙げる。

例1は横軸をtとしたとき,一つの時刻での値を求める方法。
例2は横軸をtとしたとき,ColumnVectorで与えられた時刻についての解を
Maxtrixで与える方法である。
最後にgnuplotで解析解と比べるスクリプトを書いた。

例2のほうがOctave インタープリタで書くコードに近い。

例によってC++らしくないコードが混じるし,まだ手についていない部分もある。
より分かっている人からここはこう書けと教えてほしい。

/* 例1
Octave C++のソースコードです。
LSODEを使った連立微分方程式の解法
*/

#include <iostream>
#include <octave/config.h>
#include <octave/Matrix.h>
#include <octave/LSODE.h> 

ColumnVector test(const ColumnVector& y, double t){
        ColumnVector dy(2);
        dy(0)=y(0)+2*y(1);
        dy(1)=-4*y(0)-3*y(1);
        return dy;
}

int main()
{
        ColumnVector yi(2), y(2);
        ODEFunc odef(test);
        int i;
        yi(0)=0.0;
        yi(1)=
         
        
        1.0;LSODEls(yi,0.0,odef);for(i=0;i<=40;i++) {
                y=ls.do_integrate(0.1*i);
                printf("%f %f %f\n", 0.1*i,y(0), y(1));
        }

}
//ここまで
/* 例2
Octave C++のソースコードです。
LSODEを使った連立微分方程式の解法
*/

#include <iostream>
#include <octave/config.h>
#include <octave/Matrix.h>
#include <octave/LSODE.h> 

using namespace std;

ColumnVector test(const ColumnVector& y, double t){
        ColumnVector dy(2);
        dy(0)=y(0)+2*y(1);
        dy(1)=-4*y(0)-3*y(1);
        return dy;
}

int main()
{
        ColumnVector yi(2), t(41);
        Matrix dat_m(41,3);
        ODEFunc odef(test);
        int i;
        yi(0)=0.0;
        yi(1)=
         
        
        1.0;LSODEls(yi,0.0,odef);for(i=0;i<=40;i++) t(i)=0.1*i;
        dat_m.insert(t,0,0);
        Matrix y=ls.do_integrate(t);
        dat_m.insert(y,0,1);
        cout << "# Matrix dat_m" << endl <<  dat_m << endl;

}
//ここまで



#出力をリダイレクトして(ファイル名'test.txt')でgnuplotで確かめるgnuplotスクリプト
plot 'test.txt' using 1:2, '' using 1:3, \
exp(-x)*sin(2*x), exp(-x)*(cos(2*x)-sin(2*x))
#ここまで 

 Topに行く。

04/10/23

Octave to C++ compiler

以下のようなページを発見。今は多忙で試せないが,是非試したいものだ。
Documentも参考になりそう。

http://www.stud.tu-ilmenau.de/~rueckn/

Octave to C++ compiler

As a student research project I implemented a minimal Octave to C++ compiler. It is not really good - just a proof of concept.
The compiler supports a subset of Octave. It keeps Dynamic Typing. It builds a stack machine to evaluate expressions. This way the execution speed of loops is doubled.


 Topに行く。


04/09/07

Octave C++ Cygwin メモ メモ補足


分散関係を求める式がある条件であまりたちがよくなかった。
slove(インタープリターだとfsolve)だけでは
収束先が余りよろしくなかったので,2分法で収束先の改善を図った。
2分法はsimpleだが収束の安定性が高いので今回は役に立った。
インタプリターのときは結構速度に不満を感じていたのでループの増える2分法の導入には
二の足を踏んでいたが,Octave C++の導入を機にコーディングした。
速度も満足いくものでOctave C++をいれた甲斐があったというものだ。
John W. Eaton氏をはじめとするこの偉大なツールを作成してくださった方々に感謝!!

 Topに行く。


04/09/04

Octave C++ Cygwin メモ


個人的なメモなのだがが,HomePageに載せることにより,
ひょっとしてだれかのお役にたつかもしれないと思い掲載することにした。
(備忘録ににもなろう。)

Cygwin版Octave2.1.50のバイナリをインストールして使い始めた。
目的は,2層からなる系での表面波の分散関係を数値的に求めるためだ。
分散関係とは,波動の周波数と波数の関係式である。
波動の支配方程式をFourier空間で表した連立方程式の
係数行列式=0という関係式の形で表すことができる。

Octaveはこういった用途に威力を発揮することがわかったが処理速度の向上を図る必要や
Octaceだけでは書ききれない部分があることがわかった。
せっかくのOctaveソースがあるので,
これとできるだけ近い体系で高速化するためにOctave C++を採用することにした。

これが結構,大変だった。

1.ソースからのOctaveのビルド

バイナリ版には,Octave C++を使うためのものが入っていないのでソースからのOctaveのビルドが必要。
Cygwinとソースをそれぞれ本家のホームページからgetする。ついでにATLASもgetした。

まずはCygwinをinstallする。
octaveのビルドのためにはdefaultではだめであった。
いろんなホームページやmake時にでてきたメッセージを参考にして
make, gcc, g77, gperf, flex, bison, tetexなどを追加でいれた。
本当にこれらが全部必要なのかは不明である。
windowsで多機能な解凍toolを使ってなければ,解凍ツールも入れる必要があると思う。
Cygwinは,スペースが途中にあるフォルダ名の扱いに難がある。
素直にdefaultのc:\cygwinにinstallすればよいのであろうが,
C:\PROGRA~1\cygwinにinstallした。

ATLASをビルド,展開されるフォルダのREADMEだったかINSTALLにしたがいインストールする。
時間は結構かかる。

つぎに,octaveをインストール。2.1.50のソースを見つけられなかったので2.1.57のソースを利用した。
INSTALL.OCTAVEなどを読み,すすめた。(もちろんいろんな人のホームページも)
ダイナミックリンクの機能入れたい場合にはconfigureで `--enable-shared' `--enable-dl'を指定しなければならないようだ。
confiure, make , make installの標準的な過程をとる。cygwinのインストールのとき,ツールが不足するとここでこける。
これも結構時間がかかる。
なんとかoctaveのビルドができた。

なんと,2.1.50より遅い!!。
>>a=rand(1000,1000);b=rand(1000,1000);
>>t=time();c=a*b;ts=time()-t
はALTASを入れているせいか2.1.50よりそこそこ速い。
しかし,インタプリタの動作が格段に重い。オプションなどの関係かもしれない。
今回はこれが目的ではないので無視することにする。


2.Octave C++を使う。

CとfortranユーザーであるためにC++を使うのは不安があったのだが,的中した。
ソースのdocのliboctaveのフォルダにあるhtmlはまったく何のことかわからない。
これはマニュアルではなく,ソースから構築したなにやらインデックスのようなものらしい。
(これはこれで役に立ちだすと大変役にたつのであるが。
それにしてもせめてsampleプログラムをすこしだけでも載せてあればと思う)
 
C++の本を立ち読みしたり,
http://vision.kuee.kyoto-u.ac.jp/~hiroaki/numerical/
のソースを参考にして,試行錯誤しながらやっている。

まずは,ソースのビルドにはmkoctfileを使う。 mkoctfile --helpとしたり,
スクリプト本体であるmkoctfile-2.1.57を読んでいたこれを使うことに気づいた。
もともとはOctaveダイナミックリンクな関数を作成するためのツールだか,
スタンドアローンな実行ファイルも作成できる。

$ mkoctfile --link-stand-alone -o test4 test4.cc

などのように使う。
結構オーバーヘッドタイムがあるようなので,使わないようにしたほうがいいのかもしれないが
複雑なincludeやライブラリの設定をしなくてすむのでいまのところ使用している。

最初は,C++の文法がわからず本当にすすまなかったがC++の本などを参考に試行錯誤のあげく
なんとか行列式の値や非線形方程式を解くことまではできるようになった。
これでOctaveで書いたスクリプトを移植できそうだ。

C++のキーワードであるコンストラクタを理解することが鍵のようだ。(まだよくわかっていない。)
(よく分からなくても何とかなっている。ほんとうはよくないのだろうが。Dec. 2004)

行列の扱いは大変楽であり,Octaveに似た感覚で扱える。
Complexの扱いも楽である。(Octave C++ではcomplexではなくComplexと書かねばならない。)
sinやcoshやsqrtはComplex型の変数を引数とすれば,自動的にComplex型の関数になる。
ここらあたりはCでは決して実現できないのでC++であるのは必然であると納得した。


3.参考のソース
2で述べた。
http://vision.kuee.kyoto-u.ac.jp/~hiroaki/numerical/
のソースファイルは大変参考になります。

これがなければ決してここまでこれなかったでしょう。

また
最後のテストコードが参考になればと思います。
C++はド素人なので,変なコードもあると思います。
その点はご容赦ください。また,ご指摘は大歓迎します。

このページに関する連絡はここ。

#include <iostream>
#include <octave/config.h>
#include <octave/Matrix.h>
#include <octave/NLEqn.h>

//#include <complex.h> これは不要。

using namespace std;

ColumnVector nl(const ColumnVector& x){
        ColumnVector y(2);
        y(0)=0.5*x(0)*x(0)+x(1)+1.0;
        y(1)=x(0)+x(1);
        return y;
}

int main()
{
        Complex C_i, a=-1.0;
        C_i=sqrt(a);
        double b,c,pi=
          
          
        4*atan(1.0);Matrixm(2,2),k(2,2),l(2,2);ColumnVectorcv1(10),cv2(2);cv2(0)=0;cv2(1)=3;
        NLFunc nlf(nl);
        NLEqn nle(cv2,nlf);

        int i, j;
        cout << "nl" << endl <<  nl(cv2) << endl;


        for(i=0;i<10;i++){
                cv1(i)=i*2.0;
        }
        cout << "column cv1" << endl <<  cv1 << endl;
        cv2(0)=pi/3;
        ColumnVector cv4=nle.solve(cv2);
        cout << "column cv4" << endl <<  cv4 << endl;
//

//
        m(0,0) = 3; m(0,1) = 2;
        m(1,0) = 2; m(1,1) = 0;
//
        cout << "test" << endl <<  C_i << endl;
        cout << "test" << endl <<  sinh(C_i*pi/2.0) << endl;
        b=C_i.real();
        c=C_i.imag();
        printf("%f\n",b);
        printf("%f\n",c);       
        m=m/100000;
        k=m;
        l=k*m;
        DET dm=m.determinant();
        DET dl=l.determinant();
        b=dm.value();
        c=dm.exponent();
        cout << "Matrix m" << endl <<  m << endl;
        cout << "Matrix k" << endl <<  k << endl;
        cout << "Matrix k" << endl <<  l << endl;
        printf("%e\n",b);
        printf("%f\n",c);
        return 0;
}

 Topに行く。



リンクリスト(2011/09/22 更新)

 
・Octaveの本家のページ(English)
 ・sourceforge.net(English)
   ここにOctave-forgeのソースとwindows版,Mac OSX用のBinaryがおかれています。
 ・Octave本家WikiのOctaveForWindowsのページ(English)
   私が更新してます。英語を Native の方に直してもらったりして^^;,何とかやってます。。^^;
 ・Octave本家のMailing Listのページ(English)
   私は Tatsuro で活動しています。やはり最新情報獲得やわからないことのへの質問はここが一番です。英語に慣れましょう。
 ・Octave Mailing Listのアーカイブページ(English)
   bug, maintainers, help(general) が一度にみれて便利です。
 ・Octave Forge Mailing Listのアーカイブページ(English)
   Octave ではなく,Octave Forge のメーリングリストのアーカイブです。
 ・MinGW 上での Octave のビルドについての HOWTO
   MinGW 版 Octave の maintainer の Benjamin さんが書き始めたとのことです。ビルドにトライされる方を希望します。
  ・データ解析ツールoctaveを語ろう
   2ch の octave スレッドです。正式なページは落ちてしまっています。現在ここで見ることができます。 過去の貴重な情報もあります。
  ・データ解析ツールoctaveを語ろう Part 2 (リンク変更 11/12/23)
   2chです。大学にページをおいておいたときはさすがにリンクを控えてましたが,プライベートなサーバーに移転したので
   リンクを貼りました。日本語のoctaveの掲示板として有用です。私もここに書き込みしてます。
 ・GNU Octave JP (日本語)
   GNU Octave の情報交換の場としてたちあげました。Wikiですので皆さんの投稿をお待ちしています。
 ・Cygwin Information and Installation
   Cygwin の公式ページです。Octave の cygwin 公式版は setup.exe を使ってインストールしてください。
   Category MathでOctaveを選択すれば,周辺のライブラリィを含めてインストールされます。
 ・File list of Octave for Windows
   octave-3.4.2 の評価用バイナリがおかれています。(英語です。) ビルドに必要なライブラリもおいてあります。
 ・QtOctave un Front-End para Octave (Spanish, partly English)
   GUI フロントエンドとして有名なQtOctaveのページです。スペイン語に少し英語が混じって書いてあります。
   残念ながら,開発は終了しました。バイナリの置き場は, https://forja.rediris.es/frs/?group_id=60&release_id=298 です。
   10/04/22 現在 windows 用の最新版は, http://www.outsch.org/2010/04/05/qtoctave-0-9-1-win32-bugfix/ からどうぞ。
 ・Xoctave : GNU Octave Interface
   これもOctave のIDEです。名前からすると unix 専用のように感じますが,windows 版もあるようです。
   Octave ML でも Octave フロントエンドの質問に対してその一例として見かけるようになっています。
 ・Octave を用いた画像処理や統計処理,Octave と OpenCV との連携
   Linux および Windows での Octave のインストール方法や使い方が丁寧に解説してあります。
 ・Windows版Octaveに関するメモ - Murakami Memo (村上メモ)
   掲示版もあり,きれいで情報もよくまとめられていて,必見のページです。
 ・Animal Breeding and Software
   「GNU Octaveに関するメモ」は,まとめられていて,必見のページです。その他ソフトウエアに関するメモも力作です。
 ・科学技術計算言語 MATLAB と Octave
   科学技術計算言語 MATLAB と Octave に関するページです。使い方の紹介があり,Octaveのファイルとバイナリの情報があります。
 ・広島大学社会科学研究科山田宏研究室のウェブサイトです。
   GNU Octave を研究や講義で使用されており大変参考になります。
 ・平成 23 年度 コンピュータアルゴリズム 松岡担当分 講義資料(公開版)
   H23年度前期「Octaveによる数値計算入門のページ」です。
   すべては公開ではないのですが,公開できる資料を作成しました。Octaveを試してみたい方の参考になれば幸いです。
 ・英語版WekipediaによるOctaveの紹介(English)
   リンクなどなかなか参考になります。

 Topに行く。



メモリスト

 
11/12/10 inGW 版 Octave-3.4.3 バイナリが Octave-Forge のサイトにアップロードされました
 11/09/15 MinGW 版 Octave-3.4.2 パッケージがアップデートされました
 11/09/08 MinGW 版 Octave-3.4.2 の octave-forge パッケージがアップデートされました
 11/09/06 MinGW 版 Octave-3.4.2 がパッケージ化されました
 11/07/21 MinGW 版 Octave-3.4.2 の testing binaries を更新しました
 11/07/02 MinGW 版 Octave-3.4.2 の testing binaries をアップロードしました
 11/06/13 Octave を使った講義資料をアップロードしました
 11/04/01 Cygwin 版 Octave 3.4.0がリリースされています
 11/02/02 Octave-3.3.91 の Windows バイナリをアップロードしました
 11/01/29 Octave-3.3.90 (3.4 のプレリリース) のWindows バイナリをアップロードしました
 11/01/09 書籍「Octaveの精義」が出版されました
 10/12/11 GotoBLAS2 について
 10/07/01 Cygwin 版 Octave 3.2.4 が3.2.4-3 になりました
 10/04/22 Qt Octave の新バージョンが出たようです(おまけ,Xoctave,SciTE のカスタマイズ)
 10/04/03 MinGW 版 Octave-3.2.4 for Windows が出ました
 10/02/02 Cygwin 版 Octave 3.2.4 がでました (10/04/03 一部修正 )
 09/11/23 Benjaminさんが MinGW でoctave をビルドするための HOWTO を書き始めました
 09/11/21 MinGW 版 Octave-3.2.3-2 for Windows が出ました
 09/10/28 MinGW 版 Octave-3.2.3 for Windows が出ました
 09/10/24 Cygwin 版 Octave 3.2.3 がでました
 09/09/01 Cygwin 版 Octave 3.2.2 がでました
 09/08/06 MinGW 版 Octave-3.2.0 for Windows でplotが異常に遅くなる場合があることへの対処法
 09/07/03 Cygwin 版 Octave 3.2.0 がでました
 09/06/25 Wiki 「GNU Octave JP」 の立ち上げについて
 09/06/11 MinGW 版 Octave-3.2.0 for Windows が出ました (06/25 補足)
 09/06/02 MinGW 版 Octave-3.0.5 for Windows 用のimage package のバイナリを配布
 09/05/31 MinGW 版 Octave-3.0.5 for Windows 情報 (06/25 補足)
 09/05/22 MinGW 版 Octave-3.0.5 for Windows がでました(09/06/12修正)
 09/05/06 MinGW 上での Octave のビルドキットの配布を初めました
 09/04/27 MSVC 版 Octave のバイナリが配布中止
 09/04/15 Octave 3.0.5 でました
 09/04/08 Octave 3.0.4 にバグが見つかり,3.0.5が出るようです。
 09/04/02 Octave 3.0.4 のソースが公開されました
 09/03/17 OctaveへのATLAS組み込みについて(マルチコア CPU の場合)
 09/03/16 ATLASやGotoBLASの組み込みによるOctaveの行列計算の高速化について
 09/01/31 Cygwin版octaveが3.0.3になりました
 08/12/16 NotePad++ EUC-JP 対応版について(09/07/03 修正)
 08/12/04 SciTE 1.77について
 08/11/24 Octave 3.0.3 Octave 3.0.3 for Windows Installer (MSVC版)がリリースされました(11/25修正)
 08/10/05 1. Octave Forge MinGW Windows (Benjamin氏による正式版)がリリースされました
      2. Octave 3.0.3 のソースが公開されました
 08/09/23 1. Mingw版 Octave-3.0.2 + Octave-forge-20080831のバイナリを配布しました
      2. cygwin用Octave 3.0.2-2 + forge 20080831-2が setupから,インストール可能になりました
 08/09/17 Marco Atzeri氏によるOctave 3.0.2 + forge 20080831 cygwin公式版とgcc-4による実験版について
 08/09/05 Octave 3.0.2 + forge 20080831 on cygwin (by gcc-dw2)の修正
 08/09/01 Octave 3.0.2 + forge 20080831 on cygwin (by gcc-dw2)のリリース
 08/08/26 Octave-3.0.2 とoctave-forge-bundle-20080824のリリース
 08/08/13 開発版のMSVC Octave-3.1.50 のgnuplot-4.2.3を使用する
 08/07/21 開発版のOctave-3.1.50 MSVC版がでました
 08/07/15 1. MSVC-octave 3.0.1 情報  2. SciTE 1.76について(09/07/03修正)
 08/06/29 1. Page を移転しました 2. VS2008 expess ビルドのMSVC Octave 3.0.1がでました
      3. Cygwin版公式版 Octave 3.0.1がでました
 08/05/08 Octave-3.0.1 MSVC-buildのリリース
 08/04/22 OctaveのOctave-3.0.1のリリース
 08/04/07 QtOctaveのメニューについて
 08/04/05 3.0.1 release?
 08/04/04 Marco Atzeriさんのoctave on cygwin
 08/03/30 OctaveのIDE
 08/03/20 lessについて
 08/03/17 MSVC-Octaveからgnuplot 4.3 (cvs) (Cygwin)を使用できるセットをUPしました
 08/03/10 Cygwin版,Mingw版のOctaveバイナリを更新しました
 08/03/04 QtOctave Portable for windows の新しいバージョンがリリースされました
 08/01/29 Octave 3.0.0 mingw testing binariesをリリースしました
 08/01/08 講義 07年度コンピュータアルゴリズム 松岡担当分のリンクを変更しました
 07/12/30 MSVC版Octaveが3.0.0になりました
 07/12/26 1. MSVC Octave-2.9.19のパッケージミスの修正方法,2. QtOctave Portable 0.6.8のMSVC版のOctaveについて
 07/12/24 祝 Octave-3.0.0がついにリリースされました。Octave-3.0.0のCygwin版とMingw版のBinaryの配布
 07/12/18 1.Octave-2.9.19のMSVCb版とCygwin版のBinaryの配布,2.Octave教科書
 07/12/13 1.Octave-2.9.19のリリースとMingw版のBinaryの配布,2.octave-forge-bundle-20071212がでました
 07/12/10 Octave-2.9.18のリリースとOctave-2.9.18のCygwin版とMinge版のBinaryの配布
 07/12/07 Animal Breeding and Softwareへのリンクをリンクリストに入れました
 07/12/02 MSVC Octave-2.9.16用のgnuplot_fixed.zipの中のgnuplotの不具合が解消されました
 07/11/21 QtOctave Portable:Qt4.0をにしたOctaveのGUIフロントエンドのWindows版を見つけました
 07/11/15 Benjamin Lindner氏のTesting buinaries of Octave-2.9.12 on mingwがUploadされました
 07/11/14 Octave-2.9.17のリリースとOctave-2.9.17Cygwin版Binaryの配布とVer.3.0への動き
 07/11/05 Octave-2.9.16のリリースとOctave-2.9.16Cygwin版Binaryの配布
 07/10/29 Octave-2.9.15Cygwin版Binaryの配布
 07/10/21 1. Octave-2.9.15のリリースとMSVC版の更新,2. Tatsuro's Octave for Windows Page (English)を開設しました
 07/09/20 Octave-2.9.14のリリースとCygwin版Binaryの配布
 07/08/29 Cygwin版Octave 2.9.13のBinaryを大幅改定しました
 07/08/04 Cygwin版Octave 2.9.13のBinaryを作成し,公開しました
 07/07/31 Octave 2.9.13のリリースとMSVC版のWindows Binaryとしての正式採用
 07/07/21 1.メモリストを作りました, 2. Octave 2.9.12のplotについて
 07/06/19 SciTEの設定について
 07/06/12 Cygwin版Octave 2.9.12のBinaryを作成し,公開しました
 07/06/07 MSVC Octave 2.9.12-3がリリースされました。
 07/05/30 Octave 2.9.12(pre-release version of Octave 3.0)がリリースされました。
 07/05/19 メモ書き(MSVC compiled 2.9.9+ CVS version of octave with a Windows installer 続報,Cygwinネタ)
 07/01/16 MSVC compiled 2.9.9+ CVS version of octave with a Windows installer
 06/05/27 メモ書き(SciTE,cygwinのgcc 3.3.3でmkoctfileを使う,Octaveworkshop関連)
 06/03/13 メモ書き(Ocatave Workshop,Octave-Compiler.org,GLPKOCT - Octave Interface to GLPK)
 05/11/11 Octave 2.1.71Cygwin標準配布版の速度と現在gcc-3.2を使う方法
 05/09/30 Octave 2.1.71がCygwinの標準配布になった
 05/09/08 gcc-3.2でのOctaveのビルド
 05/06/07 Cygwin上Octaveの速度について
 05/06/02 Cygwin用のOctave パッケージ(補足)
 05/05/28 Cygwin用のOctave パッケージ,liboctaveをmingwで構築する
 04/12/27 Octave C++で連立微分方程式を解く
 04/10/23 Octave to C++ compiler
 04/09/07 Octave C++ Cygwin メモ 補足
 04/09/04 Octave C++ Cygwin メモ

 Topに行く。