Trigonometr. Funktionen von hyperbolischen Zahlen?

Gibt es trigonometrische Funktionen (sin(z), tan(z), …) für hyperbolische Zahlen? Bzw. warum gibt es sie dort im Gegensatz zu komplexen und dualen Zahlen nicht? Hyperbolische Zahlen (englisch: „split-complex number“) sind hyperkomplexe Zahlen ähnlich den komplexen Zahlen mit i*i = -1. Nur ist bei hyperbolischen Zahlen E*E = 1 (bei dualen Zahlen ist j*j = 0). Siehe z.B. http://de.wikipedia.org/wiki/Bin%C3%A4re_Zahl

So wie komplexe Zahlen viele Rechnungen vereinfachen und andere erst möglich machen, gilt das gleiche auch für binäre (hyperbolische) und duale Zahlen. Die trigonometrischen Funktionen im Komplexen sind allgemein bekannt (siehe z.B. http://de.wikipedia.org/wiki/Sinus_und_Kosinus#Kompl…). Duale trigonometrische Funktionen sind auch bekannt aber weniger verbreitet (zu finden per Google-Suche „Linear Algebra and Numerical Algorithms Using Dual Numbers“, allerdings ohne hyperbolische trigonomtrische Funktionen wie sinh(z), asinh(z), usw.).

Gibt es nun tatsächlich keinen Sinus oder auch Sinus Hyperbolicus für hyperbolische Zahlen?

Hi Hoechp,

ohne mich jetzt weiter mit hyperbolischen Zahlen auszukennen sehe ich keinen Grund warum man Sinus, Kosinus, etc. nicht definiert sein sollten, wenn man sie als Potenzreihe auffasst. Es gelten natürlich andere Regeln als bei den komplexen Zahlen:

\exp(Ex) = \cosh(x) + E \sinh(x)

\sin(Ex) = E \sin(x) \quad \sinh(Ex) = E \sinh(x)

\cos(Ex) = \cos(x) \quad \cosh(Ex) = \cosh(x)

Der Name lässt ja schon erahnen, dass gerade eine Beziehung zu den hyperbolischen Funktionen naheliegt :smile:

LG

exp(xE) = cosh(x) + sinh(x)E
ist klar - das ist ja die eulersche Identität der hyperbolischen Zahlen.

Das
sin(xE) = sin(x)E * sinh(xE) = sinh(x)E
sin(xE) = cos(x) * cosh(xE) = cosh(x)
ist, glaube ich aber nicht. Das hast du 1:1 von den komplexen Zahlen übernommen, wo doch E*E = 1 etwas ganz anderes ist als i*i = -1, wie die obere Formel schon sagt.

Das Duale sin(a + b * j) = sin(b / a) + a * cos(b / a)j

So wie im Komplexen bei z = a + b * i die Polardarstellung phi = acos(a / r) bei b >= 0 ist (und phi = -acos(a / r) sonst) - mit r = sqrt(a^2 + b^2). Dann kann man schreiben r*e^(phi*i) = z

So gibt es auch einen dualen Winkel (b / a) - hier das Argument das Sinus. die Duale Länge ist einfach a. dann ist a*e^(b / a*j) = z

Die Hyperbolische Länge ist sqrt(a^2 - b^2), der winkel wird über asinh() bestimmt, was aber nur ein viertel des 2D-Kreises abdeckt. Multiplikationen mit 1, -1, E oder -E ermöglichen aber alle hyperbolischen Zahlen ebenfalls als r*d*e^(phi*E) auszudrücken.

Die Lösung müsste jedenfalls vom dualen und komplexen Sinus unterschiedlich sein.

Moment mal.

Gibt es nun tatsächlich keinen Sinus oder auch Sinus Hyperbolicus :für hyperbolische Zahlen?

die hyperbolischen Zahlen bilden einen Ring, also gibt es (zumindest formal) Potenzreihen.

exp(xE) = cosh(x) + sinh(x)E
ist klar - das ist ja die eulersche Identität der hyperbolischen :Zahlen.

und wird durch die Potenzreihe der Exponentialfunktion gezeigt. Der Gedanke Sinus und Kosinus ebenso zu behandeln liegt nahe.

sin(xE) = sin(x)E * sinh(xE) = sinh(x)E
sin(xE) = cos(x) * cosh(xE) = cosh(x)

So war das nicht gemeint (man beachte die Lücke). Es ist

\sin(Ex) = \sum_{n=0}^\infty (-1)^n \frac{(Ex)^{2n+1}}{(2n+1)!} = E \sin(x)

also nicht wie bei den komplexen Zahlen, wo auf diese Weise eine Verbindung zwischen sin und sinh hergestellt wird (die anderen analog).

Die Frage, ob es Sinus & Kosinus gibt, ist denke ich damit klar. Die Frage ist was du damit machen möchtest?

Viele Grüße

p.s. als hyperbolische Länge macht sqrt(|a^2 - b^2|) mehr Sinn.

Zunächst mal vielen Dank für deine schnellen und kompetenten Antworten, ich war mir schon nicht sicher, ob überhaupt jemand das Thema anfasst.

Wofür ich es brauche: Ich habe in der Programmiersprache Java eine Klasse geschrieben um intuitiv mit komplexen Zahlen zu rechnen - bis inklusive solcher Dinge wie das Feststellen, ob eine Zahl eine der (i.d.R.) unendlich vielen Zahlen sind, die z_1^z_2 sind. Also wirklich etwas, was einem auch die komplexesten Rechnungen einfach ermöglicht.

Als ich mich dann mit dualen und binären Zahlen beschäftigt habe, habe ich all diese Funktionen auch dafür implementiert - vieles davon ließ sich nicht im Internet finden und ich musste es selbst berechnen. Von trigonometrischen Funktionen auf den hyperbolischen Zahlen habe ich aber absolut gar nichts im Netz gefunden.

Jedenfalls brauche ich es nur, um es meinem Programm beizubringen, damit es alle erdenklichen Berechnungen, die man mit reellen Zahlen machen kann möglichst auch mit den Unterarten der hyperkomplexen Zahlen vornehmen kann.

  • Komplexe Zahlen sind nötig um z.B. Strom & Spannung oder Widerstand und Impedanz in jeweils einen Wert zusammenzufassen und die Werte so gemeinsam zu berechnen.
    (Elektronik, aber auch Physik allgemein)

  • Binäre Zahlen sind nötig um z.B. (daher heißen sie auch „spacetime numbers“) den Minkowski-Raum elegant zu formulieren. Also für Berechnungen in der allgemeinen Relativitätstheorie
    (Relativität)

  • Duale Zahlen können zwei Punkte zu einer Linie in einem Wert zusammenfassen und gleichzeitig Moment und Drehmoment in alle drei Raumrichtungen und Drehrichtungen berechnen. Anderseits kann man sie aber auch als Wert und etwas wie Abweichungsradius (Imaginärteil) auffassen, also einen Interval. Außerdem sind die dualen Zahlen eines der einfachsten Beispiele eines Superraums (super space = raum mit super-symmetrie) - wichtig für die String-theorie
    (Vektorrechnung und z.B. Statistik, etc.)

Und alle drei hyperkomplexen Grundarten (komplex, binär, dual) können als 2x2-Matrix aufgefasst werden - mehr noch: jede 2x2-Matrix kann eindeutig auf entweder eine komplexe, eine binäre oder eine duale zahl zugeordnet werden - da liegt es nahe zu versuchen sich alle möglichen Rechenoperationen für alle hyperkomplexen Grundalgebren gleichermaßen zur Verfügung zu halten.

PS: Nur um sicher zu gehen: Man darf ja nicht z.B. E^2,3 = E^2 * E^0,3 = 1 * E^0,3 = 1 rechnen. Normalerweise gilt also a^b = a^c * a^(b-c) - bei komplexen oder allgemein hyperkomplexen Basen gilt das aber nicht. Solch eine Rechnung hast du nicht vorgenommen oder?

PPS: das mit dem betrag = sqrt(abs(a^2 - b^2)) stimmt natürlich prinzipiell, aber so wie duale Zahlen einen negativen Betrag haben können, so können genau genommen hyperbolische Zahlen auch einen negativen, ja sogar imaginären oder negativ-imaginären Betrag haben. Bringt man die binäre zahl dann aber in die Form r * d * e^(phi * E) mit r aus R+, d aus {1, -1, E, -E}, phi aus R
dann ist der Faktor r natürlich genau sqrt(abs(a^2 - b^2)) wie du eigentlich richtig sagtest - genau genommen muss man zu diesem betrag aber noch den ‚richtungsfaktor‘ d hinzumultiplizieren oder zumindest betrachten, dass es neben dem hyperbolischen winkel noch eine weitere richtungsangabe gibt.

ich meinte E^1 = (E^2)^(1/2) = 1^(1/2) = 1

das geht nicht, das andere was ich geschrieben hab, was man nicht machen dürfte war unsinn. ^^ mir ist es irgendwie nicht eingefallen was ich meinte. jedenfalls gilt normal a^b = (a^(b/c))^c
und genau das geht nämlich bei komplexen/hyperkomplexen basen nicht. also das multiplizieren von verschachteteln exponenten.

Hey,

so, da bin ich wieder.
Nein ich hab keine verschachtelten Exponenten genutzt, nur die Tatsache dass für eine natürliche Zahl n gilt
E^(2n+1) = (E E)(E E) … E = 1 1 … E = E
und ebenso dass E(2n) = 1.

Wenn ich das richtig sehe hast du keine Fragen zur Darstellung durch die Exponentialfunktion (Hyperbolische Koordinaten)? Also r = sqrt(a^2-b^2) und phi= arctanh(b/a) plus Fallunterscheidungen (b>a, b

Danke nochmal,

besonders für die ausformulierten sin(a + bE) Ausdrücke. Du hast die Frage gut beantwortet - es benötigt wahrscheinlich ‚nur‘ ein bisschen Potenzreihenmanipulation um zu den hyperkomplexen trigonometrischen funktionen zu kommen. ^^ Ich hab in der Uni bei Potenzreihen wohl nicht genug aufgepasst, vor allem kannte ich diese Identität mit den trigonometrischen Grundfunktionen nicht. Es muss wohl richtig sein, aber ich kann es nicht zu 100% nachvollziehen. Ich würde das gern selbst rechnen um nochmal sicherheitshalber zu bestimmen was im dualen fall herauskommt (j * j = 0) und was es dann mit den hyperbolischen trigonometrischen funktionen von dualen und binären zahlen auf sich hat. Da muss ich wohl nochmal ein bisschen was lernen - als Informatiker hat man schon viel Mathe aber komplett Mathematiker/Physiker ist man auch nicht. Vielen Dank jedenfalls für die Mühe, es hat mir schon sehr geholfen!

Hey,

ich bedanke mich ebenfalls, hab schließlich auch was Neues kennengelernt :smile: Natürich wäre mir auch wohler wenn ich Quellen dazu angeben könnte, ich hoffe einfach mal, dass ich keinen Unsinn geschrieben hab…

In den Potenzreihen stehen immer ganzzahlige positive Potenzen von E, j, oder i, also Produkte der Form E^n = E E E … E. Dabei nutzt man die Assoziativität (also dass abc = (ab)c = a(bc) ), um Klammern zu setzen wo man will. So kann man (E E) (E E) … schreiben und wertet innerhalb dieser Klammern aus, also (E E) = 1. Hat man eine gerade Anzahl (2n) kommt 1, bei einer ungerade (2n+1) kommt E heraus, welches man dann aus der Summe ziehen kann.

Im komplexen Fall macht man das genauso, nur ist da i^4 = 1, das heißt man hat mehr Fälle (mit modulo %)
n%4 = 0 -> i^n = 1
n%4 = 1 -> i^n = i
n%4 = 2 -> i^n = -1
n%4 = 3 -> i^n = -i

Der Unterschied zwischen sin, cos und sinh und cosh ist, dass die Vorzeichen der Summanden bei sin, cos alternieren. Daher bekommt man im komplexen Fall die Identität e^(ix) = cos x + i sin x, wobei die Summanden mit geraden Indizes den cos und jene mit ungeraden den sin bilden. Bei den hyperbolischenzahlen dagegen alterniert nichts (entweder 1 oder E , aber nicht -1 und -E), daher ist e^(E x) = cosh(x) + E sinh(x).

Bei den dualen Zahlen müsste es dagegen so aussehen: wenn j^0 = 1, j^1 = j, j^2 = 0 ist, dann ist für n > 1: j^n = 0. Somit wäre
e^(j x ) = 1 + j x
sin(j x) = sinh(j x) = jx
cos(j x) = cosh(j y) = 1
Potenzreiehn mit „dualem“ Argument machen hier generell nicht viel Sinn, da alle höheren Potenzen 0 sind.

Wie dem auch sei, kann man für duale, hyperbolische und komplexe Zahlen eine Exponentialdarstellung angeben, welche mit einem Koordinatensystem im R^2 korrespondiert:

komplex: Polarkoordinaten, welche dadruch charakterisiert sind, dass jeder Punkt in der Ebene auf einem eindeutigen Kreis um den Ursprung mit eindeutigem Winkel zur x-Achse liegt (mit Ausnahme des Ursprungs selbst)
x + i y = sqrt(x^2+y^2) e^(i arctan(y/x) )
mit dem üblichen Radius und Winkel.
Ich spare mir hier die Fallunterscheidungen für den arctan :smile:

hyperbolisch: hyperbolische Koordinaten, welche dadruch charakterisiert sind, dass jeder Punkt in der Ebene auf einer eindeutigen Hyperbel liegt (mit Ausnahme der (x, y) für die |x| = |y|)
x + E y = sqrt(x^2-y^2) e^(E arctanh(y/x) )
dabei ist sqrt(x^2-y^2) der Schnittpunkt der Hyperbel mit der x-Achse (bzw. y-Achse wenn y>x) und arctanh(y/x) der „Winkel“ also die Position auf der Hyperbel.

dual: homogene Koordinaten, welche dadurch charakterisiert werden, dass jeder Punkt in der Ebene auf einer eindeutigen Geraden durch den Ursprung liegt (mit Ausnahme des Ursprung selbst)
x + j y = x e^(j y/x)
dabei ist y/x die Steigung der Geraden und x die Position auf dieser. Werden im Übrigen auch verwendet um Möbiustransformationen als Matrizen dazustellen.

Allgemein kann man sagen, dass durch die Exponentialfunktion in den verschiedenen Zahlensystemen mithilfe einer eulerschen Identität eine Parametrisieung von Kreis, Hyperbel oder Gerade gegeben ist.

Viele Grüße

Genau, das ist alles richtig. Die Umwandelung in eulersche Darstellung und zurück habe ich auch schon programmiert (bei binären Zahlen gibt es noch die Diagonalform, die auch nützlich sein kann).

Was eine binäre Zahl hoch eine andere ist und wo das undefiniert ist habe ich auch programmiert - das gleiche für den dualen Fall.

So wie (-1)^e undefiniert ist, kann man auch keine binäre Zahl die nicht auf der rechten Seite der nicht konjugierten Normalhyperbel liegt hoch einen Wert der nicht aus Q ist nehmen. Und bei dualen Zahlen kann man wie im Reellen einfach auch keine (reell-)negative Basis hoch einen Exponenten der nicht aus Q ist nehmen.

Es gibt auch mehrere Wurzeln - die gibt es im Reellen ja schon manchmal doppelt (bei ganzzahligen Wurzeln). Im Dualen ist es genauso und im Binären gibt es entweder eine oder vier Wurzeln.

Ich muss mich bald nochmal an die restlichen trigonometrischen Funktionen setzen und die Potenzreihenentwicklung der reellen trig. Funktionen als Herleitung der hyperkomplexen trig. Funktionen verstehen. ^^

Außer den trig. Funktionen hab ich eigentlich alles und ich Frage mich schon ob ich das Programm als nächstes auf die verschiedenen hyperkomplexen Quaternionen erweitere - das wäre ja wahrscheinlich keine große Sache wenn die komplexen, dualen und binären Operationen alle schon definiert sind. Und mal ein kleines Programm schreiben was mehr als nur die komplexen Zahlen nutzt wär ja auch mal was. :smile:

ich habe auch gedacht, es müsste das duale sin(xj) = xj sein und cos(xj) = 1

denn komplex: e^(xi) = cos(x) + sin(x)i
binär: e^(xE) = cosh(x) + sinh(x)E
dual: e^(xj) = 1 + xj

wobei komplex: cos(xi) = cosh(x), sin(xi) = sinh(x)i
binär: cos(xE) = cos(x), sin(xE) = sin(x)E
dual: cos(xj) = 1, sin(xj) = xj

damit ergäben sich sin/cos der komplexen/binären zahlen von der jeweils anderen exponentialdarstellung und die dualen aus der eigenen… Und da das duale j*j=0 eng mit 0 zusammenhängt, sähe die Formel gar nicht so abwegig aus…

schon komisch. aber du hast ja das selbe raus, also muss es wohl erst recht stimmen. ^^

Danke für die Hilfe, ich habe jetzt alles hingekiegt was ich in dem Zusammenhang wollte. Alle trigonometrischen Funktionen ob hyperbolisch oder invers oder nicht für komplexe, hyperbolische und duale Zahlen sind programmiert und getestet. :smile: