(:requiretuid:)

Einführung in Computational Engineering – Vorlesung 9

Autor: Johannes Alef


Folien zur Vorlesung 9: Link
Folien zur Vorlesung 9 mit Anotationen: Link
Aufzeichnung der Vorlesung 9: Link
Übung 8: Link


Neben den Euler-Verfahren gibt es noch weitere Verfahren zur numerischen Integration. Im folgenden sollen zwei Verfahren höherer Ordnung gezeigt werden.
Verfahren höherer Ordnung haben einen kleineren Approximationsfehler und sind demzufolge geeignet, genauere Ergebnisse zu erzielen.
Auf der anderen Seite muss die Funktion pro Schritt mehrfach ausgewertet werden, wodurch der Rechenaufwand wesentlich höher wird. Außerdem muss die Funktion auf dem betrachteten Intervall oft genug stetig differenzierbar sein, damit der geringere Approximationsfehler garantiert werden kann.

Heun-Verfahren

Das Heun-Verfahren ist ein Verfahren zweiter Ordnung, d.h. es besitzt einen Approximationsfehler von . Es besitzt einen Prädiktor- und einen Korrektorschritt.

Die Verfahrensvorschrift ist
Dabei ist der Korrektor-Schritt mit
Und ist der Prädiktor-Schritt mit .
Der Prädiktor-Schritt bezieht also den Korrektor-Schritt mit ein.

Beim Heun-Verfahren wird das Integral im Gegensatz zum Euler-Verfahren nicht mit einem Rechteck sondern einem Trapez angenähert.

Runge-Kutta-Verfahren

Das Runge-Kutta-4-Verfahren ist ein Verfahren 4. Ordnung. Es besitzt also einen Approximationsfehler von . Dafür muss aber die Funktion auch auf dem betrachtetetn Intervall mindestens 4-mal stetig differenzierbar sein.

Das Verfahren ist gegeben durch:


Mit den zwischenschritten:





Grafische Erklärung der Verfahren

Explizites Euler-Verfahren:
Das explizite Euler-Verfahren kann man sich so vorstellen:
Will man vom Zeitpunkt den Schritt zum Zeitpunkt machen, so betrachtet man die Funktion zum Zeitpunkt . Man nimmt nun die Steigung an diesem Punkt und geht mit dieser zum Zeitpunkt .
Damit erhält man den Wert .

Implizites Euler-Verfahren:
Beim impliziten Euler-Verfahren betrachtet man hingegen die Steigung zum Zeitpunkt .
Man muss nun aus dem Richtungsfeld eine Steigung raussuchen, zu deren Position im Richtungsfeld man gelangt, wenn man diese Steigung zum Zeitpunkt am Punkt ansetzt und bis zum Zeitpunkt geht.

Heun-Verfahren:
Der Prädiktor-Schritt des Heun-Verfahrens entspricht dem Schritt des expliziten Euler-Verfahrens.
Die am neu erreichten Punkt ermittelte Steigung wird nun für den Prädiktor-Schritt genutzt.
Dazu wird vom Punkt mit dieser Steigung bis zum Zeitpunkt gegangen.
Der Punkt befindet sich nun in der Mitte zwischen den vom Korrektor- und vom Prädiktor-Schritt ermittelten Punkten.
Diesen Punkt erreicht man auch, wenn man vom Punkt mit der gemittelten Steigung aus Korrektor- und Prädiktor-Schritt bis zum Zeitpunkt geht.

Runge-Kutta-Verfahren 4. Ordnung:
Beim Runge-Kutta-Verfahren wird ähnlich vorgegangen.
Hier werden allerdings insgesamt vier Steigungen ermittelt.
Aus diesen Steigungen wird dann eine neue steigung ermittelt, wobei die 2. und 3. Steigung doppelt so stark gewichtet werden, wie die 1. und die 4..

Globaler Diskretisierungsfehler und Konvergenz

Die Abweichung der exakten Lösung und der des ESV ergibt den globalen Diskretisierungsfehler wobei die Näherungslösung zum Zeitpunkt ist und die exakte Lösung. Man spricht davon, dass das ESV die Konvergenzordnung besitzt, wenn die größte natürliche Zahl ist, für die gilt:

Die Konvergenzordnung gibt an, wie gut die Näherungslösung also die exakte Lösung approximiert. Damit ist der globale Diskretisierungsfehler ausschlaggebend für das Konvergenzverhalten des ESV.

Lokaler Diskretisierungsfehler und Konsistenz

Hier widme man sich der Fragestellung wie gut die Zuwachsfunktion die eigentliche Verfahrensfunktion approximiert. Diesbezüglich verwendet man den lokalen Diskretisierungsfehler

, welcher folgende Aussage über Konsistenz gibt:
	Das ESV ist konsistent mit der Ordnung , wenn  die größte natürliche Zahl ist, 
	für die gilt: 

Für ein konsistentes ESV folgt also, dass der Konsistenzfehler sehr klein wird und die Zuwachsfunktion die eigentliche Verfahrensfunktion für (Konsistenzbedingung) approximiert. Hier spricht man im allgemeinem von der Konsistenzordnung.

Schrittweitensteuerung

Konstante Schrittweiten haben zwei große Nachteile:

  • Sie sind ungenau, wenn sich die gesuchte Lösung in einigen Bereichen sehr stark ändert, da die Schrittweite eventuell zu groß ist und dadurch bestimmte Veränderungen der Lösung nicht beachten oder zu stark beachten.
  • Sie sind ineffiezient, wenn sich die gesuchte Lösung in einem Bereich nur sehr wenig ändert, da man in diesen Bereichen große Schrittweiten nutzen kann, ohne viel Genauigkeit zu verlieren.

Deswegen benutzt man oftmals eine Schrittweitensteuerung.
Aufgabe einer Schrittweitensteuerung ist es, die Schrittweite dynamisch anzupassen, so dass sie immer klein genug ist, um die gewünschte Genauigkeit zu garantieren, aber auch immer so groß, dass man keine unnötigen Schritte machen muss.
Dazu wird die Schrittweite an den lokalen Approximationsfehler angepasst, so dass dieser unter der gewollten Fhlerschranke bleibt.
Im folgenden sollen zwei übliche Ansätze für eine Schrittweitensteuerung erklärt werden.

Beim ersten Ansatz werden jeweils zwei Näherungen für berechnet.
Einmal mit der aktuellen Schrittweite und dann nochmal mit der Schrittweite . Dabei müssen mit der halbierten Schrittweite natürlich auch zwei Integrationsschritte gemacht werden, damit man beim gleichen Zeitpunkt die Ergebnisse vergleichen kann.
Aus den beiden approximierten Lösungen kann man den lokalen Fehler schätzen.
Liegt der Fehler unterhalb der vorgegebenen Toleranz, so kann der Schritt akzeptiert werden. In diesem Fall kann man mit der mit berechneten Lösung für weiterrechnen. Man nimmt diese Lösung, da sie genauer ist als die mit Schrittweite .
Liegt der Fehler über der vorgegebenen Toleranz, so muss man den Integrationsschritt mit einer neuen Schrittweiter wiederholen.
Der Aufwand ist bei diesem Verfahren recht hoch, da man für s Schritte des Verfahrens (gemeint sind hier die einzelnen Zwischenschritte eines Integrationsschrittes, also beim Heun Verfahren und ) -mal auswerten muss.
Bei der zweiten Variante betrachtet man zwei Verfahren unterschiedlicher Ordnung. Also z.B. ein Verfahren der Ordnung p und eines der Ordnung p+1.
Berechnet man nun mit beiden Verfahren mit der gleichen Schrittweite eine Näherung für , so kann man aus dem Unterschied dieser Lösungen und dem Unterschied der beiden Ordnungen den lokalen Fehler schätzen.
Auch hier gilt, dass wenn der Fehler untehlab der Toleranz liegt man mit der gefunden Lösung weiterrechnet und ansonsten den Schritt mit einer neuen Schrittweite wiederholt.
Hier wird die Lösung genutzt, die mit dem Verfahren höherer ORdnung gefunden wurde, da diese genauer ist.
Bei geschickter Wahl der beiden genutzten Verfahren erhöht sich der Rechenaufwand nur sehr gering. Wählt man die Verfahren so, dass sich nur die Koeffizienten in den späteren bzw. zusätzlichen Schritten des Verfahrens höherer Ordnung unterscheiden, so muss man hat man für die ersten Schritte des zweiten Verfahrens bereits die Lösungen berchnet.
Asl Beispiel seien hier die Runge-Kutta-Verfahren 4. und 5. Ordnung genannt.
Das RK-5 Verfahren ist identisch mit dem RK4- Verfahren, bis auf einen zusätzlichen Schritt .
Hier kann man also bis vom RK-4 Verfahren nutzen und muss nur zusätzlich noch ein berechnen.
Man muss also nur eine zusätzliche Funktionsauswertung pro Integrationschritt in kauf nehmen.

Der erste Ansatz hat einen wesentlich höheren Rechenaufwand. Dafür ist er aber robuster bei geringerer Ordnung.

Unstetigkeiten

Damit ein numerisches Verfahren der Ordnung p genutzt werden kann, muss die Funktion mindestens p mal stetig differenzierbar sein.
Bei Funktionen mit Unstetigkeiten ist im Bereich der Unstetigkeit diese Voraussetzung nicht gegeben.
Dieses Problem lässt sich lösen, falls die Funktion auf den abschnitten zwischen den Unstetigkeiten p-mal stetig differnezierbar ist und die Stellen, an denen die Funktion unstetig ist als Ereignisse bbeschrieben werden können, die vom Zustand oder der Zeit abhängig sind.

Ursachen

Ursachen von Unstetigkeiten sind z.b.:

  • Stoßvorgänge: sprunghafte Änderungen der Geschwindigkeit. Fällt z.B. ein Ball auf den Boden, so geht seine Geschwindigkeit zuerst nach unten, ab dem Moment des Aufpralls aber sofort nach oben (Kompression der Einfachheit halber ignoriert).
  • Reibung in mechanischen Systemen: Übergänge zwischen Gleit- und Haftreibung, also der Reibung, wenn ein Körper über eine Oberfläche rutscht und der Reibung, die einen Körper fest an seiner Position hält. Diese Übergänge sind ebenfalls unstetig. Man stelle sich einen Würfel auf einer kippbaren Platte vor. Die Geschwindigkeit in alle Richtungen ist 0. Wird die Platte nun gekippt, so fängt der Würfel ab einer bestimmten Schräglage der platte sofort an zu rutschen, die Geschwindigkeit ändert sich also nicht stetig.
  • Strukturvariable Systeme: Die Dimension des Zustands x ändert sich.

Schaltfunktionen

Hysterese: Ein Teil der Funktion hängt von der Vorgeschichte von x ab, d.h. je nach der Vorgeschichte kann f verschiedene Formen annehmen. Man benutzt zeitabhängige Eingangsfunktionen und Stellgrößen um diesen Umstand zu beschreiben.
Um den Wechsel zwischen den Zuständen der Funktion zu detektiern benutzt man Schaltfunktionen. Diese beschreiben die Stellen, an denen Unstetigkeiten auftreten.

Die Schaltfunktion hängt vom Zustand des Systems ab und muss bei den Schaltzeitpunkten eine Nullstelle haben.
Angenommen es wird ein geworfener Ball betrachtet. Der Zustand sei dirch die Variablen x und y beschrieben, wobei y = h die Höhe des Bodens bescheibt und es soll geschaltet werden, wenn der Ball den Boden berühert. Die Schaltfunktion wäre damit


Die Variable x ist irrelevant für die Schaltfunktion, kann also ignoriert werden.
Außerdem ist die Schaltfunktion nicht eindeutig. So wäre ebenfalls eine gültige Schaltfunktion, da sie die gleichen Nullstellen aufweist.

Ändert sich während eines Intergrationsschrittes das Vorzeichen der Schaltfunktion, so lieht zwischen den beiden Zeitpunkten ein Schaltzeitpunkt.
Das bedeutet, dieser muss ermittelt werden und dann muss ab diesem Zeitpunkt ein neuer Integrationsschritt gemacht werden.
Dabei muss die Schrittweite kllein genug sein um einen Vorzeichen wechsel zu detektieren. Wechselt die Schaltfunktion zwischen zwei Schritten zwei mal das Vorzeichen, so kann die Schaltfunktion dies nicht wiedergeben.

Selbsttest

  1. Einschrittverfahren sind …
  2. Explizite Einschrittverfahren sind einfacher zu implementieren als implizite Einschrittverfahren.
  3. Der Prädiktor im Heun-Verfahren nutzt die Ausgabe des Korrektors?
  4. Kann Runge-Kutta-4 mit Sprüngen umgehen, z.B. bei der Simulation von Spannung wenn ein Schalter umgelegt wird?
  5. Bei welcher Art von Transferfunktion würde Schrittweitensteuerung einen besonders grossen Unterschied in der Effizienz und Genauigkeit machen?
  6. Bei Unstetigkeiten in der Transferfunktion muss …

(:antwortchecker:)

Feedback

Bei Fehlern oder Anregungen zu dieser Seite schicken Sie bitte eine Email an
johannes_pramod.alef@stud.tu-darmstadt.de.

  

zum Seitenanfang