Autor |
Nachricht |
pressure |
Verfasst am: 10. Jan 2008 15:53 Titel: |
|
Ich hab mittlerweile das ganze schon über Bord geworfen gehabt und es mittels Runge-Kutta geschafft gut zu simulieren. Aber danke für deine Antwort ! ![Thumbs up!](images/smiles/up.gif) |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 06. Jan 2008 17:51 Titel: |
|
Sorry, dass meine Antwort diesmal erst nach so langer Pause kommt!
Deine Näherung, die senkrechte Komponente der elektrischen Feldkraft als Zentrifugalkraft zu betrachten, hast du korrekt umgesetzt, bis auf einen Punkt.
Den hast du in der Tat bereits richtig vermutet, und mit deiner Limesbetrachtung für den Fall, dass sowohl B-Feld als auch die elektrische Feldkomponente senkrecht zur Bewegungsrichtung Null sind, gezeigt, dass da noch etwas fehlt.
In deiner Formel für das fehlt in der Tat noch der Term für die Beschleunigung in Bewegungsrichtung. (Ich bezeichne dabei, wie du oben auch, auf die Länge 1 normierte Vektoren mit einem hochgestellten Index Null ). Damit ergibt sich also diese Gleichung zu:
Damit enthält nun die Simulationsmethode zwei Näherungen:
* Die Näherung, dass als Geschwindigkeit für die Berechnung der Lorentzkraft die Geschwindigkeit am Anfang des Simulations-Zeitintervalls verwendet wird, krümmt die Bahn in der Simulation schwächer in der Ebene senkrecht zum Magnetfeld als in Wirklichkeit, wenn die Geschwindigkeitskomponente senkrecht zum B-Feld in diesem Zeitintervall zunimmt, und stärker als in Wirklichkeit, wenn sie in diesem Zeitintervall abnimmt.
* Deine Näherung, die senkrechte Komponente der Feldkraft als Zentrifugalkraft zu verwenden, krümmt die Bahn in der Simulation stärker in Richtung von als in Wirklichkeit. Diese Näherung ersetzt also Teile des elektrischen Feldes effektiv durch Magnetfelder.
----------------------------------------------------
Ich meine, dass man ohne deine Näherung zu genaueren Ergebnissen kommt, und das obendrein auf ein bisschen einfachere Weise. Dann würde man also das elektrische Feld nicht in zwei Komponenten aufteilen.
Das wäre also:
Dann ist der Beitrag des elektrischen Feldes zur Ortsveränderung und zur Geschwindigkeitsveränderung , und die addieren sich einfach zu den Termen aus dem reinen Magnetfeld-Kreisbahnstück. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 03. Okt 2007 17:00 Titel: |
|
Ich habe das ganze noch einmal überdacht.
Für kleine Zeitintervallle bewirkt die Komponete einer Kraft, die senkrecht auf die Flugrichtung des Teilchens wirkt, ein Kreisbahn, da sie nährungsweise über das gesamte Intervall senkrecht zur Flugbahn wirkt.
Die Komponente die in Richtung des Teilchens wirkt beschleunigt dieses.
Demnach ist das magntische Feld und das elektrische Feld für eben diese Zeitintervall gleich berechtigt.
Es ergibt sich:
mit und
Da das magnetfeld immer eine "senkrechte Kraft" erzeugt muss nur das elektrische Feld zerlegt werden.
Es gilt dann:
mit
Ist das so physikalisch richtig ?
Muss beim zurückgelegten Weg auch die Beschleunigung mit rein ?
Und was passiert wenn sich E und B so addieren, dass sich keine Kreisbewegung ergibt ? Dann müsste ja eigentlich folgendes gelten:
Das tut es aber so wie ich das sehe nicht, oder wie seht ihr das ?
Folgt daraus, dass ich eine Fallunterscheidung machen muss ?
Ich bedanke mich schonmal für jeden hilfreichen Gedanken dazu. |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 17. Jun 2007 17:15 Titel: |
|
Einverstanden ![smile](images/smiles/balloon.gif) |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 17. Jun 2007 17:05 Titel: |
|
Oh, ja ! Da hab ich ein bisschen was vergessen... oben hatte ich es ja schon mal richtig !
Sieht das besser aus ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 17. Jun 2007 15:35 Titel: |
|
Prima , nun habe ich alles als richtig nachvollziehen können ... bis auf die letzte Gleichung:
pressure hat Folgendes geschrieben: |
|
Um den Betrag und die Richtung des Vektors für die Geschwindigkeitskomponente senkrecht zum B-Feld musst du dich glaube ich nochmal kümmern. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 16. Jun 2007 21:59 Titel: |
|
Auh stimmt...
dann benutze ich stattdesen den Vektor mit der Länge von :
Damit dann hoffentlich die endgültige Lösung:
Beides mit und
Ich hoffe diesmal ist es richtig wirkich richtig. Ich danke dir für deine schnellen und viele Antworten. Ohne diese kleine Tipps bzw. Gedankenanregegungen hätte ich es deutlich schwerer gehabt. Danke |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 16. Jun 2007 18:00 Titel: |
|
pressure hat Folgendes geschrieben: |
Neuer Versuch:
Für die Drehung des Vektors gilt dann:
Und allgemein:
Beides mit und
|
Da habe ich nun nur noch einen Fehler drin gefunden:
Die Drehung des Geschwindigkeitsvektors muss ja in der Ebene senkrecht zu erfolgen. Also musst du statt einen Vektor verwenden, der senkrecht auf und senkrecht auf steht. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 14. Jun 2007 18:07 Titel: |
|
Oh, ich habe gemerkt, dass in meiner Herleitung ein paar Fehler sind...
Das ist falsch... es gilt nur mit Beträgen. Und die Drehmatrix, die ich für benutzt habe geht nur in zwei Dimension.
Neuer Versuch:
Für die Drehung des Vektors gilt dann:
Und allgemein:
Beides mit und
Ich hoffe diesmal ist es richtig. Viel Spaß beim durchschauen ! |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 14. Jun 2007 16:47 Titel: |
|
Zum elektrischen Feld:
Aber wie bringe ich das jetzt zusammen unter... beim Magnetfeld bewegt sich für mit linear vorwärts, beim elektrischen mit . Naja ich denke mal:
Geschwindigkeit... gleiches Problem:
Beides mit und ![](https://www.matheboard.de/latex2png/latex2png.php?\vec{v}_{\perp} = (1 - \frac{\vec{v} \cdot \vec{B} }{|\vec{v}| |\vec{B}| }) \vec{v}) |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 14. Jun 2007 16:03 Titel: |
|
Stimmt, für deinen Vektor musst du noch darauf achten, dass der senkrecht auf steht, für den macht das in der Tat einen Unterschied. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 14. Jun 2007 15:51 Titel: |
|
Ja gleich, aber ich habe - glaube ich - einen Fehler gemacht und den möchte ich zuerst klären:
Ich hab fälschlicherweise angenohmen, dass auf senkrecht steht. Das muss natürlich nicht der Fall sein. Daher habe ich mir jetzt überlegt, dass ich den Vektor in einen Komponete zerlege, die auf senkrecht steht, und eine die in Richtung geht. Dann müsst ich, die hergeleitete Fromel mit rechnen und anschließen noch dazu addieren.
Ich hab das ganze schon probiert (Ich poste gleich meine Lösung):
http://www.bilder-hochladen.net/files/31bc-1.jpg
Und in einer Formelsamlung hab ich gefunden:
Damit wäre dann die allgemeine Formel:
mit und
Und für die neue Geschwindigkeit gilt:
![](https://www.matheboard.de/latex2png/latex2png.php?\vec{v}_2 = \vec{v}_{\perp} \begin{pmatrix} \cos\varphi & -\sin\varphi \\ \sin\varphi & \cos\varphi \end{pmatrix} + \vec{v}_B = \vec{v}_{\perp} \begin{pmatrix} \cos\varphi & -\sin\varphi \\ \sin\varphi & \cos\varphi \end{pmatrix} + (1-\vec{v}_{\perp}) \vec{v}) |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 12. Jun 2007 22:47 Titel: |
|
Ja, ich denke, das geht bestimmt. Magst du mal konkret aufschreiben, wie du diese beiden Dinge kombinieren möchtest, um Ort und Geschwindigkeitsvektor des Teilchens nach einem solchen Zeitschritt zu bestimmen? |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 12. Jun 2007 19:54 Titel: |
|
Juhu Danke.
Wenn ich nun ein elektrisches Feld habe und ein magnetisches. Kann ich dann das magnetische mit dieser Formel iterieren und gleichzeitig auf das Teilchen in diesem Intervall die Beschleunigung durch das elektrische Feld wirken lassen ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 12. Jun 2007 18:17 Titel: |
|
Prima Einverstanden ![smile](images/smiles/balloon.gif) |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 12. Jun 2007 17:04 Titel: |
|
Ja, ich bin am verbessern.. es ist deswegen so komisch, weil die Seite bzw. Latex nich funktioniert hat. Ich editiere mal eben alles.
EDIT: So, besser ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 12. Jun 2007 17:03 Titel: |
|
Wow, prima, damit hast du das Problem ganz ohne Matrizen und allein mit Vektorrechnung gelöst
// edit:
Und die wenigen Tippfehler, die ich hier angesprochen hatte, sind nun auch verschwunden ![smile](images/smiles/balloon.gif) |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 12. Jun 2007 16:12 Titel: |
|
Also, da ich zu faul war mir das mit der Matrix anzusehen und wahrscheinlich auch nicht auf mein Problem anwenden kann. Habe ich versucht anders daran zu gehen. Und auch eine Lösung gefunde. Jetzt würde ich gerne Wissen ob das alles korrekt ist:
Ich beginne die Kreisbewegung im Punkt 1:
Ich habe folgende beide Vektoren, die jeweils in diesem Punkt auf das Elektron wirken:
Der Betrag vom Radius ist mir auch gegeben:
Für den Vektor, der vom Punkt 1 auf das Zentrum zeigt, gilt:
Jetzt benutze ich Vektor und den Vektor , der die gleiche Richtung wie hat, aber die Länge vom Vektor . Also:
Diese beiden Vektoren stehen auf einander senkrecht und spannen die Rotationsebene auf. Daher lasse ich diese beide Vektoren einfach mit den trigonomischen Funktionen rotieren und erzeuge dadurch :
Damit ergeben siche folgende Kooardinaten für den neuen Punkt 2:
mit ![](https://www.matheboard.de/latex2png/latex2png.php?\varphi = \frac{q}{m} |\vec{B}| \Delta t) |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 10. Jun 2007 04:19 Titel: |
|
Tipp zum Einlesen und Einarbeiten in Matrizen:
Was du in 2D gemacht hast, enthält bereits eine Drehmatrix ; deine Rechnung kannst du damit auch so schreiben:
![](https://www.matheboard.de/latex2png/latex2png.php?\vec r_{\rm dreh} = \vec {\vec A} \left(- \vec r\right) = \left( \begin{matrix}\cos \varphi & -\sin \varphi \\ \sin \varphi & \cos \varphi \end{matrix} \right) \left( \begin{matrix}-\frac{r}{|\vec v|}v_y \\ -\frac{r}{|\vec v|} (-v_x) \end{matrix} \right) = \frac{-r}{\mid\vec{v}\mid } \begin{pmatrix} v_y\cos(\varphi) + v_x \sin(\varphi) \\ v_y\sin(\varphi) - v_x \cos(\varphi) \end{pmatrix}) |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 21:22 Titel: |
|
http://de.wikipedia.org/wiki/Orthonormalbasis
Wenn ich danach gehen geht die Z-Achse aus der Ebene raus... dann ist alles in Ordnung. Um dein Idee mit der Drehmartix umsetzen zu können, fehlt mir noch jedlicher Ansatz. Hast du einen Ahnung wie es geht und einen Tipp für mich...
Ich würde jetzt einfach mal versuchen das Ganze, was ich mir in 2D überlegt habe, ganz von vorne in 3D zu machen... da muss ich mich mal ein bisschen einlesen in Matrixen. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 21:06 Titel: |
|
Nein, dass meine ich nicht, dass kommt ja durch das r rein. Also geht die Z-Achse in die Ebene rein oder raus ?
Aber wenn ich folgendes Gedankenspiel mache. Ich geh damit es einfacher ist, von einem positiv geladenen Teilchen aus. Das Teilchen ist im Punkt 1 . Die Feldstärke zeigt in Z-Richtung also wie ich eigentlich dachte in die Ebene rein. Das Teilchen bewegt sich mit der Geschwindigkeit 1 nach oben also:
Der Radius ist 1. Also müsste das Zentrum im Punkt (0/0) sein also im Ursprung. Dem entsprechend müsste
sein. Das kommt aber nur raus, wenn ich noch ein Minus einbaue. |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 20:47 Titel: |
|
Da meinst du wahrscheinlich das Minuszeichen in , das sich in
auswirkt.
Eine Drehmatrix um eine beliebige Achse im Raum sieht etwas komplizierter aus, siehe
http://de.wikipedia.org/wiki/Rotationsmatrix |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 20:32 Titel: |
|
Mal eine dumme Frage, geht die Z-Achse in positvier Richtung auf mich zu oder von mir weg. Wenn mein Ergebnis richtig seien sollte komme ich darauf das sie auf mich zu geht. Ich dachte eigentlich aber immer, dass sie von mir weg geht. Ansonsten hab ich ein Minus irgendwo vergessen.
EDIT: Und wie sieht diese Drehmartix aus... bzw. eigentlich hab ich keine Ahnung, was ne Martix genau ist.Bzw.: Muss ich nicht meine gesamte Ebene auf der ich jetzt alles berechnet habe nicht so drehen, dass das B-Feld wieder in positvier z-Achse relativ zu dieser Ebene verläuft ? Weill, das Zentrum Z wird ja auch ein anderes... |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 19:57 Titel: |
|
pressure hat Folgendes geschrieben: | Nein
ist richtig.
|
Einverstanden, da hast du recht
Übersichtlicher wird dein Ergebnis, wenn du es in der Form
hinschreibst, dann sieht man den konstanten und den sich drehenden Anteil übersichtlicher getrennt.
------------------------------
Wenn du das ganze jetzt dreidimensional rechnen möchtest und versuchen möchtest, auch Magnetfelder zuzulassen, die nicht parallel zur z-Achse sind, dann musst du den Vektor mit einer dreidimensionalen Drehmatrix um die Richtung des Magnetfeldes drehen. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 19:45 Titel: |
|
Nein
ist richtig. Ich gehen vom Punkt in das Zentrum der Kreisbwegung in dem ich dem Vektor folge. Von diesem Punkt gehe ich den Radius in der anderen Richtung (deswegen davor der Orientierungswechsel), also der gedreht letzlich zum Punkt . Die Richtung meines Magnetfledes habe ich durch das Kreuzprodukt mit
, dies ist das Magnetfeld, dass auf die Ebene senkrecht steht. Wenn ich mit
kreuze geht das Magnetfeld in die andere Richtung. Momentan geht es in z+.
Aber wie bringe ich das jetzt auf 3D. |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 19:33 Titel: |
|
Ich glaube, so ist es komplett richtig bis auf die letzte Zeile, in der du fälschlicherweise
anstatt einfach nur richtig
hingeschrieben hast
Und damit das Vorzeichen deines Vektors stimmt, musst du dir noch die Richtung des zugehörigen Magnetfeldes (in +z - Richtung oder in -z - Richtung?) überlegen. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 19:23 Titel: |
|
Ich kann den Mittelpunkt des Kreises nicht in den Ursprunge legen, da der Anfangspunkt der Bewegung also relativ zum Mittelpunkt verschieden ist, je nach dem in welche Richtung das Elektron fliegt.
Ok, stimmt, der Radius muss nicht auf den Vektor des Punkts sondern auf dem Vektor der Geschwindigkeit senkrecht stehen. Also:
Ich hab am Anfang einem Punkt
Dieser Punkt hat eine Geschwindigkeit:
Auf der Geschwindigkeit steht der Radius senkrecht.
Dann ist das Zentrum für die Zentripedalbewegung:
Denn Vekotr r drehen ich um den Winkel und drehe seine Orientierung um.
Ich erhalte für das gedrehte r mit hilfe der Additionstheoreme:
Und damit müsste der neue Punkt sein:
Ist es so richtig ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 17:53 Titel: |
|
Ich verstehe ganz am Anfang schon nicht so recht, warum der Vektor für den Radius auf dem Ortsvektor des Punktes senkrecht stehen müssen soll.
Magst du vielleicht lieber einfach den Mittelpunkt des Kreises erst mal in den Koordinatenursprung legen? Dann wird auch das Drehen viel unkomplizierter.
Für einen Ursprung, der woanders liegt, musst du dann hinterher einfach nur noch alle Ergebnisse um einen konstanten Vektor verschieben. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 14:58 Titel: |
|
Also am Anfang habe ich den Punkt:
Auf diesem steht der Radius senkrecht...
Ich hab keine Ahnung ob das jetzt richtig ist... hab sowas noch nie gemacht:
Dann ist das Zentrum für die Zentripedalbewegung:
Jetzt müsste ich nur noch den negative Vektor r drehen und zu z addieren und ich bekomme den neuen Punkt.
Aber wie drehe ich den Vektor... ich hätte jetzt versucht den Vektor r in Polarform zu bringen und dann den Drehwinkel zu dem eigentlich Winkel hinzu zu zählen und dann wieder zur Normalform umwandeln... mal probieren.
Ich erhalte für das gedrehte r:
Und damit müsste der neue Punkt sein:
Kann das jmd. von euch bestätigen ? Und wie übetrage ich das auf 3D ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 13:49 Titel: |
|
Genau Um die Drehrichtung, das heißt, um die Vorzeichen in dieser Transformation, kannst du dich dann am Ende entsprechend der Magnetfeldrichtung noch kümmern. |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 13:44 Titel: |
|
? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 13:41 Titel: |
|
Zitat: | Aber wie rechne ich die Kooardinaten aus...
|
Tipp: Weißt du, wie man Polarkoordinaten (das sind dein und dein ) in kartesische Koordinaten transformiert? |
|
![](templates/subSilver/images/spacer.gif) |
schnudl |
Verfasst am: 09. Jun 2007 13:39 Titel: |
|
pressure hat Folgendes geschrieben: | Ich weiß warum sich der Betrag der Geschwindigkeit erhöt:
Ich addiere ja immer eine wenn auch kleine Komponete zur Geschwindigkeit hinzu. Also muss sich zwangslaufig die Geschwindigkeit über kurz oder lang erhöhen. |
Dachte ich mir
Der Geschwindigkeitszuwachs ist ja immer senkrecht zur momentanen Geschwindigkeit, das musst Du natürlich berücksichtigen. Dann brauchst Du auch kein Runge Kutta ... |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 13:36 Titel: |
|
Also der Radius ist:
Drehwinkel:
Aber wie rechne ich die Kooardinaten aus... gibt es eine vektorielle Form der Zentripedalkraft ? |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 13:09 Titel: |
|
pressure hat Folgendes geschrieben: |
Ich hab mir auch schon überlegt, dass ich einfach in dem Intervall von einer konstanten Feldstärke aus gehen, ich damit eine Kreisbahn erhalte. Und ich dann einfach nur den Punkt auf der Kreisbahn berechne aufdem das Elektron liegen müsste. |
Einverstanden, das ist viel physikalischer
Dann verwendest du für deine Berechnung, dass du weißt, dass sich das Elektron auf Kreisbahnstückchen bewegt und nicht auf geraden Bahnstückchen, und du verwendest, dass du weißt, dass sich nach einem Zeitintervall im Magnetfeld nicht der Betrag, sondern nur die Richtung des Geschwindigkeitsvektors verändert haben kann.
Magst du die Formeln dafür erst einmal in einer Ebene aufstellen, bevor du dich daran wagst, das ins dreidimensionale Rechnen mit Vektoren zu übertragen? |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 09. Jun 2007 12:57 Titel: |
|
Ich weiß warum sich der Betrag der Geschwindigkeit erhöt:
Ich addiere ja immer eine wenn auch kleine Komponete zur Geschwindigkeit hinzu. Also muss sich zwangslaufig die Geschwindigkeit über kurz oder lang erhöhen.
Von einem Runge Kutta Verfahren habe ich noch nie gehört und habe auch keine Ahnung wie ich dieses benutzen soll. Hast du vielleicht eine gute Quelle die dieses Verfahren erklärt ?
Ich hab mir auch schon überlegt, dass ich einfach in dem Intervall von einer konstanten Feldstärke aus gehen, ich damit eine Kreisbahn erhalte. Und ich dann einfach nur den Punkt auf der Kreisbahn berechne aufdem das Elektron liegen müsste. Nur das einfach so, macht mir Probleme. Ich kenne mich mit der Vektorrechnung im 3-Dimensionalenraum nicht genügend aus. |
|
![](templates/subSilver/images/spacer.gif) |
schnudl |
Verfasst am: 09. Jun 2007 08:34 Titel: |
|
Falls du hier keinen prinzipiellen Fehler drin hast (!) würde ich dir ein stabiles Integrationsverfahren nach Runge Kutta empfehlen. Solche Integrationsmethoden aus dem Hosensack sind zwar oft, aber nicht immer genau genug. |
|
![](templates/subSilver/images/spacer.gif) |
dermarkus |
Verfasst am: 09. Jun 2007 01:31 Titel: Re: C++:Simulation einer Kreisbewegung mit Hilfe der Lorenzk |
|
pressure hat Folgendes geschrieben: |
Warum bekomme ich keine Kreisbahn |
Magst du dir da am einfachsten mal in einer Skizze aufmalen, was bei einem einzelnen Schritt passiert? Warum verändert sich der Betrag der Geschwindigkeit während dieses Schrittes? |
|
![](templates/subSilver/images/spacer.gif) |
pressure |
Verfasst am: 08. Jun 2007 23:39 Titel: C++:Simulation einer Kreisbewegung mit Hilfe der Lorenzkraft |
|
Ich versuche gerade eine Simulation der Bewegung eines Elektrons unter dem Einfluss eines senkrecht auf der Anfangsgeschwindigkeit stehenden homogenen Magnetfeldes zu programmieren. So weit ich weiß, müsste man dabei eine Kreisbahn erhalten.
Ich hab folgenden Algorithmus verwendet:
Ich rechne aus dem Kreuzprodukt der Geschwindigkeit mit der magnetische Flussdichte die Beschleunigung aus.
Dann multipliziere ich die Beschleunigung mit dem Zeitintervall und addiere die alte Geschwindigkeit, sodass ich die neue Geschwindigkeit erhalte.
Mit dieser neuen Geschwindigkeit rechne ich dann den Weg aus, den das Elektron innerhalb des Zeitintervalles zurückgelegt hat. Und bewegen anschließend die Position des Elektrons um den berechneten Weg. Dies wiederhole ich mit möglichsten kleine Intervallen (0,01s) sehr oft.
Dennnoch nihmt der Betrag der Geschwindigkeit immer mehr zu, sodass eigentlich eine Spiralbahn entsteht. Wenn ich das Intervall als beschleunigtes ansehe (also statt "v*t" "0.5 a * t^2" verwende ), dann bekomme ich noch größere Abweichungen.
Warum bekomme ich keine Kreisbahn und wie bekomme ich eine, bzw. vielleicht bekomme ich ja eine, aber nur mit unendlich kleinen Intervallen ? Wie kann ich den Algorithmus verändern, sodass ich auch bei größeren Intervallen eine Kreisbahn bekomme.
Ich danke für jede Anregung. |
|
![](templates/subSilver/images/spacer.gif) |