![]() |
---|
Ist diese einfache Berechnung von Sinus- und Cosinuswerten eine bekannte Herangehensweise: Berechnung von beliebigen Sinus-, Cosinuswerten mit Grundrechtenarten mit Hilfe der Sehnensteigung (im Einheitskreis). m(Sehne)=sin/(cos-1) Iterartion von m(Sehne) (hier=x): Startwert . (entspricht: tan=1°) cos=(x²-1)/(x²+1) sin=(-2x)/(x²+1) tan=(-2x)/(x²-1) Alles lässt sich mit Grunrechenarten berechnen, sofern man den Startwert hat. (Beim Startwert braucht man einmal eine Wurzelberechnung) (den Startwert kann man auch für Winkel unter 1° berechnen). Ich bin kein Mathe-Gelehrter, in sofern fehlt es mir häufig an Fachsyntax, so dass ich nicht alle Erklärungen . bei Wikipedia verstehe. Gruß, Markus |
![]() |
![]() |
Deine Überlegungen sind für mich leider nicht nachvollziehbar. Wie du auf deine Iterationsformel (für ??) kommst ist unklar und auch, was du etwa mit sin=(-2x)/(x²+1) zum Ausdruck bringen möchtest. Letztere Formel erinnern (bis aufs Vorzeichen) an die Halbwinkelformeln wie etwa mit . Beachte bei deiner Notation, dass es sin und allein nicht gibt, sondern dass immer die zusätzliche Angabe eines Arguments erforderlich ist, also oder auch . Wenn du eine Iterationsformel gefunden zu haben glaubst, müsstest du eben noch ihr Konvergenzverhalten prüfen. Da ist zusätzlich zum Aufwand (wie viele und welche Rechenoperationen müssen pro Iterationsschritt durchgeführt werden) die Konvergenzgeschwindigkeit relevant. Die Firmware von Taschenrechnern ist üblicherweise nicht veröffentlicht, aber wenn man Wikipedia glauben darf, dann verwenden die meisten TR den CORDIC Algorithmus von Jack E. Volder aus dem Jahr welcher typischerweise mit jedem Iterationsschritt eine zusätzliche signifikante Ziffer generiert. en.wikipedia.org/wiki/CORDIC |
![]() |
Laut Additionstheorem ist . Dein Wert passt zu . Unter Einbeziehung des eben genannten Additionstheorems berechnet diese Rekursion somit . Damit ist . -------------------------------------------------------------------------------- Ich hätte da übrigens einen Alternativvorschlag: Angenommen, man will für gegebenes die Werte für berechnen. Dann genügt die Berechnung eines einzigen Winkelfunktionswerts , aus dem bestimmt man und (das sind nämlich und ), und die eigentliche Iteration lautet dann so: Start Iteration . Pro Iterationsschritt werden 4 Multiplikationen und 2 Additionen, aber KEINE EINZIGE (teure) Division benötigt. Man braucht lediglich initiale zwei Divisionen für die Berechnung von und . |
![]() |
@Roman-22: sin=(-2x)/(x²+1) bedeutet: Angenommen ein Sinuswert ist .. der dazu gehörende Cosinuswert wäre (0,8²+0,6²)=1 die Sehnensteigung m(Sehne), die ich hier nenne ist dann anders herum lässt sich jeder Cos-, Sin- und Tangens-Wert mit der Sehnensteigung einfach berechnen: sin=(-2x)/(x²+1): 0,6=(-2*-3)/(-3²+1) cos=(-x²-1)/x²+1): 0,8=(-3²-1)/(-3²+1) tan=(-2x)/(x²-1): 0,75=0,6/0,8=(-2*-3)/(-3²-1) Die aufeinander folgenden Sehnensteigungen kann ich ebenfalls mit einfachen Mitteln per Reihenberechnung herleiten. Über HALs Antwort muss ich noch nachdenken, nach seinen Ausführungen, klingt es so, als ginge es noch einfacher: Ohne einmalige Wurzelfunktion für den Startwert und ohne Division, wow ! Dass man bei meinen Vorschlag ein Rechner viele Schritte iterieren ließe, ist mir klar, und das es bei Verdopplung von Winkeln auch schneller geht ist auch klar. Ich dachte bloß es gäbe bisher keinen einfach nachvollziehbaren Weg, die Berechnung regelmäßiger Kreispunkte zu verstehen. (Einen einfachen Weg für Nicht-Mathematiker.) Bin aber nicht sicher ob mein Vorschlag einfach und nachvollziehbar ist. Danke erst mal und Gruß, Markus |
![]() |
> Ohne einmalige Wurzelfunktion für den Startwert Wieso Wurzelfunktion? Die brauchst du auch bei deinem Vorschlag nicht. Es wird EIN trigonometrischer Funktionswert zu Beginn benötigt, bei beiden Varianten. |
![]() |
Hallo HAL9000 die Wurzelfunktion habe ich verwendet um Startwert bzw. m(Sehne)(1) zu berechnen. Ich schlage einen Kreis um den Punkt mit dem Radius . Aus dem Schnittpunkt dieses Kreises mit dem Einheitskreis erhalte ich den genäherten Cosinuswert für 1°. Daraus berechne ich per Wurzelfunktion entweder den Sinuswert für 1°, oder über -1*Wurzel(1+cos/1-cos) direkt die Steigung der Sehne bei 1°. Deine vorgeschlagene Vorgehensweise kenne ich, ich hatte sie vor einiger Zeit einem anderem Forum hoffe ich) so vorgeschlagen: und (habe damals auch noch die Buchstaben a und verwendet, .. du hast mir auch damals schon auf die Sprünge geholfen. Ich habe viel um die Ohren und bin etwas vergesslich geworden. Jedenfalls habe ich damals diese tatsächlich noch einfachere Reihenberechnung regelmäßiger Kreispunkte, wieder umgestellt nach der Steigung der Sehne. Dabei kam das oben erwähnte heraus: Sie ist dadurch wieder komplexer geworden (Division), enthält allerdings nur eine Variable nämlich m(Sehne) (bzw. wie ich sie nenne). Verzeih die unbeholfene Ausdrucksweise bei mathematischen Ausdrücken. Gruß Markus |
![]() |
. Anlass für die Anfrage im Forum war, dass ich als Laie viele Erklärungen . vom Sinus-Wikipedia-Beitrag nicht verstehe, ich vermute so geht es auch anderen Mathe-Interessierten Laien. So habe ich mir selber diese hier beschriebenen Berechnungen hergeleitet, durch simples Herumtüfteln mit simpler Vektorrechnung im Koordinatensystem. Dabei entdeckte ich zuerst die Iteration des trig. Additionstheorem: Dann fiel mir die Berechnung der Cosinus- Sinus- und Tangens-Werte über die Sehnensteigung auf. Und am Ende stellte ich die Iteration der cos/sin-Werte um zur Iteration der Sehnensteigung. Und vermutlich klingt all das hier mittlerweile für Laien ebenfalls verwirrend. Tatsächlich könnte ein Laie wahrscheinlich die bildliche Darstellung der Berechnung nach und am ehesten verstehen. Zum Beispiel beim Aufstellen einer Leiter in gleichmäßigen Schritten: NeuerAbstand = aktuellerAbstand AnfangsAbstand - AktuelleHöhe Anfagngshöhe NeueHöhe = AktuelleHöhe AnfangsAbstand AktuelleAbstand Anfangshöhe Somit möchte ich meine Ausführungen hier vorerst abschließen und bedanke mich nochmal bei allen. Gruß Markus |