スプレッドシート(4月3日)を公開したにゃ [ひとこと言わねば]
お前らに質問(4月3日)のサンプル計算で使用したスプレッドシートを公開したにゃ。
興味のあるヒトは、見るといいと思うケロ。
興味のあるヒトは、見るといいと思うケロ。
LibreOffice Calc版
https://docs.google.com/spreadsheets/d/e/2PACX-1vTC4Ht62OfD0xCXYBh5MA0Ffw6qYpYZW_91NmlHoiQuySLucfK-gWDiotE4SEY3RqqiW2mr4xzvvMUt/pub?output=ods
https://docs.google.com/spreadsheets/d/e/2PACX-1vTC4Ht62OfD0xCXYBh5MA0Ffw6qYpYZW_91NmlHoiQuySLucfK-gWDiotE4SEY3RqqiW2mr4xzvvMUt/pub?output=ods
パソコンやブラウザーの設定によっては、エクセル、Calc版のリンク先をクリックすると、スプレッドシートがダウンロードされる場合があるので、この点は注意するケロ。
F列に収束速度というものがありますが、これはの比のこと。この数字が小さければ小さいほど、速く収束します。2分法は、大体、1/2、0.5くらい。収束速度という用語が適切かどうかわからないけれど、
――スプレッドシートを作るときに、「何か名前がないと表が寂しい」との理由から、とりあえず、他人に見せる目的ではなく、自分のためにつけた実にいい加減なもの。いま思うと、収束係数とか収束指数といったネーミングにすべきだった。たぶん、これには正式な名称がついているはず。ハッキリ言って、このネーミングはかなりまずいものだ(^_^;)――
この計算の場合、これが約2/3だから、2分法よりも収束が遅いことがわかる。
――スプレッドシートを作るときに、「何か名前がないと表が寂しい」との理由から、とりあえず、他人に見せる目的ではなく、自分のためにつけた実にいい加減なもの。いま思うと、収束係数とか収束指数といったネーミングにすべきだった。たぶん、これには正式な名称がついているはず。ハッキリ言って、このネーミングはかなりまずいものだ(^_^;)――
この計算の場合、これが約2/3だから、2分法よりも収束が遅いことがわかる。
実は、この数字にはちょっとした秘密が隠されている。
のとき、
になることが知られている。そして、ニュートン法を用いたこの計算の場合、m=3だから、1−1/3=2/3になる。ちゃんと、この値になっているだろう。さらに、このことから、m=4,5,・・・と、mをどんどん大きくすればするほど、ニュートン法の収束はさらに遅くなることがわかる。また、m=2のとき、ニュートン法はほとんど2分法になってしまうってことも。
なお、本計算の場合、
となるので、ニュートン法の漸化式は
となる。このスプレッドシートではこれを用いて計算してあるので、表面上、微分は出てこないように見えるけれど、しっかり微分している。だから、スプレッドシートの計算式を見て、「何だ、これは。いったい、この式はどこから出てきた」と悩まないで欲しい。
この記事を読み、連立方程式の反復解法でよく使われるSOR法のように、収束をはやめるために、加速係数ω>1を導入し、
で計算しようという、ずる賢い奴も出てくるかもしれない(^^)
加速係数ω=2のとき
随分、速く計算できるようになった(^^ゞ
ただし、くれぐれもスピードの出しすぎには注意しましょう!! ものには限度というものがあるのだから。
しかし、さらにスピードアップさせて、究極の
加速係数ω=3に!!
しかし、さらにスピードアップさせて、究極の
加速係数ω=3に!!
収束の速さは神の領域へ!!
そして、お決まりのこの曲を♪
コメント 0