Q's Calc の arctan アルゴリズム
「#Calc 1.1.4 その 7」の続き。
Q's Calc のソースを覗いて、逆正接の計算をどうやっているのか見てみた。逆正接の計算を逆双曲線正接の計算に帰着させているようだが、理屈がよく分からん。
以下はその擬似コード:
- a = ulp
- b = x / (1 + √(1 + x2))
- c = 1
- do {
- c = 2 c / (1 + a)
- d = 2 a b / (1 + b2)
- d = d / (1 + √(1 - d2))
- d = (b + d) / (1 - b d)
- b = d / (1 + √(1 + d2))
- a = 2 √a / (1 + a)
- tan-1(x) = c log((1 + b) / (1 - b)) (= 2 c tanh-1(b))
| 固定リンク

コメント