goo blog サービス終了のお知らせ 

山口屋~活動日誌~

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

インピーダンス 有限長導体 Deri 数値計算 情報落ち 桁落ち Bessel

2022-12-17 13:29:19 | 工学
大地帰路インピーダンスの計算式の1つである、有限長導体のDeriの式では(1)、情報落ちに伴う桁落ちにも注意が必要である。

<例>
sqrt(1+x)-1 でxが小さい場合、
1+x で情報落ちした結果、sqrt(1+x)-1 で桁落ちが発生することがある。
対処として、
sqrt(1+x)-1 = x/(sqrt(1+x)+1)
と変形して計算すれば良い。

(1)雨谷 昭弘, 石原 彰子:有限長平行多導体系インピーダンスと線路定数に関する一検討、電気学会論文誌B、Vol.113, No.8, pp.905-913、1993

また、各種の導体内部インピーダンスの計算式には変形Bessel関数が出現するが、下記のような傾向にあるように思われる。
1次:対象層の境界を引数とした第1種と第2種が出現。(各境界で計算しておいて損はない?)
0次:観測層の場所を引数とした第1種と第2種が分子に出現、対して1次の電流路側境界が分母に出現。

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

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 問題とも呼ばれるとのこと。
空間情報クラブ:オイラーゼータ関数誕生物語