- 51 名前:デフォルトの名無しさん mailto:sage [04/09/15 19:54:37]
- 前スレの最初の話題がそのlogの計算みたいだよ。 過去ログ見えないなら
3 名前:1 投稿日:2001/08/07(火) 11:28 早速だけど、 非力なCPUで対数を計算させたいのです。 log(a)を求めるのに、a=b*2^n として bを0.5〜の範囲に調整し x = 1-b として(xは0〜0.5の範囲) ln(b) = -(x+x^2/2+x^3/3+x^3/4+x^5/5+x^6/6+x^7/7) さらに高速なのは x=(1-b)/(1+b) として(xは0〜0.333の範囲) ln(b) = -2*(x+x^3/3+x^5/5+x^7/7+x^7/9) log(b) =-0.86859*(x+x^3/3+x^5/5+x^7/7+x^7/9) 6 名前:デフォルトの名無しさん 投稿日:2001/08/07(火) 14:05 >>3 除算がそれほど苦じゃないなら 0.5〜1にした後で √0.5以下なら√0.5で割ってから級数展開すれば収束が早くなるよ 後でlog(√0.5)を足せばいい。 あるいは平方根(lこれはニュートン法3回程度で十分)出してから 級数展開してもいいし 10 名前:1 投稿日:2001/08/07(火) 18:55 log(a)を求める方法ですが、a=b*2^n として bを0.5〜1の範囲に調整し log(a)= -0.933*b*b + 2.775*b -1.8437 + log(2)*n で求める精度が出ました
|

|