12.02.2014 Aufrufe

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

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.

7.10. GEWÖHNLICHE DIFFERENTIALGLEICHUNGEN IN MATLAB 287<br />

7.10 Gewöhnliche Differentialgleichungen in MatLab<br />

§ 1082 Diese MatLab-Ergänzung gliedert sich in zwei Teile. Im ersten Teil werden wir die<br />

aus Abschn. 7.9 bekannten numerischen Verfahren von Hand in MatLab implementieren. Im<br />

zweiten Teil werden wir zum Vergleich einen kurzen Blick auf die in MatLab implementierten<br />

Solver für gewöhnliche Differentialgleichungen werfen und die Unterschiede zu den Hand<br />

gestrickten Verfahren heraus stellen.<br />

7.10.1 Grundidee numerische Verfahren handgestrickt<br />

§ 1083 <strong>Numerische</strong> Verfahren zur Lösung von gewöhnlichen Differentialgleichungen können<br />

in jeder Programmiersprache realisiert werden. Als Vorübung dazu werden wir die in Abschn.<br />

7.9 besprochenen Verfahren selbst als Routinen in MatLab darstellen.<br />

§ 1084 Dazu gehen wir von einer Differentialgleichung aus, die in der Form<br />

ẋ = f(t, x)<br />

gegeben ist. Diese Differentialgleichung ist im Intervall von t 1 bis t 2 zu integrieren. Die Zahl<br />

der bei der Integration verwendeten Schritte n steht mit der Schrittweite ∆t in Beziehung<br />

gemäß<br />

∆t = t 2 − t 1<br />

n<br />

.<br />

§ 1085 Als einfaches numerisches Beispiel und zum Test der verschiedenen Verfahren wählen<br />

wir die Differentialgleichung<br />

tẋ − x = t 2 + 4<br />

oder aufgelöst nach ẋ<br />

ẋ = t2 + 4 + x<br />

t<br />

.<br />

Die Gleichung ist für die Randbedingung x(1) = 2 im Intervall von +1 bis +5 zu lösen. Die<br />

allgemeine analytische Lösung dieser DGL ist<br />

x = t 2 − 4 + ct .<br />

Aus der Anfangsbedingung ergibt sich für die Integrationskonstante c = 5 und damit als<br />

Lösung der DGL für die gegebenen Anfangsbedingungen<br />

x = t 2 − 4 + 5t . (7.50)<br />

Zwischenrechnung 44 Klassifizieren Sie die DGL und lösen Sie sie von Hand.<br />

§ 1086 Die folgenden MatLab-Beispiele sind auf verschiedene Weisen realisiert – als Skripte<br />

für die Funktion aus § 1085 mit Vergleich mit der theoretischen Lösung oder als MatLab-<br />

Funktionen, die für beliebige Differentialgleichungen aufgerufen werden können. In letzterem<br />

Fall zwar mit graphischer Darstellung der numerischen Lösung aber natürlich ohne den Vergleich<br />

mit der analytischen Lösung, da MatLab diese nicht bestimmen kann.<br />

7.10.2 Euler’sches Streckenzugverfahren<br />

§ 1087 Das Euler’sche Streckenzugverfahren (oder kurz Euler Verfahren) extrapoliert die<br />

gesuchte Funktion x(t) mit Hilfe der durch f(t, x) gegebenen Steigung:<br />

x(t i+1 ) = x(t i ) + ∆t f(x i , t i ) mit x(t o ) = x o und t i = t o + i ∆t . (7.51)<br />

Darin ist ∆t die Schrittweite in t. Diese Gleichung ist, von der Anfangs- bzw. Randbedingung<br />

ausgehend, n-mal zu iterieren, bis das Ende des Integrationsintervalls erreicht ist.<br />

c○ M.-B. Kallenrode 13. März 2007

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!