連分数から近似分数を求める
前回の記事の続きです。
前回はの連分数を求めるところまで説明しました。
ただ、連分数だけでは使い勝手が悪いです。見た目も気持ち悪いですし、近似分数がまだ求まっていません。今回は連分数から近似分数を求める話をします。
無理数をとし、の連分数展開をとしましょう。はやだと思ってください。は数列と見ることができますね。連分数展開から得られた数列の第項目までを使って得られた近似分数をと表記し、第近似分数と呼びます。今後はがどのように求まるかを実際に計算をしながら見ていきます。
ためしに第0近似分数を求めてみましょう。といっても簡単ですね。第0近似分数はのみから得られる近似分数なので、
となります。よって、
・・・(1)
です。第1近似分数はどうでしょうか。
ということで、(1)式を使うと、
・・・(2)
となります。ちょっとくどいですが、第2近似分数まで求めてみます。
. ((1),(2)より)
ということで、
となります。なにかそれっぽい漸化式が出ましたね。偶然出てきた感じもしますが、この漸化式は一般に成り立ちます。すなわち、第近似分数のは
となります。証明はこの記事ではしません。(次の記事でやるかも)
以上、この漸化式を解くことで連分数から近似分数を得ることができます。試しにの第4近似分数までを求めてみましょう。の連分数展開はでした。
分子 | 分母 | 値 | 誤差 | |
---|---|---|---|---|
1 | 1 | 1 | 約0.41 | |
2*1+1=3 | 2*1 | 1.5 | 約0.11 | |
2*3+1=7 | 2*2+1=5 | 1.4 | 約0.01 | |
2*7+3=17 | 2*5+2=12 | 1.4166... | 約0.002 | |
2*17+7=41 | 2*12+5=29 | 1.4137... | 約0.0004 |
前の記事で書いた41/29が確かにに出てきました。
誤差を見るとすごいですね。どんどん小さくなっています。
今回はこのへんで終わりにしたいと思います。次回は今回省略した証明の話か、最良性の話をできればなと思います。
[2016/2/14 追記]
pythonのMatplotlibで遊ぶついでに誤差をグラフにしてみました。
緑の直線が、青の折れ線が第近似分数の値です。
第4近似分数あたりからほぼ誤差がなくなっていることが視覚的にもわかると思います。
参考:
www.amazon.co.jp