Autor |
Radau-IA-Verfahren |
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.40, vom Themenstarter, eingetragen 2021-11-07
|
Ich muss jetzt die globalen Fehler der Methode bei x = 1
Die Definition davon ist :
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbenavgfjdf_bgkjlgflbknnt.PNG
was sind y(x_N) und y_N in unserer Aufgabe? Hast du Idee?
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.41, eingetragen 2021-11-07
|
\quoteon(2021-11-07 00:32 - s-amalgh in Beitrag No. 40)
was sind y(x_N) und y_N in unserer Aufgabe?
\quoteoff
$y(x_N)$ ist die exakte Lösung an der Stelle $x_N$, in unserem Fall also $y(x_N)=e^{-\frac12x_N}$. $y_N$ ist der Wert, den das Radau-IA-Verfahren liefert.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.42, vom Themenstarter, eingetragen 2021-11-07
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.43, eingetragen 2021-11-07
|
\quoteon(2021-11-07 00:54 - s-amalgh in Beitrag No. 42)
e^(-1/2*x_N)
Wieso e?
\quoteoff
Weil das die Lösung von $y'(x)=-\frac12y(x)$, $y(0)=1$ ist.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.44, vom Themenstarter, eingetragen 2021-11-07
|
Code :
\sourceon Matlab
x(n+1)
y(n+1)
fehler = abs(exp(-x(n+1)/2) - y(n+1))
\sourceoff
Ausgabe:
ans = 1.0000 (Das ist x(n+1))
ans = 0.6065 (Das ist y(n+1))
fehler = 5.1963e-07 also 0.00000052
Richtig oder?
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.45, vom Themenstarter, eingetragen 2021-11-07
|
oder so vielleicht?
für x = [0,1]
\sourceon Matlab
x(1) = 0;
y(1) = 1;
h = [0.1, 0.05, 0.01, 0.005, 0.001];
for n = 1 : 10
[x(n+1), y(n+1)] = step(x(n), y(n), h(1), @(x) [0, -1/2]);
fehler(n+1) = abs(exp(-y(n+1)/2) - y(n+1));
end
\sourceoff
Ausgabe:
fehler =
Columns 1 through 5:
0 0.3297 0.2687 0.2104 0.1547
Columns 6 through 10:
0.1013 0.0504 0.0016 0.0449 0.0894
Column 11:
0.1319
Ich bin mir nicht sicher was richtig ist
Danke im Voraus für deine Antwort! :)
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.46, eingetragen 2021-11-07
|
\quoteon(2021-11-07 05:20 - s-amalgh in Beitrag No. 45)
oder so vielleicht?
\quoteoff
* Der Fehler wird in deiner Definition 2.3 ohne das abs definiert.
* Der exakte Wert ist nicht exp(-y(n)/2), sondern exp(-x(n)/2).
* Du musst den Fehler nur für das letzte $n=N$ bestimmen, nicht für alle $n$. Es würde daher reichen, wenn du das nach der Schleife machst.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.47, vom Themenstarter, eingetragen 2021-11-07
|
ich habe das so rausgekommen:
h = 0.1
x = 1.0000
y = 0.6065
fehler = 0.000000519628
h = 0.05
x = 1.0000
y = 0.6065
fehler = 0.000000065379
h = 0.01
x = 1.0000
y = 0.6065
fehler = 0.000000000526
h = 0.005
x = 1.0000
y = 0.6065
fehler = 0.000000000066
h = 0.001
x = 1.0000
y = 0.6065
fehler = 0.000000000001
Das muss richtig sein oder?
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.48, eingetragen 2021-11-07
|
\quoteon(2021-11-07 15:50 - s-amalgh in Beitrag No. 47)
Das muss richtig sein oder?
\quoteoff
Es wäre sinnvoller, wenn du die Zahlen nicht im Festkomma-Format ausgeben würdest.
Die Ergebnisse, die ich mit...
\sourceon matlab
h = [.1 .05 .01 .005 .001];
for i = 1 : length(h)
err(h(i))
end
function e = err(h)
x = 0; y = 1;
for n = 1 : 1/h
[x, y] = step(x, y, h, @(x) [0, -1/2]);
end
e = y - exp(-1/2*x);
end
\sourceoff
... erhalte, passen aber zu deinen.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.49, vom Themenstarter, eingetragen 2021-11-07
|
Wie kann ich loglog benutzen?
Soll ich in meinem Fall so schreiben? loglog(x,fehler1, x,fehler2, x,fehler3, x,fehler4, x,fehler5)
x ist gleich 1
Und ich meinte mit Fehler 1 bis 5 also wegen der 5 Schrittweitten
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.50, eingetragen 2021-11-07
|
\quoteon(2021-11-07 19:51 - s-amalgh in Beitrag No. 49)
Soll ich in meinem Fall so schreiben? loglog(x,fehler1, x,fehler2, x,fehler3, x,fehler4, x,fehler5)
\quoteoff
Du sollst loglog(h, e) schreiben, wobei h der Vektor der Schrittweiten und e der Vektor der Fehler ist.
So etwa:
\sourceon matlab
h = [.1 .05 .01 .005 .001];
for i = 1 : length(h)
e(i) = err(h(i));
end
loglog(h, e)
\sourceoff
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.51, vom Themenstarter, eingetragen 2021-11-07
|
Sollte so aussehen oder ?
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unberwhlwgihnannt.PNG
|
Profil
|
Delastelle
Senior  Dabei seit: 17.11.2006 Mitteilungen: 2306
 | Beitrag No.52, eingetragen 2021-11-08
|
Hallo,
zur Darstellung:
\sourceon Octave
loglog(...,'o')
\sourceoff
liefert schöne Datenpunkte.
Da sieht man was exakte Punkte sind und was nur ein Näherungsgerade ist.
In Matlab müsste es ähnlich sein wie in Octave.
Viele Grüße
Ronald
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.53, vom Themenstarter, eingetragen 2021-11-08
|
Du meinst das so oder?
\sourceon Matlab
loglog(h,fehler,'o')
xlabel('h')
ylabel('Fehler')
\sourceoff
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbegiutlwtghulgrinannt.PNG
|
Profil
|
Delastelle
Senior  Dabei seit: 17.11.2006 Mitteilungen: 2306
 | Beitrag No.54, eingetragen 2021-11-08
|
Hallo,
ja so wie eben oder noch zusätzlich verbunden mit einer Gerade:
Bsp.
\sourceon Octave
loglog([1 2 3],[1 2 3],'o-')
\sourceoff
Viele Grüße
Ronald
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.55, vom Themenstarter, eingetragen 2021-11-09
|
In der Aufgabenstellung steht “ Schätzen Sie mit Hilfe Ihrer Ergebnisse die Konsistenzordnung des Verfahrens.”
Wie kann ich das machen?
|
Profil
|
zippy
Senior  Dabei seit: 24.10.2018 Mitteilungen: 4607
 | Beitrag No.56, eingetragen 2021-11-09
|
Wenn $h\mapsto e_N(h)$ in der loglog-Darstellung als Gerade erscheint, bedeutet das $\log e_N(h)\approx p\cdot\log h+q$ bzw. $e_N(h)\approx h^p\cdot e^q$.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.57, vom Themenstarter, eingetragen 2021-11-09
|
Wie schreibe ich das als Code? Also in unserem Fall
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.58, vom Themenstarter, eingetragen 2021-11-10
|
Könntet ihr mir bitte dabei helfen?
https://www.matheplanet.com/matheplanet/nuke/html/viewtopic.php?topic=256199&start=0&lps=1861111#v1861111
Danke im Voraus!
|
Profil
|