Autor |
LR-Zerlegung für Tridiagonalmatrizen |
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Themenstart: 2021-05-05
|
Hallo zusammen, könnte mir jemand bitte erklären was ich bei zweiter Aufgabe machen soll? wie sollte die Matrix aussehen und was ist in diesem Fall n?
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbenannt.PNG
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbenannt1.PNG
Danke im Voraus! :)
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.1, eingetragen 2021-05-05
|
Hallo,
was du bei dieser Aufgabe machen sollst steht ja eigentlich relativ gut erklärt in der Aufgabenstellung. Was genau verstehst du daran nicht?
$n$ ist hier die Anzahl der Zeilen und Spalten der Matrix. $A\in \mathbb R^{n\times n}$ bedeutet, dass A eine quadratische Matrix mit $n$ Zeilen und $n$ Spalten mit Einträgen aus $\mathbb R$ ist.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.2, vom Themenstarter, eingetragen 2021-05-05
|
muss also die Matrix 100 Spalten und Zeilen haben?
Was ich nicht verstehe ist das " a_ij in [0,1] für |i − j|≤ 1"
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.3, eingetragen 2021-05-05
|
Du sollst die $a_{ij}$ mit Hilfe der (Matlab?) Funktion rand wählen. Die Bedingung $|i-j|\leq 1$ bedeutet, dass du in der Matrix eben nur auf der Diagonalen und auf den beiden Nebendiagonalen Einträge ungleich Null haben willst. Das heißt es genügt für diese drei Diagonalen zufällige Einträge zu wählen, da alle anderen ohnehin Null sind.
Du sollst in der Aufgabe ja deinen Algorithmus für die LR-Zerlegung von Tridiagonalmatrizen benutzen können.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.4, vom Themenstarter, eingetragen 2021-05-05
|
Achso ich verstehe jetzt..
und was bedeutet " a_ij in [0,1]" ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.5, eingetragen 2021-05-05
|
Die Einträge auf der Diagonalen sind ja von der Form $a_{ii}$ mit $1\leq i\leq n$. Für diese gilt $|i-j|=|i-i|=0<1$. Einträge auf der oberen Nebendiagonalen sind von der Form $a_{i,i+1}$ und Einträge auf der unteren Nebendiagonalen entsprechend.
[Die Antwort wurde nach Beitrag No.3 begonnen.]
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.6, eingetragen 2021-05-05
|
\quoteon(2021-05-05 14:44 - s-amalgh in Beitrag No. 4)
Achso ich verstehe jetzt..
und was bedeutet " a_ij in [0,1]" ?
\quoteoff
$a_{ij}\in[0,1]$ bedeutet, dass die $a_{ij}$ reelle Zahlen im Intervall $[0,1]:=\lbrace x\in \mathbb R\mid 0\leq x\leq 1\rbrace$ sein sollen.
Wie in der Aufgabe steht, kannst du so eine Matrix in Matlab einfach mit dem Befehl spdiags und der Funktion rand implementieren. Google das einfach mal oder schau in die Matlab Dokumentation, wenn du die Befehle nicht kennst.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.7, vom Themenstarter, eingetragen 2021-05-05
|
sollen also die Einträge auf Diagonalen zwischen 0 und 1 sein und alle andere Einträge 0 ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.8, eingetragen 2021-05-05
|
\quoteon(2021-05-05 14:49 - s-amalgh in Beitrag No. 7)
sollen also die Einträge auf Diagonalen zwischen 0 und 1 sein und alle andere Einträge 0 ?
\quoteoff
Auf der Diagonalen und den beiden Nebendiagonalen sollen die zufällig gewählten Werte zwischen $0$ und $1$ stehen. Alle anderen Einträge sollen $0$ sein.
Im Beitrag oben drüber habe ich nochmal hinzugefügt, wie man das in Matlab machen kann.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.9, vom Themenstarter, eingetragen 2021-05-05
|
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbelkjkjkljlklkjnannt1.PNG
so ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.10, eingetragen 2021-05-05
|
Probier es doch einfach aus. Dafür ist so ein Computer doch da! :D
Andererseits ist das so nicht im Sinne der Aufgabenstellung. Du sollst eben nicht $x=A\setminus b$ benutzen, sondern deinen Algorithmus den du für diese Aufgabe entwickeln solltest.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.11, vom Themenstarter, eingetragen 2021-05-05
|
wie kann ich dann x erstellen ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.12, eingetragen 2021-05-05
|
Das $x$ ist dir doch in der Aufgabe gegeben als $x=(1,1,\dots,1)^T$. Du sollst nun mit Hilfe deines Algorithmus eine passende rechte Seite $b$ finden, so dass $x$ die exakte Lösung des Systems $Ay=b$ ist.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.13, vom Themenstarter, eingetragen 2021-05-05
|
letzte Frage
Könntest du mir bitte sagen was das bedeutet "Die Resultate sollen jeweils kontrolliert werden, indem die Abweichung der exakten
von der berechneten Lösung in der Euklidischen Norm (Befehl norm) ausgegeben wird."
wovon muss ich norm rechnen ?
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.14, vom Themenstarter, eingetragen 2021-05-05
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.15, eingetragen 2021-05-05
|
Naja, die Norm der Differenz der exakten Lösung von der berechneten Lösung. Bei i) hast du ja die exakte Lösung vorgegeben und auch bei ii) hast du die exakte Lösung vorgegeben. Bei ii) müsstest du wohl noch eine Lösung berechnen? Da bin ich mir aber selbst nicht so sicher, wie das bei ii) gemeint ist.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.16, vom Themenstarter, eingetragen 2021-05-05
|
Ich glaube ja ich soll norm noch rechnen aber was ich nicht verstehe ist soll ich norm von x oder von b rechnen?
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.17, vom Themenstarter, eingetragen 2021-05-05
|
wenn ich norm(x) anwende dann kommt 10 raus
denkst du ist das was wir wollen?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.18, eingetragen 2021-05-05
|
Dann hast du entweder etwas falsch gerechnet oder dein Algorithmus ist extrem schlecht. Idealerweise sollte die Norm ja $0$ sein, bzw. relativ klein.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.19, vom Themenstarter, eingetragen 2021-05-05
|
warum sollte 0 sein?
und das sollte ich bekommen wenn ich norm(x),norm(b) oder norm(A) anwende ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.20, eingetragen 2021-05-05
|
Denk doch erstmal darüber nach was du damit genau rausfinden möchtest, bevor du "ziellos" daraufhin rechnest.
Du sollst deine Resultate überprüfen und zwar damit, dass du den von deinem Algorithmus berechneten Wert mit der exakten Lösung vergleichst. Bei i) sollte dein Algorithmus ja das $x$ finden, für das $Ax=b$ gilt. Nennen wir den von deinem Algorithmus gefunden Wert mal $\tilde{x}$. Nun ist dir in i) noch das exakte $x$ gegeben. Du sollst nun $\lVert \tilde x - x\rVert$ berechnen. Dieser Wert gibt dir also an, wie groß die Abweichung deines berechneten Wertes von der exakten Lösung ist. Wenn der Algorithmus "gut" ist, sollte diese Abweichung ja so klein wie möglich sein.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.21, vom Themenstarter, eingetragen 2021-05-05
|
ich verstehe nicht was du mit x~ meintest
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.22, eingetragen 2021-05-05
|
Ich habe ja geschrieben was ich damit meine:
Mit $\tilde x$ bezeichne ich die Lösung, die dein Algorithmus ausgerechnet hat bei i).
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.23, vom Themenstarter, eingetragen 2021-05-05
|
mein Algoritmus hat x ausgerechnet
deswegen verstehe ich nicht was du damit meintest
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.24, eingetragen 2021-05-05
|
Dir wird in i) ja schon gesagt was die korrekte Lösung ist. Diese heißt $x$.
Du solltest nun einen Algorithmus für die $LR$-Zerlegung ohne Pivotisierung schreiben, der eine Tridiagonalmatrix $A$ in eine normierte untere Dreiecksmatrix $L$ und eine obere Dreiecksmatrix $R$ zerlegt und anschließend das lineare Gleichungssystem $Av=b$ durch Vorwärtseinsetzen und Rückwärtssubstitution löst.
Auf diesen Algorithmus lässt du nun die Matrix $A$ aus i) und die rechte Seite $b$ aus i) los. Die so erhaltene Lösung nennen wir einfach mal $\tilde x$. Diese vom Algorithmus berechnete Lösung $\tilde x$ soll nun mit der in der Aufgabe bereits gegebenen Lösung $x$ verglichen werden.
Ist es nun klar?
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.25, vom Themenstarter, eingetragen 2021-05-05
|
https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/54010_Unbegfhthtzhtzhnannt.PNG
du meintest das oder ?
10
-3
-6.1579
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.26, eingetragen 2021-05-05
|
Hallo,
Ich weiß leider nicht, wie ich es dir noch einfacher erklären kann, da ich es jetzt bereits einige male versucht habe. In meiner letzten Nachricht habe ich doch genau geschrieben was zu tun ist.
Was genau verstehst du denn nun nicht?
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.27, vom Themenstarter, eingetragen 2021-05-05
|
x ist
5
0
-1
x~ ist
10
-3
-6.1579
stimmt?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.28, eingetragen 2021-05-05
|
Nein.
Das Ergebnis des Algorithmus ist ja nicht das $y$ der Vorwärtssubstitution, sondern das Ergebnis der Rückwärtssubstitution.
In deinem Fall stimmt das berechnete Ergebnis also mit der exakten Lösung überein und folglich haben wir $\lVert \tilde x - x\rVert =0$. Das sollst du dir von Matlab eben noch ausrechnen lassen..
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.29, vom Themenstarter, eingetragen 2021-05-05
|
ich habe norm(y-x) angewendet aber kommt 7.7848 raus
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.30, eingetragen 2021-05-05
|
Ich habe den Eindruck, dass nicht die eigentliche Aufgabe das Problem ist, sondern dir irgendwie generell das Verständnis dafür fehlt, was du da genau tust.
Das $y$ ist nicht das was du in die Norm stecken sollst. Das Ergebnis des Algorithmus soll einfach mit der exakten Lösung aus i) verglichen werden. Das Ergebnis des Algorithmus ist nicht das $y$ sondern das was du bei der Rückwärtssub. herausbekommst.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.31, vom Themenstarter, eingetragen 2021-05-05
|
bei der Rückwärtssub hab ich
5
0
-1
bekommen also x...
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.32, eingetragen 2021-05-05
|
Genau. Und dieses Ergebnis soll jetzt noch mit der in der Aufgabe angegebenen exakten Lösung verglichen werden. Also musst du rein formal dem Ergebnis des Algorithmus einfach einen anderen Namen als $x$ geben. Ich habe das Ergebnis was du rausbekommst deshalb $\tilde x$ genannt.
Jetzt soll dein Matlab Algorithmus noch die Norm von der Differenz der berechneten Lösung und der in der Aufgabe vorgegebenen Lösung ausrechnen und ausgeben. Da kommt dann offensichtlich $0$ raus.
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.33, vom Themenstarter, eingetragen 2021-05-05
|
ja jetzt habe ich verstanden und ja ich habe 0 bekommen danke :))))
und wie ist es bei ii) ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.34, eingetragen 2021-05-05
|
Das weiß ich wie gesagt selbst auch nicht. Du hast ja bei ii) gar keinen Wert mit dem du es vergleichen kannst.
Vielleicht (!) sollst du bei ii) einmal so ein $b$ mit deinem Algorithmus und einmal so ein $b$ mit dem normalen Befehl in Matlab finden? Ich weiß es aber auch nicht genau. Am besten fragst du also einfach mal nach, womit du das vergleichen sollst. Ich kann es dir leider nicht sagen.
Schönen Abend,
Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.35, vom Themenstarter, eingetragen 2021-05-05
|
noch eine frage... denkst du soll ich L und R auch bei ii) bestimmen und dann mittels Vorwärts und Rückwärtssubstitution lösen ?
|
Profil
|
nzimme10
Senior  Dabei seit: 01.11.2020 Mitteilungen: 2242
Wohnort: Köln
 | Beitrag No.36, eingetragen 2021-05-05
|
Bei ii) hast du eine Matrix $A$ mit zufälligen Werten und eine vorgegebene Lösung $x$. Du sollst nun ein $b$ finden, so dass $Ax=b$ gilt und dabei deinen Algorithmus irgendwie benutzen.
Für mehr Erklärung habe ich heute keine Zeit mehr.
LG Nico
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.37, vom Themenstarter, eingetragen 2021-05-06
|
Danke für deine tolle Hilfe und ich hoffe dass ich dich nicht genervt hab :)
LG
|
Profil
|
s-amalgh
Wenig Aktiv  Dabei seit: 16.12.2020 Mitteilungen: 374
 | Beitrag No.38, vom Themenstarter, eingetragen 2021-05-07
|
Könntest du mir bitte auch dabei helfen? Ich habe das gleiche Problem dass ich nicht so genau weiß was die Aufgabe will
https://www.matheplanet.com/matheplanet/nuke/html/viewtopic.php?topic=253767&start=0&lps=1844214#v1844214
Ich wäre dankbar wenn du mir dabei helfen würdest
Danke im Voraus! :)
|
Profil
|