Nächste: Wurzel-, Exponential- und Logarithmusfunktion, Vorige: Funktionen für komplexe Zahlen, Nach oben: Mathematische Funktionen [Inhalt][Index]
Ist der Operator der doppelten Fakultät.
Für eine positive ganze Zahl n
, wird n!!
zu dem Produkt
n (n-2) (n-4) (n-6) ... (n - 2 (k-1))
vereinfacht, wobei k
gleich
floor(n/2)
ist und floor
die größte ganze Zahl als Ergebnis
hat, die kleiner oder gleich n/2
ist.
Für ein Argument n
, das keine ganze positive Zahl ist, gibt n!!
die Substantivform genfact(n, n/2,2)
zurück. Siehe die Funktion
genfact
.
Die Verallgemeinerung der doppelten Fakultät für reelle und komplexe Zahlen
ist als die Funktion double_factorial
implementiert.
Beispiele:
(%i1) [0!!, 1!!, 2!!, 3!!, 4!!, 5!!, 6!!, 7!!, 8!!]; (%o1) [1, 1, 2, 3, 8, 15, 48, 105, 384] (%i2) 1.5!!; (%o2) genfact(1.5, 0, 2) (%i3) x!!; x (%o3) genfact(x, -, 2) 2
Ist der Binominialkoeffizient, der definiert ist als
x! binomial(x, y) = ----------- (x - y)! y!
Die Funktion binomial
ist für das numerische und symbolische Rechnen
geeignet.
Sind die Argumente x oder y ganze Zahlen, wird der
Binominialkoeffizient zu einer ganzen Zahl vereinfacht. Sind die Argumente
x und y reelle oder komplexe Gleitkommazahlen, wird der
Binominialkoeffizient mit der entsprechenden verallgemeinerten Fakultät
berechnet. Siehe auch factorial
und gamma
.
Ist das Argument y oder die Differenz x-y eine ganz Zahl, wird der Binominialkoeffizient zu einem Polynom vereinfacht.
Mit den Funktionen makefact
oder makegamma
werden
Binominialkoeffizienten in einem Ausdruck durch äquivalente Ausdrücke mit
der Fakultät oder der Gammafunktion ersetzt.
Maxima kennt die Ableitung des Binominialkoeffizienten nach den Argumenten x und y.
Beispiele:
(%i1) binomial(11, 7); (%o1) 330 (%i2) binomial(%i, 1.5); (%o2) .3693753994635863 %i - .7573400496142132 (%i3) binomial(x, 3); (x - 2) (x - 1) x (%o3) ----------------- 6 (%i4) binomial(x+3, 3); (x + 1) (x + 2) (x + 3) (%o4) ----------------------- 6 (%i5) makefact(binomial(x,y)); x! (%o5) ----------- (x - y)! y! (%i6) diff(binomial(x,y), y); (%o6) - binomial(x, y) (psi (y + 1) - psi (- y + x + 1)) 0 0
Ist die doppelte Fakultät, die allgemein definiert ist als
2 1/4 (1 - cos(z %pi)) z/2 z (---) 2 gamma(- + 1) %pi 2
Die Funktion double_factorial
ist für das numerische und symbolische
Rechnen geeignet. Ist das Argument z eine ganze Zahl, eine
Gleitkommazahl, eine große Gleitkommazahl oder eine komplexe Gleitkommazahl,
dann wird ein numerisches Ergebnis berechnet. Für eine positive ganze Zahl
ist das Ergebnis gleich dem Ergebnis des Operators der doppelten Fakultät
!!
. Für rationale Zahlen ist das Ergebnis eine Substantivform.
Für negative gerade ganze Zahlen ist die Funktion double_factorial
nicht definiert.
Hat die Optionsvariable factorial_expand
den Wert true
,
vereinfacht Maxima double_factorial
für das Argument n-1
und
für Argumente n+2*k
, wobei k
eine ganze Zahl ist.
Maxima kennt die Ableitung der Funktion double_factorial
.
double_factorial
wird automatisch auf die Elemente von Listen und
Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe
distribute_over
.
Beispiele:
Numerische Ergebnisse für ganze Zahlen, Gleitkommazahlen und komplexen Gleitkommazahlen.
(%i1) double_factorial([-3, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]); (%o1) [- 1, 1, 1, 1, 2, 3, 8, 15, 48, 105, 384, 945, 3840] (%i2) double_factorial([1.5, 1.5b0, 0.5+%i, 0.5b0+%i]); (%o2) [1.380662681753386, 1.380662681753387b0, .4186422526242637 - .7218816624466643 %i, 4.186422526242633b-1 - 7.218816624466641b-1 %i]
Vereinfachungen, wenn die Optionsvariable factorial_expand
den Wert
true
hat.
(%i3) factorial_expand:true; (%o3) true (%i4) double_factorial(n-1); n! (%o4) ------------------- double_factorial(n) (%i5) double_factorial(n+4); (%o5) (n + 2) (n + 4) double_factorial(n) (%i6) double_factorial(n-4);
double_factorial(n) (%o6) ------------------- (n - 2) n
Die Ableitung der Funktion double_factorial
.
(%i7) diff(double_factorial(x), x); 2 %pi log(---) sin(%pi x) %pi x (%o7) (double_factorial(x) (----------------------- + psi (- + 1) 2 0 2 + log(2)))/2
Fasst Faktoren mit Fakultäten im Ausdruck expr zusammen. Zum Beispiel
wird (n+1)*n!
zu (n+1)!
zusammengefasst.
Hat die Optionsvariable sumsplitfact
den Wert false
, wird nach
der Vereinfachung mit factcomb
die Funktion minfactorial
auf den
Ausdruck expr angewendet.
Beispiele:
(%i1) expr: ((n+1)*n!)/(n+2)!; (n + 1) n! (%o1) ---------- (n + 2)! (%i2) factcomb(expr);
(n + 1)! (%o2) -------- (n + 2)!
(%i3) factcomb(expr), sumsplitfact:false; 1 (%o3) ----- n + 2
Die Funktion factorial
ist für das numerische und symbolische Rechnen
der Fakultät geeignet. Der Operator der Fakultät !
, ist identisch
mit der Funktion factorial
.
Für eine ganze Zahl n
, vereinfacht n!
zum Produkt der ganzen
Zahlen von 1 bis einschließlich n
. 0!
vereinfacht zu 1.
Für reelle und komplexe Gleitkommazahlen wird z!
mit der
Verallgemeinerung gamma(z+1)
berechnet. Siehe die Funktion
gamma
. Für eine halbzahlige rationale Zahl n/2
, vereinfacht
(n/2)!
zu einem rationalen Faktor multipliziert mit sqrt(%pi)
.
Die Optionsvariable factlim
enthält die größte Zahl, für die
die Fakultät einer ganzen Zahl numerisch berechnet wird. Ist das Argument
der Fakultät eine rationale Zahl, wird von Maxima die Funktion
gamma
für die numerische Berechnung aufgerufen. In diesem Fall ist
gammalim - 1
der größte Nenner, für den die Fakultät vereinfacht
wird. Siehe gammalim
.
Hat die Optionsvariable factorial_expand
den Wert true
, wird die
Fakultät von Argumenten der Form (n+k)!
oder (n-k)!
vereinfacht,
wobei k
eine ganze Zahl ist.
Mit den Funktionen minfactorial
und factcomb
können Fakultäten
in Ausdrücken vereinfacht werden.
Die Funktion makegamma
ersetzt Fakultäten in einem Ausdruck durch die
Gammafunktion gamma
. Umgekehrt ersetzt die Funktion
makefact
Binomialkoeffizienten und die Gammafunktion in einem Ausdruck
durch Fakultäten.
Maxima kennt die Ableitung der Fakultät und die Grenzwerte der Fakultät für spezielle Werte wie negative ganze Zahlen.
Siehe auch die Gammfunktion gamma
und den Binomialkoeffizienten
binomial
.
Beispiele:
Die Fakultät einer ganzen Zahl wird zu einer exakten Zahl vereinfacht, wenn
das Argument nicht größer als factlim
ist. Die Fakultät für
reelle und komplexe Zahlen wird als Gleitkommazahl berechnet.
(%i1) factlim:10; (%o1) 10 (%i2) [0!, (7/2)!, 8!, 20!]; 105 sqrt(%pi) (%o2) [1, -------------, 40320, 20!] 16 (%i3) [4.77!, (1.0+%i)!]; (%o3) [81.44668037931197, .3430658398165451 %i + .6529654964201663] (%i4) [2.86b0!, (1.0b0+%i)!]; (%o4) [5.046635586910012b0, 3.430658398165454b-1 %i + 6.529654964201667b-1]
Die Fakultät von numerischen Konstanten oder eines konstanten Ausdrucks wird numerisch berechnet, wenn die Konstante oder der Ausdruck zu einer Zahl ausgewertet werden kann.
(%i1) [(%i + 1)!, %pi!, %e!, (cos(1) + sin(1))!]; (%o1) [(%i + 1)!, %pi!, %e!, (sin(1) + cos(1))!] (%i2) ev (%, numer, %enumer); (%o2) [.3430658398165451 %i + .6529654964201663, 7.188082728976031, 4.260820476357003, 1.227580202486819]
Fakultäten werden vereinfacht und nicht ausgewertet. Daher wird die
Fakultät auch dann berechnet, wenn die Auswertung mit dem
Quote-Operator '
unterdrückt ist.
(%i1) '([0!, (7/2)!, 4.77!, 8!, 20!]); 105 sqrt(%pi) (%o1) [1, -------------, 81.44668037931197, 40320, 20!] 16
Maxima kennt die Ableitung der Fakultät.
(%i1) diff(x!, x); (%o1) x! psi (x + 1) 0
Die Optionsvariable factorial_expand
kontrolliert die Expansion und
Vereinfachung von Ausdrücken, die die Fakultät enthalten.
(%i1) (n+1)!/n!,factorial_expand:true; (%o1) n + 1
Standardwert: 100000
Die Optionsvariable factlim
spezifiziert die größte ganze Zahl,
für die die Fakultät einer ganzen Zahl numerisch berechnet wird. Hat
factlim
den Wert -1, wird die Fakultät für jede ganze Zahl
berechnet. Siehe die Funktion factorial
.
Standardwert: false
Die Optionsvariable factorial_expand
kontrolliert die Vereinfachung von
Ausdrücken wie (n+k)!
oder (n-k)!
, wobei k
eine
ganze Zahl ist. Siehe factorial
für ein Beispiel.
Siehe auch die Funktionen minfactorial
und factcomb
für die
Vereinfachung von Ausdrücken mit der Fakultät.
Gibt die verallgemeinerte Fakultät zurück, die als x (x-z) (x - 2 z)
... (x - (y - 1) z)
definiert ist. Ist x eine ganze Zahl, dann
entspricht genfact(x, x, 1)
der Fakultät x!
und
genfact(x, x/2, 2)
der doppelten Fakultät x!!
. Siehe auch die
Funktionen factorial
und double_factorial
sowie die Operatoren
!
und !!
.
Die Funktion minfactorial
vereinfacht Fakultäten factorial
in
dem Ausdruck epxr, die sich um eine ganze Zahl voneinander unterscheiden.
Siehe auch die Funktion factcomb
, um Fakultäten zusammenzufassen,
sowie die Optionsvariable factorial_expand
.
(%i1) n!/(n+2)!; n! (%o1) -------- (n + 2)! (%i2) minfactorial (%); 1 (%o2) --------------- (n + 1) (n + 2)
Standardwert: true
Hat die Optionsvariable sumsplitfact
den Wert false
, wird von
der Funktion factcomb
nach der Zusammenfassung von Fakultäten die
Funktion minfactorial
angewendet. Siehe die Funktion
factcomb
für ein Beispiel.
Nächste: Wurzel-, Exponential- und Logarithmusfunktion, Vorige: Funktionen für komplexe Zahlen, Nach oben: Mathematische Funktionen [Inhalt][Index]