Nächste: Winkelfunktionen, Vorige: Funktionen der Kombinatorik, Nach oben: Mathematische Funktionen [Inhalt][Index]
Standardwert: false
Hat die Optionsvariable %e_to_numlog
den Wert true
, wird ein
Ausdruck mit der Exponentialfunktion exp
der Form %e^(r*log(x))
zu x^r
vereinfacht, wenn r
eine rationale Zahl ist. Ist r
eine ganze Zahl, wird die Vereinfachung von der Optionsvariablen
logsimp
kontrolliert.
Beispiel:
(%i1) exp(1/2*log(x)); log(x) ------ 2 (%o1) %e (%i2) exp(1/2*log(x)), %e_to_numlog:true; (%o2) sqrt(x)
Standardwert: true
Die Optionsvariable %emode
kontrolliert die Vereinfachung von
Ausdrücken mit der Exponentialfunktion exp
der Form
%e^(%pi %i x)
.
Ist das Argument x eine ganze Zahl oder eine rationale Zahl, die ein
Vielfaches von 1/2, 1/3, 1/4 oder 1/6 ist, dann wird der Ausdruck
%e^(%pi %i x)
zu einer reellen oder komplexen Zahl vereinfacht. Für
Gleitkommazahlen wird diese Vereinfachung dann ausgeführt, wenn diese eine
ganze Zahl oder halbzahlige rationale Zahl repräsentieren.
Eine Summe im Exponenten wie zum Beispiel %e^(%pi *%i (x+n))
, wobei
n eine der oben genannten Zahlen und x ein allgemeiner Ausdruck ist,
wird vereinfacht, indem der Faktor %^(%pi %i n)
entsprechend vereinfacht
wird.
Hat %emode
den Wert false
, werden keine speziellen Vereinfachungen
für den Ausdruck %e^(%pi %i x)
vorgenommen.
Beispiele:
(%i1) exp([2*%pi*%i, 1/2*%pi*%i, 0.5*%pi*%i, 0.5b0*%pi*%i]); (%o1) [1, %i, 1.0 %i, 1.0b0 %i] (%i2) exp([1/3*%pi*%i, 1/4*%pi*%i, 1/6*%pi*%i]); sqrt(3) %i 1 %i 1 %i sqrt(3) (%o2) [---------- + -, ------- + -------, -- + -------] 2 2 sqrt(2) sqrt(2) 2 2 (%i3) exp((1/3+x)*%pi*%i); sqrt(3) %i 1 %i %pi x (%o3) (---------- + -) %e 2 2
Standardwert: false
Hat %enumer
den Wert true
, wird die Konstante %e
immer dann
durch ihren nummerischen Wert ersetzt, wenn die Optionsvariable numer
den
Wert true
hat.
Hat %enumer
den Wert false
, wird die Konstante %e
nur dann
durch ihren nummerischen Wert ersetzt, wenn der Exponent von %e^x
zu
einer Gleitkommazahl ausgewertet wird.
Beispiel:
(%i1) %enumer:true; (%o1) true (%i2) exp(x); x (%o2) %e (%i3) exp(x),numer; x (%o3) 2.718281828459045
Ist die Exponentialfunktion. Die Exponentialfunktion exp
wird von Maxima
sofort zu %e^z
vereinfacht und tritt in vereinfachten
Ausdrücken nicht auf. Maxima vereinfacht die Exponentialfunktion daher wie
die allgemeine Exponentiation ^
. Darüberhinaus kennt Maxima
spezielle Regeln für die Vereinfachung der Exponentialfunktion.
Ist das Argument z der Exponentialfunktion eine ganze oder rationale Zahl wird ein vereinfachter Ausdruck zurückgegeben. Ist das Argument z eine reelle oder komplexe Gleitkommazahl wird ein numerisches Ergebnis berechnet.
Folgende Optionsvariablen kontrollieren die Vereinfachung der Exponentialfunktion:
%enumer
Hat die Optionsvariable %enumer
den Wert true
, vereinfacht Maxima
die Eulersche Zahl %e
immer dann zu ihrem numerischen Wert, wenn die
Optionsvariable numer
auch den Wert true
hat.
%emode
Hat die Optionsvariable %emode
den Wert true
, wendet Maxima
Regeln an, um Ausdrücke der Form %e^(x*%i*%pi)
zu vereinfachen.
Der Standardwert von %emode
ist true
. Wenn mit komplexen Zahlen
in der Polarform gerechnet wird, kann es hilfreich sein, die Optionsvariable
%emode
auf den Wert false
zu setzen.
%e_to_numlog
Hat die Optionsvariable %e_to_numlog
den Wert true
, vereinfacht
Maxima einen Ausdruck %e^(r*log(x)
zu x^r
, wobei r
eine rationale Zahl ist. Ist r eine ganze Zahl wird diese Vereinfachung
von der Optionsvariablen logsimp
kontrolliert. Für reelle oder
komplexe Gleitkommazahlen wird diese Vereinfachung nicht ausgeführt.
radexpand
Die Optionsvariable radexpand
kontrolliert die Vereinfachung von
Ausdrücken der Form (%e^a)^b
. Ist a ein reelles Argument
vereinfacht Maxima immer zu einem Ausdruck %e^(a*b)
. Ist a ein
komplexes Argument, wird die Vereinfachung %e^(a*b)
dann ausgeführt,
wenn die Optionsvariable radexpand
den Wert all
hat.
logsimp
Die Optionsvariable logsimp
kontrolliert die Vereinfachung der
Exponentialfunktion für den Fall, dass im Argument expr die
Logarithmusfunktion log
auftritt. Hat die logsimp
den Wert
true
, wird ein Ausdruck %e^(n*log(x)
zu x^n
vereinfacht,
wenn n eine ganze Zahl ist. Mit der Optionsvariablen
%e_to_numlog
wird diese Vereinfachung für eine rationale Zahl n
kontrolliert.
demoivre
Ist eine Optionsvariable und eine Funktion, die auch als Auswertungsschalter
evflag
definiert ist. Hat die Optionsvariable demoivre
den Wert
true
, wird ein Ausdruck %e^(x + %i y)
zu
%e^x (cos(y) + %i sin(y))
vereinfacht. Siehe auch die Optionsvariable
exponentialize
.
Maxima kennt viele spezielle unbestimmte und bestimmte Integrale mit der Exponentialfunktion.
Ist der natürliche Logarithmus zur Basis \(e\). Die Logarithmusfunktion ist für das numerische und symbolische Rechnen geeignet.
Maxima hat keine vordefinierte Logarithmusfunktion zur Basis 10 oder anderen
Basen. Eine einfache Definition ist zum Beispiel
log10(x) := log(x)/log(10)
. Mit dem Kommando load("log10")
kann ein
Paket geladen werden, dass eine dekadische Logarithmusfunktion log10
definiert.
Ist das Argument z der Logarithmusfunktion eine ganze oder rationale Zahl wird ein vereinfachter Ausdruck zurückgegeben. Ist das Argument z eine reelle oder komplexe Gleitkommazahl wird ein numerisches Ergebnis berechnet.
Die folgenden Optionsvariablen kontrollieren die Vereinfachung und Auswertung der Logarithmusfunktion:
logexpand
Hat die Optionsvariable logexpand
den Wert true
, dann wird
log(a^b)
zu b*log(a)
vereinfacht. Hat logexpand
den
Wert all
, wird zusätzlich log(a*b)
zu log(a)+log(b)
vereinfacht. Mit den Wert super
vereinfacht Maxima weiterhin
log(a/b)
zu log(a)-log(b)
, wobei a/b
eine rationale Zahl
ist. log(1/b
wird für eine ganze Zahl b
immer vereinfacht.
Hat die Optionsvariable logexpand
den Wert false
werden alle
obigen Vereinfachungen ausgeschaltet.
logsimp
Hat die Optionsvariable logsimp
den Wert false
, werden
Exponentialfunktionen exp
, die Logarithmusfunktionen im Exponenten
enthalten, nicht vereinfacht.
lognegint
Hat die Optionsvariable lognegint
den Wert true
, wird
log(-n)
zu log(n)+%i*%pi
für positive n
vereinfacht.
%e_to_numlog
Hat die Optionsvariable %e_to_numlog
den Wert true
, wird ein
Ausdruck %e^(r*log(x))
zu x^r
vereinfacht. Dabei sind r
eine rationale Zahl und x
ein beliebiger Ausdruck. Die Funktion
radcan
führt diese Vereinfachung ebenfalls aus.
Die Logarithmusfunktion wird automatisch auf die Elemente von Listen und
Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe
distribute_over
.
Beispiele:
Verschiedene Beispiele mit der Logarithmusfunktion.
(%i1) log(%e); (%o1) 1 (%i2) log(100.0); (%o2) 4.605170185988092 (%i3) log(2.5+%i); (%o3) .3805063771123649 %i + .9905007344332917 (%i4) taylor(log(1+x),x,0,5); 2 3 4 5 x x x x (%o4)/T/ x - -- + -- - -- + -- + . . . 2 3 4 5 (%i5) rectform(log(x+%i*y)); 2 2 log(y + x ) (%o5) ------------ + %i atan2(y, x) 2 (%i6) limit(log(x),x,0,plus); (%o6) minf (%i7) integrate(log(z)^n,z);
- n - 1 (%o7) - gamma_incomplete(n + 1, - log(z)) (- log(z)) n + 1 log(z)
(%i8) laplace(log(t),t,s);
- log(s) - %gamma (%o8) ----------------- s
(%i9) depends(y,x); (%o9) [y(x)] (%i10) ode2(diff(y,x)+log(y)+1,y,x); - 1 (%o10) %e expintegral_e(1, - log(y) - 1) = x + %c
Standardwert: false
Treten bei der unbestimmten Integration Logarithmusfunktionen im Ergebnis auf,
so wird der Betrag der Argumente der Logarithmusfunktionen gebildet, wenn die
Optionsvariable logabs
den Wert true
hat.
Beispiele:
(%i1) logabs:true; (%o1) true (%i2) integrate(1/x,x); (%o2) log(abs(x)) (%i3) integrate(1/(1+x^3),x); 2 x - 1 ! 2 ! atan(-------) log(!x - x + 1!) log(abs(x + 1)) sqrt(3) (%o3) - ----------------- + --------------- + ------------- 6 3 sqrt(3)
Hat die Optionsvariable logarc
den Wert true
, werden inverse
Winkel- und Hyperbelfunktionen durch Logarithmusfunktionen ersetzt. Der
Standardwert von logarc
ist false
.
Die Funktion logarc(expr)
führt diese Ersetzung aus, ohne dass
die Optionsvariable logarc
gesetzt wird.
Beispiele:
(%i1) logarc(asin(x)); 2 (%o1) - %i log(sqrt(1 - x ) + %i x) (%i2) logarc:true; (%o2) true (%i3) asin(x); 2 (%o3) - %i log(sqrt(1 - x ) + %i x)
Standardwert: false
Der Optionsvariablen logconcoeffp
kann eine Aussagefunktion mit einem
Argument zugewiesen werden, die kontrolliert, welche Koeffizienten von
der Funktion logcontract
zusammengezogen werden. Sollen zum Beispiel
Wurzeln generiert werden, kann folgende Aussagefunktion definiert werden:
logconcoeffp:'logconfun$ logconfun(m) := featurep(m,integer) or ratnump(m)$
Das Kommando logcontract(1/2*log(x))
liefert nun das Ergebnis
log(sqrt(x))
.
Der Ausdruck expr wird rekursiv nach Ausdrücken der Form
a1*log(b1) + a2*log(b2) + c
durchsucht. Diese werden zu
log(ratsimp(b1^a1 * b2^a2)) + c
transformiert.
(%i1) 2*(a*log(x) + 2*a*log(y))$ (%i2) logcontract(%); 2 4 (%o2) a log(x y )
Wird die Variable n mit dem Kommando declare(n, integer)
als eine
ganze Zahl deklariert, dann wird logcontract(2*a*n*log(x))
zu
a*log(x^(2*n))
vereinfacht. Die Koeffizienten, die zusammengezogen
werden, sind in diesem Fall die Zahl 2 und die Variable n, welche
die folgende Aussage erfüllen featurep(coeff, integer)
.
Der Nutzer kann kontrollieren, welche Koeffizienten zusammengezogen werden.
Dazu wird der Optionsvariablen logconcoeffp
eine Aussagefunktion mit
einem Argument zugewiesen. Sollen zum Beispiel Wurzeln generiert werden, kann
folgende Definition verwendet: logconcoeffp: 'logconfun$ logconfun(m) :=
featurep(m,integer) or ratnump(m)$
. Dann hat das Kommando
logcontract(1/2*log(x))
das Ergebnis log(sqrt(x))
.
Standardwert: true
Die Optionsvariable logexpand
kontrolliert die Vereinfachung der
Logarithmusfunktion log
.
Hat logexpand
den Wert true
, wird log(a^b)
zu
b*log(a)
vereinfacht. Hat logexpand
den Wert all
, wird
zusätzlich log(a*b)
zu log(a)+log(b)
vereinfacht. Mit dem Wert
super
vereinfacht Maxima weiterhin log(a/b)
zu
log(a)-log(b)
, wobei a/b
eine rationale Zahl ist. log(1/b
wird für eine ganze Zahl b
immer vereinfacht. Hat die Optionsvariable
logexpand
den Wert false
werden alle obigen Vereinfachungen
ausgeschaltet.
Standardwert: false
Hat die Optionsvariable lognegint
den Wert true
, wird
log(-n)
zu log(n)+%i*%pi
für positive n
vereinfacht.
Standardwert: true
Hat die Optionsvariable logsimp
den Wert false
, werden
Exponentialfunktionen exp
, die Logarithmusfunktionen im Exponenten
enthalten, nicht vereinfacht.
Gibt den Hauptwert des komplexen natürlichen Logarithmus im Intervall
-%pi
< carg(x)
<= +%pi
zurück.
Standardwert: true
rootsconmode
kontrolliert das Verhalten der Funktion
rootscontract
. Siehe die Funktion rootscontract
für Details.
Konvertiert Produkte von Wurzeln in Wurzeln von Produkten. Zum Beispiel hat
rootscontract(sqrt(x)*y^(3/2))
das Ergebnis sqrt(x*y^3)
.
Hat die Optionsvariable radexpand
den Wert true
und die
Optionsvariable domain
den Wert real
, das sind die Standardwerte,
wird abs(x)
zu sqrt(x^2)
vereinfacht. Zum Beispiel hat
rootscontract(abs(x) * sqrt(y))
das Ergebnis sqrt(x^2*y)
.
Die Optionsvariable rootsconmode
kontrolliert das Ergebnis
folgendermaßen:
Problem Wert Ergebnis rootsconmode rootscontract x^(1/2)*y^(3/2) false sqrt(x*y^3) x^(1/2)*y^(1/4) false sqrt(x)*y^(1/4) x^(1/2)*y^(1/4) true sqrt(x*sqrt(y)) x^(1/2)*y^(1/3) true sqrt(x)*y^(1/3) x^(1/2)*y^(1/4) all (x^2*y)^(1/4) x^(1/2)*y^(1/3) all (x^3*y^2)^(1/6)
Hat rootsconmode
den Wert false
, kontrahiert rootscontract
nur Faktoren mit rationalen Exponenten, die den gleichen Nenner haben. Hat
rootsconmode
den Wert all
, wird das kleinste gemeinsame Vielfache
des Nenners der Faktoren verwendet, um die Faktoren zusammenzufassen.
Ähnlich wie bei der Funktion logcontract
werden von
rootscontract
die Argumente unter der Wurzel mit der Funktion
ratsimp
vereinfacht.
Beispiele:
(%i1) rootsconmode: false$ (%i2) rootscontract (x^(1/2)*y^(3/2)); 3 (%o2) sqrt(x y ) (%i3) rootscontract (x^(1/2)*y^(1/4)); 1/4 (%o3) sqrt(x) y (%i4) rootsconmode: true$ (%i5) rootscontract (x^(1/2)*y^(1/4)); (%o5) sqrt(x sqrt(y))
(%i6) rootscontract (x^(1/2)*y^(1/3)); 1/3 (%o6) sqrt(x) y
(%i7) rootsconmode: all$ (%i8) rootscontract (x^(1/2)*y^(1/4)); 2 1/4 (%o8) (x y) (%i9) rootscontract (x^(1/2)*y^(1/3)); 3 2 1/6 (%o9) (x y ) (%i10) rootsconmode: false$ (%i11) rootscontract (sqrt(sqrt(x) + sqrt(1 + x)) *sqrt(sqrt(1 + x) - sqrt(x))); (%o11) 1 (%i12) rootsconmode: true$ (%i13) rootscontract (sqrt(5+sqrt(5)) - 5^(1/4)*sqrt(1+sqrt(5))); (%o13) 0
Ist die Wurzelfunktion. Die Wurzelfunktion wird von Maxima sofort zu
x^(1/2)
vereinfacht und tritt in Ausdrücken nicht auf.
Die Wurzelfunktion ist für das numerische und symbolische Rechnen geeignet.
Ist das Argument z der Wurzelfunktion eine Gleitkommazahl, wird ein
numerisches Ergebnis zurückgegeben. Für ganze und rationale Zahlen wird
die Wurzelfunktion vereinfacht. Die numerische Berechnung kann mit den
Optionsvariablen und Auswertungsschaltern numer
und
float
kontrolliert werden.
Hat die Optionsvariable radexpand
den Wert true
, werden die
n-ten Wurzeln von Faktoren unter einer Wurzel aus der Wurzel herausgezogen.
So wird zum Beispiel sqrt(16*x^2)
nur dann zu 4*x
vereinfacht,
wenn radexpand
den Wert true
hat.
Siehe auch die Funktionen rootscontract
und sqrtdenest
für die
Vereinfachung von Ausdrücken, die die Wurzelfunktion enthalten.
Beispiele:
Verschiedene Beispiele mit der Wurzelfunktion.
(%i1) sqrt(4); (%o1) 2 (%i2) sqrt(24); (%o2) 2 sqrt(6) (%i3) sqrt(2.0); (%o3) 1.414213562373095 (%i4) taylor(sqrt(1+x),x,0,5); 2 3 4 5 x x x 5 x 7 x (%o4)/T/ 1 + - - -- + -- - ---- + ---- + . . . 2 8 16 128 256 (%i5) rectform(sqrt(x+%i*y)); 2 2 1/4 atan2(y, x) (%o5) %i (y + x ) sin(-----------) 2 2 2 1/4 atan2(y, x) + (y + x ) cos(-----------) 2 (%i6) integrate(sqrt(t)*(t+1)^-2,t,0,1); %pi - 2 (%o6) ------- 4
Nächste: Winkelfunktionen, Vorige: Funktionen der Kombinatorik, Nach oben: Mathematische Funktionen [Inhalt][Index]