1 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/10/28(水) 22:13:01 .net] 知る人ぞ知る強力なデータ解析ツール octave ... unixを科学研究で使っている香具師には非常に心強い味方のはずだ。 matlab互換を主張しながら、微妙にバージョンアップを続ける octaveについて語ろう。 そのPart 2です 前スレ データ解析ツールoctaveを語ろう pc12.2ch.net/test/read.cgi/unix/1086016412/
172 名前:168 mailto:sage [2011/10/02(日) 18:24:07.84 .net] どこまで必要な情報なのか・・・書ききれるのか分かりませんが書いてみます 有限要素法のプログラムを勉強のために作っているのですが、データが節点、 要素等番号がついています。NASTRANのデータ形式をGRIDとかCHEXAとか を使っています。(手を抜いて継続行を一行にしていたりしますが・・・) これらの番号(ID)は連続した数字ではなく、プログラム内部で参照して番号を 関連付けるしかないのですが、現状総ナメで番号(ID)を内部の連続した配列番号 に関連付けています。変数はelem(:).id、node(:).idがデータの番号で関連付 けした変数はelem(:).no、node(:).noとかにしています。主にelemがnode を参照するのでnode(:).idを連想配列風の処理で内部の配列番号に変換したいのです 読みにくいと思いますが、構造体を使った連想配列風の処理を教えていただけない でしょうか?
173 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/02(日) 23:48:46.22 .net] >>172 もっとスマートな方法もありそうですが… 期待外れだったら、すいません。 案1(スパース行列) node_id = [1 10 100 1000 10000]; node_id_t = sparse(0,0); node_id_t(node_id) = 1:length(node_id); % node_id_t(10000) -> 5 案2(連想配列?) node.id_1 = 1; node.id_10 = 2; node.id_100 = 3; node.id_1000 = 4; node.id_10000 = 5; % getfield(node,['id_' num2str(10000)]) -> 5 ちなみに、FEMをOctaveで、ということでしたら、OpenFEMというのも参考になるかもしれません。 Matlab用で、コードがめちゃくちゃ読みづらくて、かなりbuggyで信用なりませんが、 各種アルゴリズムの実装を知るには非常に有用です(個人的に、固有値解析のとこは感動しました)。
174 名前:168 mailto:sage [2011/10/04(火) 20:03:02.40 .net] >>173 お返事有り難う御座います。 処理速度を早くするためにはスパース行列が良さそうですね、 処理手順を多少弄らなければいけなさそうですが少し考えてみます。 案2の方も少し考えてみます。(使えそうな使えなさそうな・・・) OpenFEMの情報有り難う御座います。少しググってみます。
175 名前:octave for windows メモの筆者 mailto:sage [2011/10/11(火) 10:17:19.15 .net] GNU Octave 3.4.3 Released ttp://octave.1599824.n4.nabble.com/GNU-Octave-3-4-3-Released-td3890670.html
176 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/11(火) 21:28:31.48 .net] >>175 毎度ありがとうございます。 目玉機能は何かあります? (simulinkがついに出来たとか :-P )
177 名前:octave for windows メモの筆者 mailto:sage [2011/10/12(水) 16:12:10.66 .net] >>176 残念ながら喜ぶような機能の追加はなく,バグフィックスのようです。 3.4はこれでおしまいで,次は3.6になります。 GUIのインターフェースがつくかも知れませんが,はっきりとしません。
178 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/12(水) 20:10:34.63 .net] >>177 あ、それは残念。 純正のOctave Workshopと、ネイティブEXCELリーダーが付けばいいなぁ。
179 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 11:33:00.99 .net] >>ネイティブEXCELリーダー Octave-forgeのio packageである程度のことはできるようです。 私はつかったことがないのでよくわかりません。 ttp://octave.sourceforge.net/io/overview.html >>純正のOctave Workshop Qt BaseのGUIが検討されていてもしかしたら,3.6で実装 (たぶんExperimental)されるやもしれません。 Windows版については,最近活動がストップしているBenjaminさんに 変わる人が出てくればいいのですが。 私のスキル,体調,仕事上の都合でそこまでついていけないのが実情です。
180 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/13(木) 13:02:18.29 .net] scilabでは伝達関数を定義するのに s=poly(0,"s") sys=1/(1+s) ってできますが Octaveでは sys=tf( [1] , [1 1] ); ですよね。 scilabみたいに記法する方法はないですかね?
181 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 17:08:44.70 .net] 制御系には全く無知なのではずしていたらすみません。 Octave 3.4に対応した Octave-forgeのcontrol packageでは, ttp://octave.sourceforge.net/control/function/tf.html Exampleに octave:1> s = tf ("s"); octave:2> G = 1/(s+1) Transfer function "G" from input "u1" to output ... 1 y1: ----- s + 1 とあります。 Windowsの場合 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#110906 こちらをご覧ください。
182 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 17:10:32.55 .net] >>181 1 y1: ----- s + 1 が崩れて表示されていますね。すみませんm(__)m。
183 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 17:18:17.15 .net] >>181 何度もすみません。 **************************** Windowsの場合 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#110906 こちらをご覧ください。 **************************** は WindowsでOctave-3.4.2でcontrol packageなどのOctave-forgeを使いたい場合 ということです。舌足らずな説明ですみません。
184 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/13(木) 23:33:20.68 .net] 早速ありがとうございます。 使ってみます。 ginputのバッティングなんかも解消できているといいのですが。
185 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/14(金) 15:57:12.92 .net] >>180 OctaveのはMatlab互換なので馴れてしまえば後々で便利です 例えば化学の一次反応を (d/dt)x=k(x0-x) と置きましょう。xは反応量、x0は初期量、kは反応速度定数(毎秒)です。 式を展開すると (1/k)(d/dt)x=x0-x x0=(1/k)(d/dt)x+x これをラプラス変換すると X0=(s/k)X+X=(s/k+1)X X0=((s+k)/k)X 伝達関数G(s)は(伝達関数はOutput/Input) G(s)=X/X0=k/(s+k) これを普通にラプラス逆変換すると x/x0=k exp(-kt) ですが、Octaveで計算すると、k=0.02 として Octave:4> k=0.02; G=tf([k] [1,k],0); Octave:5> [y,t]=step(G);plot(t,y); であっさり描けてしまいます 時定数は1/k=1/0.02=50秒で、図でも50秒で1-exp(-1)=63%にまで上がってるはずです。
186 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/15(土) 13:48:46.19 .net] >>185 >>180 のヒトは 伝達関数G(s)は(伝達関数はOutput/Input) G(s)=X/X0=k/(s+k) で Octave:4> k=0.02; G=tf([k] [1,k],0); を Octave:4> k=0.02; G=k/(s+k) で書ければいいなぁ って言っているんだと思います。 Octave3.4だと出来るのか。
187 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/15(土) 14:33:56.65 .net] >>186 それはわかってるつもりなのですが 伝達関数は計算してから入れればいいという考え派なので しかし制御の本がScilabばっかりなのは 伝達関数の計算なんかめんどい&scicos(5.2以降ならxcos)で制御を勉強したい という人が多いのでしょうね
188 名前:octave for windows メモの筆者 mailto:sage [2011/10/17(月) 07:33:56.72 .net] >>186 >Octave3.4だと出来るのか。 正確にいうと最近のControl package でできるようになり, それにはoctaveが3.4以上である必要があるということのようです。 ところで3.4.2 for winodws用のOctave-forge Packageが更新されました。 wiki.octave.org/wiki.pl?OctaveForWindows を参考にしてください。Control package もバージョンが あがっているようです。
189 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/17(月) 20:24:04.79 .net] >>188 すいません。 octave.sourceforge.net/ のWindows installer (Octave and Octave-Forge) の方は更新されないんですか?
190 名前:octave for windows メモの筆者 mailto:sage [2011/10/18(火) 08:54:52.33 .net] >>189 される見込みは,残念ながら今のところありません。 MaintainerのBenjamin Lindnerさんが5月ごろから,svnの作業ツリーやML などから,姿を消しておられます。 私は,ビルドしかできないので3.4.2を自分のWebにのせたら, Nitzan Araziさんが7zipによるアーカイブと octave-forge のパッケージを (7 zip)作ってくださいました。
191 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/19(水) 20:34:16.86 .net] lsode関数で微分方程式を解いて時間経過を見るとき 変数xが負の値をとる場合にはゼロになるように条件を加えたいのですが そういったことは出来るのでしょうか。
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/20(木) 12:35:32.94 .net] >>191 マニュアルを読む限りではそのようなオプションはないと思います。 数学的な工夫でできるかもしれませんが。すみませんがわかりません。
193 名前:名無しさん@お腹いっぱい。 [2011/10/21(金) 23:07:54.32 .net] >>188 Octave3.4.2_gcc4.5.2\share\octave\packages\control-2.1.54 の中身を見ているのですが、 tf2ss とか sysout とか、その変の関数がゴッソリと無くなっているのは なんか理由があるんでしょうかね? s=tf("s") で G=1/s , H = 1/(s^2+1) , GH=G*H っていう記述が出来るようになったのは有りがたい反面、使い慣れた関数が 無くなっているのはちょっと寂しい。 (matlabにはあるのに)
194 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/24(月) 20:16:09.57 .net] >>193 本家のoctave-dev ML (Octave-forgeのメーリングリスト)で聞くしか ないでしょう。たしかMaintainer が最近変わったようなので。
195 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/24(月) 21:27:34.49 .net] >>193 tf2ssはssでイケルっぽい
196 名前:octave for windows メモの筆者 mailto:sage [2011/10/27(木) 07:58:32.39 .net] Mingw Octave-3.4.3 binaries for testing on windows - Updated octave.1599824.n4.nabble.com/Mingw-Octave-3-4-3-binaries-for-testing-on-windows-Updated-td3942303.html
197 名前:名無しさん@お腹いっぱい。 [2011/10/29(土) 15:09:02.44 .net] ↑のやつですが、Win7 x64でcommunications-1.1.0がmakeでエラーを吐いてインストールできません。 communicationsを使いたいので、どなたか情報を持ってる方お願いします pkg install signal image optim miscellaneous struct specfun -auto -forge -global (これはOK) pkg install communications -auto -forge -global ov-galois.o:C:\Users\hoge\AppData\Local\Temp\oct-2\communications\src/ov-galois.cc:556: undefined reference to `H5Gcreate' ov-galois.o:C:\Users\hoge\AppData\Local\Temp\oct-2\communications\src/ov-galois.cc:567: undefined reference to `H5Screate_simple' (snip) collect2: ld returned 1 exit status make: *** [gf.oct] Error 1 'make' returned the following error: make: Entering directory `/tmp/oct-2/communications/src' (snip) make: Leaving directory `/tmp/oct-2/communications/src' error: called from `pkg>configure_make' in file C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\3.4.3\m\pkg\pkg.m near line 1339, column 9 error: called from: error: C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\3.4.3\m\pkg\pkg.m at line 790, column 5 error: C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\3.4.3\m\pkg\pkg.m at line 361, column 9
198 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/30(日) 05:18:24.99 .net] >>197 回線が細いので確認できませんが, Octave3.4.3_gcc4.5.2_20111025.7zにくわえて Octave3.4.3_gcc4.5.2_pkgs_20111026.7zもいれて pkg rebuild -auto でいけませんか。 不要なものはpkg uninstallで消す。 Octave3.4.3_gcc4.5.2_pkgs_20111026.7zにすでにoctave-forgeは入っていて, それを再認識させるには pkg installでなく,pkg rebuildを使います。
199 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/31(月) 01:21:57.38 .net] >>199 すみません、最初にpkg rebuild -autoしたのにどうしてもダメだと思ってましたが octaveの再起動が必要なことに今の今まで気づいてませんでした;; どうもお騒がせしました。
200 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/02(金) 10:02:30.70 .net] FreeMATが4.0から4.1に上がりました freemat.sourceforge.net/ Octave互換モードも出来たらしいです FreeMATとOctaveを統合してはどうかという話もありますがはたして
201 名前:octave for windows メモの筆者 mailto:sageg [2011/12/03(土) 10:38:58.08 .net] >>200 情報ありがとうございます。確かにOctave Integrationとありますね。 OctaveのMLでは,なにも話しは出ていませんが,どうなんでしょうね。 Octave MLでは3.6のリリースに向けて議論がなされています。 GUIも開発されつつあります。
202 名前:octave for windows メモの筆者 mailto:sageg [2011/12/03(土) 20:10:07.47 .net] >>200 Octave のMLで情報を流してみました octave.1599824.n4.nabble.com/FYI-FreeMat-4-1-includes-Octavee-Integration-td4151738.html レスポンスがどうなるかですね。
203 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/04(日) 10:21:08.63 .net] FreeMatって G=1/(1+0.1*s) bode(G) みたいな事はできるんですかね? Octaveは最新版でやっと出来るようになったみたいですが。
204 名前::octave for windows メモの筆者 mailto:sage [2011/12/05(月) 07:09:35.32 .net] control-2.2.2 released だそうです。 octave.1599824.n4.nabble.com/control-2-2-2-released-in-package-forum-please-upload-td4157808.html octave.svn.sourceforge.net/viewvc/octave/trunk/octave-forge/main/control/NEWS?revision=9260&view=markup
205 名前::octave for windows メモの筆者 mailto:sage [2011/12/08(木) 07:03:41.15 .net] control-2.2.3 released in package forum - please upload octave.1599824.n4.nabble.com/control-2-2-3-released-in-package-forum-please-upload-td4169495.html [2] octave.svn.sourceforge.net/viewvc/octave/trunk/octave-forge/main/control/NEWS?revision=9303&view=markup
206 名前:octave for windows メモの筆者 mailto:sage [2011/12/09(金) 12:18:21.65 .net] NizanさんのWindows版Octave-3.4.3のバイナリがOctaveForgeにアップロード されました。 https://sourceforge.net/projects/octave/files/Octave_Windows%20-%20MinGW/Octave%203.4.3%20for%20Windows%20MinGW%20Installer/
207 名前:名無しさん@お腹いっぱい。 [2011/12/10(土) 02:50:59.58 .net] >>206 おぉお。 ついに! ありがとうございます
208 名前:octave for windows メモの筆者 mailto:sageg [2011/12/10(土) 17:54:33.57 .net] >>206 >>207 今回のバイナリーには,インストーラーがありません。そのため上記のページに 詳しい解説とインストール方法が記載されています。英語なので,拙Webページに自分の 改定を少し加えた翻訳の解説とインストール方法を記載しましたので,ご利用 ください。 www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#111210
209 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/11(日) 23:57:09.22 .net] cygwin(install all)いれるときに一緒に入れたoctave使いたい。 初期設定ファイルいじらずに、初めて起動した。 startxからoctave起動して、簡単な計算とかはできるんだけど グラフがまったく出力されない。↓こんなのでる。 gnuplotにパス通してないから?(´・ω・`) octave:1> x=[0,0.2,0.4] x = 0.00000 0.20000 0.40000 octave:2> plot(x,sin(x)) 78 [main] octave-3.4.2 2720 exception::handle: Exception: STATUS_ACCESS_VIOLATION 1712 [main] octave-3.4.2 2720 open_stackdumpfile: Dumping stack trace to octave-3.4.2.exe.stackdump error: popen2: popen2 (child): unable to start process -- Bad address error: called from: error: /usr/share/octave/3.4.2/m/plot/__gnuplot_open_stream__.m at line 30, column 44 error: /usr/share/octave/3.4.2/m/plot/__gnuplot_drawnow__.m at line 72, column 19 error: Invalid call to strcat. Correct usage is: -- Function File: strcat (S1, S2, ...) error: called from: error: /usr/share/octave/3.4.2/m/help/print_usage.m at line 87, column 5 error: /usr/share/octave/3.4.2/m/strings/strcat.m at line 92, column 5 error: /usr/share/octave/3.4.2/m/plot/__gnuplot_get_var__.m at line 113, column 11 error: /usr/share/octave/3.4.2/m/plot/__go_draw_axes__.m at line 40, column 18 error: /usr/share/octave/3.4.2/m/plot/__go_draw_figure__.m at line 167, column 19 error: /usr/share/octave/3.4.2/m/plot/__gnuplot_drawnow__.m at line 86, column 5
210 名前:209 mailto:sage [2011/12/12(月) 00:01:14.96 .net] 過去レスにサンプルまでいっしょのレスがありました。驚きです。 cygwinのダウングレードで解決されていましたが、 ダウングレードはするつもりがないので相性がよくなるまで待ちます。
211 名前:octave for windows メモの筆者 mailto:sageg [2011/12/12(月) 05:14:49.53 .net] >>210 CygwinのMLを見ているとOctaveとの相性の悪い1.7.9に代わって1.7.10が テストリリースされているようです。まだ,試していませんが問題が解決して いることを願います。
212 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/13(火) 21:31:23.85 .net]
213 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/13(火) 21:31:51.59 .net] >>208 すいません s=tf("s") bode(s) ってやるとボード線図は出るのですが、出てきたボード線図のグラフィックウインドウ上でマウスをドラッグしたり ホイールをまわしたりすると、落ちちゃいます。 僕の環境(WinXP32bit)だけかもしれませんが。 普通にplotだと、出力されたグラフをマウスでいじっても大丈夫なんですが。 www.42ch.net/UploaderSmall/source/1323769033.png
214 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/15(木) 09:13:34.34 .net] Mingw正式リリースの3.2.4を使っると巨大データでこけるので困っていました (Memory Exhaustedのエラーを吐く) 特にWindows7 64bitだとすごくこけやすかったので (理論的には2GBまで大丈夫なはずなのに500MBぐらいのメモリー使用でこける) 環境を変えるのはあまり好きでは無かったのですが 3.4.3を入れてみたら全くこけなくなりました、 このバージョンなら2GBまでこけないかも 助かりました OpenBLASは ttp://www.tatsuromatsuoka.com/octave/Eng/Win/ のを使わせていただきました 自分でmakeするとエラーが出たので
215 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/15(木) 19:28:05.14 .net] >>214 MemoryExhaustedは3.2.4でも悩まされてるけど、 3.4.3は、さらに起きやすくなった。実際、同じスクリプトが動かなくなった。
216 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/16(金) 09:38:28.61 .net] >>215 こちらはメモリーを4GB積んでます それとWin7 32bit では試してないので WinXP 32bit で 3.2.4 Win7 32bit で 3.2.4 Win7 64bit で 3.2.4 WinXP 32bit で 3.4.3 Win7 32bit で 3.4.3 Win7 64bit で 3.4.3 この6つの組合せとメモリー搭載量で起きやすい、起きにくいがあるのかもしれません よっぽどMigw64bit でmakeしようと思ったけど、色々挫折した(笑 3.4.3を試そうと思ったのはOctaveのMailingリストで、3.2.4から3.4に上げれば Memory Exhaustedが出ないよという書き込みがあったから
217 名前:名無しさん@お腹いっぱい。 [2011/12/18(日) 02:33:58.07 .net] iphone用octaveでないかなー
218 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/18(日) 11:03:15.98 .net] >>217 そこでLinuX zaurusですよ
219 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/19(月) 10:36:54.47 .net] Scilab 5.4.1のalpha版が出ました www.scilab.org/products/scilab/download/5.4.0-alpha-1 5.3.3は使っていてbugだらけだったので、少しはましになるかどうか (xcos の AFFICH_mでリアルタイムで数値が表示されないのは 仕様じゃなくてbugだったのか orz)
220 名前:octave for windows メモの筆者 mailto:sage [2011/12/20(火) 03:33:44.62 .net] 最近,HDDが壊れたThink Pad X40にUSB HDDを利用してUbuntu 11.10をいれて触っています。 Ubuntuのソフトウェアセンターのoctaveは3.2.4なので,3.4.3をビルドしてみました。 依存ライブラリが揃っており,Synapticパッケージマネージャーで簡単にインストールできました。 Windowsでのビルドの経験が役にたって少々の試行錯誤で無事ビルドできました。 なかなか,いい感じです。しかし,ビルドツールがUnbuntu上ではWindows上より はるかに速いのでおどろきました。 また,3.6.0のプレリリースである3.5.90もビルドできました。
221 名前:octave for windows メモの筆者 mailto:sage [2011/12/20(火) 03:37:19.84 .net] 最近,HDDが壊れたThink Pad X40にUSB HDDを利用してUbuntu 11.10をいれて触っています。 Ubuntuのソフトウェアセンターのoctaveは3.2.4なので,3.4.3をビルドしてみました。 Windowsでのビルドの経験が役にたって少々の試行錯誤で無事ビルドできました。 なかなか,いい感じです。 しかし,ビルドツールがUnbuntu上ではWindows上よりはるかに速いのでおどろきました。 また,3.5.90のビルドもできました
222 名前:octave for windows メモの筆者 mailto:sage [2011/12/21(水) 07:20:59.27 .net] 最近,HDDが壊れたThink Pad X40にUSB HDDを利用してUbuntu 11.10をいれて 触っています。Ubuntuのソフトウェアセンターのoctaveは3.2.4なので, 3.4.3をビルドしてみました。 Windowsでのビルドの経験が役にたって少々の試行錯誤で無事ビルドできました。 なかなか,いい感じです。しかし,ビルドツールがUnbuntu上ではWindows上より はるかに速いのでおどろきました。
223 名前:octave for windows メモの筆者 mailto:sage [2011/12/21(水) 07:22:37.20 .net] 最近,HDDが壊れたThink Pad X40にUSB HDDを利用してUbuntu 11.10をいれて 触っています。Ubuntuのソフトウェアセンターのoctaveは3.2.4なので, 3.4.3をビルドしてみました。 Windowsでのビルドの経験が役にたって少々の試行錯誤で無事ビルドできました。 なかなか,いい感じです。しかし,ビルドツールがUnbuntu上ではWindows上より はるかに速いのでおどろきました。
224 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 10:37:59.12 .net] >>220 -223 2chブラウザの特性を知らず同じ書き込みを何度もしてすみません。m(__)m
225 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 10:49:14.91 .net] >>214 >OpenBLASは >ttp://www.tatsuromatsuoka.com/octave/Eng/Win/ >のを使わせていただきました >自分でmakeするとエラーが出たので MinGW上ではふつうにビルドしただけではエラーになるようです。 同時にできる静的ライブラリから,次の例のようにしてdllを作成しました。 i686-pc-mingw32-gcc -shared-libgcc -shared \ -Wl,--enable-auto-import \ -Wl,--enable-runtime-pseudo-reloc-v2 \ -Wl,--allow-multiple-definition \ -Wl,--out-implib=libblas.dll.a -o libblas.dll \ -Wl,--output-def=libblas.exp \ -Wl,--whole-archive libopenblas_nehalemp-r0.1alpha2.4.lib \ -Wl,--no-whole-archive -lgfortran こうしてできたものを ttp://www.tatsuromatsuoka.com/octave/Eng/Win/ にアップしました。
226 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 10:51:16.90 .net] >>225 i686-pc-mingw32-gcc -shared-libgcc -shared \ で始まる行が一行ずつ開いているのは詰めてください。m(__)m
227 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 12:16:03.65 .net] >>255 たびたびすみません。 >MinGW上ではふつうにビルドしただけではエラーになるようです。 Cygwin上でふつうにビルドしただけではMinGWでエラーになるようです。 で,CygwinのMinGW64の32bit版GCCで静的ライブラリからリンクしなおして, dllを作成しています。
228 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 13:13:13.43 .net] >>227 どうもありがとうございました dllのビルドがおかしかったんだ
229 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 13:22:53.36 .net] >>224 あ、おかえりなさいw 普通は自動追尾するはずなんですが、 板欄→板一覧の更新 スレ欄→スレ一覧の更新 を手動でやればいいんでしたっけか。 自分も適当にやったので、本当はどうすればいいのか、実はよくわかってないですw というわけなんですが、 >>213 の状態になるのは僕の環境だけなんでしょうかねぇ?
230 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:04:18.95 .net] >>213 >>229 再現確認しました。 現在配布のバイナリは,share\octave\site\m\startup\octaverc でfltkがgraphics_toolkitに指定してあります。 graphics_toolkit gnuplot でやると落ちないようです。 gnuplotのmultiplotを使っているので,マウスぐりぐりは 変なことになりますが,落ちることはないようです。 fltkで落ちるのは,バグかなと思います。 ちょっと調べてみます。
231 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:04:31.43 .net] >>213 >>229 再現確認しました。 現在配布のバイナリは,share\octave\site\m\startup\octaverc でfltkがgraphics_toolkitに指定してあります。 graphics_toolkit gnuplot でやると落ちないようです。 gnuplotのmultiplotを使っているので,マウスぐりぐりは 変なことになりますが,落ちることはないようです。 fltkで落ちるのは,バグかなと思います。 ちょっと調べてみます。
232 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:06:37.91 .net] また,2重投稿になってるm(__)m
233 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:16:09.81 .net] >>230 subplotが怪しいのかなあとおもいましたが,単にsubplotしただけではfltkでの グラフ落ちませんでした。Controlパッケージのせいなのかな? ちょっと見当つかないですが,余力があればBug Trackerにあげてみます。 それで解決するかはわかりませんが。
234 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:32:41.70 .net] >>233 bug trackerにあげときました。 savannah.gnu.org/bugs/?35159
235 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 18:01:28.68 .net] >>234 ありがとうございます。 お世話かけます。
236 名前:octave for windows メモの筆者 mailto:sage [2011/12/24(土) 12:24:11.51 .net] Octave-3.5.91がでました。 ttp://octave.1599824.n4.nabble.com/Octave-3-5-90-snapshot-available-for-ftp-tp4200255p4230198.html 3.6.0へ向けての最後のスナップショットとなると思います。
237 名前:octave for windows メモの筆者 mailto:sage [2011/12/24(土) 18:57:01.99 .net] 少し前ですが,Octave のWikiが新しくなりました。 ttp://www.octave.org/wiki/index.php?title=Main_Page の左の Navigation の index からいろいろなページに飛べます。
238 名前:octave for windows メモの筆者 mailto:sage [2011/12/25(日) 05:39:00.48 .net] ttp://sourceforge.net/projects/octave/files/Octave_Windows%20-%20MinGW/Octave%203.4.3%20for%20Windows%20MinGW%20Installer / にインストーラー版 Octave-3.4.3 for windowsがおかれました。 ttp://gnu-octave-repository.2306053.n4.nabble.com/Installer-for-mingw32-Octave-3-4-3-td4225772.html Octave-forgeは含まれないようなので,従来からあるOctave-Forgeを利用される 方は Octave3.4.3_gcc4.5.2_pkgs_20111026.7z の内容をを上書きして, 設定する必要があると思います。
239 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/25(日) 22:30:58.01 .net] 本当に初歩的な質問ですが、octaveで乱数(メルセンヌツイスタ)を使いたいのですが、その乱数がcファイルなので、どうすればoctaveで使えるのですか? 因みに目的はメルセンヌツイスタを用いた乱数発生で円を求める奴です
240 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 10:42:26.06 .net] >>239 help rand を見ると、現在のOctaveのrandで用いているのは 擬似Mersenne Twisterのようです
241 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 13:59:09.11 .net] >>239 初歩的な質問でなく,かなり高度な質問(バリア)も高い質問です。 www.gnu.org/software/octave/doc/interpreter/Oct_002dFiles.html#Oct_002dFiles を読んでoct ファイルを作る。C++だから,ラッパーを書く必要があるかも。 MATLABでも使うなら,mexがいいかもしれない。 www.gnu.org/software/octave/doc/interpreter/Mex_002dFiles.html#Mex_002dFiles 英語だから苦労するかもしれないけど,勉強だと思って。
242 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 14:00:58.82 .net] >>241 外した答えになっているような気がする。許してください。
243 名前:239 mailto:sage [2011/12/26(月) 16:06:13.41 .net] >>240 ごめんなさい、メルセンヌツイスタ縛りなのでrand関数は不可です あくまでも公式サイトから落としたメルセンヌツイスタプログラムを用いて計算しなければならないので… てか何故PCから見れないんだ、このスレ(´・ω・`)
244 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 17:11:53.04 .net] いまは↓ ttp://toro.2ch.net/test/read.cgi/unix/1256735581/ で見れるようです。私もある方に教えてもらいました。
245 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 17:19:19.18 .net] >>243 ttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/MT2002/CODES/mt19937ar.c ソースはこれですか。 コンパイルして,実行形式を作る。 そのあと,Octaveから system コマンドをつかって実行して, load コマンドなどでOctaveの変数に取り込むのが手っ取り早いかと。
246 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 18:33:11.68 .net] それです、正にそれです 流石に馬鹿過ぎる質問ですがコンパイルと実行ファイル制作ってどうするんですか? コマンドプロンプトを使ってやるのですか? それともoctave上でコンパイルするのですか? あ、当然ググりました
247 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 19:02:34.54 .net] >>246 課題? $ gcc -o mt19937ar mt19937ar.c $ ./mt19937ar 1000 outputs of genrand_int32() 1067595299 955945823 477289528 4107218783 4228976476 3344332714 3355579695 227628506 810200273 2591290167 (以下略)
248 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 23:46:31.06 .net] >>247 無事に窓を用いてコンパイルは出来ました(mt19937ar.exe) けどそこからがよく分かりません… system関数?load関数? 因みにこれは微妙に課題です ゼミでoctaveを使うことになったのでその予行練習課題みたいなものです
249 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:10:48.73 .net] >>239 確認ですが、その問題というのは、 0〜1の乱数を2個発生させる。(r1,r2) r1^2+r2^2< 1 だったら カウンタを1増加させる。 この作業を100万回行う。 カウンタの値/100万×4がπになるはず っていう問題ですかい? 問題を丸投げするんだから、情報を小出しにせず、 堂々と丁寧に全部書くことをオススメします。
250 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:40:58.98 .net] 了解しました 課題は2次元球(円)から10次元球までの体積(面積)をoctaveを用いて解くものです 条件としましては ・乱数を用いること、その際条件としてメルセンヌツイスタを用いる ・半径は1(x1+x2+x3+…+xn≦1を満たす、但しx1,x2,x3,…,xnはメルセンヌツイスタを用いて発生させた乱数とする) ・乱数発生回数は問わない(但し回数は考察対象とする) 因みに背景としましては、自分卒研にてベイズ推計を用いての逆問題について研究していますので、その際用いられるMCMC法でメルセンヌツイスタ乱数およびoctaveが必要なので、先生から予行練習課題としてこの課題が出されたのです
251 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:46:21.14 .net] 訂正です 乱数の範囲は[0,1]です そして体積はV=(octaveで求めた値)×2^n(n:次元)で求めるものとします 一応octaveの基本はある程度理解をしたのですが、高度なのはさっぱり分からないのでここで聞きました
252 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:49:10.19 .net] 書き忘れた…orz >>249 で書いてるのと一緒です オレの馬鹿、連レスサーセンです
253 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 01:24:12.38 .net] >>252 多分、方法は2つあって、 1) メルセンヌツイスタのアルゴリズムをOctaveで書き下ろして使う 2) dirk.eddelbuettel.com/code/octave-mt.html を読む のどっちかじゃないすか? #そもそもなんで、この問題をわざわざoctaveでやるのかの意味がよくわからんです。 octaveでどんな問題でも解けるように というトレーニングなら1)の方法でしょーね。
254 名前:octave for windows メモの筆者 mailto:sage [2011/12/27(火) 06:47:11.09 .net] >>253 番さんの 2)の方法を使うためには,>>241 のoctファイルを作成する方法をOctaveの マニュアルでよんでください。 randmt.cc をダウンロードして mkoctfile コマンドをつかって,Octファイル作ればいいのですが, なんかエラーがでてしまいます。 octave:2> mkoctfile randmt.cc randmt.cc:42:17: warning: inline function 'uint32 randomMT()' used but never defined randmt.o: In function `randomMTunit': E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' randmt.o: In function `Z11FrandmtseedRK17octave_value_listi': E:\usr\Tatsu\test\octave/randmt.cc:105: undefined reference to `seedMT' randmt.o: In function `randomMTunit': E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' E:\usr\Tatsu\test\octave/randmt.cc:48: undefined reference to `randomMT' randmt.o:E:\usr\Tatsu\test\octave/randmt.cc:48: more undefined references to `randomMT' follow collect2: ld returned 1 exit status うーむ。
255 名前:octave for windows メモの筆者 mailto:sage [2011/12/27(火) 06:57:19.79 .net] >>254 ページをよく読んでいなかったorz。 Download code.からoctave-mt.tar.gzをダウンロードする。 適当なフォルダに解凍する。 たとえば,E:\usr\Tatsu\test\octave\octave-mt に解凍したら, octave:3> cd E:\usr\Tatsu\test\octave\octave-mt octave:4> system('make') のようにすると gcc -Wall -O6 -c -o cokus.o cokus.c mkoctfile randmt.cc cokus.o randmt.cc:42:17: warning: inline function 'uint32 randomMT()' used but never defined ln -sf randmt.oct randmtseed.oct ln -sf randmt.oct randmtn.oct ans = 0 とoctファイルができる。 helpを読むには, octave:5> help randmt とする。
256 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 12:06:42.27 .net] やってみました octave:1> cd "C:/Documents and Settings/DateMasa/デスクトップ/MT" octave:2> system('make') mkoctfile randmt.cc cokus.o randmt.cc:42: warning: inline function `uint32 randomMT()' used but never define d c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: unrecogniz ed option '--enable-runtime-pseudo-reloc-v2' c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: use the -- help option for usage information collect2: ld returned 1 exit status make: *** [randmt.oct] Error 1 ans = 2 こんな感じのエラーが出てしまいました… 確認で一応 help randmt を実行しましたが「そんな関数なんてねーよ」と吐き出してきました 後マニュアルに書いてあるとおりmkoctfileでccファイルをoctファイルにしてみようと試みたのですが これもエラーが出てしまいました
257 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 12:23:14.32 .net] 因みにmkoctfileでのエラーは次のとおりです octave:6> mkoctfile randmt.cc g++: randmt.cc: No such file or directory g++: no input files g++: randmt.o: No such file or directory
258 名前:octave for windows メモの筆者 mailto:sage [2011/12/27(火) 12:50:27.95 .net] >>256 >>257 パスにスペースがあるとだめですよ。 だから cd "C:/Documents and Settings/DateMasa/デスクトップ/MT" ではだめです。
259 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 13:54:13.73 .net] アドバイスを参考にスペースが入らないよう解凍位置を変更してみました octave:3> cd C:/MT-file octave:4> system('make') mkoctfile randmt.cc cokus.o randmt.cc:42: warning: inline function `uint32 randomMT()' used but never define d c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: unrecogniz ed option '--enable-runtime-pseudo-reloc-v2' c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: use the -- help option for usage information collect2: ld returned 1 exit status make: *** [randmt.oct] Error 1 ans = 2 これでhelp randmtをやっても「だからねーって言ってるだろ」とエラーが出てしまいました どこが違うのか…
260 名前:octave for windows メモの筆者 mailto:sage [2011/12/27(火) 14:08:52.94 .net] >>259 c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: unrecogniz ed option '--enable-runtime-pseudo-reloc-v2' c:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: use the -- help option for usage information collect2: ld returned 1 exit status make: *** [randmt.oct] Error 1 ans = 2 ちがったGCCのバージョンが認識されてますね。(3.4.5) Octave 3.4.3ではGCC-4.5.2がパッケージされていて, それが認識されないといけないのですが。 ttp://octave.1599824.n4.nabble.com/Re-Fw-Re-msys-from-octave-td4234096.html が参考になるかもです。 ちなみに'--enable-runtime-pseudo-reloc-v2’はGCC-3.4.5にはないオプションです。
261 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 15:44:46.34 .net] minGWを新しいものに変え、今までの事をやりました 無事randmtが起動できました そして課題もまとめることができました 本当にありがとうございます!
262 名前:octave for windows メモの筆者 mailto:sage [2011/12/28(水) 06:35:47.21 .net] >>261 よかったですね。卒研頑張ってください。
263 名前:octave for windows メモの筆者 mailto:sage [2011/12/28(水) 06:58:12.76 .net] >>213 >>234 savannah.gnu.org/bugs/?35159 Control PackageとFLTKの組み合わせでBode線図にグラフに問題があるのは, Windows だけでないようです。 3.6.0で改善すればよいのですが。 3.6のプレリリースの3.5.90や現在developmentソースでControl packgeが 組み込めない状態なのでちょっと時間がかかると思います。 しばらくは,gnuplot を graphics_toolkit にしてお使いください。
264 名前:名無しさん@お腹いっぱい。 [2011/12/28(水) 22:51:43.25 .net] 本当に初歩的な質問で申し訳ございません。 今octave3.4.3をインストールして使おうと思っています。 octaveはmatlabと非常に相関性があるということで家ではこのoctaveを使おうと思っています。 そこでいくつか質問があります。 1.octaveを起動させ、matlabコードを張り付けて実行したいのですが 張り付けすることができません。 いちいち、タイプしなければならないんでしょうか? 2.matlabでは、memo帳(functionやscript)が出てきてそこにコードを打って 実際のmatlab上で実行させるのですが、このoctaveはメモ帳のようなものはなく いちいち打たなければならないのでしょうか? 調べてみると、matlabと同じようにfunctionがあるみたいですが、 これはfunctionが別のところになければ実行できないのですが、 どうすればよいのでしょうか? よろしくお願いいたします。
265 名前:octave for windows メモの筆者 mailto:sage [2011/12/29(木) 06:23:58.44 .net] >>264 文章からして、windows上のことと思います。Octaveは、マルチプラットフォーム なソフトなので、OS(Windows, Mac, Linix)などを記載してください。 私の書く文章にわからない点があると思いますが適宜Googleなどで 調べてください。 1.Windows上では、Octaveはコマンドプロンプト上で動作しています。 octaveの実行ウィンドウをマウスで右クリックして、プロパティを開き、 オプションタブで簡易編集モードがアクティブになっていることを確認 してください。octave のプロンプトに張り付けたい文章をクリップボード にコピーしてoctaveのプロンプト上で右クリックをすれば、張り付ける ことができます。 これは、Octaveの機能というよりコマンドプロンプトの機能ですので 「コマンドプロンプト 張り付け コピー 簡易編集モード」などで ググってください。NotePad++を既定のテキストエディタにするには、 Octaveをダウンロードされたページの説明(英語)をよく読んでください。 設定をすれば、octave のプロンプトからeditとうてば起動できます。 2.将来的には、octaveもMATLABのようなGUIを備えたソフトになるべく 作業がされていますが、現在はGUIソフトではありません。 テキストエディタは自分で準備してください。 Notepad++がいいのではと思います。 >調べてみると、matlabと同じようにfunctionがあるみたいですが、 これはfunctionが別のところになければ実行できないのですが、 どうすればよいのでしょうか? なにが言いたいのかよくわかりません。もう少し実例をあげてわかりやすく 質問してください。
266 名前:octave for windows メモの筆者 mailto:sage [2011/12/29(木) 06:28:52.00 .net] >>265 いかん文章の推敲があまいなあ。 NotePad++を既定のテキストエディタにするには、 Octaveをダウンロードされたページの説明(英語)をよく読んでください。 設定をすれば、octave のプロンプトからeditとうてば起動できます。 は 2.の部分の説明でNotepad++ を既定のエディタにするために何を読めばいいか をかきました。 なお、拙ページに説明の翻訳をあげていますので、よければ参考にしてください。 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#111210
267 名前:octave for windows メモの筆者 mailto:sage [2011/12/29(木) 06:34:02.08 .net] >>264 バージョンは、3.2.4ですが、私のoctaveを使った講義の資料を紹介した部分を あげていますので参考になれば幸いです。 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#110613
268 名前:名無しさん@お腹いっぱい。 [2011/12/29(木) 11:36:23.43 .net] どういうわけかグラフを一つ書きません。 訳がわかりません。 ## WindowsXP + octave 3.2.4 and 3.4.3 clf for i = 1:4 subplot(4,4,i+12); h=plot(randn(1,5),"r+"); set(gca(),"position",[(i-1)*0.225+0.1, 0.25, 0.2,0.2]) endfor input("3番目が抜けているはず。書き直すと今度は書く。改行で継続","s"); i = 3; subplot(4,4,i+12); h=plot(randn(1,5),"r+"); set(gca(),"position",[(i-1)*0.225+0.1, 0.25, 0.2,0.2])
269 名前:名無しさん@お腹いっぱい。 [2011/12/29(木) 13:53:53.94 .net] Notepad++(テキストエディタ) の インストール(オプション,推奨) 最新の Notepad++ を notepad-plus-plus.org/ からダウンロードし,インストールします。 <Install folder>\share\octave\site\m\startup\octaverc をエディタで編集する。 次の行のコメントを解除し,Octave の既定のエディタに設定します。 EDITOR('C:\\Program Files\\Notepad++\\notepad++.exe'); 注意:notepad++.exe がインストールされるフォルダが上記でない場合は,設定を適宜変更します これをやったのですが、 editとうっても error: C:\Octave\Octave3.4.3_gcc4.5.2\Octave3.4.3_gcc4.5.2\share\octave\3.4.3\ m\miscellaneous\edit.m at line 212, column 7 と出てきて起動できません。
270 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/29(木) 20:44:28.38 .net] >>264 エスパー的解釈で補完して答えてあげやう。 どうせwindows版だろうし。 1)C:\Octave というフォルダがあるだろうから(なければ作る) その中に MyProj とかいうフォルダを作る。 1)Windowsのメモ帖を立ち上げる。 2)そこに a=1 b=a+5 ってな感じでmatlabっぽいコードを書いて見る。 3) 名前をつけて保存で ファイルの種類をテキスト文書(*.txt)じゃなく、全ての文書(*.*)にしてから 1)で作ったc:\Octave\MyProjの中に mytest.m という名前で保存する。 ファイル名は適当でいいが、 拡張子は必ず .m にすること (テキスト文書で保存すると、 mytest.m.txt っていうワケワカランファイル名に なってしまうので注意) 4)Octaveを立ち上げる。 5) cd c:\octave\myproj と打つ。 (1で作ったフォルダ) 6) pwd と打って、ans=c:\octave\myproj って出るのを確かめる 7) dir と打って、 mytest.m が表示されるのを確かめる 8) mytest と打つ( 拡張子 .m は つけちゃダメ) 9) 動いた? 10) 本当は source mytest.m と打つべきなんだけどね(これは拡張子をつける。ややこしいね) 11) mytest とうつと、 mytest という関数を起動しようとして、カレントディレクトリを探すと mytest.m があるので それが起動されるというシカケなのだ。 12) 例えば which mytestってやると、それがどこにあるかわかるだろう 13) たとえば which plotってやると実は plot も plot.m を遥か深い漆黒の穴から古(いにしえ)の契約により呼び出している事がわかるだろう 14) こんなもんでどうでしょか?
271 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/30(金) 00:06:35.73 .net] >>263 対処ありがとうございます。 どうも複合技でバグっているっぽいですね。 慣れ親しんだgnuplotで使い続けさせていただきます。 それにしてももう少し起動が早くならないですかねぇ。 scicoslab (scilabじゃなくて) はとても起動が速いのに。
272 名前:octave for windows メモの筆者 mailto:sage [2011/12/30(金) 07:12:56.31 .net] >>271 起動はUbuntuなどのUnixではとても速いです。起動がWindows用に最適化 されていないように感じます。