24.02.2014 Aufrufe

Teilchenbewegungen in el./magn. Feldern (Visualisierung)

Teilchenbewegungen in el./magn. Feldern (Visualisierung)

Teilchenbewegungen in el./magn. Feldern (Visualisierung)

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3.4 MATLAB ODE Suite Numerische Beschreibung der Bewegung<br />

Die verwendeten Algorithmen gehen zwar auf die oben vorgest<strong>el</strong>lten grundlegenden<br />

Theorien zurück s<strong>in</strong>d aber im Laufe der Zeit durch neue Erkenntnisse und durch<br />

neue b<strong>in</strong>äre Implementationen <strong>in</strong> MATLAB r○ optimiert worden. Daher bieten die<br />

heutigen ”<br />

ODE Solver“, wie sie <strong>in</strong> den Versionen 6.5 (R<strong>el</strong>ease 13) und 7.0 (R<strong>el</strong>ease<br />

14) vorkommen, die schn<strong>el</strong>lste und komfortab<strong>el</strong>ste Möglichkeit ODE’s numerisch zu<br />

lösen. Zur weiteren Optimierung be<strong>in</strong>halten die Runge-Kutta Verfahren immer e<strong>in</strong><br />

Paar von Verfahren unterschiedlicher Ordnung (Analogie siehe Anhang C.3). E<strong>in</strong><br />

weiterer Vorteil, den MATLAB r○ bei der Lösung von ODE’s zur Verfügung st<strong>el</strong>lt,<br />

ist, dass alle Lösungsverfahren mit e<strong>in</strong> und der s<strong>el</strong>ben Befehlstruktur aufgerufen<br />

werden können, ohne dass man für jedes Verfahren e<strong>in</strong>e spezifizierte benötigt.<br />

3.4.1.1 Aufruf e<strong>in</strong>es ODE Solvers<br />

Die numerischen Lösungsverfahren s<strong>in</strong>d <strong>in</strong> MATLAB r○ standardisiert worden, dieses<br />

führt zu e<strong>in</strong>er e<strong>in</strong>fachen Handhabung und ermöglicht dem Benutzer e<strong>in</strong> hohes<br />

Maß an Flexibilität, da mit nur kle<strong>in</strong>en Änderungen e<strong>in</strong> anderer ”<br />

ODE Solver“<br />

e<strong>in</strong>gebunden werden kann. In diesem Abschnitt soll die MATLAB r○ Syntax zur Behandlung<br />

von ODE Problemen beschrieben werden und die e<strong>in</strong>z<strong>el</strong>nen Optionen, die<br />

MATLAB r○ dazu bietet näher erläutert werden. Die Syntax zum Aufruf e<strong>in</strong>es ”<br />

ODE<br />

Solvers“ sieht immer wie folgt aus<br />

>> [x,y] = solvername(@fun,[x<strong>in</strong>itial xf<strong>in</strong>al], y0, {options})<br />

Dieser Aufruf erfordert, dass das System von Differentialgleichungen bzw. Differentialgleichungen<br />

höherer Ordnung, wie <strong>in</strong> Abschnitt 3.1 beschrieben, angesehen werden<br />

können und vom Problem her der Form y ′ = f(x, y) s<strong>in</strong>d. Beim Aufruf ist @fun<br />

der Name der Funktion, die die Differentialgleichung bestimmt. Das Intervall über<br />

w<strong>el</strong>ches die Funktion <strong>in</strong>tegriert werden soll, ist dabei durch [x<strong>in</strong>itial xf<strong>in</strong>al] gegeben,<br />

<strong>in</strong> der Dokumentation von MATLAB r○ , die mit dem Aufruf doc solvername<br />

aufgerufen wird, f<strong>in</strong>det man an dieser St<strong>el</strong>le e<strong>in</strong>en Vektor tspan, dieser muss den<br />

x<strong>in</strong>itial- und xf<strong>in</strong>al-Wert enthalten. MATLAB r○ geht dann von e<strong>in</strong>er natürlichen<br />

Schrittweite aus und berechnet hierzu im Intervall die Lösungen. Hat der Vektor<br />

tspan mehr als zwei Elemente, so berechnet MATLAB r○ die Lösungen der Differentialgleichungen<br />

explizit nur an diesen Punkten. Dann ist es dem Benutzer überlassen,<br />

<strong>in</strong> w<strong>el</strong>cher Weise er die Daten weiterverarbeitet und w<strong>el</strong>che Interpolation er für<br />

die Darst<strong>el</strong>lung verwenden möchte. Der Wert y0 gibt die Anfangsbed<strong>in</strong>gungen der<br />

e<strong>in</strong>z<strong>el</strong>nen Gleichungen vor, mitt<strong>el</strong>s der Anzahl der Elemente dieses Vektors, ist es<br />

MATLAB r○ möglich die Anzahl der Differentialgleichungen zu bestimmen, die das<br />

System beschreiben und die g<strong>el</strong>öst werden müssen.<br />

Der Vektor options ist optional, er wird durch die Funktion odesets erzeugt. Hierbei<br />

kann man der Funktion als Str<strong>in</strong>g die b<strong>el</strong>iebigen Optionen übergeben und den<br />

gewünschten Zahlenwert. Hieraus werden die passenden Parameter für die e<strong>in</strong>z<strong>el</strong>nen<br />

ODE Solver“ automatisch zusammengest<strong>el</strong>lt. Dieses ist e<strong>in</strong>e weitere Optimierung<br />

”<br />

der Lösungsverfahren bzw. des Aufrufs, da man auf diese Weise nicht s<strong>el</strong>bst e<strong>in</strong>e<br />

Auswahl aus den Parametern treffen muss mit denen die Lösungsverfahren arbeiten.<br />

Hierbei ist die wichtigste Option die auch schon oben angesprochene Toleranz<br />

des Fehlers, man kann die r<strong>el</strong>ative R<strong>el</strong>Tol und die absolute Toleranz AbsTol setzen.<br />

30

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!