0 Daumen
531 Aufrufe

Aufgabe Heun-Verfahren:

Gegeben sei das Anfangswertproblem einer skalaren gewöhnlichen Differentialgleichung

\( y^{\prime}(x)=f(x, y(x)), \quad y(a)=y_{0}, \quad x \in[a, b] \)

Schreiben Sie in MATLAB eine Funktion heun \( (a, b, h, y 0, f) \), welche die Näherungslösungen aus dem Heun-Verfahren zu fester Schrittweite \( h>0 \) auf einem Gitter im Intervall \( [a, b] \) berechnet.

Wenden Sie das Programm auf das Anfangswertproblem

\( y^{\prime}(x)=\frac{2 x}{y^{2}}, \quad y(0)=2, \quad x \in[0,10] \)

mit den Schrittweiten \( h=\frac{1}{2}, \frac{1}{5}, \frac{1}{10}, \frac{1}{20} \) an. Stellen Sie die Ergebnisse auch grafisch dar. Vergleichen Sie die Näherungslösungen mit der exakten Lösung \( y(x)=\sqrt[3]{3 x^{2}+8} . \) Berechnen Sie insbesondere den Fehler am Endpunkt \( x=10 . \) Welche Abhängigkeiten des Fehlers von der Schrittweite beobachten Sie?


Wie kann ich den Fehler am Endpunkt mathematisch berechnen?

Avatar von

Du sollst mit Deinem Programm Näherungslöungen berechnen und die Differenz zwischen diesen Näherungslösungen und der exakten Lösung berechnen.

Gruß Mathhilf

Mit dem Betrag |Näherungslösungen - exakte Lösung| oder ohne Betrag Näherungslösungen - exakte Lösung ?

1 Antwort

0 Daumen
 
Beste Antwort

Der Algorithmus wäre so. Musst Du nur noch in Matlab umsetzen.

blob.png

Avatar von 39 k

Ich habe diese Grafik in Matlab bekommen.

Meine Frage ist jetzt: sollte ich die gleiche Grafik bekommen wenn h=1/5,1/10,1/20 ?


Unbenannt.PNG

Die Grafiken unterscheiden sich, jenachdem welches \( h \) Du verwendest. Vielleicht ist es besser die jeweiligen Differenzen in einer Grafik darzustellen.

Bei mir sehen die Grafiken gleich aus Ich weiß nicht warum könntest du mir bitte zeigen wie die Grafiken aussehen so wie das Bild das du mir geschickt hast

Vielleicht ist es besser die jeweiligen Differenzen in einer Grafik darzustellen

Wie meinst du?

In meiner Grafik rechts, siehst Du die Differenz zwischen exakter Lösung und Näherungslösung für \( h = \frac{1}{2} \). Jetzt kannst Du diese Differenz auch für die anderen \( h \) Werte ploten, und zwar alles in einer Grafik. Dann siehst Du die Verbesserung der Näherungslösung, je kleiner \( h \) wird.

Ja aber die Aufgabe verlangt das nicht oder?

Wie ich verstanden habe ich muss die Näherungslösungen für alle werte von h Ploten und nicht von der Differenz oder?

Wie ich verstanden habe ich muss die Näherungslösungen für alle werte von h Ploten und nicht von der Differenz oder?

Ja - ich habe die Aufgabenstellung genauso verstanden.

Nun ist es aber so, dass mit einem Wert von \(h=1/2\) - will heißen 20 Schritte von 0 bis 10 - die Näherung bereits sehr gut ist. Der Y-Wert bei \(x=10\) liegt nur ca. \(0,01\%\) von der exakten Lösung entfernt.

Wenn man die errechneten Kurven übereinander zeichnet, dann sehen sie aus wie eine einzige. Der Strich, der den Graphen plottet, ist dicker als die Abweichung.

Vielleicht bezieht sich das \(h=1/2\) auf das gesamte Intervall von \([0\dots 10]\). Dann wäre das konkrete \(\Delta h\) mit dem gerechnet wird \(\Delta h = 5\). Und \(h=1/5\) hieße \(\Delta h=2\). So gerechnet würden sich die Graphen deutlich unterscheiden.

blob.png

Der blaue Graph ist die mit zwei Schritte mit \(\Delta h=5\), die Kurve gelbe der Graph mit \(\Delta h=2\) und die rote Kurve ist der Graph der exakten Lösung.

@werner-salomon

Was sollte ich also jetzt machen um die Aufgabe richtig zu machen? Die Differenz ploten oder lasse ich es so wie mein Bild oben?

Was sollte ich also jetzt machen um die Aufgabe richtig zu machen?

Das musst Du letzlich selber entscheiden! Vielleicht beides.

So wie die Aufgabe gestellt ist, macht sie eigentlich keinen Sinn. Mit kleiner werdenden \(h\) wird die Näherung immer besser. Das ist in jedem Fall unbestritten.

Wenn Du das \(\Delta h\) so wählst, wie in meinem letzten Kommentar, ist das deutlicher zu sehen, als mit einem \(h\), was bereits sehr klein ist.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community