Function LOG

UP


Function LOG

Function LOG

構文

log number &optional base => logarithm

引数と戻り値

number - ゼロではない数
base - 数
logarithm - 数

定義

logは底がbaseのときのnumberの対数を返却します。 もしbaseが指定されなかったとき、 その値は自然対数の底であるeになります。

logは、numberが負の数が与えられたときに 複素数を返却するかもしれません。

(log -1.0) ==  (complex 0.0 (float pi 0.0))

baseがゼロのとき、logはゼロを返却します。

(log 8 2)の結果は、33.0のどちらかになり、実装に依存します。 実装は正確な整数で結果を表すことができるときでさえ、 浮動小数を用いて計算することができます。

ひとつの引数のときの対数関数(自然対数)のブランチカットは、 負の実軸に沿って第2象限へ続きます。 その領域は原点に排他的です。

複素関数の対数の数学的な定義は、 実装がマイナスゼロをサポートするかに関わらず 次のようになります。

(log x) ==  (complex (log (abs x)) (phase x))

したがってひとつの引数の対数関数の範囲は、 複素平面に含まれる数の虚部において、 マイナスゼロがサポートされないときは-pi(含まれない)からpi(含む)、 マイナスゼロがサポートされるときは-pi(含む)からpi(含む)で分岐します。

2つの引数の対数関数は下記のように定義されます。

(log base number)
==  (/ (log number) (log base))

この定義は主な値が正確です。 2つの引数の対数関数の範囲は複素平面全体です。

例文

(log 100 10)
=>  2.0
=>  2
(log 100.0 10) =>  2.0
(log #c(0 1) #c(0 -1))
=>  #C(-1.0 0.0)
OR=>  #C(-1 0)
(log 8.0 2) =>  3.0
(log #c(-16 16) #c(2 2)) =>  3 または #c(3.0 0.0)の近似
                               または 3.0の近似(可能性は低い)

影響

実装

例外

なし。

参考

exp, expt, 12.1.3.3. 浮動小数の代替可能性の規則

備考

なし。


TOP, Github