Wie wäre es mit dem Arkustangens?
Arkustangens und Arkuskotangens sind mathematische Funktionen. Sie sind die Umkehrfunktionen des Tangens bzw. des Kotangens und damit Arkusfunktionen. Da der Tangens periodisch ist, wird zur Umkehrung der Definitionsbereich von Tangens auf (−π/2, π/2) beschränkt. Beim Arkuskotangens erfolgt eine Beschränkung auf 0 <= f(x) <= π .
Die Taylorreihe des Arkustangens mit dem Entwicklungspunkt x = 0 lautet:
arctan(x) = Summe über k=0 bis unendlich (-1)^k*x^(2k+1)/(2k+1) = x - 1/3*x^3 + 1/5*x^5 - 1/7*x^7 + ...
Diese Reihe konvergiert genau dann, wenn |x| <= 1 und x != +-i ist. Zur Berechnung des Arkustangens für |x|>1, kann man ihn auf einen Arkustangens von kleineren Argumenten zurückführen. Dazu kann man entweder die Funktionalgleichung hernehmen, oder (um ohne π auszukommen) die Gleichung
arctan(x) = 2*arctan(x/(1+sqrt(1+x²))
Hiermit lässt sich das Argument nach mehrfacher Anwendung beliebig verkleinern, was eine sehr effiziente Berechnung durch die Reihe ermöglicht.
Es gilt folgende Näherung:
Arkustangens (maximale Abweichung unter 0,005 Radianten):
arctan(x) ~ x/(1+0,28*x^2) für |x| <= 1
arctan(x) ~ π/2 - x/(x^2+0,28) für x > 1
Die eigentliche Obergrenze des Arkustangens liegt bei π/2. Das heißt also dass man zunächst auf 1 normiert indem man das Ergebnis mit 2/π multipliziert, anschließend multipliziert man das ganze mit der gewünschten Obergrenze:
y = y_max*2/π*arctan(x)
Wenn man nun an der Stelle x=a den Wert y=b haben möchte fügt man dazu den Eichfaktor c ein, der wie folgt berechnet wird:
b = y_max*2/π*arctan(c*a)
c = tan(b/(y_max*2/π))/a
Wir erhalten also die Gleichung
y = y_max*2/π*arctan(c*x)
Anbei ein Schaubild (das man erst richtig sieht wenn man draufklickt) sowie der Code für eine genauere Approximation (Quelle:
http://www.lightsoft.co.uk/PD/stu/stuchat37.html).