Path: jaist-news.jaist!coconuts.jaist!wnoc-tyo-news!news.join.ad.jp!Q.T.Honey!aero.kyushu-u!hakozaki.karrn!hakata!ie.u-ryukyu.ac.jp!gama.is.tsukuba.ac.jp!hagi!nadesico.cc.tsukuba.ac.jp!news-sv.sinet!news.nc.u-tokyo.ac.jp!makino From: makino@grape.c.u-tokyo.ac.jp (Jun Makino) Newsgroups: fj.comp.lang.misc,fj.sci.math Subject: Re: My octave's program didn't work. Why? Date: 7 Oct 1998 05:36:24 GMT Organization: College of Arts and Sciences, Univ. of Tokyo Lines: 30 Message-ID: <6veuko$72g@news.nc.u-tokyo.ac.jp> References: <6usq3r$8an$1@news.cc.u-tokai.ac.jp> NNTP-Posting-Host: provence.c.u-tokyo.ac.jp X-Newsreader: mnews [version 1.19PL2] 1996-01/26(Fri) Xref: jaist-news.jaist fj.comp.lang.misc:54 fj.sci.math:4946 牧野@東大駒場です。 Octave も ODEPACK (LSODE) も使ったことがある わけではないので外しているかもしれませんが、、、 <6usq3r$8an$1@news.cc.u-tokai.ac.jp>の記事において 41ee3142@keyaki.cc.u-tokai.ac.jpさんは書きました。 >> >> 現在の状況としては, t = 0 の値(初期値)が出る以外は全て(t != 0) >> 0 (全要素とも 0)になってしまいます。function〜endfunction 中で >> xdot の値を表示させても 0 では無いようです。また t を表示させ >> てみたところ, lsode に与える t (積分範囲)に関係なく 10 あたり >> で停止するのを確認しました。 >> lsode_options("absolute tolerance", 1e-20); >> lsode_options("relative tolerance", 1e-20); 初期条件に 1E-8 とかが入っているので、 ATOL=1E-20 はいいかもしれ ませんが、 RTOL=1E-20 は通常の計算機での倍精度(64ビット)計算では 達成不可能な値です。 まあ、 ODEPACK は ATOL + RTOL*X みたいなのを条件に使うので、これ は問題ではないかもしれません。が、方程式を眺めた限りでは、逆に ATOL が大き過ぎるので解がすべて0とみなされるということは起きるか もしれません。 また、すべて0というのはとりあえず平衡解にはなっているようですが、 それ以外の解がもとまるはずであるということはわかっているのでしょ うか? 牧野@東大駒場