Next: Trigonometric Functions, Previous: Combinatorial Functions, Up: Mathematical Functions [Contents][Index]
デフォルト値: false
trueの時、
rをある有理数、xをある式とすると、
%e^(r*log(x))はx^rに整理されます。
radcanコマンドもこの変換を行い、その上この同類のさらに複雑な変換をすることに注意すべきです。
logcontractコマンドはlogを含む式を「短縮」します。
デフォルト値: true
%emodeがtrueの時、
%e^(%pi %i x)は以下のように整理されます。
もしxが浮動小数点、整数、もしくは1/2, 1/3, 1/4, 1/6の整数倍なら、
%e^(%pi %i x)はcos (%pi x) + %i sin (%pi x)に整理された後、
さらに整理されます。
他の数値xに関して、
%e^(%pi %i x)は、%e^(%pi %i y)に整理されます。
ここでyはx - 2 k(kはabs(y) < 1が成り立つような整数)です。
%emodeがfalseの時には、
%e^(%pi %i x)の特別な整理は実行されません。
デフォルト値: false
%enumerがtrueの時、
numerがtrueの時はいつでも、
%eは数値2.718...に置き換えられます。
%enumerがfalseの時、
%e^xの指数が数に評価される時だけ、
この代入が実行されます。
指数関数を表します。
入力にあるexp (x)のインスタンスは、%e^xに整理されます;
expは整理された式の中には現れません。
もしdemoivreがtrueで、かつ、
bが%iを含まないなら、
%e^(a + b %i)は%e^(a (cos(b) + %i sin(b)))に整理されます。
demoivreを参照してください。
%emodeがtrueの時、
%e^(%pi %i x)は整理されます。
%emodeを参照してください。
%enumerがtrueの時、
numerがtrueの時にはいつでも
%eは2.718...に置き換えれます。
%enumerを参照してください。
次数s、引数zの多重対数関数を表します。 これは、以下の無限級数で定義されます。
                                 inf
                                 ====   k
                                 \     z
                        Li (z) =  >    --
                          s      /      s
                                 ====  k
                                 k = 1
li [1]は、- log (1 - z)です。
li [2]とli [3]は、それぞれ、dilogarithm関数、trilogarithm関数です。
次数が1の時、多重対数関数は- log (1 - z)に整理され、
もしzが実数もしくは複素数の浮動小数点数、もしくは、numer評価フラグが有効なら、さらに数値に整理されます。
次数が2もしくは3の時、
もしzが実数の浮動小数点数、もしくはnumer評価フラグが有効なら、
多重対数関数は数値に整理されます。
例:
(%i1) assume (x > 0);
(%o1)                        [x > 0]
(%i2) integrate ((log (1 - t)) / t, t, 0, x);
(%o2)                       - li (x)
                                2
(%i3) li [2] (7);
(%o3)                        li (7)
                               2
(%i4) li [2] (7), numer;
(%o4)        1.24827317833392 - 6.113257021832577 %i
(%i5) li [3] (7);
(%o5)                        li (7)
                               3
(%i6) li [2] (7), numer;
(%o6)        1.24827317833392 - 6.113257021832577 %i
(%i7) L : makelist (i / 4.0, i, 0, 8);
(%o7)   [0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0]
(%i8) map (lambda ([x], li [2] (x)), L);
(%o8) [0, .2676526384986274, .5822405249432515, .9784693966661848, 1.64493407, 2.190177004178597 - .7010261407036192 %i, 2.374395264042415 - 1.273806203464065 %i, 2.448686757245154 - 1.758084846201883 %i, 2.467401098097648 - 2.177586087815347 %i]
(%i9) map (lambda ([x], li [3] (x)), L); (%o9) [0, .2584613953442624, 0.537213192678042, .8444258046482203, 1.2020569, 1.642866878950322 - .07821473130035025 %i, 2.060877505514697 - .2582419849982037 %i, 2.433418896388322 - .4919260182322965 %i, 2.762071904015935 - .7546938285978846 %i]
xの自然対数(基数eの対数)を表します。
Maximaは、基数10や他の基数の対数の組み込み関数を持ちません。
log10(x) := log(x) / log(10)は、役立つ定義です。
対数の整理と評価は、いくつかのグローバルフラグによって管理されます:
logexpandlog(a^b)をb*log(a)にします。
もしallに設定されているなら、
log(a*b)もlog(a)+log(b)に整理されます。
もしsuperに設定されているなら,
有理数a/bただしa#1についてlog(a/b)もlog(a)-log(b)に整理されます。
(整数bに関してlog(1/b)はいつも整理されます。)
もしfalseに設定されているなら、
これらのすべての整理は止められます。
logsimpもしfalseなら、
%eは、logを含む累乗へ整理がなされます。
lognumerもしtrueなら、
引数は、logの計算の前に絶対値に変換されます。
もしnumerもtrueなら、
logの引数に負の整数を与えたとき、
引数は、logの計算の前に絶対値に変換されます。
lognegintもしtrueなら、正の整数nに対して規則
log(-n) -> log(n)+%i*%pi
が実装されます。
%e_to_numlogtrueの時、
rをある有理数、xをある式とすると、
式%e^(r*log(x))はx^rに整理されます。
radcanコマンドもこの変換を行い、その上この同類のさらに複雑な変換をすることに注意すべきです。
logcontractコマンドはlogを含む式を「短縮」します。
デフォルト値: false
例えばintegrate(1/x,x)のように、logが生成される不定積分を実行する時、
もしlogabsがtrueなら
もしlogabsがfalseなら
答えは、log(...)の形で与えられます。
定積分については、
終端での不定積分の「評価」がしばしば必要になるので、logabs:true設定が使われます。
グローバル変数logarcがtrueの時、
逆円関数や逆双曲線関数は、同値の対数関数に置き換えられます。
logarcのデフォルト値はfalseです。
関数logarc(expr)は、
グローバル変数logarcを設定することなしに、式exprに対して上記置き換えを実行します。
デフォルト値: false
logcontractを使った時、どの係数が短縮されるかを制御します。
引数1つの述語論理関数の名前に設定することができます。
例えば、もしSQRTを生成したいなら、
logconcoeffp:'logconfun$
logconfun(m):=featurep(m,integer) or ratnump(m)$を実行できます。
すると、
logcontract(1/2*log(x));はlog(sqrt(x))を与えるでしょう。
形式a1*log(b1) + a2*log(b2) + cの部分式を
log(ratsimp(b1^a1 * b2^a2)) + cに変換しながら、
再帰的に式exprを走査します。
(%i1) 2*(a*log(x) + 2*a*log(y))$
(%i2) logcontract(%);
                                 2  4
(%o2)                     a log(x  y )
declare(n,integer);を実行すると、
logcontract(2*a*n*log(x));は、a*log(x^(2*n))に整理されます。
この方法で「短縮」される係数は、ここで2やnに当たるもので、featurep(coeff,integer)を満たします。
ユーザーは、
オプションlogconcoeffpを引数1つの述語論理関数名に設定することで、
どの係数を短縮するか制御できます。
例えば、もしSQRTを生成したいなら、
logconcoeffp:'logconfun$
logconfun(m):=featurep(m,integer) or ratnump(m)$を実行できます。
すると、
logcontract(1/2*log(x));はlog(sqrt(x))を与えるでしょう。
デフォルト値: false
もしtrueなら、
log(a^b)がb*log(a)になるようにします。
もしallに設定されているなら、
log(a*b)もlog(a)+log(b)に整理されます。
もしsuperに設定されているなら,
有理数a/bただしa#1についてlog(a/b)もlog(a)-log(b)に整理されます。
(整数bに関してlog(1/b)はいつも整理されます。)
もしfalseに設定されているなら、
これらのすべての整理は止められます。
デフォルト値: false
もしtrueなら、正の整数nに対して規則
log(-n) -> log(n)+%i*%pi
が実装されます。
デフォルト値: false
もしtrueなら、
引数は、logの計算の前に絶対値に変換されます。
もしnumerもtrueなら、
logの引数に負の整数を与えたとき、
引数は、logの計算の前に絶対値に変換されます。
デフォルト値: true
もしfalseなら、
%eは、logを含む累乗へ整理がなされます。
-%pi < carg(x) <= +%piを虚部係数とする複素数値の自然対数の主値を表します。
xの平方根。
内部的にはx^(1/2)で表現されます。
rootscontractも参照してください。
radexpandがtrueなら、nのべき乗となる積の因子のn番目の根を
累乗根の外部に押し出すようにします。
例えば、
radexpandがtrueの時だけ、sqrt(16*x^2)は4*xになります。
Next: Trigonometric Functions, Previous: Combinatorial Functions, Up: Mathematical Functions [Contents][Index]