Package hoverball.math
Class Complex
java.lang.Object
hoverball.math.Complex
public final class Complex
extends java.lang.Object
Die Klasse Complex repräsentiert eine komplexe Zahl
der zweidimensionalen komplexen Zahlenebene.
Im Folgenden bedeuten:
a, b, c - komplexe Zahlen
x, y, z - reelle Zahlen (als Koordinaten)
r - reelle Zahl
v - Vektor
c - die komplexe Zahl des Complex-Objekts selbst
Operator Overloading für Groovy, Scala, Kotlin und Jython wird unterstützt.
-
Field Summary
-
Constructor Summary
Constructors Constructor Description Complex()
Erzeugt eine komplexe Zahl mit den Koordinaten (0,0).Complex(double x)
Erzeugt eine komplexe Zahl mit den Koordinaten (x,0).Complex(double x, double y)
Erzeugt eine komplexe Zahl mit den Koordinaten (x,y).Complex(Complex c)
Erzeugt eine komplexe Zahl gleich einer anderen komplexen Zahl.Complex(Vector v)
Erzeugt eine komplexe Zahl aus einem Vektor. -
Method Summary
Modifier and Type Method Description double
abs()
Berechnet den Absolutbetrag [ = | c | ].double
abs2()
Berechnet den Absolutbetrag im Quadrat [ = | c |^2 ].Complex
add(Complex b)
Addiert eine komplexe Zahl [ c = c + b ].static Complex
add(Complex a, Complex b)
Addiert zwei komplexe Zahlen [ = a + b ].double
arg()
Berechnet das Argument [ = <(c) ].Complex
conj()
Bildet die Konjugation [ c = c ].static Complex
conj(Complex c)
Berechnet die Konjugation [ = c ].Complex
div(double r)
Dividiert durch eine reelle Zahl [ c = c / r ].Complex
div(Complex b)
Dividiert durch eine komplexe Zahl [ c = c / b ].static double
dot(Complex a, Complex b)
Berechnet das Skalarprodukt zweier komplexer Zahlen [ = < a, b > ].boolean
equals(double x, double y)
Vergleicht mit einer komplexen Zahl [ c = (x,y) ?boolean
equals(java.lang.Object c)
Vergleicht mit einer komplexen Zahl [ c = c ?static Complex
exp(Complex a)
Berechnet den komplexen Exponentialwert [ = exp a ].static Complex
expi(double y)
Berechnet den komplexen Exponentialwert [ = exp iy ].int
hashCode()
Berechnet den Hash-Code [ =####
].Complex
inv()
Bildet die Kehrzahl [ c = 1 / c ].static Complex
inv(Complex c)
Berechnet die Kehrzahl [ = 1 / c ].Complex
mul(double r)
Multipliziert mit einer reellen Zahl [ c = c r ].Complex
mul(Complex b)
Multipliziert mit einer komplexen Zahl [ c = c b ].static Complex
mul(Complex c, double r)
Multipliziert eine komplexe Zahl mit einer reellen Zahl [ = c r ].static Complex
mul(Complex a, Complex b)
Multipliziert zwei komplexe Zahlen [ = a b ].Complex
neg()
Bildet die Gegenzahl [ c = -c ].static Complex
neg(Complex c)
Berechnet die Gegenzahl [ = -c ].Complex
norm()
Normiert den Absolutbetrag auf eins [ c = c / | c | ].static Complex
norm(Complex c)
Berechnet die Normierung des Absolutbetrages auf eins [ = c / | c | ].Complex
sub(Complex b)
Subtrahiert eine komplexe Zahl [ c = c - b ].static Complex
sub(Complex a, Complex b)
Subtrahiert zwei komplexe Zahlen [ = a - b ].java.lang.String
toString()
String-Repräsentation [ = "..." ].static Complex
vec(double a_z, Complex b)
Berechnet das dreidimensionale Vektorprodukt zweier Vektoren [ = a x b ].static double
vec(Complex a, Complex b)
Berechnet das dreidimensionale Vektorprodukt zweier Vektoren [ = a x b ].boolean
zero()
Testet auf null [ c = 0 ?
-
Field Details
-
format
public static java.text.DecimalFormat formatDecimalFormat-Objekt zur String-Konvertierung.Dieses Objekt wird zur Formatierung aller Objekte dieses Packages benutzt. Voreingestellt ist das Format
0.###
mitLocale.US
. -
x
public final double xx-Koordinate der komplexen Zahl. -
y
public final double yy-Koordinate der komplexen Zahl.
-
-
Constructor Details
-
Complex
public Complex()Erzeugt eine komplexe Zahl mit den Koordinaten (0,0). -
Complex
public Complex(double x, double y)Erzeugt eine komplexe Zahl mit den Koordinaten (x,y).- Parameters:
x
- x-Koordinatey
- y-Koordinate
-
Complex
public Complex(double x)Erzeugt eine komplexe Zahl mit den Koordinaten (x,0).- Parameters:
x
- x-Koordinate
-
Complex
Erzeugt eine komplexe Zahl gleich einer anderen komplexen Zahl.- Parameters:
c
- zu kopierende komplexe Zahl
-
Complex
Erzeugt eine komplexe Zahl aus einem Vektor.Die z-Koordinate des Vektors wird dabei ignoriert.
- Parameters:
v
- Vektor
-
-
Method Details
-
hashCode
public int hashCode()Berechnet den Hash-Code [ =####
].- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- den Hash-Code
-
toString
public java.lang.String toString()String-Repräsentation [ = "..." ].- Overrides:
toString
in classjava.lang.Object
- Returns:
- den String
-
equals
public boolean equals(java.lang.Object c)Vergleicht mit einer komplexen Zahl [ c = c ? ].- Overrides:
equals
in classjava.lang.Object
- Parameters:
c
- komplexe Zahl- Returns:
- die Gleichheit
-
equals
public boolean equals(double x, double y)Vergleicht mit einer komplexen Zahl [ c = (x,y) ? ].- Parameters:
x
- reelle Zahly
- reelle Zahl- Returns:
- die Gleichheit
-
add
Addiert eine komplexe Zahl [ c = c + b ].- Parameters:
b
- komplexe Zahl- Returns:
- this
-
sub
Subtrahiert eine komplexe Zahl [ c = c - b ].- Parameters:
b
- komplexe Zahl- Returns:
- this
-
mul
Multipliziert mit einer reellen Zahl [ c = c r ].- Parameters:
r
- reelle Zahl- Returns:
- this
-
mul
Multipliziert mit einer komplexen Zahl [ c = c b ].- Parameters:
b
- komplexe Zahl- Returns:
- this
-
div
Dividiert durch eine reelle Zahl [ c = c / r ].- Parameters:
r
- reelle Zahl- Returns:
- this
-
div
Dividiert durch eine komplexe Zahl [ c = c / b ].- Parameters:
b
- komplexe Zahl- Returns:
- this
-
inv
Bildet die Kehrzahl [ c = 1 / c ].- Returns:
- this
-
neg
Bildet die Gegenzahl [ c = -c ].- Returns:
- this
-
conj
Bildet die Konjugation [ c = c ].- Returns:
- this
-
zero
public final boolean zero()Testet auf null [ c = 0 ? ].- Returns:
- true, falls diese komplexe Zahl gleich (0,0)
-
arg
public final double arg()Berechnet das Argument [ = <(c) ]. Ist die komplexe Zahl gleich null, liefert diese Funktion den Wert null.- Returns:
- das Argument
-
abs
public final double abs()Berechnet den Absolutbetrag [ = | c | ].- Returns:
- den Absolutbetrag
-
abs2
public final double abs2()Berechnet den Absolutbetrag im Quadrat [ = | c |^2 ].- Returns:
- den Absolutbetrag im Quadrat
-
norm
Normiert den Absolutbetrag auf eins [ c = c / | c | ].- Returns:
- this
-
add
Addiert zwei komplexe Zahlen [ = a + b ].- Parameters:
a
- komplexe Zahlb
- komplexe Zahl- Returns:
- die Summe
-
sub
Subtrahiert zwei komplexe Zahlen [ = a - b ].- Parameters:
a
- komplexe Zahlb
- komplexe Zahl- Returns:
- die Differenz
-
neg
Berechnet die Gegenzahl [ = -c ].- Parameters:
c
- komplexe Zahl- Returns:
- die Gegenzahl
-
inv
Berechnet die Kehrzahl [ = 1 / c ].- Parameters:
c
- komplexe Zahl- Returns:
- die Kehrzahl
-
conj
Berechnet die Konjugation [ = c ].- Parameters:
c
- komplexe Zahl- Returns:
- die Konjugation
-
norm
Berechnet die Normierung des Absolutbetrages auf eins [ = c / | c | ].- Parameters:
c
- komplexe Zahl- Returns:
- die Normierung
-
mul
Multipliziert eine komplexe Zahl mit einer reellen Zahl [ = c r ].- Parameters:
c
- komplexe Zahlr
- reelle Zahl- Returns:
- das Produkt
-
mul
Multipliziert zwei komplexe Zahlen [ = a b ].- Parameters:
a
- komplexe Zahlb
- komplexe Zahl- Returns:
- das Produkt
-
dot
Berechnet das Skalarprodukt zweier komplexer Zahlen [ = < a, b > ].- Parameters:
a
- komplexe Zahlb
- komplexe Zahl- Returns:
- das Skalarprodukt
-
vec
Berechnet das dreidimensionale Vektorprodukt zweier Vektoren [ = a x b ].Formel: (a.x, a.y, 0) x (b.x, b.y, 0) = (0, 0, c.z)
- Parameters:
a
- komplexe Zahlb
- komplexe Zahl- Returns:
- die z-Koordinate des Vektorprodukts
-
vec
Berechnet das dreidimensionale Vektorprodukt zweier Vektoren [ = a x b ].Formel: (0, 0, a.z) x (b.x, b.y, 0) = (c.x, c.y, 0)
- Parameters:
a_z
- reelle Zahlb
- komplexe Zahl- Returns:
- die (x,y)-Koordinaten des Vektorprodukts
-
expi
Berechnet den komplexen Exponentialwert [ = exp iy ].- Parameters:
y
- reelle Zahl- Returns:
- den Exponentialwert
-
exp
Berechnet den komplexen Exponentialwert [ = exp a ].- Parameters:
a
- komplexe Zahl- Returns:
- den Exponentialwert
-