- 1 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/10/28(水) 22:13:01 ]
- 知る人ぞ知る強力なデータ解析ツール octave ...
unixを科学研究で使っている香具師には非常に心強い味方のはずだ。 matlab互換を主張しながら、微妙にバージョンアップを続ける octaveについて語ろう。 そのPart 2です 前スレ データ解析ツールoctaveを語ろう pc12.2ch.net/test/read.cgi/unix/1086016412/
- 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 の方がおっしゃるように,単精度の範囲では問題ないことになります。
|

|