Seite 1 von 1

Übung 9.1

Verfasst: 1. Jan 2011 19:31
von mister_tt
Hi,

Erstmal frohes Neues und so...

Mir ist noch nicht ganz klar, wie wir in der 9.1 das grafisch machen sollen... Ist eine Grafik wie im folgenden Link über dem Abschnitt "Das Verfahren von Heun" gefordert? http://www.hsg-kl.de/faecher/m/fortbildung/dgl/dgl1.htm Mir ist noch nicht klar, wieso ich dort die Tangente einzeichnen soll... Zur grafischen "Lösung" hilft mir die doch nicht wirklich weiter, oder? Ich hätte einfach munter diese schönen Rechtecke gezeichnet...
Leider kam halt in der Vorlesung mal wieder auch kein Beispiel vor, wie man das grafisch macht -.-

Viele Grüße,
Simon

Re: Übung 9.1

Verfasst: 2. Jan 2011 16:57
von igor.a
Beim expliziten Eulerverfahren gilt ja \(x_{k+1}=x_k + h \cdot f(x_k).\quad f(x_k)\) ist die Steigung von \(x_k\), diese Steigung ist durch die kleinen Pfeile im Richtungsfeld dargestellt. \(h \cdot f(x_k)\) gibt an, wieviel man nach oben gehen muss (von einem Punkt \((t_k, x(t_k))\) aus), wenn man h Einheiten nach rechts geht.

Grob gesagt bestimmt man beim expl. Eulerverfahren\((t_{k+1}, x(t_{k+1}))\), indem man von \((t_k, x(t_k))\) aus dem Richtungspfeil folgt, und zwar so, dass man dabei h Einheiten nach rechts geht.



Was mich interessieren würde: bringt das Richtungsfeld etwas bei der b) ? Wenn man beim impl. Eulerverfahren nach \(x_{k+1}\) umformt, ist die Rechte Seite eine ganz andere, sodass man das Richtungsfeld nicht wirklich gebrauchen kann...
Edit: Oder der Ansatz mit dem Auflösen ist verkehrt; Nimmt man dann beim impliziten Euklid \(x_{k+1}=x_k + h \cdot f(x_{k+1})\) zur Bestimmung von \(x_{k+1}\) in \(f(x_{k+1})\) den expliziten Euklid?

Re: Übung 9.1

Verfasst: 3. Jan 2011 11:52
von dschneid
Ich könnte mir vorstellen, dass die Konstruktion so funktioniert: Wenn man schon \(x_k\) kennt, also den Punkt \((t_k, x_k)\) schon konstruiert hat, dann sucht man auf der vertikalen Geraden aller Punkte mit \(t = t_{k+1}\) denjenigen Punkt, durch den man eine Gerade mit der an dieser Stelle vom Richtungsfeld gegebenen Steigung (nämlich \(f(x_{k+1})\)) legen kann, die auch durch \((t_k, x_k)\) läuft. Dann und nur dann erfüllt nämlich die Koordinate \(x_{k+1}\) dieses Punktes die Iterationsgleichung des impliziten Verfahrens.

Allerdings hätte ich mal eine grundsätzliche Frage: Kann es sein, dass die mit dem impliziten Verfahren berechneten Punkte sich immer weiter von der eigentlichen Lösung entfernen? Ich hatte nämlich mal einige Punkte berechnet, und da hat sich das so ergeben. Wenn das wirklich so ist, dann scheint meine Konstruktion zu stimmen, anderenfalls ist meine Umformung nach \(x_{k+1}\) falsch. Kann das also vielleicht jemand bestätigen?

Re: Übung 9.1

Verfasst: 3. Jan 2011 13:59
von Der_olle_Schwoebel
dschneid hat geschrieben:Allerdings hätte ich mal eine grundsätzliche Frage: Kann es sein, dass die mit dem impliziten Verfahren berechneten Punkte sich immer weiter von der eigentlichen Lösung entfernen? Ich hatte nämlich mal einige Punkte berechnet, und da hat sich das so ergeben. Wenn das wirklich so ist, dann scheint meine Konstruktion zu stimmen, anderenfalls ist meine Umformung nach \(x_{k+1}\) falsch. Kann das also vielleicht jemand bestätigen?
Also ich komm auch auf ziemlich abweichende Werte (sowohl rechnerisch als auch bei der grafischen Lösung), wobei ich nicht wüsste wie meine Iterationsvorschrift falsch sein sollte. Die Werte gehen jedenfalls mit jedem Schritt weiter ins Negative ohne Aussicht auf Besserung [geht ja auch gar nicht, der Kosinus in der Iterationsvorschrift kann das \(x_(t_{k-1})\) ja nicht ausgleichen wenn er sich nur zwischen -1 und 1 bewegt]

Re: Übung 9.1

Verfasst: 3. Jan 2011 15:02
von dschneid
Dann passt's ja. Die Schrittgröße ist eben einfach zu groß. Bei kleineren Schritten würde man natürlich näher an der tatsächlichen Lösung liegen und dann auch gegen Ende noch die Kurve kriegen.

Re: Übung 9.1

Verfasst: 3. Jan 2011 18:30
von igor.a
dschneid hat geschrieben:Ich könnte mir vorstellen, dass die Konstruktion so funktioniert: Wenn man schon \(x_k\) kennt, also den Punkt \((t_k, x_k)\) schon konstruiert hat, dann sucht man auf der vertikalen Geraden aller Punkte mit \(t = t_{k+1}\) denjenigen Punkt, durch den man eine Gerade mit der an dieser Stelle vom Richtungsfeld gegebenen Steigung (nämlich \(f(x_{k+1})\)) legen kann, die auch durch \((t_k, x_k)\) läuft. Dann und nur dann erfüllt nämlich die Koordinate \(x_{k+1}\) dieses Punktes die Iterationsgleichung des impliziten Verfahrens.
Cool, danke für den Tipp :)

Re: Übung 9.1

Verfasst: 4. Jan 2011 08:44
von mister_tt
Dürfte ich dann auch nochmal in meinem Thread was schreiben? :-)
igor.a hat geschrieben:Beim expliziten Eulerverfahren gilt ja \(x_{k+1}=x_k + h \cdot f(x_k).\quad f(x_k)\) ist die Steigung von \(x_k\), diese Steigung ist durch die kleinen Pfeile im Richtungsfeld dargestellt. \(h \cdot f(x_k)\) gibt an, wieviel man nach oben gehen muss (von einem Punkt \((t_k, x(t_k))\) aus), wenn man h Einheiten nach rechts geht.

Grob gesagt bestimmt man beim expl. Eulerverfahren\((t_{k+1}, x(t_{k+1}))\), indem man von \((t_k, x(t_k))\) aus dem Richtungspfeil folgt, und zwar so, dass man dabei h Einheiten nach rechts geht.
Das ist schon klar, aber wie zeichne ich das ein? Es ist doch so, dass beim expliziten Euler die Fläche unter/über der Funktion durch ein Rechteck mit der Höhe \(f(x_k)\) angenähert wird. Und quasi alle Zeichnungen zum expl/impl. Euler sind so, dass einfach diese Rechtecke eingezeichnet werden... Was für ne Steigung soll ich da noch einzeichnen? Was bringt mir das?
Zumal es schon unübersichtlich genug ist die Rechtecke des expl. / impl. Eulers in eine Grafik einzuzeichnen...

Re: Übung 9.1

Verfasst: 4. Jan 2011 10:53
von igor.a
Die Rechtecke kannst du in dieser Aufgabe vergessen. Sie sind in einem anderen Graph sinnvoll, nämlich in dem von f(x(t)).
Hier hast du aber ein Richtungsfeld, das gleichzeitig als Graph von x(t) dient. Also: \((t_0,x_0), (t_1,x_1), ...\) einzeichnen, jeden Punkt mit seinem Nachfolger verbinden, fertig. :)

Re: Übung 9.1

Verfasst: 4. Jan 2011 11:31
von Der_olle_Schwoebel
Beim Eulerverfahren (explizit wie implizit) hast du ja einen Punkt und die Steigung für diesen Punkt (stimmt fürs implizite nicht ganz, aber "übersehen" wir das mal).
x + h*"Steigung" --> d.h. im Richtungsfeld schaust du die aktuelle Steigung am Punkt an und zeichnest eine Gerade bis t+1 (weil Schrittweite h = 1)

Beim impliziten Verfahren hat das dschneid schon beschrieben: Du hast deinen Punkt x(t), brauchst aber die Steigung am Punkt x(t+1), also schaust du wo an der "vertikalen Geraden" bei t+1 die Steigung so liegt, dass sie durch x(t) läuft.


In diesem Fall suchst du ja nicht die Fläche unter der Funktion sondern eine Lösung des Anfangswertproblems, d.h. wieder eine Funktion (bzw. Punkte, durch die man dann interpolieren kann)

Re: Übung 9.1

Verfasst: 5. Jan 2011 15:11
von mister_tt
Ich danke euch beiden vielmals für eure Antworten - ihr habt mir sehr weiter geholfen!

Viele Grüße,
Simon