Zum Inhalt springen

Arctan2

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 18. Februar 2017 um 18:24 Uhr durch Nomen4Omen (Diskussion | Beiträge) (Genauigkeitskontrolle: andere Benennung). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Vorlage:Kleinbuchstaben Die zyklometrische Funktion atan2, auch arctan2, gehört wie die Arkustangensfunktion, von der sie abstammt, zu den Umkehrfunktionen der Tangensfunktion, die ihrerseits eine trigonometrische (und periodische) Funktion ist.

Sie behebt ein Defizit des Arkustangens, der ein einziges Argument (eine reelle Zahl) annimmt. Wegen der Periodenlänge des Tangens kann der Arkustangens dieser reellen Zahl einen Funktionswert nur in zwei, anstatt – wie bei Polarwinkeln erforderlich – in vier Quadranten zuordnen.

Da die Aufgabenstellung hauptsächlich beim Umrechnen ebener kartesischer Koordinaten in (ebene) polare auftritt, gibt man der Funktion pragmatischerweise genau dieselben Argumente mit wie der Radiusberechnung , nämlich die zwei kartesischen Koordinaten womit den richtigen Quadranten von bestimmen kann.

Unabhängig von der praktischen Anwendung besteht ein eigenständiges mathematisches Interesse an dieser Funktion. Eine Bezugnahme auf sie kann in aller Regel ohne die beim Arkustangens häufig erforderlichen Einschränkungen der Argumente geschehen.

Eine große Rolle spielt in diesem Kontext die Definitionsmenge von , die „gelochte“ Ebene , die mit einer Gruppenstruktur versehen werden kann, die derjenigen der multiplikativen Gruppe der komplexen Zahlen ohne die Null isomorph ist. Beide kann man als direktes Produkt der Gruppe der Drehungen, der Kreisgruppe, und der Streckungen um einen Faktor größer Null, der multiplikativen Gruppe , auffassen. Erstere Gruppe lässt sich durch den Polarwinkel parametrisieren, zweitere entspricht den (positiven) Beträgen.

Lösung: Zwei Argumente

Zwei vom Ursprung verschiedene Punkte und spezifizieren denselben Polarwinkel, wenn sie auf demselben Strahl durch liegen. Dann sind sie bezüglich der durch

definierten Relation äquivalent.[1] Dagegen ist der Tangenswert von Polarwinkeln auch dann derselbe, wenn der Strahl um oder also genau in den Gegenstrahl, weitergedreht ist. Informationstheoretisch betrachtet lässt der Tangens die Vorzeicheninformation (rot in den Formeln) von unter den Tisch fallen:

 

man nehme nur

Abb. 1: Graph der Arkustangensfunktion

Da der Tangens mit periodisch ist und der Funktionsbegriff Rechtseindeutigkeit verlangt, muss für seine Umkehrung (Spiegelung an der 1. Winkelhalbierenden) sein Definitionsbereich (mindestens) auf die Periodenlänge eingeschränkt werden – in diesem Artikel auf das Intervall (s. Abb. 1). Das hat zur Folge, dass die Umkehrfunktion Arkustangens kein größeres Bild als dieses haben kann. Dabei ist die ganze reelle Achse als Definitionsbereich des Arkustangens zulässig, weil das Bild des Tangens unter gerade ist.

Um aber zu einem vollwertigen Polarwinkel zu kommen, gibt es in vielen Programmiersprachen und Tabellenkalkulationen eine erweiterte Funktion, die mit den beiden kartesischen Koordinaten beschickt wird und die damit genügend Information hat, um den Polarwinkel modulo (bspw. im Intervall wie der Abb. 2) und in allen vier Quadranten zurückgeben zu können.

Implementierungen

Die erste Implementierung war nicht später als im Jahr 1966 in der Programmiersprache FORTRAN.[2] Die Funktion ist heute jedoch auch in vielen anderen Programmiersprachen vorhanden.

Die Funktion hat häufig den Namen , so bei den Programmiersprachen FORTRAN 77, C, C++, Java, Python, MATLAB, R, iWork Numbers,[3], LibreOffice Calc[4]. Bei vielen von diesen (nicht bspw. bei LibreOffice Calc) ist die Reihenfolge der Argumente umgekehrt, kommt die -Koordinate also als erstes Argument – wohl eine Reminiszenz an In Common Lisp, wo optionale Argumente existieren, erlaubt die -Funktion, die -Koordinate als optionales (die Standardannahme ist ) zweites Argument zu übergeben[5].

Aber auch der Name , so bei den Tabellenkalkulationen Excel[6], OpenOffice Calc ist gebräuchlich.

Mathematica hat bei dem das erste Argument weggelassen werden kann.

Zur Beachtung
Um Verwirrung zu vermeiden und um nicht bei jeder Bezugnahme die Reihenfolge explizit angeben zu müssen, wird in diesem Artikel (ungeachtet der relativen Häufigkeit der Umkehrung) konsequent die -Reihenfolge beibehalten und der Name verwendet.

Formel

Die sechs Fälle der Funktionsdefinition

      oder  
für (Quadranten und )
für (Quadrant )
für (obererunterer Rand der Bildmenge)
für (Quadrant )
für
für

mit als der „gelochten“ Ebene lassen sich zur Formel

vereinigen. Die Funktion ist bis auf den Fall (die Sprungstelle, s. u.) punktsymmetrisch am Ursprung, in Formeln:

Dem Argument wird manchmal der Funktionswert zugeordnet, wie auch andere Sonderfälle, bspw. Not a Number, unterschiedlich behandelt werden.

Ein Genauigkeitsverlust der Division wegen lässt sich für bspw. durch eine Umformung

umgehen (s. jedoch auch den Abschnitt #Genauigkeitskontrolle).

Sprungstelle und kontinuierliche Drehung des Polarwinkels

Abb. 2: Graph von für .
-Quell- und -Ziel-Quadrant in Blau

Bei abnehmendem Polarwinkel d. h. bei einer Drehung entgegen dem mathematischen und im Uhrzeigersinn, beginnt eine Periode in der Abb. 2 am (Strahl durch den) Punkt

[7]
,

von wo es auf dem roten Graphen von rechts oben nach links unten (immer in „WSW-Richtung“) weitergeht. Wie üblich soll bei Annäherung an die Null eine von oben und eine von unten her bedeuten. Die Drehung führt weiter in den Quadranten über den (nicht in der Abb. eingetragenen) Punkt

zum Punkt

,

der der Polstelle des Tangens entspricht und deshalb für den Arkustangens ein unendlich ferner Punkt ist. Der -Wert wechselt von nach Diesen Sachverhalt versucht die Abb. 2 mit dem roten Kringel links als Senke und dem roten Knubbel rechts als Quelle zu symbolisieren. Aus Sicht der Funktion geschieht aber nichts weiter, als dass der -Wert sich von zu ändert.

Die weitere Drehung führt durch den Quadranten zum Punkt

und von dort durch den Quadranten zum Punkt

.

Dieser Punkt entspricht der Polstelle des Tangens, seiner zweiten. Bei ihm findet dasselbe Zusammenfallen der Senke links mit der Quelle rechts statt wie oben beim Argument Die weitere Drehung durch den Quadranten führt schließlich zur Sprungstelle

.

Dieser Fall kann durch leichte Abwandlung der Bedingungen in der Formel entweder dem Fall in der Zeile darüber oder dem darunter zugeschlagen werden, wonach das Intervall der Bildmenge an seinem oberen Ende abgeschlossen und am unteren Ende offen ist, also oder eben umgekehrt

Hat die Berechnung des Polarwinkels eine kontinuierliche Drehung zu begleiten, dann kann die Funktion so angepasst oder erweitert werden, dass

  • die Sprungstelle an einem beliebigen Punkt (einem beliebigen Strahl) des Definitionsbereichs liegt;
  • auch bei einer Drehung über die Periodenlänge hinaus der Polarwinkel kontinuierlich zu- bzw. abnimmt. Hier kommt die Windungszahl ins Spiel.

Isomorphie zur Kreisgruppe

Auf der Definitionsmenge von kann man (in Analogie zur Definition der Addition in den rationalen Zahlen) die Verknüpfung

definieren.[8] Sie bleibt wohldefiniert unter der obigen Äquivalenzrelation und die Faktormenge

erweist sich als kommutative Gruppe mit dem neutralen Element und der Inversenbildung

.[9]

Aus der Summenformel des Arkustangens folgt

Wendet man auf die Funktion die Funktion

an, dann ergibt sich ein Homomorphismus mit

 
 

auf die Kreisgruppe dessen Kern das neutrale Element mit ist. Ausgestattet mit der natürlichen Topologie ist die induzierte Abbildung von in beiden Richtungen stetig, mithin ein Homöomorphismus.

Genauigkeitskontrolle

Mit einer kleinen Vorbereitung und mit nur einem Vergleich mehr als in den Fallunterscheidungen der Formel lässt sich das Konvergenzverhalten der Taylorreihe (des Arkustangens) kontrollieren und ggf. verbessern.

Der Winkel von zeichnet sich dadurch aus, dass er ein ganzzahliger Bruchteil, nämlich ein Achtel, des vollen Winkels von ist und gleichzeitig sein Strahl durch ganzzahlige Koordinaten geht. Quadranten lassen sich in der Koordinatenebene so ausrichten, dass ihre Begrenzungen (die definitionsgemäß stets Strahlen sind) parallel zu den Koordinatenachsen zu liegen kommen. Bei Oktanten kommen noch die Winkelhalbierenden als Begrenzungen hinzu. Die Feststellung, zu welchem der acht Oktanten ein Punkt gehört, ist also bei derart ausgerichteten Oktanten besonders einfach.

Schreibweise
In diesem Abschnitt werden in den Beziehungen zwischen Strahlen und Winkeln die gewohnten Operatoren     mit der darübergeschriebenen Tilde     verwendet, um auszudrücken, dass ein Strahl eine Äquivalenzklasse   ist. Und bei den Vergleichsoperatoren     wird der Strahl stets mit dem ihm am nächsten liegenden Winkel verglichen.
Um Verwechslungen mit Koordinaten zu vermeiden, wird in den Dezimaldarstellungen statt des Kommas der Dezimalpunkt verwendet.

Im Folgenden wird versucht, einen beliebigen Strahl resp. Winkel mit einfachen und umkehrbaren Drehungen in das an der Polarachse symmetrische Winkelintervall zu drehen. Dann ist nämlich der Absolutbetrag des Arguments in der Taylorreihe des Arkustangens .

In einer ersten Drehung wird der Strahl um gedreht, d. h. der Strahl

gebildet. Vom Oktanten, in den dieser Strahl fällt, wird der obere begrenzende Strahl genommen, der durch einen Punkt mit ganzzahligen Koordinaten aus der Menge

charakterisiert werden kann. Dann ist oder

.

Es folgt eine Drehung von , die zweite, jetzt um , so dass

im gewünschten Winkelintervall ist. Um diese zweite Drehung von mit ganzzahligem muss das Ergebnis, wenn der Arkustangens berechnet ist, korrigiert werden.

Die erste Drehung muss nur ungefähr betragen. Wenn sie davon etwas abweicht, etwa beträgt, dann wird der Strahl möglicherweise nicht so gut in das an der Polarachse symmetrische Winkelintervall eingepasst. Sein Konvergenzverhalten kann sich aber wegen nur geringfügig auf verschlechtern.

Nach der zweiten Drehung kann die Taylorreihe (an der Entwicklungsstelle ) entwickelt

und die abschließende Korrektur

vorgenommen werden.

Beispiele
  1. Der Ausgangsstrahl sei , was einem Winkel von ca. entspricht. Durch die -Addition von kommen wir auf , also in den -ten Oktanten. Dessen obere Begrenzung liegt bei . Wir bilden die Differenz und berechnen mit und korrigieren mit zum Endergebnis .
  2. Der Ausgangsstrahl sei , was einem Winkel von ca. entspricht. Durch die -Addition von kommen wir auf , also in den -ten Oktanten. Dessen oberes Ende liegt bei . Wir bilden die Differenz und berechnen mit und korrigieren mit .
  3. Der Ausgangsstrahl sei , was einem Winkel von ca. entspricht. Durch die -Addition von kommen wir auf , also in den -ten Oktanten. Das obere Ende des Oktanten liegt bei . Da dieser Oktant die Sprungstelle enthält, setzen wir bei diesem -ten Oktanten im Fall den Korrekturwinkel auf . Wir bilden die Differenz und berechnen mit und korrigieren mit .

Verbindung zum komplexen Logarithmus

Man kann die Funktion für auch über den Hauptwert des komplexen Logarithmus definieren:

Diese Funktion wird zum Beispiel in der inversen Kinematik benutzt, um korrekte Gelenkeinstellungen berechnen zu können. Dies ist allerdings nur eine andere formale Darstellung derselben Möglichkeit, da man letztlich mit bestimmen muss und dazu die gegebene kartesische Darstellung von in die Polarform überführt, wobei man im Endeffekt wieder auf die obige -Funktion mit reellen Argumenten zurückgreift.

Ableitungen

Da die Funktion eine Funktion in zwei Variablen ist, hat sie zwei partielle Ableitungen. Für die Bedingung des ersten Falls und dessen Zuordnung ergibt sich

Die Einschränkung auf den ersten Fall kann nachträglich fallen gelassen werden, so dass die Gleichungen für alle gelten.

Damit ist

der Gradient der Funktion und seine Richtung ist an jedem Punkt senkrecht zum Radiusvektor in mathematisch positiver Drehrichtung. Das passt zu dem Sachverhalt, dass der Funktionswert von der Polarwinkel, in dieser Richtung zunimmt.

Siehe auch

Commons: Arkustangens und Arkuskotangens – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise und Anmerkungen

  1. Die Begriffsbildung gestattet u. a. eine einfache und präzise Spezifikation der Werte und die der auf zwei Tangens-Perioden aufgeteilten Polstelle des Tangens entsprechen.
  2. Elliott I. Organick: A FORTRAN IV Primer. Addison-Wesley, 1966, S. 42: „Some processors also offer the library function called ATAN2, a function of two arguments (opposite and adjacent).“
  3. Numbers' Trigonometric Function List. Apple;
  4. LibreOffice Calc ATAN2. Libreoffice.org;
  5. CLHS: Function ASIN, ACOS, ATAN. LispWorks;
  6. Microsoft Excel Atan2 Method. Microsoft;
  7. Entsprechend den 2 Argumenten der -Funktion werden zwei Koordinaten als unabhängige Variable und nicht nur der Quotient aufgeführt.
  8. Diese Definition stimmt überein mit den Regeln der komplexen Multiplikation, welche auch dem Additionstheorem des Tangens zugrunde liegen.
    In diesem Artikel kommt es besonders auf ihre Eignung für ganzzahlige Koordinaten an.
  9. Von den komplexen Zahlen her weiß man, dass das -Inverse von auf ganz (und nicht nur auf )
    ist und dass eine abelsche Gruppe ist, was aber im Text so nicht gebraucht wird.