1 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/10/28(水) 22:13:01 ] 知る人ぞ知る強力なデータ解析ツール octave ... unixを科学研究で使っている香具師には非常に心強い味方のはずだ。 matlab互換を主張しながら、微妙にバージョンアップを続ける octaveについて語ろう。 そのPart 2です 前スレ データ解析ツールoctaveを語ろう pc12.2ch.net/test/read.cgi/unix/1086016412/
2 名前:octave for windowsメモの筆者 mailto:sage [2009/10/29(木) 00:07:36 ] >>1 スレたてありがとうございます。
3 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/10/29(木) 02:35:44 ] ロリコンのオイラにも使いこなせだろうか…
4 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/06(金) 10:32:08 ] OctaveスレですがFreeMAT 4.0が使い物になるか検証してみます FreeMATでは関数名がOctave/MATLABと変わってるものがあります 例えば Octave/MATLABのfgetlは、fgetline Octave/MATLABのinterp1は、interplin1 (しかもオプションが違う) とか色々 というような感じなので、Octave、MATLAB、FreeMATで共通に動かせるプログラムを 書くにはどの処理系で動かしているかプログラムの中で判別する必要があります。 OctaveとMATLABを判別するには if exsit('OCTAVE_VERSION'), % octave の処理 else % MATLAB の処理 end; とやれば良いです。FreeMATではどうやら if exist('verstring'), % FreeMAT の処理 else % FreeMAT 以外の処理 end; とやればいいようです。
5 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/06(金) 10:56:36 ] 電卓やExcelで計算出来る程度をのことをわざわざOctave/MATLAB/FreeMATで 行うのは時間の無駄です。 逆に理論上は電卓やExcelでも計算可能だが超絶むずい問題を Octave/MATALB/FreeMATでさらさらと計算する事は非常に有意義です。 統計計算ならExcelでも可能でしょうけど、非線形最小二乗法の計算ともなれば ちょっと難しいですが、Octave/MATLAB系言語なら簡単(?)に計算可能です。 MATLABでは高いOptimization Toolboxのオプションを買えば lsqcurvefitというマルカート法を用いた非線形最小二乗計算が出来ます。 でもまあしかし、Octave-Forgeについてくるleasqrを使えば只で マルカート法による非線形最小二乗計算ができますのでそちらを使いましょう。 使うのはleasqr.mとdfdp.mだけなので簡単です。 FreeMATではこのleasqr.mをどう試行錯誤しても使えなかったので FreeMAT自身のマルカート法を用いた非線形最小二乗関数であるfitfunを使います。 それらの使い方の例を次に示します。
6 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/06(金) 11:02:54 ] test1.mで保存してOctave/MATLAB/FreeMATで実行 function F=test1() stol=0.0001; niter=50; AA=[0:360]; BB=AA./180.*pi; CC=cos(BB); x0=[1,0]; % if exist('verstring'), wt=zeros(size(BB))+1; [p1, f1] = fitfun(@sintest1, x0, CC, wt, eps, BB); p1 else [f1, p1] = leasqr(BB', CC, x0, @sintest2, stol, niter); p1 end; disp(sprintf('pi = %f', p1(2)*2)); function F=sintest1(param1, xx), F=sintest(xx, param1); function F=sintest2(xx,param1), F=sintest(xx, param1); function F=sintest(xx, param1), freq =param1(1); phase=param1(2); E=sin(xx.*freq+phase); F=E;
7 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/06(金) 13:40:31 ] >>6 の説明を簡単にします sintestは、param1で指定された波数freqと位相phaseのsinデータを生成する関数で 入力値にはcosのデータを用意し、 その波数と位相を非線形最小二乗法で求めるというものです cosはsinから見ると位相が90度=π/2ずれてますので 推定された位相を2倍すればπが得られるはず!で 実際に計算してみるとそうなりました ところで、leasqrとfitfunでは、解析する関数のパラメータの順番が違います そこで元になってるsintest関数をleasqr用とfitfun用にラッパー関数 sintest1, sintest2で置き換えてから処理しています。 ちなみにMATLABのOptimization Toolboxの非線形最小二乗法関数の lsqcurvefitもFreeMATのfitfunと同じ並びだったりします
8 名前:octave for windowsメモの筆者 mailto:sage [2009/11/06(金) 18:27:07 ] >>5 他の視点としてはC, fortran, C++で書けば速いコードができるのだが, プログラムを書くのに時間がかかってしまのですが,octaveなどで組み込みの 強力なツールを使えばプログラミングが早く終わるケースなどがあります よね。 ちょっとして問題までコンパイラを使うのは時間の無駄だと思います。 また,プログラミングする前のプロトタイプ作成にも有効ですよね。 liboctaveはC++で動く数値演算クラスライブラリとして有用ですし, octaveのスクリプトからの移植は,比較的容易ですので真剣に高速化したい ときも近道になりますよね。 私の主なoctaveの用途はodeのソルバーと固有値問題解析です。 いろんな場面で連立微分方程式を解く 超音波は波動を使った研究をしていて波動方程式はフーリエ変換すると固有値 問題になるのでそのときもoctaveが大変約に立っています。 ExcelでVBAでルンゲクッタ公式を書いて,微分方程式を解いているのを見ている となんと時代遅れで時間の無駄なことをしているのだろうと 思ってしまいます。 スティッフな問題なんぞに対応できないですしね。 #ところで,思い切りスレ違いですが, 非線形最小2乗法はgnuplotもかなり強力ですよ。
9 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/06(金) 19:16:01 ] octaveでgnuplot(wgnuplot)を実行させようとするとグラフが表示されない現象に悩まされているので質問させてください。 まずバージョン情報をば。 OS: Windows Vista octave: 3.0.3(cygwin setupからインストール) gnuplot: 4.0 patchlevel 0(wgnuplotをcygwinからではなく個別にインストール) また、octaveはcygwin1.5.25上で動かしています。 octaveからgnuplotにデータを渡すために octaveの設定ファイルに下記サイト等を参考にして変更を施しました。 www.t.hosei.ac.jp/~miya_ken/computer/octave.htm ですがグラフを表示させようとすると octaveのウィンドウでデータが羅列されるだけで gnuplotがグラフィカルに表示してくれません。 自分の打ちこんだデータについては何度も確認しましたが間違っている場所は見当たりません。 参考までに載せておきます(テスト用なのでただのsinカーブです) ------------------------------------ x=0:0.1:2*pi; plot(x,sin(x)) ------------------------------------ 解決法知っている方おられましたらよろしくおねがいします。
10 名前:octave for windowsメモの筆者 mailto:sage [2009/11/07(土) 05:44:41 ] >>9 Cygwin版ならのcygwin版gnuplotを使うのがいいとおもいますが,Xを動かしたくないんですね。XソフトとしてCygwin-XでなくXmingを使う動作が軽くて結構いいですよ。 Octave 2.91?以降ではguiモードのwgnuplotはpgnuplotをつかっても使えません。コンソールモードのgnuplotを利用してください。 これはcvs版しかないので 角藤さんによるCVS版Windows 用バイナリ www.ring.gr.jp/pub/text/TeX/ptex-win32/w32/ 私がビルドしたもの File list of gnuplot 4.5 for Windows www.tatsuromatsuoka.com/gnuplot/Eng/winbin/ をつかってみてください。ただ,最近のoctaveは仕様の変更がありますからCygwin版のgnuplotしか 動かない可能性はあります。 その場合も,2DグラフのマウスズームをしたいのならCVS版が便利です。 ・gnuplot 4.5 (cvs) cygwin binaries prepared by gcc-4.x.x www.tatsuromatsuoka.com/gnuplot/Eng/cygbin/ gnuplot_binary()を~/.octaveなどのスタートアップファイル(マニュアル参照) 適切にセットしてください。 #個人的には,Cygwin-1.5はもうほとんど使っていません。Cygwin-1.7はbeta版とはいえ,すでにいろいろなアプリケーションで新し物は,Cygwin-1.7のみ というものが増えています。OctaveもCygwin-1.7なら3.2.3がつかえますしCygwin-1.7への乗り換えをお勧めします
11 名前:octave for windowsメモの筆者 mailto:sage [2009/11/07(土) 07:12:46 ] >>9 ところでCygwinにこだわりがありますか。わざわざ,xのgnuplotを使わないようにされているようなので,Octaveを使うのにCygwin版をお使いになるのかいまいちわかりません。 Cygwinでいろんなことしたいならやはり,xをいれてx版のgnuplotをつかうのが自然だと思います。 Cygwinに固執がなければ octave/mingwだとインストールするだけで簡単にgnuplotも使えるわけですし,なにかわざわざ困難な方向に走っておられるような気がします。 octave/mingwは 以下からダウンロードできます。 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 ただし,SSE3つきのAtlasはバグがあるのでSSE2のAtlasをお使いください。
12 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/09(月) 15:56:31 ] >>10 >>11 レスありがとうございます。 gnuplotはcygwin導入前から導入していてそれを使えるようにしたかったんです。 octaveはcygwinから使えるよっていうのをwebで見て じゃあoctave/cygwinと単体で導入していたgnuplotをコラボさせましょうということで進めていくと >>9 のような事態になりました^^; MinGW版のoctaveさっそく導入しましたら一発で解決しました。 情報提供感謝でございます。 P.S. あと>>9 の補足ですが、octaveとgnuplotをつなぐための設定ファイルの内容ですが 参考として挙げたwebページではwgnuplotに投げるとなっていますが ほかのページも巡回して検討し、pgnuplotとしてました。 まあ、それでも同じ現象が出たので設定ファイルのせいではないのかなと考えてます。
13 名前:octave for windowsメモの筆者 mailto:sage [2009/11/10(火) 08:56:21 ] >>12 一時期MichaelさんやBenjaminさんがOctaveとwindowバージョンのgnuplotを つなぐため独自にビルドされたコンソールモードのgnuplotに pgnuplotと名前をつけていたのでそのような記述があるのではと 思います。その後gnuplotのcvs版コンソールモードのgnuplotが正式に 採用されたとき,いろいろ意見がありましたが,他のプラットフォームと 同様のコンソールモードのgnuplotは単にgnuplotになりました。 ちなみに,pgnuplotはwgnuplotにpipe接続するものですが, 一方通行の通信しかできません。 現在のoctaveでは双方向のpipeを使ったいるので,いわゆるpgnuplotをoctave に使うことやoctaveでwgnuplotを使うことはできません。 できるのはコンソールモードのgnuplotに投げることしかできません。 見られたwebページはおそらくMichaelさんが一時期使っていた コンソールモードのpgnuplotだと思います。 現在はそれは存在しないので,Windowsの場合cvs版のgnuplotを使わないと いけません。
14 名前:octave for windowsメモの筆者 mailto:sage [2009/11/15(日) 06:27:13 ] Octave 3.2.3-2/mingw32 がでました。 old.nabble.com/Octave-3.2.3-2-mingw32-available-tt26353433.html まだ,自宅は回線が遅いのでためしていません。SSE3のATLASのseg-faultの問題 old.nabble.com/Octave-3.2.3-mingw32-crashes-on-a-simple-complex-operation-tt26159558.html は解決していないようで今回はSSE3のATLASは組み込まれていないようです。 jpeg-7に対するバグは解消されたようです。
15 名前:octave for windowsメモの筆者 mailto:sage [2009/11/21(土) 14:57:57 ] Octave 3.2.4のリリースにむけたパッチの募集が始まりました。 old.nabble.com/3.2.4-call-for-patches-tt26440879.html
16 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/22(日) 02:25:10 ] mingw版の3.2.2使ってるのですが、何かplotを連続でした場合 今までのは書き換わるだけだったのに 3.2.2のは画面がクリアされて一瞬白くなって 連続で書き換えるとチカチカして非常に見にくい。
17 名前:octave for windowsメモの筆者 mailto:sage [2009/11/22(日) 05:29:44 ] >>16 その問題はmingw版だけの問題ではなく,octave-3.2.2ではそうなります。 (バグです。) octave-3.2.3では,解決してますので,そちらをお使いください。
18 名前:octave for windowsメモの筆者 mailto:sage [2009/11/23(月) 18:29:01 ] MinGW 版 Octave の maintainer の Benjamin さんが MinGW でoctave をビルドするための HOWTO を書き始めたとの報告が Octave の maintainers の ML でありました。 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
19 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/11/30(月) 20:22:19 ] ウインドウズで申し訳ないのですが、 dynareのsimul_stochが機能しません。 このエラーを検索しても意味がわからないのですが、 octaveユーザの方でわかるひとはいますでしょうか。 warning: mark_as_command is obsolete and will be removed from a future version o f Octave octave-3.2.3.exe:1:C:\Octave\3.2.3_gcc-4.4.0\bin > cd c:\test octave-3.2.3.exe:2:c:\test > dynare rbc.mod Configuring Dynare ... error: could not find library or dependents: c:\dynare\4.0.4\matlab\../mex/octav e/mjdgges.mex error: called from: error: c:\dynare\4.0.4\matlab\dynare_config.m at line 92, column 10 error: c:\dynare\4.0.4\matlab\dynare.m at line 57, column 12 octave-3.2.3.exe:2:c:\test >
20 名前:octave for windows メモの筆者 mailto:sage [2009/12/01(火) 01:05:58 ] >>19 mexがうごかないといってるようですね。 octave version 3.0からmexに 対応していますが,バイナリ互換ではないのでmexのCのソースから octave用のmexを作成しなおす必要があります。 まずは,mexのソースコード(c言語で書かれています。)を持っているかを 確認してください。 mexのソースがなければ,octaveで動かすのは無理です。 これは,ライセンスなどにもかかわるので,mexのソースコードが手に入らない場合 mexのコードをともなうMATLABのコードをoctaveで動かすのは無理だと考えて ください。
21 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/12/02(水) 09:59:34 ] >>19 octave 3.2.3 からコンパイラを変えたのが原因の気がします。 たしか、dynare 4.0.4 はoctave 3.2.2 だったら動いたような。 ttp://www.dynare.org/DynareWiki/DynareOctave にも Pick version 3.2.2 (version 3.2.3 is not binary compatible with the package for Dynare 4.0.4). とあるので。 まあ、じきに dynare の中の人が最新のoctaveでも動くようにしてくれるとは思います。
22 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/12/02(水) 13:55:31 ] みなさまありがとうございます。そういうことでした。
23 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/12/16(水) 22:13:45 ] matlabのkmeans関数ってoctaveには(少なくとも同じ名前では)無いようですが、 別名で同じ機能の関数ってあるのでしょうか? それともこれは自前で作成するしかないですか?
24 名前:octave for windows メモの筆者 mailto:sage [2009/12/21(月) 18:11:04 ] >>23 私はmatlabユーザーではないのでよく分かりませんが, そもそもkmeans関数はどのような機能の関数なのでしょうか? また,mファイルで書かれている関数で,ソースが手に入るのならば, octaveで動かせる可能性があります。 mexでもソースが手に入れば,octaveでmexを作成しなおせば, 動く可能性があります。
25 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/06(水) 09:48:14 ] >>19 >>21 dynare の version が 4.1.0にアップデートされました。 Octave 3.2.3 で動きます。
26 名前:名無しさん@お腹いっぱい。 [2010/01/15(金) 01:17:52 ] 23 さん Octave で書かれた K-mean プログラムについて. 横から失礼します. k-means のプログラムを Octave で書きましたので,参考になれば と思いお伝えします. ・133.5.18.167/rinkou/octave/okmeans.html すべて Octave で書いたもの. ・133.5.18.167/rinkou/octave/kmeans.html OpenCV の kmeans 関数を呼び出すようにしているもの 一応、動作確認しています。バグ残っているかも知れません. (すぐには対応できないと思います).ご参考になるかと思いお伝えしました.
27 名前::octave for windows メモの筆者 mailto:sage [2010/01/19(火) 18:54:33 ] Jaroslav Hajek さんによるとoctave 3.2以上であればfsolveを使って 非線形カーブフィットができるようです。 例 b0 = 3; a0 = 0.2; x = 0:.5:5; noise = 1e-5 * sin (100*x); y = exp (-a0*x) + b0 + noise; c_opt = [a0, b0]; tol = 1e-5; [c, fval, info, output] = fsolve (@(c) (exp(-c(1)*x) + c(2) - y), [0, 0]); Nabble の アーカイブ ttp://old.nabble.com/Re:-i-just-want-to-use-nonlinear-curve-fitting-function-,-what-should--i-do--p27206660.html
28 名前::octave for windows メモの筆者 mailto:sage [2010/01/20(水) 08:52:38 ] octave 3.2.4のRelease Candidateがでてます。 もうすぐ,octave 3.2.4がでると思います。 おそらく,3.2シリーズは3.2.4で終わりで,次はoctave 3.4がでると思います。 ビルドシステムの大幅な変更があります (libtoolを使ったものになります。)。 一般の方にはあまり関係がないと思いますが,自分でビルドされる方は maintainersのMLをご覧になって情報を収集されることをお勧めします。 思いますが,
29 名前:octave for windows メモの筆者 mailto:sage [2010/01/24(日) 12:37:21 ] octave 3.2.4のソースがでました。(unofficialだそうです。) ttp://old.nabble.com/3.2.4-release-to27272214.html をごらんください。
30 名前:octave for windows メモの筆者 mailto:sage [2010/01/30(土) 09:07:05 ] Octave公式Webにはまだのっていないようですが,octave-3.2.4 のソースがアップロードされています。 ttp://old.nabble.com/Octave-Version-3.2.4-Released-to27353121.html#a27353121 おそらく,3.2シリーズでは最後のリリースとなると思います。 3.2.3で問題となったバグがかなりフィックスされているようです。 各種バイナリもそのうち整備されると思います。
31 名前::octave for windows メモの筆者 mailto:sage [2010/02/03(水) 17:40:31 ] Cygwin 版のOctave 3.2.4のバイナリが配布されています。
32 名前::octave for windows メモの筆者 mailto:sage [2010/02/18(木) 13:58:35 ] Octave のMLにGNU ProjectのリーダーのRichard Stallman氏が登場して, Mathworks社のライセンス(Matlabが関係すると思います)についての話題が 提供され,現在,精力的に議論が行われています。 法律的なこともかかわっているので正直言って理解できないことが多いのですが ライセンスについては,敏感な立場の方がおられると思いNabbleのアーカイブ のURLを書いておきます。 ttp://old.nabble.com/Mathworks-hosted-GPL'd-software-to27550496.html をご覧ください。
33 名前:::octave for windows [2010/02/23(火) 12:35:16 ] 計算のたびに以下のように octave-3.2.3.exe:16:C:\Octave\3.2.3_gcc-4.4.0\bin が表示され,非常に見難いのですが 非表示にする方法はありませんか? > x/y ans = 0.50000 octave-3.2.3.exe:14:C:\Octave\3.2.3_gcc-4.4.0\bin > x^y ans = 16 octave-3.2.3.exe:15:C:\Octave\3.2.3_gcc-4.4.0\bin > x**y ans = 16 octave-3.2.3.exe:16:C:\Octave\3.2.3_gcc-4.4.0\bin > sin(pi/2) ans = 1 octave-3.2.3.exe:17:C:\Octave\3.2.3_gcc-4.4.0\bin
34 名前::octave for windows メモの筆者 mailto:sage [2010/02/23(火) 18:09:54 ] >>33 ttp://old.nabble.com/Re:-Really-Long-Command-Prompt-p27222063.html
35 名前:octave for windows メモの筆者 mailto:sage [2010/03/26(金) 08:55:03 ] Windows 版Octave-3.2.4がでました ttp://sourceforge.net/projects/octave/files/ からどうぞ。
36 名前:octave for windows メモの筆者 mailto:sage [2010/03/26(金) 18:01:51 ] >>35 2点不具合を発見しました。 ttp://old.nabble.com/Re:-Octave-3.2.4-mingw32-available-p28037642.html ttp://old.nabble.com/flicking-problem-again-Octave-3.2.4-mingw32-td28038688.html 対処はできそうです。
37 名前:octave for windows メモの筆者 mailto:sage [2010/03/26(金) 19:22:22 ] たびたびすみません。<m(__)m> >>36 のについては ttp://old.nabble.com/flicking-problem-again-Octave-3.2.4-mingw32-td28038688.html なんか何もしなくても,うまくいきだしました。^^;
38 名前:名無しさん@お腹いっぱい。 mailto:age [2010/04/06(火) 19:30:51 ] mingwの3.2.4を入れてみたけど wxtターミナルで、plotしたあとに xlabel('hoge'); drawnow; とやっても反映されないのね plotコマンドを再実行すると反映されるので xlabel, ylabelで定義してから plotする流儀に変わったのかな
39 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/06(火) 20:05:32 ] mingwの3.2.4を入れて気が付いたのが、binフォルダのblas.dll 前のスレ(2chsearch.jp/unix/1086016412/?first=1 )の969-970で ttp://machnum.net/base/index.php/articles-computational-physics/37-computational-physics/47-assembler-code-and-mingw ここを見ながらmingw上でgotoblasをコンパイルしてblasのdllを作りました。 またcygwin上でもblasのdllを作りました。 そのblas.dllを、3.2.4デフォルトのblas.dllと入れ替えて動くか試すと、なんと!動きました。 環境変数に GOTO_NUM_THREADS があり、2がセットしてあるのを確認した上で n=2000; A=randn(n); B=randn(n);tic; C=A*B; t=toc, MFLOPS=2*n^3/t*1e-6 これでベンチをとってみると Octave 3.2.4 default blas.dll t = 4.2031 MFLOPS = 3806.7 GotoBLAS mingw t = 2.1719 MFLOPS = 7366.9 GotoBLAS cygwin t = 1.2344 MFLOPS = 1.2962e+004 PCは2.1GHzのCore2Duoで理論演算能力は2.1*4*2=16.8GFLOPSなので、cygwin版のGotoBlasと入れ替えれば近い線までいきそう。 mingwの場合はマルチコア未対応なのでしょう。 最近発売された6CoreのCore-i7を使えば、3.3*4*6=79.2GFLOPS近くの性能が出るかもしれません。
40 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/08(木) 23:17:13 ] >38 3.2.4はgnuplotとの連携のとこバグってると思う x = [0, 0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6 ,2.0] plot( x, x.*x ) とかもっともシンプルに打っても動きがヘン
41 名前:octave for windows メモの筆者 mailto:sage [2010/04/09(金) 15:38:24 ] >>38 ,>>40 たぶん,oct2matというoctave-forgeのパッケージがぶつかっているせいだと 思います。 その他,Octave 本家のMLで話題になったことの対処法を拙ページに書いて おりますのでよろしければ参考にしてください。 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#100403
42 名前:octave for windows メモの筆者 mailto:sage [2010/04/09(金) 15:56:46 ] >>39 GotoBLAS cygwin t = 1.2344 MFLOPS = 1.2962e+004 これはすごいですね。残念ながらいまだに HT Pentium なので恩恵にはあずか れませんが,導入したらいつかやってみたいですね。 >>mingwの場合はマルチコア未対応なのでしょう。 はい,そうです。SSE3でもなかったような気がします。 ALTASの場合は,cygwinコンパイラでdllを作ると動きません。 また,cygwinで配布しているコンパイラでを使うとcygwinでしか使えない atlasになります。したがって,gcc-4.3.4あたりを自力でcygwin上でビルドし それでスタティックライブラリを作成し,そのスタティックライブラリを mingwのgccでリンクしてdllを作るという技がいります。 pthread-win32も改良されて,HTの場合は速くなりませんが,mingwで動く multi-threaded ATLASの作成には個人的には成功しています。
43 名前:octave for windows メモの筆者 mailto:sage [2010/04/09(金) 15:58:21 ] >>42 からの続きです 使うマシンがないので公開はしていませんが, mingwでatlasを作成するためだけにCygwin上でビルドした, 特別なGCCとどうやってスタティックライブラリから dllを作るかは書いたほうがいいですかね。 あまり暇がないので,GCCの公開ぐらいならやりますが。 また,Benjmaminさんはどうもうまくmingw上のAtlasをハンドリングできて いないようです。 彼は本当に高速な計算にはLinuxをお使いのようなので, そこまで期待するのはちょっときついかもしれません。 今回octave-forgeのサポートがかなり増えていますので,相当なご尽力を なさっていますのであまり多くを望むのは難しいでしょう。
44 名前:40 mailto:sage [2010/04/09(金) 18:02:17 ] >41 おお、サンクス。まともにプロットするようになった。
45 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/10(土) 09:44:04 ] そういえば、wxtの場合なのか現バージョンのoctaveの場合なのかわかりませんが 補助目盛(minor tics)がデフォルトでは表示されません リニアプロットでは気が付かないかもしれませんがloglogだと気付くでしょう そんな場合は set (gca, 'xminortick', 'on', 'yminortick', 'on') とやればいいので、octavercにでも書き込んでおけば問題ないと思ってたのですが warning: mark_as_command is obsolete and will be removed from a future version of Octave という警告が出ますな。正式な手続きがわからん
46 名前:octave for windows メモの筆者 mailto:sage [2010/04/10(土) 13:33:31 ] >>45 >補助目盛(minor tics)がデフォルトでは表示されません たしかにそうですね。 x=1:100; loglog(x,x) で確認しました。 mingw版でもcygwin版でも(ともに3.2.4)ともにご指摘のようななので そういう仕様なのかもしれませんね。 一度本家MLで聞いてみます。 > warning: mark_as_command is obsolete and will be removed from a future version of Octave たしかにこれ気になっているんですが,octave --norc でstartupファイル を無視するとでないので Octave\3.2.4_gcc-4.4.0\share\octave\3.2.4\m\startup\octavercで 使っている関数がどこかで使っているのでしょう。 パット見た限りわかりませんので気が向いたら,原因探りますが まあ,やらないかな。 いまのとこ実害がないし,mark_as_commandが なくなったらwarningでなくてerrorになるからそのときはBenjaminさん も対応されるでしょう。
47 名前:octave for windows メモの筆者 mailto:sage [2010/04/10(土) 13:56:50 ] >>45 >>46 >Octave\3.2.4_gcc-4.4.0\share\octave\3.2.4\m\startup\octavercで 使っている関数がどこかで使っているのでしょう。 のではないようですね。 octave --norcでたちあげて pkg load jhandles やると同じメッセージがでます。一度でたら二度目はでないので octave-forgeのどれかをloadするときでるのでしょう。 ちなみにjhandleはデフォールトではloadされない仕様なのでこれは原因 ではないでしょう。 対処しようとするとおそらくpkg周りをいじらないといけないでしょうね。 いまは,我慢して無視するのが現実的かと思います。 どこかの
48 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/10(土) 15:35:16 ] 警告の原因は、これ(↓)じゃないんですか。了解です set (gca, 'xminortick', 'on', 'yminortick', 'on')
49 名前:octave for windows メモの筆者 mailto:sage [2010/04/11(日) 12:18:20 ] >>48 はい set (gca, 'xminortick', 'on', 'yminortick', 'on') は警告の原因ではないようです。 mark_as_commandのコードをみましたが,3.2ではdeprecatedというフォルダに はいっていて実質何もしていません。mark_as_commandが実行されたときに エラーになるとコードが動かなくなるのを防ぐために存在しているようです。 というわけで,多分,octave-forgeのパッケージが将来的に対応すべき 問題なのでしょう。現時点ではやはり無視してつかうのでいいでしょう。
50 名前:octave for windows メモの筆者 mailto:sage [2010/04/17(土) 17:31:46 ] >>45 >>46 >>47 >>48 >>49 warning: mark_as_command is obsolete and will be removed from a future version of Octave の消し方わかりました。 \Octave\3.2.4_gcc-4.4.0\share\octave\3.2.4\m\startup のoctaverc で pkg ("load", "auto"); という文があるので warning ("off","Octave:deprecated-function"); pkg ("load", "auto"); warning ("on","Octave:deprecated-function"); のようにすれば消すことができます。
51 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 09:29:28 ] >>50 了解です それとは関係ありませんが 前スレは、ここで安定して見れるっぽいです ttp://ranran2.net/app/2ch/unix/1086016412
52 名前:octave for windows メモの筆者 mailto:sage [2010/04/26(月) 12:23:21 ] >>51 おお! ありがとうございます<m(__)m>
53 名前:名無しさん@お腹いっぱい。 [2010/04/26(月) 19:12:25 ] CSVファイルを読み込むためのdlmread関数を使うために pkg load io とすると package io is not installed と表示されるのですが、 ioパッケージって標準では入ってない物なのですか?
54 名前:octave for windows メモの筆者 mailto:sage [2010/04/27(火) 18:05:28 ] >>53 octaveのバージョンはなんでしょう。また,platformはなんでしょう。 3.2.4ならdlmreadは,io パッケージでなくoctave本体に入って入ってますが。 また,octave-forgeのパッケージが何がはいるかはdistributorにもよるので 具体的な情報がないと誰もこたえられないと思います。
55 名前:octave for windows メモの筆者 mailto:sage [2010/04/27(火) 18:12:08 ] >>53 書き忘れましたが,csvならばcsvreadも使えます。dmlreadで セパレータ指定してもいいと思います。
56 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/19(水) 19:54:09 ] 今さっき気がつきましたが pkg load jhandles でGNUTERMに何が設定してあっても、jhandleでグラフ描画するんですね wxtはなんかグラフがはみ出すし、オーバーヘッドが大きいような気がしてました
57 名前:octave for windows メモの筆者 mailto:sage [2010/05/20(木) 19:23:11 ] >>56 そうですね。3Dとかでmeshを細かく刻むとjhandlesじゃないと遅いですよね。 ただ,ginputをやろうとするとエラーがでたりします^^;。 3.4がでてFLTK backendが,まともになればjhandleもいらないかなとは 思います。 ただ,3.4リリースのための開発版3.3はMinGWではまだ不安定です。 gnulibでportabilityをあげようとしての結果なのだと思っています。 3.4のリリースはいつごろになるのかな。
58 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/20(木) 22:44:31 ] >>57 使ってみたらprintがだめっぽいですね gif, png, jpgはだめ MSVC版ではいんちきくさいながらも出来たのに それとAuto Redrawしないので表示が消えちゃいます drawnowすればいいだけですけど 実装があんまりよくないです でもまあ、表示速度は段違いなので 経過を表示させる場合はいいかもです
59 名前:octave for windows メモの筆者 mailto:sage [2010/05/21(金) 11:30:57 ] >>58 そうですね。まあ,MSVC版ではoctaveのメンテナーとjhandleのメンテナーが 同じ人でしたからね。 MinGWでSun Javaを扱うのが難しいなどで時間もかかったようですし, FLTK Backendがまともになれば,jhandlesの意味も薄れるので力がそれ 実装がMSVC版ほど力が入っていないのはある程度しょうがないと思います。 pipeがwindowsでは遅いのでgnuplotが遅いのはあるていど仕方ないですね。 octaveからだとgnuplotはwindows NativeよりCygwinの方が大分速いですね。 私は,本当につかうグラフはデータ書き出してgnuplotでやります。 octaveからだとgnuplotの機能をフルには引き出せないので octaveのグラフィックスはあくまでも経過表示用にしか使っていません。
60 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/21(金) 13:57:11 ] >>59 今出来るかどうか知りませんが、昔はこんな事してました gset term postscript color gset output 'hogehoge.ps' plot (x1,y1) gset term X11 単にprint文を知らなかっただけですけど
61 名前:octave for windows メモの筆者 mailto:sage [2010/05/21(金) 16:34:10 ] >>60 今はできません。それらの関数は3.2からはすべて削除されました。 ただ,octave-forgeにgnuplotパッケージが入ったのでこれをつかうと いう手もあるかもしれません。 MinGW-3.2.4には,gnuplotパッケージ入っているのでそれを使うという手も ありそうです。 ttp://octave.sourceforge.net/functions_by_package.php のgnuplotのreferenceはあまり詳しい記述がないので, これでどんな関数があるか調べてhelp g_plotなどどする必要があります。 3.4ではgnuplotはまだbackendとして残るとおもいますが,将来的には backendはfltkのみなり,gnuplotはoctave-forgeになる流れではと思います。
62 名前:octave for windows メモの筆者 mailto:sage [2010/05/26(水) 19:40:02 ] 今日,MinGW上でgcc-4.5.0でdevelopment branchのoctaveビルドしました。 先月ビルドしたときは,極めて不安定ですぐseg-faultを起こしていましたが 今日は安定して動いています。 fltk バックエンドも軸がちゃんと表示できるようになっていましたし, 連続プロットもgnuplotに比べかなり高速です。 ただしマウスで3Dぐりグリができなさそうなのが残念ですが。 しかし,MinGWはdevelopment branchのなかで一番対応が遅れていたのですが これでなんとかなるめどがついた気がします。 あまり遠くない時期にoctave3.4が出てくるような気がします。
63 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/26(土) 11:09:20 ] Core2DuoのCULV(低電圧)版のSU2300(1.2GHz, 1MBキャッシュ)を積んだノートを買ったので テストしてみました(OSはXP Home) ちなみにCore2以降のCPUに載ってるSSE3は 64bit倍精度浮動小数点演算を1クロックに4個実行できるSIMDユニットで このSSE3が有効な場合の理論FLOPSをを計算すると 1.2G(Hz)*4(FLOPS/Clock)*2(Core)=9.6GFLOPS となります。AtomなどにもSSE3のファンクションは載ってますが それを実現するハードウェアはないため、速くはなりません。 GotoBLAS2は新たに1.13をダウンロードしてCygwin1.7上でmakeします makeオプションは www.db.is.kyushu-u.ac.jp/rinkou/cygwin/cblas.html ここのをそのまま使います makeが終わると、exports/にlibgoto2.dllが出来上がってますので これをMingw版Octave 3.2.4のbinのblas.dllと置き換えればOKです その前に環境変数GOTO_NUM_THREADSに2をセットしておき cygwinのbinから、cygwin1.dll、cyggcc_s-1.dll、cyggfortran-3.dllをoctaveのbinにコピーしておきます ベンチマークはいつものを使います n=2000; A=randn(n); B=randn(n);tic; C=A*B; t=toc, MFLOPS=2*n^3/t*1e-6 デフォルト(たぶんatlas.dllを呼んでいる)のblas.dllだと 2.07 GFLOPS GotoBLAS2だと 5.72 GFLOPS で倍以上に速度が上がりました GOTO_NUM_THREADSに1をセットすると 3.24 GFLOPS なのでデュアルコア自体は効いてるようです
64 名前:octave for windows メモの筆者 mailto:sage [2010/07/26(月) 18:27:24 ] >>62 最近のdevelopmentブランチをビルドしてみました(MinGW,gcc)。 fltkでepsを作成できるようになっており,またマウスによる3dの回転も できるようになっています。 fltkもだいぶ実用に耐えるようになってきた感じです。 なにしろ高速なのがいいです。やっぱりOpenGLをつかっているからでしょう。 pkg installにもバグがあったようですが,それも解消されているし, developmentブランチへの乗り換えを画策しています。
65 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/08/14(土) 01:19:11 ] 数学セミナーの9月号で数学を発展させるコンピュータソフトという特集が組まれております www.nippyo.co.jp/magazine/maga_susemi.html そこでは、Rは取り上げられてますが MATLAB/Octaveはさっぱりですけど、 その特集とは別に 高速化・最適化のためのBLAS入門/藤澤克樹 50 と中央大学でSDPAの研究をしている藤澤先生が MATLABとBLASを使った計算について説明してます やってる事は >>63 とほぼ同じ(行列の1辺が2000ではなくて4000)スクリプトで 4コアCPUを2個使って、スレッド数を1個から8個まで増やすとどうなるか という事について書かれてます。
66 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/09/14(火) 21:48:37 ] 既知の問題であれば申し訳ないのですが、ちょっと困っています。 以下のようにして、 R = 10.0; L = 0.1e-3; Rc = 100e3; Cc = 0.1e-9; Ca = 0.01e-9; Z = tf([Cc*Rc 1],[Ca*Cc*Rc Cc+Ca 0]); G = tf([1],[L R]); sys = sysmult(G,Z); sysout(sys,"tf"); とすると、本来numはsの一次式になるはずがそうなりません。 Cc、Caを数桁大きくすると正しく計算できるようです。 お手数ですが、この問題の回避策があれば教えていただけないでしょうか?
67 名前:66 mailto:sage [2010/09/14(火) 21:52:39 ] すみません、書き忘れました。 Win版 3.2.4です。
68 名前:名無しさん@お腹いっぱい。 [2010/10/12(火) 03:41:06 ] 保守
69 名前:octave for windows メモの筆者 mailto:sage [2010/10/16(土) 17:54:10 ] >>51 現在 前スレ見れるところ ttp://logsoku.com/thread/pc8.2ch.net/unix/1086016412/
70 名前:名無しさん@お腹いっぱい。 [2010/11/13(土) 10:00:19 ] OctaveやFreeMATではMATLABのstemにあたるマッチ棒のようなプロットはどうやるんですか?
71 名前:名無しさん@お腹いっぱい。 [2010/11/14(日) 00:32:04 ] cvytvftvyghgbvyvybuhjkkvghghvgvgfvgfcjnhjgjhhuihuyfgvcg
72 名前:octave for windows メモの筆者 mailto:sage [2010/11/15(月) 16:46:45 ] >>70 octave manual 15.1.1 Two-Dimensional Plotsより Function File: h = stem (x, y, linespec) ― Function File: h = stem (..., "filled") : x = 1:10; y = ones (1, length (x))*2.*x; stem (x, y, "b"); もっと詳しくはマニュアルを
73 名前:octave for windows メモの筆者 mailto:sage [2010/11/24(水) 08:02:34 ] 前スレでも,>>63 にもあるように,ちょくちょく話題になるGotoBLAS2 に ついてライセンスが変わったとoctave ML 情報が入っています。 octave.1599824.n4.nabble.com/GotoBLAS2-license-td3055645.html 参考までに
74 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/11/24(水) 09:50:17 ] >>73 >GotoBLAS2 has been released by the Texas Advanced Computing Center >as open source software under the BSD license. 素晴らしい。 従来は独特のライセンスのせいでユーザが自分で組み込む必要がありましたが、 今後は公開ソフトウェアに最初から組み込めるわけですね。 GotoBLAS2-1.13で打ち止めへ (2010-04-09 13:29:50) blog.goo.ne.jp/nakatamaho/e/61d0cfbe1222364a3ef70505dce4f463 後藤和茂さんがヘッドハントされてからバージョンアップが止まってますが、 これも改善するかもしれません。
75 名前:octave for windows メモの筆者 mailto:sage [2010/11/24(水) 19:04:09 ] >>73 Goto BLASの開発は,終了したようです。 blog.goo.ne.jp/nakatamaho/e/61d0cfbe1222364a3ef70505dce4f463 残念ですが。
76 名前:octave for windows メモの筆者 mailto:sage [2010/11/24(水) 19:06:02 ] >>75 すみません。 74をみていませんでした<m(__)m>。
77 名前:octave for windows メモの筆者 mailto:sage [2010/11/25(木) 14:49:21 ] >>74 >後藤和茂さんがヘッドハントされてからバージョンアップが止まってますが、 >これも改善するかもしれません。 そうですね。 天才ハッカー(いい意味でのハッカーです。)後藤さんのあとを 続くような方が現れてプロジェクトとして 立ち上がってくれればいいのですが。
78 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/12/21(火) 14:14:37 ] scilabとの違いが良くわからない
79 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/12/21(火) 15:21:18 ] >>78 Scilabの使いにくい点 ・実行 MATLAB/Octaveは、拡張子.mを省いたmファイルをコマンドラインで打ち込めばいい Scilabは、コマンドラインでexec('hoge.sce')とやらないといけない ・関数定義 MATLAB/Octaveは、パスの通ってるディレクトリかカレントディレクトリにあれば 勝手に読み込んでくれる。 Scilabは、明示的にgetf('hoge.sci')と読み込まないといけない。 ※Scilab5では途中からgetfではなくexec('hoge.sci')になった ・コメント行 MATLABは%、Octaveは%と# Scilabは// ・その他、ScilbはMATLABから見て方言が多いし、Octave Forgeのような豊富な関数を使えない。 利点 ・グラフがOctaveよりはきれい ・Serial-0.2.tgzという非オフィシャルのパッケージを導入すると RS-232Cのコントロールが可能 例えば、COM3のモデムを操作する場合 fp=openserial(3,"9600,n,8,1") writeserial(fp,'ATI0'+ascii(13)) xpause(200000) readserial(fp) xpause(200000) writeserial(fp,'ATI1'+ascii(13)) xpause(200000) readserial(fp) closeserial(fp) こんな感じ。xpauseはパラメータのμ秒数だけ待つ命令
80 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/12/22(水) 13:33:15 ] データを全部テキストデータで保存すると ファイル増えてしかたない sqliteあたりにまとめて保存できないでしょうか
81 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/12/23(木) 22:20:35 ] >>80 saveコマンドがあります aaa=[1:1000]; save hoge.sav aaa とやれば変数aaaがhoge.savにテキスト形式で保存されます 読み出す場合は bbb=load('hoge.sav') とやればいいです この場合テキスト形式ですけど save -binary hoge.bin aaa とやればバイナリーで保存できますが、テキストよりもサイズが小さくなるかどうかはケースバイケースです 読み出しは ccc=load('hoge.bin') とやれば、勝手に保存形式を判断してくれます。 またMATLABのsaveコマンドで作られたファイルとの互換性もあるようです
82 名前:octave for windows メモの筆者 mailto:sage [2010/12/24(金) 17:39:00 ] >>79 ・グラフがOctaveよりはきれい Ver. 3.3.54+ のFLTK Backendは,グラッフィクス,かなりよいですよ。 でも,自分でビルドしないと使えないのとMinGWではまだバグがある。 Ver 3.4はどれくらいかかるかな。 JWEさんのエンジンかかってきたから,数ヶ月後にはでるとおもうのですが。
83 名前:octave for windows メモの筆者 mailto:sage [2010/12/30(木) 05:32:50 ] >>80 help save `-zip', `-z'とか`-hdf5'を使うと小さくなると思うのですが。
84 名前:octave for windows メモの筆者 mailto:sage [2010/12/31(金) 06:32:59 ] 東京電機大学の松田先生の「Octaveの精義」がでました。
85 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/01/02(日) 08:27:31 ] ttp://www.amazon.co.jp/dp/4877832319/
86 名前:octave for windows メモの筆者 mailto:sage [2011/01/19(水) 18:39:37 ] 開発版も様々なプラットフォームでのビルドがかなり安定してきています。 私は,MinGWのビルドしていますが状況はかなり改善しています。 3.4リリースが確実に近づいています。 新しい fltk Backend は,すばらしいものです。 できるだけ早く皆様が見る日がくればいいなと思います。 Debianなどでは,自力でビルドできる方がいらっしゃると思います。 ビルドできる環境におられるかたは 是非自力で開発版をビルドされて, その実力をみていただきたいと思います。
87 名前:octave for windows メモの筆者 mailto:sage [2011/01/24(月) 07:26:47 ] Octave 3.4のリリースの準備としてOctave 3.3.90がリリース(ソースのみ) されました。 alpha.gnu.org/gnu/octave/ 多くの方にビルドいただき,3.4のリリースにご協力いただきたいと思います。
88 名前:octave for windows メモの筆者 mailto:sage [2011/01/28(金) 08:30:06 ] Octave 3.3.90のMinGWでのビルドを行ってバイナリパッケージを作成してみました。 www.tatsuromatsuoka.com/octave/Eng/Win/
89 名前:octave for windows メモの筆者 mailto:sage [2011/02/02(水) 09:18:42 ] Octave 3.3.91のMinGWでのビルドを行ってバイナリパッケージを作成してみました。 www.tatsuromatsuoka.com/octave/Eng/Win/ いくつかのバグがフィックスされています。
90 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/02/08(火) 08:12:40 ] >>89 テストパッケージ、ありがたく使わせてもらっています。 octaveと直接関係ないところで申し訳ありませんが。。。 パッケージに入っているckwなのですが、ckw.cfgの以下行が Ckw*chdir: d:\usr\Tatsu 自分の環境に存在しないディレクトリだとckwが 立ち上がらないようです。
91 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/02/08(火) 10:59:39 ] >>89 入れてみましたけど octave:1> backend("fltk") error: `backend' undefined near line 1 column 1 となりますね。 plotするとgnuplotで描画されます。
92 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/02/08(火) 12:32:24 ] >>91 graphics_toolkitに変わったみたいですよ(たしか)
93 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/02/08(火) 14:27:09 ] >>92 確認しました octave:1> graphics_toolkit('fltk') octave:2> xx=[0:100]; octave:3> yy=sin(xx./5); octave:4> plot(xx,yy) これで表示されました
94 名前:octave for windows メモの筆者 mailto:sage [2011/02/09(水) 09:54:37 ] >>90 ckw のご指摘ありがとうございました。
95 名前:octave for windows メモの筆者 mailto:sage [2011/02/09(水) 10:00:50 ] Octave-3.4.0のソースがリリースされました。 www.gnu.org/software/octave/download.html 各ディストリビユーターによるバイナリのリリースはこれからだと思います。 なお,Windows版はMaintanerのBenjamin Lindnerさんの準備状況から 少し時間がかかると思います。 混乱を避けるため,3.4.0のtesting binaryを私の方から出すことは しないつもりです。 直前のスナップショットの3.3.92を出すかもしれません。 (たぶん中身はほとんど変わらない)
96 名前:octave for windows メモの筆者 mailto:sage [2011/02/10(木) 07:16:38 ] GUI Octave なるものがあるそうです。 https://sites.google.com/site/guioctave/
97 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/02/10(木) 12:50:16 ] >>96 GNUplotを使ってたり残念感がありますね ckwとgnuplotをwxt拡張で使ってる方がまだましというか どうせならScilabやR言語のグラフ機能を乗っ取ったとかの方が良かった
98 名前:octave for windows メモの筆者 mailto:sage [2011/02/27(日) 16:18:39.27 ] >>97 まあ,3.4になってfltkになればよくなると思いますが。Windowsでは, まだしばらく3.4のリリースかかりそう。
99 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/03/27(日) 03:29:38.85 ] 3.4をビルドしてみたけど、fltkでついにui系の機能が実装され始めたみたいだね。 今のとこuigetfile、uiputfile、uigetdir、uimenuだけだけど、今まで手つかずだっただけに素晴らしい! ところで、fltkって画像ファイルの出力ってできないんだろうか? graphics_toolkit fltk; plot(1:10); print('test.eps','-deps'); とかやっても、空っぽのファイルしか出来ないんだけど…。 他の形式でも同様。 …うん、printはgnuplot backend使えって話はごもっともなんだけど、アニメーション作成用に もうちょっと高速な出力手段を模索中。 誰か情報持ってない?
100 名前:名無しさん@お腹いっぱい。 [2011/04/15(金) 10:51:34.50 ] すみません,2ch初心者なんですが…. Octaveのプログラミングについて質問させていただける板ってどこにありますか? 「Octave」「octave」で検索かけてもこの板しか見つかりませんでした. エラーの返ってきちゃう関数をどうすれば使えるか調べたいんですけど(汗)
101 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/04/18(月) 22:25:16.10 ] >>100 MATLABのスレを探してみてください OctaveはMATLABのクローンなので あと、エラーの返ってくる関数を調べる方法は知りませんが エラー処理はtry, catch でやります 例 A=[1,2] B=[1;2] try C=A+B catch %lasterr disp('error!!') D=A+B' end AとBはベクトルの向きが違うので、足すとエラーが出るのですが エラーの出そうな処理をtryの後に書き、エラーが出た後の処理をcatchの後に書きます コメントアウトしているlasterrは直前のエラーが何かを表示します
102 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/05/08(日) 12:20:29.28 ] octave for windowsはビルドが難航してるのかな?
103 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/13(月) 00:08:14.52 ] octave から gnuplot を使うとき、最近のバージョンのoctave だと gset や __gnuplot_set とかが使えないんですが set term tgif みたいな処理はoctave からはどのように すれば良いんでしょうか?
104 名前:octave for windows メモの筆者 [2011/06/16(木) 03:40:35.38 ] >>103 最近バージョンでは,gnuplotのコマンドを直接たたくことはできません。 plotしたあと drawnow のdebug オプションを使って >> drawnow ("tgif", "foo.tgif", false, "debug.gp") で >> system('gnuplot debug.gp'); でfoo.tgifを作成する。 ぐらいでしょうか
105 名前:octave for windows メモの筆者 mailto:sage [2011/06/16(木) 03:56:40.97 ] >>104 すみません。やってみましたが,うまくいきませんでした。<m(__)m>
106 名前:octave for windows メモの筆者 mailto:sage [2011/06/16(木) 04:07:12.45 ] >>105 うまくいかなかったのはWindows 版のgnuplot のbug のせいのようです。 windowsでは system('gnuplot debug.gp'); system ('type debug.gp | gnuplot')でうまくいきそうです。 tgifをもっていないのでfoo.tgifをテキストエディタで確認しただけですが。 postscriptでうまくいったので,tgifでもおそらくいくと思います。
107 名前:octave for windows メモの筆者 mailto:sage [2011/06/16(木) 06:58:04.50 ] >>103 たびたびすみません。ケアレスミスがあるので104-106は無視してください。 plotしたあと drawnow のdebug オプションを使って >> drawnow ("tgif", "foo.obj", false, "debug.gp"); でgnuplotのスクリプトdebug.gpを出力し それをsystemコマンドでgnuplotでgif出力(foo.obj)させます。 >> system('gnuplot debug.gp'); debug.gp のデータはバイナリであり,windows 上ではgnuplotバクにより 正しくプロットされません。
108 名前:octave for windows メモの筆者 mailto:sage [2011/06/16(木) 07:02:12.97 ] 107の続き windowsでは >> system ('type debug.gp | gnuplot'); としてください。
109 名前:octave for windows メモの筆者 mailto:sage [2011/06/16(木) 07:33:34.95 ] 108 の続き tgif はもっていないので,fig ファイルを生成するようにして Cygwin 上Xfigで でfoo.figを作成したところうまくいきました。 >> drawnow ("fig", "foo.fig", false, "debug.gp"); >> system ('type debug.gp | gnuplot'); できたfoo.fig をXfigでよみこんでプロットを確認しました。 tgifでもうまくいくと思います。
110 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/18(土) 10:54:38.14 ] octave for windows メモの筆者さん >>103 です。 いろいろお答えいただきましてありがとうございました。 tgif への出力はできるようになりました。 私がoctaveを使いこなしていないからかも 知れませんが 個人的には gnuplot の細かい設定が octave上からできる方が便利なのですが。
111 名前:octave for windows メモの筆者 mailto:sage [2011/06/18(土) 17:08:46.76 ] >>110 Octave は3.2(3.2では試験的,3.4から本格的)から Open GL ベースのグラフィックスを扱うようになり, 整合性の観点から低レベルでgnuplotを直接触ることはやめになりました。 その代わり,octave-forgeにgnuplot パッケージがあり, gnuplotを直接いじりたい方はそちらを使うという思想のようです。
112 名前:octave for windows メモの筆者 mailto:sage [2011/06/18(土) 17:15:21.41 ] >>111 gnuplotとパッケージのReferenceはこちらから, octave.sourceforge.net/gnuplot/overview.html 説明がわかりにくいのでつかったことはありません。
113 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/18(土) 20:09:09.69 ] >>112 意外と良いかも
114 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/20(月) 11:49:46.70 ] cygwin x上で以下のようなエラーが出てgnuplotを使うことができません.どなたか解決策が分かる方いましたら教えて下さい. octave:1> x = [0.0, 0.2, 0.4] x = 0.00000 0.20000 0.40000 octave:2> plot(x, sin(x)) error: Invalid call to strcat. Correct usage is: -- Function File: strcat (S1, S2, ...) error: called from: error: /usr/share/octave/3.4.0/m/help/print_usage.m at line 87, column 5 error: /usr/share/octave/3.4.0/m/strings/strcat.m at line 92, column 5 error: /usr/share/octave/3.4.0/m/plot/__gnuplot_get_var__.m at line 113, column 11 error: /usr/share/octave/3.4.0/m/plot/__go_draw_axes__.m at line 40, column 18 error: /usr/share/octave/3.4.0/m/plot/__go_draw_figure__.m at line 167, column 19 error: /usr/share/octave/3.4.0/m/plot/__gnuplot_drawnow__.m at line 86, column 5
115 名前:octave for windows メモの筆者 mailto:sage [2011/06/21(火) 00:54:07.79 ] >>114 どうもCygwin1.7.9-1とOctave+gnuplotの相性が悪いようで Cygwin を1.7.8-1のダウングレードすると動きます。
116 名前:名無しさん@お腹いっぱい。 [2011/06/21(火) 15:01:05.47 ] 114です. cygwinのバージョンを1.7.8-1に直したところグラフ表示できました.ありがとうございました!!
117 名前:名無しさん@お腹いっぱい。 [2011/06/21(火) 21:24:25.60 ] 最近octaveを始めたんだけど octaveのサポート状況の良いディストリってどれ? ubuntu のoctave はバージョン古い。 FreeBSDのportsのoctaveなんかは最新のおっかけは凄いけど portsからのインストールは遅い。
118 名前:octave for windows メモの筆者 mailto:sage [2011/06/22(水) 03:04:37.49 ] >>117 jweさんがDebianだからのぞいてみたけど,まだ3.2.4のままですね。 octaveの本家のMLをみるとLinuxの人は割りと自分でビルドしているようです。
119 名前:octave for windows メモの筆者 mailto:sage [2011/06/22(水) 06:18:06.49 ] >>117 >>118 Unix はよくわかりませんがぐぐったら以下がでてきました。 octave Download - Linux Packages Search (RPM, DEB, XZ, TXZ, TGZ) pkgs.org/package/octave 3.4.0のようです。
120 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/24(金) 03:56:24.07 ] FreeBSDでは、現在 3.4.1 です。 なんか凄い気合入って追っかけているような感じ。
121 名前:octave for windows メモの筆者 mailto:sage [2011/06/24(金) 04:04:41.54 ] >>120 FreeBSDのOctaveのメンテナーの方を知っています。 (日本人です。) その方は多倍長BLASの作者でもあります。 最近連絡を取りました。 ところでoctave 3.4.1には,mkoctfileにバグが見つかり, 3.4.2の準備段階です。(現在RC2がでている)。 FreeBSDは,3.4.2がでたらすぐ対応するようです。
122 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/24(金) 23:22:10.88 ] しばらくはFreeBSDだな。 Octave のためだけに。
123 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/25(土) 00:23:16.92 ] VMwareにFreeBSD入れておくか
124 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/25(土) 01:55:02.93 ] octaveのメーリングリストを見ていると MysqlでもCUDAでも何でも新機能を導入しようとする場合に John W. Eaton氏が、GPLかどうかを問いかけて潰れていってる気がする Rなんか2009年の段階でGPU対応してるのに brainarray.mbni.med.umich.edu/Brainarray/Rgpgpu/ Mysqlにまで対応している www.okada.jp.org/RWiki/?RMySQL じゃあScilabでもいいやと調べてみても まともなものが無い Scilabは他のtoolboxも貧弱だし
125 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 02:16:04.98 ] ソースだけど3.4.2がでました。 octave.1599824.n4.nabble.com/GNU-Octave-3-4-2-Released-td3622778.html
126 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 02:33:11.93 ] >>124 MySQLはoctave-forgeで対応している気がする。 自分では使わないから詳細はわかりませんが。 octave.sourceforge.net/database/overview.html These are bindings that allow SQL queries and other database operations on postgres, mysql, sqlite, and standard ODBC databases from within Octave. A simplified interface that is uniform across all database types is provided, as well as the entire C client API for each database (libpq, libmysqlclient, etc).
127 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 02:42:05.19 ] >>124 >>126 こんなページもあります。 octave-swig.sourceforge.net/octave-db.html これを見る限りOctave-forgeのdatabase パッケージにてMySQLには 対応できるのではと思います。
128 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 06:29:16.81 ] >>124 CUDAについては,OctaveはGPLですので, jwe氏が言うことは仕方のないことなのでしょう。 OctaveがGPLから他のライセンスに変えるか,GPLが変わるか CUDAがかわるかどちらかでないといけないのでしょうが, まあ実現はしないのだと思います。 ところで,MySQLは, www-jp.mysql.com/about/legal/licensing/faq.html にあるように問題がないように思います。 だからOctave-forgeのdatabaseパッケージでMySQLはサポートされている のだと思っています。
129 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 06:35:35.07 ] >>128 ただし,再配布せず自分でやる分には問題がないと思います。 以前GotoBLASが,GPL非互換だったとき自分でソースからビルドして, octaveのビルド時に組み込んで使用することはできました。 かなり,億劫なことになりますが, scinesur.wordpress.com/2009/11/12/cuda-on-octave-3-x-in-linux-64-bits/ なこのページもあることですし,自力でやることはできるのかなと思います。
130 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/06/25(土) 08:57:30.61 ] >>126 mingw版もcygwin版も(どちらも3.2.4) octave:5> pkg install database-1.0.4.tar.gz で入れようとしても、内部のmakeでこけますね tar.gzを直接開いて./configureしてみると sqlite3でwarningが出るし 結果がこれで octave-forge is configured with octave: octave (version 3.2.4) mkoctfile: mkoctfile for Octave 4 swig: pre-generated postgres: postgresql/libpq-fe.h not found mysql: mysql/mysql.h not found sqlite3: yes odbc: yes postgresqlやmysqlはライブラリが必要みたいだし makeもsqliteの段階でこけるので、unix系なら動くのかもしれませんが Windowsでは無理っぽいですね
131 名前:octave for windows メモの筆者 mailto:sage [2011/06/25(土) 12:23:55.27 ] >>130 そうですね。3.0.xのころdatabaseパッケージを四苦八苦していれましたが, postgres と mysqlはあきらめてsqlite3とodbcだけでやったことがあります。 CygwinならたしかpostgresqlがOctaveを意識せずにあったような気がしますが, それを使ってpkg installをしたことがないので,なんともいえません。 Cygwinの方がUnixに近いのでライブラリをかき集めれば何とかなるかも 知れません。
132 名前:octave for windows メモの筆者 mailto:sage [2011/06/29(水) 02:59:55.51 ] MinGWの体験版のOctave-3.2.4バイナリを作成し,配布してます。 www.tatsuromatsuoka.com/octave/Eng/Win/ あくまでも体験版で, Octave-forgeがはいっていませんし,バグもあると思います。 インストーラーなる気の利いたものもなく,zipファイルを解凍して 適当なフォルダにおきます。 ビルドに必要なツールも一応いれたつもりなので,自分でビルドしてみたい 方はどうぞ。ただし,あまり丁寧な説明はしていません。
133 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/07/04(月) 06:29:50.28 ] どなたか賢い方、助けて下さい… Benjaminさんの Octave-3.2.4_i686-pc-mingw32_gcc-4.4.0_setup.exe で、コマンドラインからのpath指定が効かないんですが、なんとかなりませんでしょうか? > octave.exe --path c:\ > octave.exe --path c:\\ > octave.exe --path c:/ > octave.exe --path c:// > octave.exe --path /c/ いずれもダメでした。 Linuxなら特に問題ないのですが…
134 名前:octave for windows メモの筆者 mailto:sage [2011/07/04(月) 15:21:59.89 ] >>133 Cygwin版ならちゃんと動くんでバグかもしれません。
135 名前:octave for windows メモの筆者 mailto:sage [2011/07/04(月) 15:28:18.58 ] >>133 >octave --eval "cd c:\\" --persist で代用できませんか?
136 名前:octave for windows メモの筆者 mailto:sage [2011/07/04(月) 15:38:46.46 ] >>134 , 135 すみません勘違いです。 マニュアルによれば --path path -p path Add path to the head of the search path for function files. The value of path specified on the command line will override any value of OCTAVE_PATH found in the environment, but not any commands in the system or user startup files that set the internal load path through one of the path functions. となっていて,Cygwin版でもMinGW版でも OCTAVE_PATH には,なにも反映され ない。Linuxでの期待通りの動きとはどんなものですか? Linuxもってないのでわからないので。
137 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/07/04(月) 23:18:23.00 ] >>134-136 試して下さって、大変ありがとうございます!! Linux版なら、 $ octave -q --path /home/user/work octave:1> path . /home/user/work (←このフォルダが存在する場合のみ) /usr/lib/octave/3.2.4/site/oct/i686-pc-linux-gnu /usr/lib/octave/site/oct/api-v37/i686-pc-linux-gnu ... となります(恐らくご想像通りでしょうが…)。 ちなみに、 $ OCTAVE_PATH=/home/user/work octave -q でも同義です。 こちらでも迂回策を探してはいるのですが、環境変数も効きませんし、なかなか…
138 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 01:47:59.89 ] >>137 octave --eval "addpath C:\\" --persist ではいかがでしょうか。
139 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 01:56:50.28 ] >>137 蛇足です。Cygwin版のoctaveでは,おっしゃられている動作をする ようです。MinGWならではのバグのようです。 職場のパソコンで自分でビルドした3.4.2(MinGW)でも,動作しなければバグ 報告をします。
140 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 06:45:34.07 ] >>139 職場のパソコンでoctave 3.4.2と3.2.4(Benjamin版)で試してみました。 octave --path c:\ *********** 3.2.4 . C:\Programs\Octave\3.2.4_gcc-4.4.0\share\octave\packages\zenity-0.5.7 (以下略) ************** 3.4.2 . C: C:\octave\3.4.2\lib\octave\3.4.2\site\oct\i686-pc-mingw32 : (以下略) となるのですが octave --path C:\octave Octave's search path contains the following directories: . C:\octave C:\octave\3.4.2\lib\octave\3.4.2\site\oct\i686-pc-mingw32 : (以下略) **********************
141 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/07/05(火) 07:58:49.52 ] >>138 ありがとうございます、現在そちらの方向で検討中です。 >>140 え?なぜ3.4.2はそんな残念な動作に… 3.2.4(Benjamin版)ではC:\Octaveを指定しても駄目なようですね こちらの職場PCにはBenjaminさんのメモにしたがってビルドした 3.2.4がありますので、そちらも試してみます。
142 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 08:11:41.89 ] >>141 140 は長くて,2chにおこられたので,後から続きを書こうとしてわすれていました。 どーもドライブのルートディレクトリの場合は失敗して,C:\とならず,C: となるのですが,C:\octaveのような場合は大丈夫です。 一応,development branch でも試すために,現在ビルド中です。
143 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 09:51:31.50 ] >>142 予想通りDevelopment Branchのソースからビルドしても, octave --path c:\ のようなルートディレクトリの指定はバグってますね。 時間があるときにbug trackerに登録します。 (直るかどうかわかりませんが。)
144 名前:octave for windows メモの筆者 mailto:sage [2011/07/05(火) 10:18:47.77 ] >>143 bug tracker に登録しておきました。 https://savannah.gnu.org/bugs/?33714
145 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/07/05(火) 23:05:49.70 ] >>143 大変感謝です…。 ちなみに、Benjaminさんメモに従ってビルドした3.2.4ですが、 MSYS環境ではpath指定が通りました。 コマンドプロンプトからはlibgcc_s….dllが足りないとか言われて 実行できなかったので、未検証です。 (MSYS環境以下を探しても見つからなかったので諦めてましたが、 よく考えたらMinGW環境以下にありそうですね…忘れてました)
146 名前:octave for windows メモの筆者 mailto:sage [2011/07/06(水) 01:46:53.64 ] >>145 Msys 環境下で指定がうまくいくということは,パスのハンドリングが octave --path でUnix likeになっているからかもしれません。 なお,libgcc_s….dllなどたらない,dllは,Benjaminさんのビルドのbin ディレクトリからコピーして,自分でビルドしたoctave.exe, octave-3.2.4.exeのあるディレクトリにペーストすればいいです。 または,バッチファイルなどでBenjaminさんのビルドのbinディレクトリに パスを通すという手もあります。
147 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/07/06(水) 18:47:15.59 ] >>146 コマンドプロンプト環境下で試してみました。 dllはOctaveのビルドに使用したc:\mingwのbinにパスを通して 対処してます。 octave --path c:\msys -> OK octave --path c:\ -> OK(ちゃんとc:\と表示される) …あれ? Benjaminさんメモに従うとコンパイルは自動で流れるので、 できるバイナリはインストーラで配布されているものと 同じはず、だと思うんですが…? なお、本来の目的はOctave起動後にaddpathすることで達して おりますので、これ以上追いかける意味は無くなってしまったのですが…。 ご報告まで。
148 名前:octave for windows メモの筆者 mailto:sage [2011/07/06(水) 21:34:11.72 ] >>147 ご報告ありがとうございました。 回避法があるとはいえ,不思議ですね。
149 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/08/03(水) 16:34:09.93 ] 質問いいでしょうか? 画像をfft2して、その後、元の画像に戻るかiff2でチェックしたいのですが、どうもうまくいきません・・・ プログラムのどこが悪いのでしょうか? Iin=imread('BOAT.bmp');% 画像の入力 figure,imagesc(Iin,[0 255]);% 画像表示 colormap(gray); axis image; %FFT変換 Iin_d=double(Iin); O_fft=fft2(Iin_d);% FFT O_fft=fftshift(O_fft); O_fft=(abs(O_fft)); O_fft=10*log10(O_fft);% FFT結果のlog表示 figure,imagesc(O_fft,[0 MAX]);% 画像表示 colormap(gray); axis image; %逆FFT O_fft2=(abs(O_fft2)); O_fft2=10*log10(O_fft2); O_fft2=fftshift(O_fft); O_fft2=real(ifft2(O_fft2)); figure,imagesc(O_fft2,[0 MAX]);% 画像表示 colormap(gray); axis image; どなたかお願いします
150 名前:octave for windows メモの筆者 mailto:sage [2011/08/08(月) 09:37:41.35 ] >>149 画像処理は詳しくありませんが,演算が逆演算になっていないような気がします。
151 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/08/08(月) 14:03:14.87 ] abs()をつけてる時点で虚数次元が飛んでますからね
152 名前:octave for windows メモの筆者 mailto:sage [2011/08/08(月) 16:59:04.63 ] >>149 >>150 自信なし:一応画像で確認した。 Iin_d=double(Iin); O_fft=fft2(Iin_d);% FFT O_fft2=real(ifft2(O_fft)); %ifft figure,imagesc(Iin,[0 255]); fftした結果を演算されていますが,もとのイメージのフーリエ空間での 画像に演算をされておられるので情報が変わってしまっています。 したがって,ifftで戻るはずは原理的にないような気がします
153 名前:octave for windows メモの筆者 mailto:sage [2011/08/08(月) 17:55:52.63 ] >>152 訂正 Iin_d=double(Iin); O_fft=fft2(Iin_d);% FFT O_fft2=real(ifft2(O_fft)); %ifft figure,imagesc(O_fft2,[0 255]); %ここを訂正
154 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/08/09(火) 15:43:46.03 ] むしろこんな感じ sigma=40; for XX=1:128, for YY=1:128; ZZ(XX,YY)=63*exp(-1*(XX-64)^2/(2*sigma^2))*exp(-1*(YY-64)^2/(2*sigma^2)); end; end; ZZ1=fft(ZZ); ZZ2=ifft(ZZ1); image(ZZ) colorbar pause(2); image(abs(ZZ1)) colorbar pause(2); image(abs(ZZ2)); colorbar pause(2); 要点は、imageで表示するとき以外はabsとかを使わない
155 名前:octave for windows メモの筆者 mailto:sage [2011/09/02(金) 10:37:46.27 ] Blas としてOpenBLASかなり使えます。 https://github.com/xianyi/OpenBLAS なお,Cygwin 上にmingw64のクロスコンパイラが入りました。 mingw64は32 bitもサポートしていますので,windows 用には, それを使います。 (setup.exeでインストールしてください。) makeは以下のようにしてください。 make CC=i686-pc-mingw32-gcc FC=i686-pc-mingw32-gfortran OSNAME=WINNT TARGET=CORE2 TARGETは各自のCPUにあわせてください。 できた libopenblas_(cpu id)-r0.1alpha2.2.dll octaveのあるbinフォルダにコピペして, octave-3.2.4 mingwなら blas.dllとリネームすればいいです。 (octave-3.4.2 ならlibblas.dllに )
156 名前:octave for windows メモの筆者 mailto:sage [2011/09/05(月) 10:46:31.60 ] Octave-3.4.2-mingw + octaveforge pkgs が出ました。 old.nabble.com/Octave-3.4.2-mingw-%2B-octaveforge-pkgs-to32394771.html
157 名前:octave for windows メモの筆者 mailto:sage [2011/09/07(水) 17:24:14.86 ] Gnu Octave windows版のOctave-forge packageがアップデートされました。 old.nabble.com/Re%3A-Octave-3.4.2-mingw-%2B-octaveforge-pkgs-p32413743.html
158 名前:octave for windows メモの筆者 mailto:sage [2011/09/15(木) 08:01:26.94 ] Gnu Octave windows版のOctave-forge packageがアップデートされました。 octave.1599824.n4.nabble.com/Updated-Octave3-4-2-Mingw-for-testing-was-Mingw-Octave-3-4-2-blank-gnuplot-printouts-td3814047.html
159 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/09/22(木) 00:01:20.14 ] memory exhaustエラーが、少し大きめのデータで出てしまうのが、 改善されるといいなぁ。
160 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/09/22(木) 09:47:51.52 ] >>159 64bit版ならそのエラーが簡単には出ないって話ですけどね ただし正式なバイナリーがリリースされてない
161 名前:octave for windows メモの筆者 mailto:sage [2011/09/22(木) 14:14:55.62 ] >>159 >>160 ttp://www.gnu.org/software/octave/doc/interpreter/Compiling-Octave-with-64_002dbit-Indexing.html にしたがってビルドするしかないようですね。 Debian 上での例が載ってます。
162 名前:octave for windows メモの筆者 mailto:sage [2011/09/22(木) 17:00:01.71 ] >>159 >>160 Scilab なら64bit版があるようです。 ttp://www.scilab.org/products/scilab/download でも,文法かなり違うからなあ。
163 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/09/26(月) 13:34:26.79 ] >>162 Scilabの32bitも64bitもメモリー管理としては大差無いようです Windows7 64bit に4GBのメモリーを積んだ条件で Octave 3.2.4で AA=ones(12000,10000); とやると通りますが AA=ones(13000,10000); では error: memory exhausted と出ます。 Scilab 5.3.3 では32bitでも64bitでも stacksize('max'); を実行した後に AA=ones(13000,10000); は通りますが AA=ones(14000,10000); はエラーが出ます。 倍精度が16bitだとして(複素数の実部と虚部にそれぞれ8bit倍精度) 2GBぐらいに壁があるようです。
164 名前:octave for windows メモの筆者 mailto:sage [2011/09/26(月) 17:59:23.61 ] >>163 私もやってみました。 -->AA=ones(13600,10000); !--error 17 stack size exceeded! Use stacksize function to increase it. Memory used for variables: 135007946 中間的なメモリが必要です: 136000002 Total memory available: 268435455 Scilabの場合,スタックサイズの上限に問題があるようですね。
165 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/09/27(火) 09:00:38.67 ] >>163 倍精度複素数16bitではなくて16Bytesの間違いでした 全部の変数で2GB未満しかアロケート出来ないっぽいです 2^32は42億9496万7296でしたか、つまり4Gですが CPUは2の補数をとった2Gまでしかアクセスできないのでしょう
166 名前:octave for windows メモの筆者 mailto:sage [2011/09/27(火) 10:26:32.43 ] >>165 ttp://www.gnu.org/software/octave/doc/interpreter/Compiling-Octave-with-64_002dbit-Indexing.html をよく読むとArray Indexとなる整数のバイト数を64 bitの体系にあわせて, ライブラリまで含めて構築しなおす必要があるようです。 (たとえばFortran のライブラリなら(たとえばLAPACK), interger のデフォルトのバイトを8バイトにする。) Scilab 64 bitは,そこまで考えてビルドされていなのではと推測します。
167 名前:octave for windows メモの筆者 mailto:sage [2011/09/30(金) 10:42:53.78 ] Octave 3.4.3-rc0 release candidate available for ftp ttp://octave.1599824.n4.nabble.com/Octave-3-4-3-rc0-release-candidate-available-for-ftp-td3857294.html だそうです。
168 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/01(土) 22:47:50.57 ] Octaveの連想配列はどう書けば良いのですか? データに番号がついていて連続していない状態で、他のデータから連続していないデータを参照しているので 内部で番号をつけ直しています。つけ直しの時に総ナメのような感じになってしまうので連想配列が使えたら と思いまして質問しました。
169 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/02(日) 01:13:05.09 ] >>168 構造体で、それっぽいことはできたはず。 その用途でしたら、スパース行列でもよさげ。 どっちが速いかは未検討。
170 名前:168 mailto:sage [2011/10/02(日) 09:20:50.75 ] >>169 a.idみたいな感じで丁度構造体を使っているので構造体を使った連想っぽい処理をもう少し具体的に知りたいです どんな感じで使えば良いのですか?
171 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/02(日) 14:17:52.86 ] >>169 問題がややあいまいなので、もうちっと具体的にどうぞ。 情報の後出しは、無しということで。
172 名前:168 mailto:sage [2011/10/02(日) 18:24:07.84 ] どこまで必要な情報なのか・・・書ききれるのか分かりませんが書いてみます 有限要素法のプログラムを勉強のために作っているのですが、データが節点、 要素等番号がついています。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 ] >>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 ] >>173 お返事有り難う御座います。 処理速度を早くするためにはスパース行列が良さそうですね、 処理手順を多少弄らなければいけなさそうですが少し考えてみます。 案2の方も少し考えてみます。(使えそうな使えなさそうな・・・) OpenFEMの情報有り難う御座います。少しググってみます。
175 名前:octave for windows メモの筆者 mailto:sage [2011/10/11(火) 10:17:19.15 ] 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 ] >>175 毎度ありがとうございます。 目玉機能は何かあります? (simulinkがついに出来たとか :-P )
177 名前:octave for windows メモの筆者 mailto:sage [2011/10/12(水) 16:12:10.66 ] >>176 残念ながら喜ぶような機能の追加はなく,バグフィックスのようです。 3.4はこれでおしまいで,次は3.6になります。 GUIのインターフェースがつくかも知れませんが,はっきりとしません。
178 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/12(水) 20:10:34.63 ] >>177 あ、それは残念。 純正のOctave Workshopと、ネイティブEXCELリーダーが付けばいいなぁ。
179 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 11:33:00.99 ] >>ネイティブ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 ] 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 ] 制御系には全く無知なのではずしていたらすみません。 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 ] >>181 1 y1: ----- s + 1 が崩れて表示されていますね。すみませんm(__)m。
183 名前:octave for windows メモの筆者 mailto:sage [2011/10/13(木) 17:18:17.15 ] >>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 ] 早速ありがとうございます。 使ってみます。 ginputのバッティングなんかも解消できているといいのですが。
185 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/14(金) 15:57:12.92 ] >>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 ] >>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 ] >>186 それはわかってるつもりなのですが 伝達関数は計算してから入れればいいという考え派なので しかし制御の本がScilabばっかりなのは 伝達関数の計算なんかめんどい&scicos(5.2以降ならxcos)で制御を勉強したい という人が多いのでしょうね
188 名前:octave for windows メモの筆者 mailto:sage [2011/10/17(月) 07:33:56.72 ] >>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 ] >>188 すいません。 octave.sourceforge.net/ のWindows installer (Octave and Octave-Forge) の方は更新されないんですか?
190 名前:octave for windows メモの筆者 mailto:sage [2011/10/18(火) 08:54:52.33 ] >>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 ] lsode関数で微分方程式を解いて時間経過を見るとき 変数xが負の値をとる場合にはゼロになるように条件を加えたいのですが そういったことは出来るのでしょうか。
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/20(木) 12:35:32.94 ] >>191 マニュアルを読む限りではそのようなオプションはないと思います。 数学的な工夫でできるかもしれませんが。すみませんがわかりません。
193 名前:名無しさん@お腹いっぱい。 [2011/10/21(金) 23:07:54.32 ] >>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 ] >>193 本家のoctave-dev ML (Octave-forgeのメーリングリスト)で聞くしか ないでしょう。たしかMaintainer が最近変わったようなので。
195 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/10/24(月) 21:27:34.49 ] >>193 tf2ssはssでイケルっぽい
196 名前:octave for windows メモの筆者 mailto:sage [2011/10/27(木) 07:58:32.39 ] 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 ] ↑のやつですが、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 ] >>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 ] >>199 すみません、最初にpkg rebuild -autoしたのにどうしてもダメだと思ってましたが octaveの再起動が必要なことに今の今まで気づいてませんでした;; どうもお騒がせしました。
200 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/02(金) 10:02:30.70 ] FreeMATが4.0から4.1に上がりました freemat.sourceforge.net/ Octave互換モードも出来たらしいです FreeMATとOctaveを統合してはどうかという話もありますがはたして
201 名前:octave for windows メモの筆者 mailto:sageg [2011/12/03(土) 10:38:58.08 ] >>200 情報ありがとうございます。確かにOctave Integrationとありますね。 OctaveのMLでは,なにも話しは出ていませんが,どうなんでしょうね。 Octave MLでは3.6のリリースに向けて議論がなされています。 GUIも開発されつつあります。
202 名前:octave for windows メモの筆者 mailto:sageg [2011/12/03(土) 20:10:07.47 ] >>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 ] FreeMatって G=1/(1+0.1*s) bode(G) みたいな事はできるんですかね? Octaveは最新版でやっと出来るようになったみたいですが。
204 名前::octave for windows メモの筆者 mailto:sage [2011/12/05(月) 07:09:35.32 ] 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 ] 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 ] 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 ] >>206 おぉお。 ついに! ありがとうございます
208 名前:octave for windows メモの筆者 mailto:sageg [2011/12/10(土) 17:54:33.57 ] >>206 >>207 今回のバイナリーには,インストーラーがありません。そのため上記のページに 詳しい解説とインストール方法が記載されています。英語なので,拙Webページに自分の 改定を少し加えた翻訳の解説とインストール方法を記載しましたので,ご利用 ください。 www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#111210
209 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/11(日) 23:57:09.22 ] 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 ] 過去レスにサンプルまでいっしょのレスがありました。驚きです。 cygwinのダウングレードで解決されていましたが、 ダウングレードはするつもりがないので相性がよくなるまで待ちます。
211 名前:octave for windows メモの筆者 mailto:sageg [2011/12/12(月) 05:14:49.53 ] >>210 CygwinのMLを見ているとOctaveとの相性の悪い1.7.9に代わって1.7.10が テストリリースされているようです。まだ,試していませんが問題が解決して いることを願います。
212 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/13(火) 21:31:23.85 ]
213 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/13(火) 21:31:51.59 ] >>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 ] 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 ] >>214 MemoryExhaustedは3.2.4でも悩まされてるけど、 3.4.3は、さらに起きやすくなった。実際、同じスクリプトが動かなくなった。
216 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/16(金) 09:38:28.61 ] >>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 ] iphone用octaveでないかなー
218 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/18(日) 11:03:15.98 ] >>217 そこでLinuX zaurusですよ
219 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/19(月) 10:36:54.47 ] 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 ] 最近,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 ] 最近,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 ] 最近,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 ] 最近,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 ] >>220 -223 2chブラウザの特性を知らず同じ書き込みを何度もしてすみません。m(__)m
225 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 10:49:14.91 ] >>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 ] >>225 i686-pc-mingw32-gcc -shared-libgcc -shared \ で始まる行が一行ずつ開いているのは詰めてください。m(__)m
227 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 12:16:03.65 ] >>255 たびたびすみません。 >MinGW上ではふつうにビルドしただけではエラーになるようです。 Cygwin上でふつうにビルドしただけではMinGWでエラーになるようです。 で,CygwinのMinGW64の32bit版GCCで静的ライブラリからリンクしなおして, dllを作成しています。
228 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 13:13:13.43 ] >>227 どうもありがとうございました dllのビルドがおかしかったんだ
229 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 13:22:53.36 ] >>224 あ、おかえりなさいw 普通は自動追尾するはずなんですが、 板欄→板一覧の更新 スレ欄→スレ一覧の更新 を手動でやればいいんでしたっけか。 自分も適当にやったので、本当はどうすればいいのか、実はよくわかってないですw というわけなんですが、 >>213 の状態になるのは僕の環境だけなんでしょうかねぇ?
230 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:04:18.95 ] >>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 ] >>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 ] また,2重投稿になってるm(__)m
233 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:16:09.81 ] >>230 subplotが怪しいのかなあとおもいましたが,単にsubplotしただけではfltkでの グラフ落ちませんでした。Controlパッケージのせいなのかな? ちょっと見当つかないですが,余力があればBug Trackerにあげてみます。 それで解決するかはわかりませんが。
234 名前:octave for windows メモの筆者 mailto:sage [2011/12/23(金) 16:32:41.70 ] >>233 bug trackerにあげときました。 savannah.gnu.org/bugs/?35159
235 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/23(金) 18:01:28.68 ] >>234 ありがとうございます。 お世話かけます。
236 名前:octave for windows メモの筆者 mailto:sage [2011/12/24(土) 12:24:11.51 ] 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 ] 少し前ですが,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 ] 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 ] 本当に初歩的な質問ですが、octaveで乱数(メルセンヌツイスタ)を使いたいのですが、その乱数がcファイルなので、どうすればoctaveで使えるのですか? 因みに目的はメルセンヌツイスタを用いた乱数発生で円を求める奴です
240 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 10:42:26.06 ] >>239 help rand を見ると、現在のOctaveのrandで用いているのは 擬似Mersenne Twisterのようです
241 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 13:59:09.11 ] >>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 ] >>241 外した答えになっているような気がする。許してください。
243 名前:239 mailto:sage [2011/12/26(月) 16:06:13.41 ] >>240 ごめんなさい、メルセンヌツイスタ縛りなのでrand関数は不可です あくまでも公式サイトから落としたメルセンヌツイスタプログラムを用いて計算しなければならないので… てか何故PCから見れないんだ、このスレ(´・ω・`)
244 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 17:11:53.04 ] いまは↓ ttp://toro.2ch.net/test/read.cgi/unix/1256735581/ で見れるようです。私もある方に教えてもらいました。
245 名前:octave for windows メモの筆者 mailto:sage [2011/12/26(月) 17:19:19.18 ] >>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 ] それです、正にそれです 流石に馬鹿過ぎる質問ですがコンパイルと実行ファイル制作ってどうするんですか? コマンドプロンプトを使ってやるのですか? それともoctave上でコンパイルするのですか? あ、当然ググりました
247 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 19:02:34.54 ] >>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 ] >>247 無事に窓を用いてコンパイルは出来ました(mt19937ar.exe) けどそこからがよく分かりません… system関数?load関数? 因みにこれは微妙に課題です ゼミでoctaveを使うことになったのでその予行練習課題みたいなものです
249 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:10:48.73 ] >>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 ] 了解しました 課題は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 ] 訂正です 乱数の範囲は[0,1]です そして体積はV=(octaveで求めた値)×2^n(n:次元)で求めるものとします 一応octaveの基本はある程度理解をしたのですが、高度なのはさっぱり分からないのでここで聞きました
252 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 00:49:10.19 ] 書き忘れた…orz >>249 で書いてるのと一緒です オレの馬鹿、連レスサーセンです
253 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 01:24:12.38 ] >>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 ] >>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 ] >>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 ] やってみました 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 ] 因みに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 ] >>256 >>257 パスにスペースがあるとだめですよ。 だから cd "C:/Documents and Settings/DateMasa/デスクトップ/MT" ではだめです。
259 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/27(火) 13:54:13.73 ] アドバイスを参考にスペースが入らないよう解凍位置を変更してみました 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 ] >>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 ] minGWを新しいものに変え、今までの事をやりました 無事randmtが起動できました そして課題もまとめることができました 本当にありがとうございます!
262 名前:octave for windows メモの筆者 mailto:sage [2011/12/28(水) 06:35:47.21 ] >>261 よかったですね。卒研頑張ってください。
263 名前:octave for windows メモの筆者 mailto:sage [2011/12/28(水) 06:58:12.76 ] >>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 ] 本当に初歩的な質問で申し訳ございません。 今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 ] >>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 ] >>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 ] >>264 バージョンは、3.2.4ですが、私のoctaveを使った講義の資料を紹介した部分を あげていますので参考になれば幸いです。 ttp://www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#110613
268 名前:名無しさん@お腹いっぱい。 [2011/12/29(木) 11:36:23.43 ] どういうわけかグラフを一つ書きません。 訳がわかりません。 ## 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 ] 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 ] >>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 ] >>263 対処ありがとうございます。 どうも複合技でバグっているっぽいですね。 慣れ親しんだgnuplotで使い続けさせていただきます。 それにしてももう少し起動が早くならないですかねぇ。 scicoslab (scilabじゃなくて) はとても起動が速いのに。
272 名前:octave for windows メモの筆者 mailto:sage [2011/12/30(金) 07:12:56.31 ] >>271 起動はUbuntuなどのUnixではとても速いです。起動がWindows用に最適化 されていないように感じます。
273 名前:octave for windows メモの筆者 mailto:sage [2011/12/30(金) 08:18:47.62 ] >>269 どうもoctavercおかしい、文字列をの''であって、""でないから、\\でなくて\が パスセパレータですね。でも、おかしい octave:1> edit warning: unrecognized escape sequence `\P' -- converting to `P' warning: unrecognized escape sequence `\N' -- converting to `N' error: system: CreateProcess failed -- can't create child process error: called from: error: C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\3.4.3\m\miscellaneous\edit.m at line 212, column 7 とりあえず、Notepad++をOctaveとは別に起動してそこで編集してみてください。
274 名前:octave for windows メモの筆者 mailto:sage [2011/12/30(金) 08:33:41.29 ] >>271 >>263 Cygwin版octaveで、試してみました。FLTKマウスぐりぐりでも、Octaveハング しません。ただし、マウスぐりぐり自体は少し変ですが。 # Cygwin版では、octave-forgeパッケージはauto loadでないですね。
275 名前:octave for windows メモの筆者 mailto:sage [2011/12/30(金) 15:21:23.37 ] >>273 windows 7 64ビットだとNotePad++は C:\Program Files (x86)\Notepad++ にインストールされる。 ()は、認識されるかわからないので、コマンドプロンプトで dir c:\ /X 古いプログラム互換のための短いパス名を調べて、Program Files (x86) は、PROGRA~2であることがわかる。ついてにパスセパレータを\から /に変更して、私の環境では、 EDITOR('C:/PROGRA~2/Notepad++/notepad++.exe'); としてみた。 これで、octave のコマンドプロンプトから、editで NotePad++ が (少なくとも私の環境では)起動するようになった。
276 名前:名無しさん@お腹いっぱい。 [2011/12/31(土) 10:25:08.41 ] >>270 できました! すごい。9の時点で動いたので、これからはnotepadにコードを作って そのたびに5から8の動作をして確かめたいと思います。 本当にありがとうございました:D
277 名前:octave for windows メモの筆者 mailto:sage [2012/01/06(金) 15:14:04.04 ] New dependency libraries and toolkits for MinGW build are uploaded. ttp://octave.1599824.n4.nabble.com/New-dependency-libraries-and-toolkits-for-MinGW-build-are-uploaded-td4267845.html
278 名前:名無しさん@お腹いっぱい。 [2012/01/06(金) 23:34:58.90 ] matlab風に使いたいのでoctave workshopのinstaller付のwin版を ダウンロードしたのですが、インストールはできたのに起動しません。 原因をご存知の方がいればお教えください。
279 名前:octave for windows メモの筆者 mailto:sage [2012/01/07(土) 12:55:10.79 ] >>278 Octave Workshopのoctaveあまりにも古く,使用するのはあきらめてください。 GUI Octaveの方が現実的だと思います。 ttps://sites.google.com/site/guioctave/ GUI OctaveではOctave-3.2.4ですが,頑張ればOctave-3.4.3も使用できます。 ttp://guioctave79.freeforums.org/guioctave-stuck-with-gnu-octave-3-4-2-t108.html (OpenGLのgraphicsが使用できませんが。)
280 名前:名無しさん@お腹いっぱい。 [2012/01/07(土) 21:22:43.08 ] 278です。 GUI Octaveをインストールしたのですが Error message: Redirect console error: 3 と表示されてしまいます。 たびたび申し訳ありませんが、原因をご存知の片がいればお教えください。
281 名前:octave for windows メモの筆者 mailto:sage [2012/01/08(日) 07:16:25.00 ] >>281 私は,GUI に興味がないので使用したことがないので,お役に立てません。 ここで回答がつかなければ,GUI Octaveは生きているプロジェクトのようです ので敷居は高いですが,GUI Octaveの英語のフォーラムで尋ねられるとよいか と思います。
282 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 12:10:39.94 ] >>280 Octave-3.2.4をインストールしていない に1票
283 名前:名無しさん@お腹いっぱい。 [2012/01/08(日) 12:30:30.35 ] Octave-3.2.4をインストールする前にGUI Octaveをインストールすると、 Error message: Redirect console error: 3 が出る。 これは、GUIOctaveの File/Options/Octave/GNUOctave Executable Files Directory に パスが正しく設定されていないことでもわかる。 Octave-3.2.4を入れているのに、なぜかここにパスが設定されていないときは、 ここに C:\Octave\3.2.4_gcc-4.4.0\bin を設定する。 そもそもOctave-3.2.4を入れていないのであれば、 一度GUIOctaveをアンインストールして、Octave-3.2.4を入れる. これが正しく入っていると、GUIOctaveはインストール時に自動的にOctaveパスをセットしてくれるので 特に設定は要らない。 Octave-3.2.4を入れるときには octave for windows メモの筆者さんの www.tatsuromatsuoka.com/octave/jpn/OctaveWinMemo.html#100403 を、ありがたく、よく読んでからな〜
284 名前:octave for windows メモの筆者 mailto:sage [2012/01/09(月) 13:38:37.75 ] 3.6.0がでそうでなかなか,いろんな話題がでてなかなかでませんが, そういうなか 3.5.92のスナップショットがでました。 ビルドできる人はトライしてみてください。 octave.1599824.n4.nabble.com/Octave-3-5-92-snapshot-available-for-ftp-td4270829.html
285 名前:octave for windows メモの筆者 mailto:sage [2012/01/11(水) 08:09:58.85 ] Octave-3.6.0のrc0がでました。 octave.1599824.n4.nabble.com/Octave-3-6-0-rc0-release-candidate-available-for-ftp-td4283677.html Octave-3.6.0のリリースもまもなくでしょう。
286 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 13:30:25.43 ] FreeBSD 9.0Rが出たので入れてみたメモ octaveはpackagesから入れると起動時にGLIBCXXなにがしというエラーが出ます portsから入れるとmake途中で同じエラーが出ます 原因はglibcのバージョンの問題で LD_LIBRARY_PATH の先頭に /usr/local/lib/gcc46 を入れてください。 一応正常そうに動きました。
287 名前:名無しさん@お腹いっぱい。 [2012/01/14(土) 20:02:14.37 ] for i=1:1:n t=0:dt:t; figure(i) subplot(1,3,1) plot(t,xx1(i,:)) grid on title('Displacement-time') xlabel('time') ylabel('displacement') subplot(1,3,2) plot(t,xx2(i,:)) grid on title('Velocity-time') xlabel('time') ylabel('Velocity') subplot(1,3,3) plot(t,xx3(i,:)) grid on title('Acceralation-time') xlabel('time') ylabel('Acceralation') hold on end
288 名前:名無しさん@お腹いっぱい。 [2012/01/14(土) 20:04:41.86 ] 上のコードは自分で作成しました。 もし、n=5であれば、5つの図を出したいのですが、 上記の場合ですと、1つ目の図はプロットされていますが、 2つ目以降のグラフは、grid とtitleなどが表示された図が表示されるだけで プロットされてません。 なお、xx1やxx2はちゃんと値が入っているので数字的ミスはまったくないです。 forで回すのは、figureを作成するうえでやめたほうがいいんでしょうか? よろしくお願いします。
289 名前:octave for windows メモの筆者 mailto:sage [2012/01/14(土) 22:22:53.77 ] >>288 それぞれの図を描くとき drawnow が入っていないのが原因なのでは?
290 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 12:05:33.07 ] t=0:dt:t; octaveにかけると、この文でエラーになるけど?
291 名前:octave for windows メモの筆者 mailto:sage [2012/01/15(日) 14:17:54.69 ] >>290 上のコードはこれ単独では動きません。 動かすには,tとdtの設定のほかにも,xx1とxx2の定義が必要ですので。 できれば,単独で動いて動作確認できるコードをあげていただけると 答えがつきやすいと思います。 ところで t=0:dt:t; はループの外に出すでしょう。ループの中にいれるのは, 間違いでないけど意味が不明です。
292 名前:octave for windows メモの筆者 mailto:sage [2012/01/15(日) 18:49:34.46 ] やってみました。たしかにループでなく描画するとグラフかけますね。 バグかもしれません。 Octaveのバージョン,Windows,Mac,Linuxなどお知らせください。
293 名前:octave for windows メモの筆者 mailto:sage [2012/01/15(日) 18:50:29.52 ] >> おっと, windows版octave 3.4.3で試してみました。
294 名前:octave for windows メモの筆者 mailto:sage [2012/01/16(月) 06:47:46.80 ] Octave-3.6.0がリリースされました。 octave.1599824.n4.nabble.com/Octave-3-6-0-uploaded-to-ftp-gnu-org-td4297674.html
295 名前:octave for windows メモの筆者 mailto:sage [2012/01/16(月) 12:17:54.38 ] >>287 よくコードを読むと t=0:dt:t; がfor loopの中に入っているためn=2からは 区間ではなくなってますね。 t=0:dt:t をloopの外に出すと正しく動くようです。 以上
296 名前:octave for windows メモの筆者 mailto:sage [2012/01/26(木) 06:54:39.70 ] Octave team で開発中のOctave-GUIの現在のスナップショット www.geocities.co.jp/tmoctwin/files/OctaveGUI0.8.5.html Windows上のスナップショットですが,Ubuntuでもほぼ同じイメージでした。
297 名前:octave for windows メモの筆者 mailto:sage [2012/01/26(木) 13:07:09.86 ] >>213 bode線図でこけるのは,control packageのせいではではなく, fltk graphic_toolkit が対数軸でのマウスオペレーションがこける ためのようです。 https://savannah.gnu.org/bugs/?35292
298 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/27(金) 09:11:43.11 ] >>296 Scilabも5.4.0-alphaからコマンドウインドウの左右に 補助ウインドウが出るようになりました ただしScilabは左が、変数&履歴ウィンドウ、右がファイルブラウザ まあでもド素人にMatlab系のプログラミング技術を教えるだけなら FreeMATでいいかもしれないです インストールが簡単だし、dos画面じゃないし、 グラフもgnuplotとかではなくてネイティブだし
299 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/29(日) 11:13:02.52 ] >>298 FreeMATって、コントロールパックとかあるんでしたっけ? 伝達関数とか、それのインパルス応答とか、ボード線図かくやつ。
300 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/29(日) 14:56:20.91 ] >>299 無いですね tfもzpもstepもbodeも 制御をやる目的ならscilabの方がいいと思います scilabはmatlabから入ると流儀がわからないかもしれませんが 慣れればどってことないです octaveは限界が高いですけど 初心者がやるにはハードルも高いと思います dos画面だけってのは初心者は面くらうでしょう それで電卓代わりに使う目的ならfreematで十分という話です
301 名前:octave for windows メモの筆者 mailto:sage [2012/01/30(月) 07:48:33.24 ] >>300 OctaveはもともとUnix由来のソフトですし,Windowsの開発陣のリソースは実に 薄い。UnixではTerminalでのソフトはまだ一般的ですし,UnixのTerminalは コマンドプロンプトよりは使いやすい。 #Windows 2000からはコマンドプロンプトが正しい名称であって #ドスプロンプトではないです。まあ,それのほうがつうじますが。
302 名前:octave for windows メモの筆者 mailto:sage [2012/01/30(月) 07:54:27.43 ] >>301 ちょっと舌足らずした。 とはいうもののUnixでもGUIのご時世なので,Octave本体もやっと 真剣にGUIインターフェースをつくりはじめています。 ちとお待ちください。
303 名前:octave for windows メモの筆者 mailto:sage [2012/01/31(火) 12:28:20.15 ] Octave3.6.0_gcc4.6.2 mingw binaries for testing octave.1599824.n4.nabble.com/Octave3-6-0-gcc4-6-2-mingw-binaries-for-testing-td4338795.html インストールの仕方などは以下を参照してください。 www.octave.org/wiki/index.php?title=Octave_for_Windows#Octave-3.6.0-mingw_.2B_octaveforge_pkgs
304 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/31(火) 23:58:19.85 ] 遅ればせながら、3.6.0のNEWSを読んでみた。 ぱっと目についた新機能は以下。 1.バイナリ演算子のブロードキャスト ex.) rv=(1:5)'、M=magic(5)の時、repmat(rv,1,5).*Mがrv.*Mと書ける 2.プロファイラの実装 profile, profshow, profexplore 3.parfor(for文の並列処理)のサポート 但し、内部動作はforのまま parfor、一瞬期待したのに…!
305 名前:octave for windows メモの筆者 mailto:sage [2012/02/01(水) 06:16:26.76 ] >>303 Release 3.6.0 still not "official" octave.1599824.n4.nabble.com/Release-3-6-0-still-not-quot-official-quot-td4345497.html で3.6.1がでるようです。qhullのルーチンがごく最近改定されたのでちょうど いいかもです。Windows版のビルドもATLASのバージョンを変えてテストが 終わりつつあるのでこれもいいかもです。 parforですか。たしかにあるといいと思いますが今の開発陣のマンパワー だとどうかなという気がします。そこらへんに強い人が開発陣に参戦される ことを期待したいのですが。
306 名前:octave for windows メモの筆者 mailto:sage [2012/02/02(木) 10:06:13.73 ] Octave for GNU Linux: Binary Octave packages for GNU Linux www.octave.org/wiki/index.php?title=Octave_for_GNU_Linux:_Binary_Octave_packages_for_GNU_Linux
307 名前:octave for windows メモの筆者 mailto:sage [2012/02/08(水) 07:05:13.92 ] Octave 3.6.1-rc0 release candidate available for ftp octave.1599824.n4.nabble.com/Octave-3-6-1-rc0-release-candidate-available-for-ftp-td4365618.html
308 名前:名無しさん@お腹いっぱい。 [2012/02/10(金) 15:43:20.25 ] octaveってデフォルトで上三角の連立方程式 U x = y を高速に解けないの? ちょっと使ってみようと思ってググったら2003年の記事出てきたんだけど、 www.math.meiji.ac.jp/~mk/labo/text/a-remark-lu.pdf これ未だにfixされてない?
309 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/02/10(金) 23:24:48.60 ] >>308 もしかして、試してすらいない? うちの環境だとこんな感じ。 Octave 3.2.4, Linux 2.6.32, Core2Duo 1.8GHz octave:1> lutest(5000); P の掛け算の計算時間 Elapsed time is 0.0580444 seconds. L による割り算の計算時間 Elapsed time is 0.0310717 seconds. U による割り算の計算時間 Elapsed time is 0.0300882 seconds. leftdivu() による割り算の計算時間 Elapsed time is 0.843658 seconds. 精度 ans = 1.1294e-06 ans = 1.1197e-06 ※実際は100回計算してる。上の時間は平均値
310 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/02/11(土) 17:30:46.00 ] >>309 試してというか、インストールすらまだしてないw ちょっとoctave使ってみようかな、ありがとう
311 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/02/14(火) 21:52:48.99 ] 久々です 少し訳の分からないエラーが出たので質問したいのですが… 今サクラエディタ上で次のようなプログラムを作ってました function dx = f(x,t) dx = 1/(1+t^2); end t = linspace(0,10,101); x = lsode("f",1,t); 因みにプログラムの内容は微分方程式 X' = 1/(1+t^2)をlsodeを用いて解くというものです コレをコンパイラしたところ以下のようなエラーが出てしまいます warning: function name `f' does not agree with function file name (filename) parse error near line 5 of file (filename) syntax error >>> t = linspace(0,10,101); error: `t' undefined near line 2 column 12 error: called from: error: (filename) こんな感じのエラーでした しかし窓でプログラムを制作した場合は何故かエラーなしでグラフを表示することができました 何でこんなエラーが出たのでしょうか? ^
312 名前:octave for windows メモの筆者 mailto:sage [2012/02/15(水) 07:42:59.15 ] >>311 今サクラエディタ上で次のようなプログラムを作ってました というのは,以下の内容を含むmファイルを作成して(例えばfoo.m) function dx = f(x,t) dx = 1/(1+t^2); end t = linspace(0,10,101); #**********: Octave のプロンプトからfooと打ったということでしょうか。 Octaveのmファイルには,スクリプトmファイルと関数mファイルがある。 Octaveはfunctionで始まるmファイルは関数mファイルと考える。 上の例は関数定義のあとにlsodeがあり,明らかに関数mファイルではない。 したがって上のスクリプトは間違いである。 warning: function name `f' does not agree with function file name (filename) は,関数mファイルは関数名とファイル名が一致しないといけないのでたwarning.
313 名前:octave for windows メモの筆者 mailto:sage [2012/02/15(水) 07:43:43.77 ] >>311 >>312 上のスクリプトをスクリプトmファイルと認識させたいならfunctionキーワードの 前に命令を入れる。例えば 1; function dx = f(x,t) dx = 1/(1+t^2); end 1;は無意味な命令だがそのおかげで,octaveはこのファイルをスクリプトm ファイルと認識できる。
314 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/02/15(水) 20:58:11.93 ] >>313 解決しました! ありがとうございます!
315 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/02/21(火) 22:33:37.23 ] 流石に課題丸投げは行けないと思うが、悩みに悩んだ結果積んでしまったので教えてください ttp://loda.jp/subject_2ch/?id=762 これが課題の内容(pdf形式)です 只今小問2に関するプログラムを制作してるのですが、どうしても等高線グラフができません 一応原因はある程度把握してますが(ip(k,n)に関して、kが整数ではないからエラーがでる)それに変わるプログラムが分からず… 以下に小問2に関するプログラムを載せますので、どこがどう違うのかを指摘してくれれば有難いです 1; function dx = f(x,t,n1,k1) dx = -k1*x^n1; endfunction t = (0:1:300); x0 = 10; for k = 10^-9 : 0.1 : 1 for n = 1 : 5 x = lsode(@(x)f(x,t,n,k),x0,t); ip(k,n) = (x(21) - 8)^2 + (x(41) - 6)^2 + (x(61) - 5)^2 + (x(121) - 3)^2 + (x(181) - 2)^2 + (x(301) - 1)^2; endfor endfor contourf(pi)
316 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 11:42:18.48 ] >>315 ttp://loda.jp/subject_2ch/?id=762 がダウンロードできないので,もとの問題についてはわかりませんが, ip(k,n) = (x(21) - 8)^2 + (x(41) - 6)^2 + (x(61) - 5)^2 + (x(121) - 3)^2 + (x(181) - 2)^2 + (x(301) - 1)^2; はkが正の整数かロジカルでないといけないので,こういう書き方は許されません。
317 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 11:52:06.35 ] >>316 (ip(k,n)に関して、kが整数ではないからエラーがでる)って書いてありましたね。 すみません。
318 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 12:13:15.01 ] >>315 1; function dx = f(x,t,n1,k1) dx = -k1*x^n1; endfunction t = (0:1:300); x0 = 10; k=1e-9; for m = 1:10 for n = 1 : 5 x = lsode(@(x)f(x,t,n,k),x0,t); ip(m,n) = (x(21) - 8)^2 + (x(41) - 6)^2 + (x(61) - 5)^2 + (x(121) - 3)^2 + (x(181) - 2)^2 + (x(301) - 1)^2; k=k+0.1; endfor endfor contourf(ip) は一応等高線はでるが,目指しているものと同じかわかりません。
319 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 13:27:38.33 ] >>318 contourf(ip) は contourf(1:5, 1e-9:0.1:1, ip) か contourf(1e-9:0.1:1, 1:5,ip') にすればよいかも。
320 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 17:57:12.75 ] >315-319 要は配列の概念とcontoturfの使い方がわかっていないのかなと思います。 ヘルプを読めばいいのですが,英語ですしね。無理もないかもしれません。 pdfをダウンロードできました。 もう少しいじる必要があると思いますが,基本的にはこれでいいのかな。 あとは自力で頑張ってください。
321 名前:octave for windows メモの筆者 mailto:sage [2012/02/23(木) 18:04:53.50 ] >315-319 要は配列の概念とcontoturfの使い方がわかっていないのかなと思います。 ヘルプを読めばいいのですが,英語ですしね。無理もないかもしれません。 pdfをダウンロードできました。 もう少しいじる必要があると思いますが,基本的にはこれでいいのかな。 課題ですので,あとは自力で頑張ってください。
322 名前:octave for windows メモの筆者 mailto:sage [2012/02/28(火) 15:10:56.60 ] Octave 3.6.1 がリリースされました。 octave.1599824.n4.nabble.com/GNU-Octave-3-6-1-Released-td4425272.html 3.6.0はバグのため公式版とならなかったため,3.6.1が公式版となります。
323 名前:octave for windows メモの筆者 mailto:sage [2012/02/28(火) 15:18:33.76 ] まだ,公式には発表されていませんが,Michael氏がMSVC版のoctaveの復活に意欲 を見せておられます。さて,どうなるでしょうか。
324 名前:octave for windows メモの筆者 mailto:sage [2012/02/28(火) 15:18:51.21 ] まだ,公式には発表されていませんが,Michael氏がMSVC版のoctaveの復活に意欲 を見せておられます。さて,どうなるでしょうか。
325 名前:octave for windows メモの筆者 mailto:sage [2012/03/03(土) 16:10:02.07 ] MSVC版のoctave-3.6.1がでました。 octave.1599824.n4.nabble.com/Octave-3-6-1-for-Windows-VS2008-VS2010-available-td4440168.html
326 名前:名無しさん@お腹いっぱい。 [2012/03/03(土) 23:33:37.71 ] いきなりの質問ですみません。 2つほど質問があります。 1.2段のワードの形式で論文を書いているのですが、 どうしても、ワードの大きさに縮小してしまうと、メモリどころか 線すらはっきり映りません。これをどう解決すればよいのでしょうか? 2.グラフを描くときに、色ではなく破線や点線はどのようなコードを 打てばよいのでしょうか? なにとぞよろしくお願いします。特に1番目の質問が深刻です。
327 名前:名無しさん@お腹いっぱい。 [2012/03/03(土) 23:42:00.21 ] 2番目は解決しました。すみません。
328 名前:octave for windows メモの筆者 mailto:sage [2012/03/04(日) 17:42:22.14 ] >>326 ?? プロットした図が縮小すると見えなくなるということでしょうか。 ワードだからWindowsですよね。octave-3.2.4でしょうか。 gnuplotの画面をコピーしてワードに貼り付けているということでしょうか。 私はoctave の図をそのまま使わないので良くわかりませんが, print コマンドでemfか何かでセーブした図を使ったほうがいいかもしれません。
329 名前:名無しさん@お腹いっぱい。 [2012/03/05(月) 20:49:38.55 ] octave-3.6.0で 1.1 ans = 1.10000000000000 single(1.1) ans = 1.10000002384186 となります。これってどうなんですか? どなたか教えて下さい。
330 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/03/05(月) 22:52:08.58 ] >>329 問題ないです
331 名前:octave for windows メモの筆者 mailto:sage [2012/03/07(水) 08:09:54.51 ] Windows版の書き込みですみませんm(__)m。 MinGW版 の 3.6.1がでました。 sourceforge.net/projects/octave/files/Octave%20Windows%20binaries/Octave%203.6.1%20for%20Windows%20MinGW%20installer/
332 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/03/07(水) 14:24:18.76 ] >>329 補足するとsingle(単精度)の有効桁は10進に治すと約6-7桁なので それ以上の桁数の数値についての保証はなく >>330 の方がおっしゃるように,単精度の範囲では問題ないことになります。