山口屋~活動日誌~

私生活で主な出来事をピックアップ

調和級数 数値計算 限界 オイラー 定数

2022-12-17 13:28:11 | ソフトウェア開発
調和級数は発散級数である一方、調和交代級数はln2に収束する。オイラーの定数γも無限級数や極限で表現されるうえにln2に関係するというのだからいろいろ不思議なものだ。
西元教善:オイラーの定数γについて-いろいろな表現の仕方-、数研通信、No.74、pp.23-37、2012(→PDF
音と色と数の散歩道:ゴルフの賞金分配率(2a)
完全無欠で荒唐無稽な夢:オイラー定数の数値計算メモ

さて本題は、調和級数は発散級数であるが、コンピュータには表現の限界があり、和の計算をしていくとどこかで頭打ちになるはずだ、というもの。
和の見込みとして次の不等式が成り立つ。ln(n + 1)<第n項までの調和級数の和≦ln(n) + 1
受験の月 学校では教えてくれない受験のための数学・物理・化学:調和級数Σ1/nの発散とオイラー定数γ
Qiita:調和級数などのはなし
凄まじく収束が遅いことがわかるが、コンピュータ上の頭打ちはもっと勉強しないとわからないや。

単精度浮動小数点数で調和級数の加算が頭打ちになるまでやってみた例は紹介されている。
小澤一文:数値計算における誤差の問題について、アンサンブル(分子シミュレーション研究会会誌)、Vol.9、No.38、pp.3-10、2007(→PDF
TwoSumのアルゴリズムで知られる補償付加算による精度改善効果を調和級数で確かめてみると効果はめざましかった。まず、単精度浮動小数点数において、前進加算(補償付)は後退加算(補償無)よりも計算精度が良く、倍精度浮動小数点数での加算(補償無)とほぼ同じ値が得られる。さらに、倍精度浮動小数点数において、補償無(通常)加算では丸め方向により計算結果の差が生じるが、補償付加算では丸め方向による計算結果の差が無くなった。

調和級数を計算するのであれば漸化式が使えるらしく、さらに精度がよいとされる方法(@Kivの解@recursiveの解)もあるらしい。
Wikipedia(英語版):Harmonic number(二段のカッコは二項係数)
調和級数の計算過程にライプニッツの調和三角形との関係性は何か見出せないものだろうか?
Wikipedia:ライプニッツの調和三角形
調和級数はディガンマ関数で表すことができ、ディガンマ関数の数値計算は下記のような考察がある。
柏木雅英:ガンマ関数の精度保証付き計算メモ
調和級数の近似式はClaude Leiboviciから提案されている。

オイラー定数の計算は、ゼータ関数を用いた級数で計算すると収束が速いようだ。
ikuro's-homepage:オイラーの定数γをめぐって(2009年05月21日コラム)
ゼータ関数の計算は、容易かと思いきや収束がとても遅く、Basel 問題とも呼ばれるとのこと。
空間情報クラブ:オイラーゼータ関数誕生物語

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« LU分解 ピボット選択 インデ... | トップ | インピーダンス 有限長導体 D... »
最新の画像もっと見る

コメントを投稿

ソフトウェア開発」カテゴリの最新記事