Teilchenbewegungen in el./magn. Feldern (Visualisierung)
Teilchenbewegungen in el./magn. Feldern (Visualisierung)
Teilchenbewegungen in el./magn. Feldern (Visualisierung)
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