1 名前:名無しさん@お腹いっぱい。 [04/06/01 00:13] 知る人ぞ知る強力なデータ解析ツール octave ... unixを科学研究で使っている香具師には非常に心強い味方のはずだ。 matlab互換を主張しながら、微妙にバージョンアップを続ける octaveについて語ろう。
20 名前:名無しさん@お腹いっぱい。 [04/06/02 22:39] オープンソースなツールを使って科学技術計算やっている人々の話が聞きたい. ほとんどが学術系だと思うけど企業とかの研究者でもoctaveとか使っている人 いますか?
21 名前:名無しさん@お腹いっぱい。 [04/06/02 22:43] ところで画像解析にmatlabを使っている人多いと思うけど, octaveで画像解析している人いますか? どうしても画像になると octave だと若干貧弱になると思うのだけど... 特に表示するときとかインデックスドカラーなので カラーパレットの設定などが大変なんですが, うまくやっている人いたらコツを教えてください.
22 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/02 22:48] >>4-5 matlabにも数式解析機能はある(toolboxとして)。 その目的のために買う人は少ないだろうけど。 >>20 技術屋としての数値計算に僕が主に使うのはemacsとgcc。 matlabとoctaveも使っているけど、自分で使う道具としてではなくて プログラミングをあまり知らない人とのやりとりのために使っている。 Cの読み書きができない人(客)でもMatlabやOctaveのコードなら自分でいじれ ることが多い(オレのまわりでは)。
23 名前:名無しさん@お腹いっぱい。 [04/06/02 23:30] >>22 数値計算アルゴリズムを開発する場合,octaveみたいに試作が直ぐにできる ツールを使った方が効率が良くないですか? 最終的にはC言語で実装するにしても,アルゴリズムの開発で 試行錯誤を繰り返している段階の場合は,やはり最初は octaveのようなツールが有効だと思いますが...
24 名前:22 mailto:sage [04/06/02 23:39] >>23 >試行錯誤を繰り返している段階の場合は, このあたりは主に紙の上でやります。
25 名前:名無しさん@お腹いっぱい。 [04/06/03 01:33] >>24 それは凄い. 私はコンピュータの上でしか試行錯誤ができなくなってしまっています. コンピュータに頼りきるのも考え方が雑になってしまうという 弊害もあるのかも知れないけれども便利ですよ. 私のところのoctaveの使用目的というのは, (1) 特にソフトウェアは必要なくて, 対象(物理系の実験データ)の解析結果データのみが 必要なとき (2) 新しいアルゴリズムを試作するとき の2つの時ですね.
26 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/03 03:02] >>25 アルゴリズムとして定式化する以前の試行錯誤のところじゃないですかねぇ もちろん、分野によって異なる計算によるわけですが。 私もoctave+gnuplotはかなり便利に使わせてもらってます。
27 名前:名無しさん@お腹いっぱい。 [04/06/05 00:28] Octaveで非線形計算やるパッケージをご存じないですか? 誰か作ってそうなんだけど...
28 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 01:50] 非線形方程式を解くコマンドはfsolveだったはづだけど、計算..?
29 名前:名無しさん@お腹いっぱい。 [04/06/05 02:59] みんながOctaveをどのように使っているか、聞きたい。 私は、某工学分野の研究員だが、 Octaveは、アルゴリズム設計の前段階で使うことが多い。 ちょっと変な使い方かも知れないけど、Octaveでデータを統計解析して、 その傾向に合わせてC言語でプログラムを組んでいる。 つまり、直接アルゴリズム開発に使っているのではなくて、 アルゴリズムを開発するときの参考というか理論的な根拠にしている。 こういう使い方にはけっこう向いていると思うのだが。
30 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 03:01] >>28 非線形の最小自乗法が欲しい。 fsolveは、微分方程式を解く関数じゃなかったっけ?
31 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 11:05] >>30 gnuplot
32 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 13:02] >>30 そのへんはRとかどうなん?
33 名前:名無しさん@お腹いっぱい。 [04/06/05 22:20] >>30 でもあれはデータフィッティングしてグラフをプロットするだけでしょう? ちゃんとパラメータとかを求めたいってことだと思うのだが...
34 名前:33 [04/06/05 22:21] スマソ,リンク間違えた >>31 ね... >>32 Rにしちゃうと Octaveの他の恩恵が受けられなくなる... という問題が...
35 名前:名無しさん@お腹いっぱい。 [04/06/05 22:25] Octaveをインストールするとき,FreeBSD 4.x だと readlineのバージョンが古いっていって libreadlineが使えません. コマンドライン編集や履歴を使いたいのでこれでは 不便なのですが... それで手動でlibreadlineの新しいやつをインストールして 使っているのですが,octaveのバージョンが変ると パッチ当てとかがめんどうです. FreeBSD 5.2くらいなら libreadlineのバージョンが 新しいので問題ないのだけど...
36 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 22:27] RはしらんけどSはやたらdirect mailを送ってきた印象があるな
37 名前:名無しさん@お腹いっぱい。 [04/06/05 22:30] 非線形一般均衡系のシミュレーションに使おうとしてうまくいきまへんでした > octave で、MATLAB買っちゃいました。toolboxマンセー
38 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 22:36] >>37 こういう分野では MATLABというか サードパーティ製のtoolboxが かなり強力だよね. でも価格が大変だよね. 貧乏な大学の研究室だと変えないところが多そうだ. うちも非線形解析用のパッケージ買っていたけど, 本体のライセンス代金も含めて大変なことになっていた.
39 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/05 22:41] octaveはプログラム組むのに、1ファイル1関数っていうのが 不便ですね。 最近のバージョンだとこの制限なくなっているのかな? MATLABも昔はそうだったけど、最近のはそういう制限無くなっているし
40 名前:名無しさん@お腹いっぱい。 [04/06/07 11:21] >>30 FAQだとよ。 www.octave.org/octave-lists/archive/help-octave.1999/msg00770.html
41 名前:名無しさん@お腹いっぱい。 [04/06/07 12:41] >>40 これは良いかも知れない. 丁度Levenberg-Marquardt法のアルゴリズム探してました. あとは,これをパラメータの範囲指定ができるように改造して 使わないと解がlocal minimum に陥ってしまって 収束しないんですよね. もしかしてそれもあったりして...
42 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/07 16:31] cygwin で liboctave 使えますか? 下のようなテストプログラムでエラーになってしまいます. $ cat test.cpp #include <iostream> #include <octave/config.h> #include <octave/Matrix.h> using namespace std; int main() { Matrix m(2, 2, 1.0); cout << m << endl; return 0; } $ g++ -I/usr/include/octave-2.1.49 -L/usr/lib/octave-2.1.49 -loctave -lcruft -lreadline -ltermcap -llapack -lblas -lg2c -lfftw -lm test.cpp -o test /cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text+0x8e):test.cpp: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, Matrix const&)' /cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdED2Ev+0xd):test.cpp: undefined reference to `Array<double>::~Array [not-in-charge]()' /cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdEC2EiiRKd+0x1b):test.cpp: undefined reference to `Array2<double>::get_size(int, int) const' /cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdEC2EiiRKd+0x33):test.cpp: undefined reference to `Array<double>::Array[not-in-charge](int, double const&)' collect2: ld returned 1 exit status make: *** [test] Error 1
43 名前:名無しさん@お腹いっぱい。 [04/06/08 00:44] >>42 octave は知らないが、与える引数間違ってるんじゃないの?
44 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/08 18:13] >>43 どう間違っているのでしょうか? Linux と同じじゃダメなのでしょうか?
45 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/08 21:03] 素晴らしーいソフトウェアです。 Fedora CORE 2 でSMPマシンにインストールしました。 コンパイルに1時間強、出来上がったバイナリ− octave が60MBを越えたのには 驚きましたけど。 紹介していただいたみなさんに感謝感激です。 しばらくマイブームとなりそうです。
46 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/08 23:11] >>42 俺が試した限りでは、 octave-2.1.57 を ./configure; make install した状態で、 $ g++ -I/usr/local/include/octave-2.1.57 test.cpp -L/usr/local/lib/octave-2.1.57 -loctave -lcruft -lg2c -o test でコンパイルできたが。
47 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/08 23:27] >>45 60MBは、たぶん -g つけたままコンパイルしたんじゃないか? liboctaveも巨大なままでは? make clean; make CFLAGS=-O2 CXXFLAGS=-O2 をおすすめする。 あと、strip octave。
48 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/08 23:30] >>46 上ので通りました. -llapack とかは不要なんですね. $ g++ -I/usr/local/include/octave-2.1.57 -L/usr/local/lib/octave-2.1.57 -loctave -lcruft -lg2c -o test test.cpp こう書くと undefined reference がいっぱい出ますが, 順番が大事だとわかりました. どうも, ありがとうございました.
49 名前:名無しさん@お腹いっぱい。 [04/06/09 03:42] octave ってスパース行列扱うの弱くない? 最近はCPUもメモリも強力だけど、古いマシンで 計算させたら死にそうになった。
50 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/09 05:01] Scilab使へば
51 名前:45 mailto:sage [04/06/10 00:35] がびーん。 ./configure; make しただけだったのですが、そういえばご丁寧に -g が付いていたような。。。 気を取り直してもう一度 build してみます。 その前に HDD 増設かも。
52 名前:45 mailto:sage [04/06/10 00:37] 連続書き込みすみません。 octave って SMP マシンの恩恵を得られるのでしょうか? HT対応のCPUを2個挿せば、体感?4つになります。 個人でも 4 way も持てるなんて、想像しただけで幸せです。
53 名前:Pen4 2.4GHz mailto:sage [04/06/10 01:25] octave:1> A=rand(2000,2000);b=rand(2000,1); octave:2> tic;A\b;toc ans = 2.7709 最近のマシンは速いねぇ…
54 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/10 01:33] >>53 octave:1> A=rand(2000,2000);b=rand(2000,1); octave:2> tic;A\b;toc ans = 193.02 (´・ω・`)ショボーン Status of processor 1 as of: 06/10/04 01:33:21 Processor has been on-line since 05/25/04 18:25:10. The sparcv9 processor operates at 296 MHz, and has a sparcv9 floating point processor. Status of processor 3 as of: 06/10/04 01:33:21 Processor has been on-line since 05/25/04 18:25:11. The sparcv9 processor operates at 296 MHz, and has a sparcv9 floating point processor.
55 名前:名無しさん@お腹いっぱい。 [04/06/10 01:52] >>52 多分ならなかったと思うけど... threadで組んでたかな?
56 名前:名無しさん@お腹いっぱい。 [04/06/10 10:59] >>54 PentiumIII(katmai) 600MHz octave-2.1.57:1> A=rand(2000,2000);b=rand(2000,1); octave-2.1.57:2> tic;A\b;toc ans = 17.742 sparcのv9って比較的最近のCPUじゃないの? 大昔(Coppermineですらない)のPenIIIよりも遅いのですか...??
57 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/10 11:00] >>56 書くの忘れたけど, OSは,FreeBSD 5-current で CPUは 600MHz x 2のSMPです.
58 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/10 11:10] ちなみに FreeBSD-4.9R で ちょっと古いCPUですが, Athlon-MP(多分Thunderbirdコア) 1.2GHzx2 のSMPで octave-2.1.50:1> A=rand(2000,2000);b=rand(2000,1); octave-2.1.50:2> tic;A\b;toc ans = 5.1248 と5秒ちょっとのタイムをマークしました... Octaveは多分 SMP は効いてないと思うので,速度は >>53 の Pen4 と比較してもクロック分の速度は出てるかな...
59 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/10 23:19] >>49 それってかなり古いOctaveじゃない?
60 名前:ThinkPad X31 [04/06/11 01:05] octave:1> A=rand(2000,2000);b=rand(2000,1); octave:2> tic;A\b;toc ans = 5.6739 最近のB5サブノートは速いねぇ…
61 名前:名無しさん@お腹いっぱい。 [04/06/11 02:05] Octaveって疎行列の計算はできますか? 周期境界条件を課した疎行列の計算パッケージがなかなか見つからなくて困っています。 FFTはNlogNのオーダーなんで遅いしなーって思うとNのオーダーで計算できる 疎行列パッケージが一番よいのですが。
62 名前:SS S8 mailto:sage [04/06/11 09:20] >>60 cygwinでコンパイルしたやつだけど、 ans = 34.755 だった orz コンパイルオプションばりばりつけた方がいいのかなぁ
63 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/11 14:52] >>61 自分で書くと感謝されるよ。 でもLAPACKとかで疎行列扱えないの? 最近はOctaveも外部ライブラリに頼っているからね。
64 名前:名無しさん@お腹いっぱい。 [04/06/11 14:57] うちのThinkPad X31(PentiumM-1.4GHz)も, FreeBSD 4.10-stable 上で octave-2.1.57:1> A=rand(2000,2000);b=rand(2000,1); octave-2.1.57:2> tic;A\b;toc ans = 5.5506 という値を出しました.
65 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/12 02:04] 漏れも試そうとportsでoctaveをmakeしてるんだけど atlasのビルドが一日たっても終わんないよう。
66 名前:名無しさん@お腹いっぱい。 [04/06/12 02:31] atlasのインストール時ってコンパイルが終わらないというより、 数値計算を行っている時間が長いようですね。 ずっと数値計算プログラムが動いていますが、 計算精度のチェックでもしているのでしょうか? ちなみにうちのThinkPad X31だと、とりあえず1日ってことはないな 3時間くらいで終わっていたように思えるけど...
67 名前:名無しさん@お腹いっぱい。 [04/06/12 02:45] >>65 メモリが不安定だと計算処理が途中で異常終了して 計算を繰り返して丸一日以上かかることがありました. もしも速いCPUを使っていて丸一日以上かかるようだったら、 メモリをチェックしてみた方が良いかもしれません. 普通に使っていて動いていても memtest とかが 通らない場合がありますよ. 私は atlas のコンパイル作業でメモリ異常に 気が付きました. ちなみに Athlon等の1GHz以上のCPUなら数時間で計算処理が 終わります.
68 名前:45 mailto:sage [04/06/12 09:45] なにせ古いマシン、PentiumIII 550E ×2 です。 40GB HDDを買ってきて Fedora CORE 2を再インストールしました。 ご指摘のありました -g 付きの ./configure; make 版です。 $ uname -a Linux localhost.localdomain 2.6.6-1.427smp #1 SMP Thu Jun 10 10:01:11 EDT 2004 i 686 i686 i386 GNU/Linux $ octave GNU Octave, version 2.1.57 (i686-pc-linux-gnu). octave:1> A=rand(2000,2000);b=rand(2000,1); octave:2> tic;A\b;toc ans = 110.47 xcpustate で各プロセッサーの状態を監視しながら実行させました。 なるほど、片側のプロセッサーのみを占有していました。悲しい。 窓を2枚開いて同時に octave を起動して、上記処理を行なうと、 143.50 と 145.39 でした。二人で同時に動かしてもそれなりということか。 少し救われるかも。 47さんのアドバイスに従って再make 中です。 どんなプラットフォームでもちゃんと動作するマルチスレッドの プログラムを作るのは難しいですからね。SMPを活かそうと思ったら やはりガリガリ自分で作るしかなさそう。嬉しいような悲しいような。。。
69 名前:名無しさん@お腹いっぱい。 [04/06/12 22:56] >>68 110秒はちょっと遅いですよね? これはコンパイルオプションにかなり左右されるのでしょうか? SSEとかどうなっているのでしょうか? >>56 は 同じようスペックで17秒ちょいで終わっているようですが...
70 名前:名無しさん@お腹いっぱい。 [04/06/13 03:03] 研究環境を完全OpenSource化使用して、いろいろ画策中です。 特にMATLABからOctaveへ関数をいくつか移植しているのだけど、 けっこう大変だよね。 Octaveは関数が一つしか書けないし、微妙なところで関数の仕様が 違っていたりするし。 でもMATLABへのライセンス料を払わなくて済むなら かなりの出費が押さえられる。
71 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 03:04] ____ ./, - 、, - 、  ̄ ヽ ./-┤ 。|。 |――-、 ヽ | ヽ`- ○- ´ / ヽ | | - | ― | | | ´ | `ヽ . | |ヽ ∩ 人`、 _ | _.- ´ | .| \ | ⌒ヽ / \  ̄ ̄ ̄ ノノ \ | |´ | ̄―--―― ´ヽ _ /⌒\ \_ _/-―――.| ( T ) `l Τ( )  ̄ |  ̄ } | \_/ | 、--―  ̄| /
72 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 03:06] >>71 もしかしてキリ番狙っていたの?
73 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 03:46] || Λ||Λ ( / ⌒ヽ | | | 逝け>72 ∪ 亅| | | | ∪∪ : : ‐ニ三ニ‐
74 名前:+++ mailto:age [04/06/13 11:00] || Λ||Λ ( / ⌒ヽ | | | 逝け>>72 ∪ 亅| | | | ∪∪ : : ‐ニ三ニ‐
75 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 18:03] >>71 , >>73 , >>74 せっかくのAAなんだけどうちの環境,FreeBSD + mozilla デフォルト設定では 文字がずれて,きちんと見えません... 等幅フォントにすりゃいいんだけどね.
76 名前:名無しさん@お腹いっぱい。 [04/06/13 18:30] このスレせっかくいい調子で話が進んでいたのに、 変な香具師が紛れ込むようになってきたね。
77 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 18:33] 必要もないのにageちゃうからだろ。
78 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 19:15] さりげなくサイエンスな香りがするこのスレ、気に入っていたのに
79 名前:名無しさん@お腹いっぱい。 [04/06/13 23:20] WindowsでOctaveって動きますか? ちょっと面白そうなので立ち寄ってみました。
80 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/13 23:24] >>79 動くよ。native 版もあるし、cygwin で動かす手もある 特に数値計算なら、こしょこしょコード書くよりまかせてしまったほうがいいと思う
81 名前:名無しさん@お腹いっぱい。 [04/06/13 23:40] レスありがとうございます。 Windowsのnative版もあるんだ。 探してみます。 でもcygwinはややこしいからパスします。
82 名前:45 mailto:sage [04/06/14 22:01] 途中報告。 -g を抜いたバイナリでSMPカーネルで同じ手順を行ないました。 バイナリサイズはナント 7MB でした。 実効結果は ans = 105 くらいでした。大差ないです。 原因を引き続き調査中です。 そうそう、SPARC とかは float より double が早いそうですね。 ハードウェアがそう設計されているそうです。
83 名前:名無しさん@お腹いっぱい。 [04/06/14 23:01] >>85 floatよりdoubleが速い処理系は多いよ.特に昔のRISC系CPUの場合は... それと表示は,桁を省略しているけど,Octaveは基本的に double で 計算しているはずです. それで105秒だと本当にそれくらいの速度かと... atlasをコンパイルするとき -g を抜くだけではなくて, gcc で -O3 とか -msse2 といった最適化オプションは 指定してありますか?
84 名前:名無しさん@お腹いっぱい。 [04/06/15 00:48] >>83 FreeBSDのportsではSSE2対応のCPUでは,自動的に SSE2が有効になるようにコンパイルオプションが 指定されているようです.
85 名前:SS S8 mailto:sage [04/06/15 01:12] gcc-3.3.1/cygwin/PenM 1G ですが、 -O2のみでは ans = 34.755 だったのが、 FFLAGS, CFLAGS, CXXFLAGS全部に -O3 -fomit-frame-pointer -mcpu=pentium3 -march=pentium4 -msse2 -funroll-loops を指定したら、 ans = 14.412 になりました。ただし、一番効いてるのは -mcpu っぽい。
86 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/15 02:36] よく覚えていないのですが、atlasってアセンブラで SSE2のコード書いてませんでしたっけ? たしかプリプロセッサでSSE2を有効にする変数を定義したら SSE2が有効になったような...
87 名前:名無しさん@お腹いっぱい。 [04/06/15 08:00] Opteron242だと ans=11.8 やけにおそいな。 OS SuSE 9.1 X86_64
88 名前:名無しさん@お腹いっぱい。 [04/06/16 04:15] >>87 B5サブノートのPentiumMに負けている... Opteronって通常の数値計算が速いって聞いてますが、 実際のところどうなんでしょうか? Octaveの使用を含む数値計算用に一台Dual CPUなのを購入予定なのですが...
89 名前:名無しさん@お腹いっぱい。 [04/06/16 17:14] opteron 242*2(1.6GHz) 姫野ベンチ 2CPU 1313MFlops Pentium200MHz 40.7倍 Xeon 2GHzしかないが 819MFlops
90 名前:名無しさん@お腹いっぱい。 [04/06/19 03:03] 今一つ速くないね.Opteron... まだ最適化が十分ではないのかな?
91 名前:名無しさん@お腹いっぱい。 mailto:age [04/06/22 11:44] あげ
92 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/22 11:48] しかしながらベンチマークスレに成り下がっているのは情けなくもある。
93 名前:名無しさん@お腹いっぱい。 [04/06/22 12:14] 演算の精度の制御はどうやればできますか? たぶんデフォルトではdoubleというか64bitっぽいですが、 もっと精度が欲しいのです。
94 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/22 22:44] scilab
95 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/23 07:09] >>92 スーパーコンピューターの最大ユーザーはベンチマーク屋である。 という話を聞いたことあるけど。 もっともコンパイルオプションの違いで数倍のパフォーマンスが 違えばショックですね。 MATLABを買ったと思ってPC買い換えれば幸せになれるかも。。。
96 名前:名無しさん@お腹いっぱい。 [04/06/23 08:20] >>93 演算の精度制御は、できないみたい。 「GNU Octave Manual」によれば(p35) numeric data is currently stored as double precision numbers. use the IEEE floating format, the relative precision is approximately 2.2e-16. とある。 無論、表示の制御は、できる。C likeのフォーマットが使える。
97 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/23 09:03] >>94 ,>>96 どうもありがとう。octaveじゃ無理なんですね。 scilabをインストールしてみたら、例のペンチマークがoctaveより速くて、 のりかえを検討していますが、こっちはどうやれば精度の制御ができるんでしょう?
98 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/23 09:54] octaveは全く触ったことがない厨房ですが、octaveとRは機能的に かなりかぶりますか? それとも相互補完するものですか?
99 名前:名無しさん@お腹いっぱい。 [04/06/24 12:56] 若干かぶるけど,特定分野だとRの方が強いと思うよ... Octaveは線形代数系の計算全般といったところか.
100 名前:名無しさん@お腹いっぱい。 [04/06/24 12:59] >>95 MATLABのことを考えると,毎年PCを買い換えれますね. MATLABは基本的に毎年ライセンス料を払わないといけないプレッシャーが あります. まぁ,払わなくてもいいんだろうけど,修正パッチとか バージョンアップのことを考えるとライセンス料を払い続けるしか ないシステムになっています.
101 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/24 13:03] >>95 ベンチマークだいすきですぅ。
102 名前:名無しさん@お腹いっぱい。 [04/06/25 14:28] MATLAB個人で買いましたよ。 octaveじゃできないこともおおいし。 ちなみに「データ解析ツール」じゃなくて「行列言語」な。 間違えるなよ。
103 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/25 22:18] 行列言語ってのもなんだな...
104 名前:名無しさん@お腹いっぱい。 [04/06/25 22:28] Octave使っているのだけど,マニュアルとかが英語なのがちょっとね. 何かお奨めな参考書とかWebページとかりますか?
105 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/25 22:28] とかありますか?
106 名前:名無しさん@お腹いっぱい。 [04/06/26 09:24] あまり役に立たない本 「Octaveを用いた数値計算入門」 北本 卓也著 ピアソンエヂュケーション ISBN4-89471-448-5
107 名前:名無しさん@お腹いっぱい。 [04/07/01 07:59] 卒研で構造物の強度計算をすることになりました。 それで手頃なツールをさがしているのですが、 Octaveでできますか? 研究室のOSはNetBSDというものだそうです。
108 名前:名無しさん@お腹いっぱい。 mailto:sage [04/07/01 08:02] 強度計算がどんな計算をするものなのかわからないので、わからない。 行列計算とか微分方程式とかに帰着させられるんならできるだろうけど。 OSは無関係。
109 名前:名無しさん@お腹いっぱい。 [04/07/04 23:00] 初めて立ち寄ってみました。 lsodeの中身は4段のRunge-Kuttaなのでしょうか? 何を見たら分かるのでしょう?どなたか教えてください。
110 名前:名無しさん@お腹いっぱい。 [04/07/04 23:34] 微分方程式は Runge-Kuttaを使っていたと思います. 今のOctaveは外部の数値計算ライブラリに依存しているから そのソースコードを確認するのがいいのではないでしょうか? でもFORTRANとかで書かれているのでちょっと困りますが...
111 名前:名無しさん@お腹いっぱい。 [04/07/04 23:43] >>109 lsodeはRunge-Kuttaではなく、stiffな問題にはBDF法、nonstiffな問題にはAdams(predictor-corrector)と使い分けています。 いずれもRunge-KuttaのようなSingle step methodでは無く、Multi step methodと呼ばれる方法です。 www.llnl.gov/CASC/odepack/ もともとODEPACKというFORTRANのパッケージに含まれていて、ソースはwww.netlib.orgからダウンロード出来ていたと思います。 lsodeでググってみたら出てきますよ。
112 名前:名無しさん@お腹いっぱい。 [04/07/05 07:45] 二つの異なる情報ですが、ありがとうござました。 linspaceで刻み幅を固定して計算するのだからRKだろうか と思っていました。ソースを読んで見ます。 BDFかあ。懐かしいなあ。ずっと以前でしたが、理解するのに 一苦労したっけ。小生は、現在は、刻み幅自動調整の RKFの愛用者です。
113 名前:名無しさん@お腹いっぱい。 [04/07/05 07:48] 異なる内容でしたが、ありがとうございます。 linspaceで刻み幅を固定するので、RKかと思っていました。 小生は、現在は、刻み幅自動調整のRKFを愛用しているので つい、そう思っていました。ソースを読んで見ます。
114 名前:名称未設定 mailto:sage [04/07/07 22:57] Matlabのtoolboxが必要なら、octeva-forgeをインストすれば
115 名前:名無しさん@お腹いっぱい。 [04/07/14 03:05] >>114 こんなんあったんだね。 これはちょっと使えるかも。
116 名前:名無しさん@お腹いっぱい。 [04/07/21 20:37] さてMATLAB R14が出たわけだが。
117 名前:名無しさん@お腹いっぱい。 [04/07/21 21:18] MATLABは新しくなればなるほど重く不安定になってくる。 R12以前くらいかな良かったのは。
118 名前:名無しさん@お腹いっぱい。 [04/09/28 22:30:37] 久々にベンチマークネタ age octave-2.1.57:1> A=rand(2000,2000);b=rand(2000,1); octave-2.1.57:2> tic;A\b;toc ans = 4.5008 CPU: AMD Athlon(tm) XP 1700+ (1472.93-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x681 Stepping = 1 そんなに速くないな...motherboardも古いし...
119 名前:名無しさん@お腹いっぱい。 [04/09/29 04:41:37] octave-forgeってどーですか
120 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/02 21:42:10] >>119 けっこう使えるよ。 公開されてるMatlab用のプログラムが変更無しで動く