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.

288 KAPITEL 7. GEWÖHNLICHE DIFFERENTIALGLEICHUNGEN<br />

Abbildung 7.22: <strong>Numerische</strong> Lösung<br />

der gewöhnlichen Differentialgleichung<br />

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

Euler’schen Streckenzugverfahrens<br />

(oben) und relativer Fehler des<br />

Verfahrens (unten)<br />

Euler Vorwärts<br />

eulerskript<br />

length<br />

§ 1088 Die numerische Lösung dieser DGL erfolgt durch wiederholtes Durchlaufen einer<br />

Schleife, d.h. wir finden endlich wieder ein Betätigungsfeld für eine for-Schleife. Das Verfahren<br />

ist im Skript 12 eulerskript gegeben, die für die Numerik entscheidenden Schritte sind<br />

die Festlegung der Parameter sowie die anschließende Schleife:<br />

fh=@(t,x) (t. ∧ 2+4+x)/t; tl=1.; tr=5.; dt=0.2; x=[tl:dt:tr]; x(1)=2;<br />

for i=2:length(t);<br />

x(i)=x(i-1) + dt*feval(fh,t(i-1),x(i-1));<br />

end<br />

In der ersten Zeile wird die Funktion einem Handle fh zugewiesen, der später an feval<br />

übergeben wird. Außerdem werden die Grenzen tl und tr des Integrationsintervalls sowie<br />

die Schrittweite dt festgelegt. daraus wird der Vektor x der x-Achse bestimmt. Außerdem ist<br />

der Anfangswert x(1 vorgegeben. Das eigentliche numerische Verfahren ist in den drei Zeilen<br />

darunter enthalten: sie enthalten die zu durchlaufende Schleife, wobei diese bei 2 beginnt (der<br />

Anfangswert ist ja bereits gesetzt) und insgesamt die gleiche Länge haben muss wie der Vektor<br />

in x; daher ist das Ende der Zählschleife durch die Länge length von x gegeben. 13 Die Zeile<br />

in der Zählschleife ist nur eine Umsetzung von (7.51) in die Terminologie von MatLab. Der<br />

numerisch bestimmte Funktionsverlauf ist im oberen Teil von Abb. 7.22 zusammen mit der<br />

analytischen Lösung gezeigt: die numerische Lösung reproduziert den Verlauf der analytischen<br />

Lösung selbst bei dieser relativ geringen Zahl von 20 Integrationsschritten bereits recht genau.<br />

Allerdings erkennen wir auch eine Eigenart aller numerischen Verfahren: die Abweichungen<br />

von der analytischen Lösungen nehmen mit zunehmender Zeit zu.<br />

§ 1089 Eine Möglichkeit, die Qualität des Lösungsverfahrens zu überprüfen, ist die Bildung<br />

von Residuen<br />

d = x num − x analytisch<br />

als absoluten Abweichungen der numerischen Lösung von der analytischen oder der relativen<br />

Residuen<br />

d rel = x num − x analytisch<br />

x analytisch<br />

.<br />

12 Alle Skripte sind in Anh. B.6.3 gegeben und unte rstud.ip zu finden.<br />

13 Im Prinzip können wir auch die Zahl der Schritte ausrechnen gemäß n = (x 2 − x 1 )/∆x und dieses n als<br />

Grenze in der for-Schleife verwenden. Dabei gehen wir allerdings das Risiko von Rundungsfehlern ein. Mit<br />

der Verwendung von length(x) dagegen wird in jedem Fall ein Vektor von y-Werten erstellt, der die gleiche<br />

Länge hat wie der Vektor der x-Werte.<br />

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

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!