Zeigerkette < GeoGebra < Mathe-Software < Mathe < Vorhilfe
|
Hallo!
Ich möchte folgende Folge von Vektoren erzeugen
Vektor((0|0),(1|0))
Vektor((0|0)+(1|0),(1|0)+(cos(1*alpha)|sin(1*alpha)))
Vektor((0|0)+(1|0)+(cos(1*alpha)|sin(1*alpha)),(1|0)+(cos(1*alpha)|sin(1*alpha))+(cos(2*alpha)|sin(2*alpha)))
Vektor((0|0)+(1|0)+(cos(1*alpha)|sin(1*alpha))+(cos(2*alpha)|sin(2*alpha)),(1|0)+(cos(1*alpha)|sin(1*alpha))+(cos(2*alpha)|sin(2*alpha))+(cos(3*alpha)|sin(3*alpha)))
usw.
Nach langem Probieren klappt dies [mm] $\textit{fast}$ [/mm] mit
Folge(Vektor(Summe((cos(alpha t / 360 * 2π), sin(alpha t / 360 * 2π)), t, 0, q - 1), Summe((cos(alpha t / 360 * 2π), sin(alpha t / 360 * 2π)), t, 0, q)), q, 0, l)
[Dateianhang nicht öffentlich]
wobei ich für alpha und l Regler erstelle. Das ganze wird eine Zeigerkette, wie man sie für Interferenzen bei der Quantenmechanik braucht.
Problem: Meine Folge erzeugt den ersten Pfeil nicht. Diesen kann ich natürlich auch manuell hinzufügen. Ich fänds aber schöner, wenn der auch aus der Folge hervorgeht, falls ich mit der gesamten Folge weitere Transformationen vorhabe.
Den Grund habe ich schon entdeckt. GeoGebras Summe-Befehl verhält sich anders als zB der Summen-Befehl von Maple. Dort wäre sum(k,k=0..-1)=0. Bei GeoGebra hingegen Summe(k,k,0,-1)= {} - leer. Dadurch kommt der erst Pfeil mit Startpunkt $(0|0)$ nicht zustande. Weiß jemand Rat, wie man das repararieren kann?
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich]
|
|
|
|
Ich kenne mich in der Programmierung von GeoGebra zwar nicht aus, würde aber mal versuchen, mit einem vorhergehenden Schritt (t statt bei 0 bei -1, falls t der Laufindex ist) zu starten. Dann wird zuerst eine Luftnummer gedreht und das Pgm. startet mit dem gewünschten Pfeil.
|
|
|
|
|
In
Folge(Vektor(Summe((cos(alpha t / 360 * 2π), sin(alpha t / 360 * 2π)), t, 0, q - 1), Summe((cos(alpha t / 360 * 2π), sin(alpha t / 360 * 2π)), t, 0, q)), q, 0, l)
kommt mehrfach der konstante Ausdruck (alpha t / 360 * 2π) vor. Um Rechenschritte zu sparen (heutzutage unwichtig) und vor allen Dingen der Übersichtlichkeit wegen solltest du vorher
k=alpha / 360 * 2π setzen, damit der vereinfachte Befehl
Folge(Vektor(Summe((cos(t*k), sin(t*k)), t, 0, q - 1), Summe((cos(t*k), sin(t*k)), t, 0, q)), q, 0, l) lesbarer wird.
Falls mein erster Vorschlag nicht klappt, versuchs mal mit
Folge(Vektor(Summe((cos(t*k-k), sin(t*k-k)), t, 0, q - 1), Summe((cos(t*k-k), sin(t*k-k)), t, 0, q)), q, 0, 5).
|
|
|
|
|
Hallo HJKweseleit,
Danke für Deine Antwort. Leider klappen beide Methoden nicht. Alle Pfeile werden dadurch nur verschoben.
alpha/360*2*Pi ist umständlich. Jedoch soll man am Regler direkt den Winkel ablesen. Aber natürlich könnte ich trotzdem das von Dir genannte $k$ definieren und den Regler weiter mit alpha belassen.
Grundsätzlich problematisch ist hier leider, wie schon erwähnt, das Verhalten von GeoGebra bei der Summe. Dies steht im Widerspruch zur Summendefinition bei Wikipedia https://de.wikipedia.org/wiki/Summe
unter "Besondere Summen" zweiter Absatz. Wenn man dies "korrigieren" könnte, so wäre mein Problem gelöst. Durch Ändern der Argumente in Sinus und Cosinus gleichzeitig erhalte ich wohl nie $(0|0)$...:-/
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 18:01 Mi 26.05.2021 | Autor: | Fulla |
Hallo Riesenfahrrad,
ich habe deinen Code mal in GeoGebra kopiert und erhalte dasselbe Ergebnis.
Es scheint aber so, als wäre der erste Vektor vom Ursprung nach (1,0) verschoben.
Welcher Pfeil fehlt dir denn? Von (0,0) nach (1,0)?
In meinen Augen ist das schon alles korrekt, du bekommst $l+1$ Punkte und $l$ Vektoren, die jeweils zwei davon verbinden.
(0,0) ist bei mir übrigens schon Teil der Folge...
Kann es sein, dass bei den Summen irgendwo kein Vektor, sondern das Skalar "1" rauskommt und das die Verschiebung entlang der x-Achse verursacht?
Lieben Gruß
Fulla
|
|
|
|
|
Hallo Fulla,
danke auch für Deine Beteiligung.
Leider ist es keine Verschiebung, es fehlt tatsächlich der Pfeil von (0,0) nach (1,0).
|
|
|
|
|
Hier noch ein weiterer Vorschlag:
Folge(Vektor(Summe((cos(t*k-k), sin(t*k-k)), t, 0, q - 1), Summe((cos(t*k-k), sin(t*k-k)), t, 0, q)), q, 1, 5).
Dadurch wird vermieden, dass t von 0 bis 0-1=-1 , stattdessen von 0 bis 0 läuft. Evtl musst du das grüne -k wieder löschen.
|
|
|
|
|
Hab mal einen kleinen Lehrgang in GeoGebra absolviert. Frag mich nicht, wieso das jetzt klappt... Reine Fummelarbeit.
[Dateianhang nicht öffentlich]
Dateianhänge: Anhang Nr. 1 (Typ: JPG) [nicht öffentlich]
|
|
|
|
|
Wunderbar!
Ich versuche das mal zu verstehen: Wenn wir Deinen Korrektursummanden zunächst weglassen, so lässt Du die Pfeile wie folgt starten
[mm] $=Vektor(\left(\cos(30^\circ \cdot 0\textcolor{red}{-30^\circ})|\sin(30^\circ \cdot 0\textcolor{red}{-30^\circ})\right)\;,\;\left(\cos(30^\circ \cdot 0\textcolor{red}{-30^\circ})|\sin(30^\circ \cdot 0\textcolor{red}{-30^\circ})\right)+\left(\cos(30^\circ \cdot 1\textcolor{red}{-30^\circ})|\sin(30^\circ \cdot 1\textcolor{red}{-30^\circ})\right)$
[/mm]
[mm] $=Vektor(\left(\cos(\textcolor{red}{-30^\circ})|\sin(\textcolor{red}{-30^\circ})\right)\;,\;\left(\cos(\textcolor{red}{-30^\circ})|\sin(\textcolor{red}{-30^\circ})\right)+(\cos(30^\circ \cdot 1\textcolor{red}{-30^\circ})|\sin(30^\circ \cdot 1\textcolor{red}{-30^\circ}))$
[/mm]
Deine [mm] $\textcolor{red}{-30^\circ}$ [/mm] bewirken zunächst mal, dass wir als Startpunkt eine Ort haben, wo die Pfeilspitze eines [mm] "$-\alpha$-Pfeils" [/mm] liegen würde.
Mit Deinem Korrektursummanden [mm] $\left(\cos(-30^\circ)|1-\sin(30^\circ)\right)$ [/mm] schiebst Du den Startpunkt an den Ort x = 0 und die y-Koordinate nach 1, und/aber drehst sie um weitere [mm] $\alpha$ [/mm] zurück. Dies ergibt jedoch nur y = 0, wenn [mm] $1-2\cdot\sin(\alpha)=0$. [/mm] Ich befürchte, diese Methode klappt nur für [mm] $\alpha=30^\circ$...
[/mm]
(Aber vielleicht kann man an der "1" noch schrauben, ich denke später mal drüber nach)
|
|
|
|
|
Du hast Recht. Man soll nicht fummeln, sondern denken, aber ich hatte so schon Probleme mit den vielen Klammern und war daher froh, dass es überhaupt klappte. Jetzt aber richtig:
Folge(Vektor(Summe((cos(a*t-a),sin(a*t-a)),t,0,q)+(-cos(a),sin(a)),Summe((cos(a*t-a),sin(a*t-a)),t,0,q+1)+(-cos(a),sin(a))),q,0,5)
So klappt es für alle Winkel a. Der Korrekturterm 1-sin(30°) klappt wirklich nur für 30°, weil das 1-1/2=1/2 =sin(30°) ist. Bei anderen Winkeln wandert der Ausgangspfeil rauf und runter. Der neue Term funktioniert aber wunderbar.
Eigentlich müsste der Korrekturterm (-cos(-a),-sin(-a)) lauten, lässt sich aber zu (-cos(a),sin(a)) vereinfachen wg. der Symmetrieeigenschaften von sin und cos.
|
|
|
|