Next: Funktionen der Kombinatorik, Previous: Funktionen für Zahlen, Up: Mathematische Funktionen [Contents][Index]

### 10.2 Funktionen für komplexe Zahlen

Funktion: cabs (expr)

  Berechnet den Betrag eines komplexen Ausdrucks expr. Im Unterschied zu der Funktion `abs`, zerlegt die Funktion `cabs` einen komplexen Ausdruck immer in einen Realteil und Imaginärteil, um den komplexen Betrag zu berechnen. Sind x und y zwei reelle Variablen oder Ausdrücke, berechnet die Funktion `cabs` den Betrag des komplexen Ausdrucks `x + %i*y` als:

                                 2    2
                           sqrt(y  + x )

  Die Funktion `cabs` nutzt Symmetrieeigenschaften und implementierte Eigenschaften komplexer Funktionen, um den Betrag eines Ausdrucks zu berechnen. Sind solche Eigenschaften für eine Funktion vorhanden, können diese mit der Funktion `properties` angezeigt werden. Eigenschaften, die das Ergebnis der Funktion `cabs` bestimmen, sind: `mirror symmetry`, `conjugate function` und `complex characteristic`.

  `cabs` ist eine Verbfunktion, die nicht für das symbolische Rechnen geeignet ist. Für das symbolische Rechnen wie der Integration oder der Ableitung von Ausdrücken mit der Betragsfunktion muss die Funktion `abs` verwendet werden.

  Das Ergebnis der Funktion `cabs` kann die Betragsfunktion `abs` und den Arkustangens `atan2` enthalten.

  `cabs` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet.

  Siehe auch die Funktionen `rectform`, `realpart`, `imagpart`, `carg`, `conjugate`, und `polarform` für das Rechnen mit komplexen Zahlen.

  Beispiele:

  Zwei Beispiele mit der Wurzelfunktion `sqrt` und der Sinusfunktion `sin`.

      (%i1) cabs(sqrt(1+%i*x));
                                   2     1/4
      (%o1)                      (x  + 1)
      (%i2) cabs(sin(x+%i*y));
                          2        2         2        2
      (%o2)       sqrt(cos (x) sinh (y) + sin (x) cosh (y))

  Die Funktion `erf` hat Spiegelsymmetrie, die hier für die Berechnung des komplexen Betrages angewendet wird.

      (%i3) cabs(erf(x+%i*y));

                                                2
                 (erf(%i y + x) - erf(%i y - x))
      (%o3) sqrt(--------------------------------
                                4
                                                                     2
                                      (erf(%i y + x) + erf(%i y - x))
                                    - --------------------------------)
                                                     4

  Maxima kennt komplexe Eigenschaften der Besselfunktionen, um den komplexen Betrag zu vereinfachen. Dies ist ein Beispiel für die Besselfunktion `bessel_j`.

      (%i4) cabs(bessel_j(1,%i));
      (%o4)                 abs(bessel_j(1, %i))

Funktion: carg (expr)

  Gibt das komplexe Argument des Ausdrucks expr zurück. Das komplexe Argument ist ein Winkel `theta` im Intervall `(-%pi, %pi)` derart, dass expr = `r exp (theta %i)` gilt, wobei `r` den Betrag des komplexen Ausdrucks expr bezeichnet. Das ist die Polarform des Ausdrucks, wie sie auch von der Funktion `polarform` zurückgegeben wird. Der Betrag des komplexen Ausdrucks kann mit der Funktion `cabs` berechnet werden.

  Das Ergebnis der Funktion `carg` kann die Funktion `atan2` enthalten.

  `carg` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Die Funktion `carg` ist eine Verbfunktion, mit der nicht symbolisch gerechnet werden kann.

  Siehe auch die Funktionen `rectform`, `realpart` und `imagpart` sowie die Funktionen `cabs` und `conjugate`.

  Beispiele:

      (%i1) carg (1);
      (%o1)                           0
      (%i2) carg (1 + %i);

                                     %pi
      (%o2)                          ---
                                      4

      (%i3) carg (exp (%i));
      (%o3)                           1

      (%i4) carg (exp (3/2 * %pi * %i));
                                      %pi
      (%o4)                         - ---
                                       2
      (%i5) carg(exp(x+%i*y));
      (%o5)                atan2(sin(y), cos(y))

      (%i6) carg(sqrt(x+%i*y));
                                atan2(y, x)
      (%o6)                     -----------
                                     2
      (%i7) carg(sqrt(1+%i*y));
                                  atan(y)
      (%o7)                       -------
                                     2

Funktion: conjugate (expr)

  Gibt den konjugiert komplexen Wert des Ausdrucks expr zurück. Sind x und y reelle Variablen oder Ausdrücke, dann hat der Ausdruck `x + %i*y` das Ergebnis `x - %i*y`. Die Funktion `conjugate` ist für numerische und symbolische Rechnungen geeignet.

  Maxima kennt Regeln, um den konjugierten Wert für Summen, Produkte und Quotienten von komplexen Ausdrücken zu vereinfachen. Weiterhin kennt Maxima Symmetrieeigenschaften und komplexe Eigenschaften von Funktionen, um den konjugierten Wert mit diesen Funktionen zu vereinfachen. Sind solche Eigenschaften für eine Funktion vorhanden, können diese mit der Funktion `properties` angezeigt werden. Eigenschaften, die das Ergebnis der Funktion `conjugate` bestimmen, sind: `mirror symmetry`, `conjugate function` und `complex characteristic`.

  `conjugate` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Für das Rechnen mit komplexen Ausdrücken siehe auch die Funktionen `cabs` und `carg` sowie `rectform` und `polarform`.

  Beispiele:

  Beispiele mit reellen, imaginären und komplexen Variablen.

      (%i1) declare ([x, y], real, [z1, z2], complex, j, imaginary);
      (%o1)                         done
      (%i2) conjugate(x + %i*y);
      (%o2)                       x - %i y
      (%i3) conjugate(z1*z2);
      (%o3)              conjugate(z1) conjugate(z2)
      (%i4) conjugate(j/z2);
                                       j
      (%o4)                    - -------------
                                 conjugate(z2)

  Im Folgenden nutzt Maxima Symmetrieeigenschaften, um den konjugiert komplexen Wert der Funktionen `gamma` und `sin` zu berechnen. Die Logarithmusfunktion `log` hat Spiegelsymmetrie, wenn das Argument einen positiven Realteil hat.

      (%i5) conjugate(gamma(x+%i*y));
      (%o5)                    gamma(x - %i y)
      (%i6) conjugate(sin(x+%i*y));
      (%o6)                    - sin(%i y - x)
      (%i7) conjugate(log(x+%i*y));
      (%o7)               conjugate(log(%i y + x))
      (%i8) conjugate(log(1+%i*y));
      (%o8)                     log(1 - %i y)

Funktion: imagpart (expr)

  Gibt den Imaginärteil des Ausrucks expr zurück. Intern berechnet Maxima den Imaginärteil mit der Funktion `rectform`, die einen Ausdruck in den Realteil und in den Imaginärteil zerlegt. Daher treffen die Ausführungen zu `rectform` auch auf die Funktion `imagpart` zu.

  Wie die Funktion `rectform` ist auch die Funktion `imagpart` eine Verbfunktion, mit der nicht symbolisch gerechnet werden kann.

  `imagpart` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Mit der Funktion `realpart` wird der Realteil eines Ausdrucks berechnet.

  Siehe auch die Funktionen `cabs`, `carg` und `conjugate` für das Rechnen mit komplexen Zahlen. Mit der Funktion `polarform` kann ein komplexer Ausdruck in die Polarform gebracht werden.

  Beispiele:

  Für weitere Erläuterungen dieser Beispiele siehe auch die Funktion `rectform`.

      (%i1) imagpart((2-%i)/(1-%i));
                                      1
      (%o1)                           -
                                      2
      (%i2) imagpart(sin(x+%i*y));
      (%o2)                    cos(x) sinh(y)
      (%i3) imagpart(gamma(x+%i*y));
                   %i (gamma(x - %i y) - gamma(%i y + x))
      (%o3)        --------------------------------------
                                     2
      (%i4) imagpart(bessel_j(1,%i));
      (%o4)                    bessel_j(1, %i)

Funktion: polarform (expr)

  Gibt den Ausdruck expr in der Polarform `r %e^(%i theta)` zurück. `r` ist der Betrag des komplexen Ausdrucks, wie er auch mit der Funktion `cabs` berechnet werden kann. `theta` ist das Argument des komplexen Ausdrucks, das mit der Funktion `carg` berechnet werden kann.

  Maxima kennt komplexe Eigenschaften von Funktionen, die bei der Berechnung der Polarform angewendet werden. Siehe die Funktion `cabs` für weitere Erläuterungen.

  Wenn mit komplexen Ausdrücken in der Polarform gerechnet werden soll, ist es hilfreich die Optionsvariable `%emode` auf den Wert `false` zu setzen. Damit wird verhindert, dass Maxima komplexe Ausdrücke mit der Exponentialfunktion `exp` automatisch in die Standardform vereinfacht.

  `polarform` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Die Funktion `polarform` ist eine Verbfunktion, mit der nicht symbolisch gerechnet werden kann.

  Siehe auch die Funktionen `cabs`, `carg` und `conjugate` für das Rechnen mit komplexen Zahlen. Mit der Funktion `rectform` kann ein komplexer Ausdruck in die Standardform gebracht werden.

  Beispiele:

  Die allgemeine Polarform eines komplexen Ausdrucks. Die Variablen x und y werden von Maxima als reell angenommen.

      (%i1) polarform(x+%i*y);

                             2    2    %i atan2(y, x)
      (%o1)            sqrt(y  + x ) %e

  Die Polarform einer komplexen Zahl und eines Ausdrucks mit einer reellen Variablen x.

      (%i2) polarform(4/5+3*%i/5);
                                 %i atan(3/4)
      (%o2)                    %e
      (%i3) polarform(sqrt(1+%i*x));
                                        %i atan(x)
                                        ----------
                            2     1/4       2
      (%o3)               (x  + 1)    %e

  Wenn in der Polarform gerechnet werden soll, ist es hilfreich die Optionsvariable `%emode` auf den Wert `false` zu setzen. Damit wird verhindert, dass Maxima komplexe Ausdrücke mit der Exponentialfunktion `exp` automatisch in eine Standardform vereinfacht.

      (%i4) z:polarform(1+%i);
                                        %i %pi
                                        ------
                                          4
      (%o4)                   sqrt(2) %e
      (%i5) z^3;
                           3/2    %i         1
      (%o5)               2    (------- - -------)
                                sqrt(2)   sqrt(2)
      (%i6) %emode:false;
      (%o6)                         false
      (%i7) z^3;
                                      3 %i %pi
                                      --------
                                3/2      4
      (%o7)                    2    %e

Funktion: realpart (expr)

  Gibt den Realteil des Ausdrucks expr zurück. Intern berechnet Maxima den Realteil mit der Funktion `rectform`, die einen Ausdruck in den Realteil und in den Imaginärteil zerlegt. Daher treffen die Ausführungen zu `rectform` auch auf die Funktion `realpart` zu.

  Wie die Funktion `rectform` ist auch die Funktion `realpart` eine Verbfunktion, mit der nicht symbolisch gerechnet werden kann.

  `realpart` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Mit der Funktion `imagpart` wird der Imaginärteil eines Ausdrucks berechnet.

  Siehe auch die Funktionen `cabs`, `carg` und `conjugate` für das Rechnen mit komplexen Zahlen. Mit der Funktion `polarform` kann ein komplexer Ausdruck in die Polarform gebracht werden.

  Beispiele:

  Für weitere Erläuterungen dieser Beispiele siehe auch die Funktion `rectform`.

      (%i1) realpart((2-%i)/(1-%i));
                                      3
      (%o1)                           -
                                      2
      (%i2) realpart(sin(x+%i*y));
      (%o2)                    sin(x) cosh(y)
      (%i3) realpart(gamma(x+%i*y));
                      gamma(%i y + x) + gamma(x - %i y)
      (%o3)           ---------------------------------
                                      2
      (%i4) realpart(bessel_j(1,%i));
      (%o4)                           0

Funktion: rectform (expr)

  Zerlegt den Ausdruck expr in den Realteil `a` und den Imaginärteil `b` und gibt den komplexen Ausdruck in der Standardform `a + b %i` zurück.

  Die Funktion `rectform` nutzt Symmetrieeigenschaften und implementierte Eigenschaften komplexer Funktionen, um den Realteil und Imaginärteil eines komplexen Ausdrucks zu berechnen. Sind solche Eigenschaften für eine Funktion vorhanden, können diese mit der Funktion `properties` angezeigt werden. Eigenschaften, die das Ergebnis der Funktion `rectform` bestimmen, sind: `mirror symmetry`, `conjugate function` und `complex characteristic`.

  `rectform` ist eine Verbfunktion, die nicht für das symbolische Rechnen geeignet ist.

  `rectform` wird automatisch auf die Elemente von Listen und Matrizen sowie auf die beiden Seiten von Gleichungen angewendet. Siehe `distribute_over`.

  Die Funktionen `realpart` und `imagpart` geben jeweils allein den Realteil und den Imaginärteil eines Ausdrucks zurück. Um einen Ausdruck in die Polarform zu bringen, kann die Funktion `polarform` verwendet werden.

  Siehe auch die Funktionen `cabs`, `carg` und `conjugate` für das Rechnen mit komplexen Zahlen.

  Beispiele:

  Zerlegung eines komplexen Ausdrucks und der Sinusfunktion `sin` in den Realteil und Imaginärteil. Maxima kennt komplexe Eigenschaften der trigonometrischen Funktionen, um den Realteil und den Imaginärteil zu bestimmen.

      (%i1) rectform((2-%i)/(1-%i));

                                   %i   3
      (%o1)                        -- + -
                                   2    2

      (%i2) rectform(sin(x+%i*y));
      (%o2)          %i cos(x) sinh(y) + sin(x) cosh(y)

  Bei der Zerlegung in einen Realteil und einen Imaginärteil nutzt Maxima die Spiegelsymmetrie der Gammfunktion `gamma`. Die Eigenschaft der Spiegelsymmetrie wird mit der Funktion `properties` angezeigt, der Eintrag lautet `mirror symmetry`.

      (%i3) properties(gamma);
      (%o3)    [mirror symmetry, noun, rule, gradef, transfun]

      (%i4) rectform(gamma(x+%i*y));
            gamma(%i y + x) + gamma(x - %i y)
      (%o4) ---------------------------------
                            2
                                      gamma(x - %i y) - gamma(%i y + x)
                                    - ---------------------------------
                                                      2

  Maxima kennt komplexe Eigenschaften der Besselfunktionen. Die Besselfunktion `bessel_j` ist für eine ganzzahlige Ordnung und einem imaginären Argument rein imaginär.

      (%i5) rectform(bessel_j(1,%i));
      (%o5)                  %i bessel_j(1, %i)

Next: Funktionen der Kombinatorik, Previous: Funktionen für Zahlen, Up: Mathematische Funktionen [Contents][Index]