Kräfteberechnung mit Cholesky

Neue Frage »

ravesite Auf diesen Beitrag antworten »
Kräfteberechnung mit Cholesky
Hi Leute, ich soll mit Hilfe des Verfahrens nach Cholesky Stützkräfte in einem räumlichen Kräftesystem ermitteln, bin jedoch nicht gerade ein Mathe-Ass...
Habe eine symmetrische Matrix aufgestellt mit dem dazugehörigen Lösungsvektor:

und soll jetzt irgendwie die Kräfte ermitteln...die Ergebnisse kenne ich, da ich alles schon mit dem Gauß'schen Eliminationsverfahren lösen konnte, also hätte ich Werte zum überprüfen. (Lösung ca.: 18700N ; 10200N ; 6000N)
Ich habe mir bereits das hier: [Numerik I] - Übung 13 * abgesehnen und auch die Form aufgestellt, weiß jedoch nicht genau wie ich nun auf die gesuchten Kräfte kommen soll. ( Wikipedia bietet noch diese Formel, mit der ich jedoch auch nichts anfangen kann...: )

Wäre froh wenn mir jemand den Weg weisen könnte. verwirrt
MfG ravesite
tigerbine Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Wenn du die Cholesky Zerlegung hast, dann denke über Vorwärts und Rückwärtssubstitution nach.
ravesite Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Ah gut danke, jetzt habe ich auch das Konzept verstanden - gibt es denn einen Vorteil gegenüber dem Gauß'schen Eliminationsverfahren ?
Weil um ehrlich zu sein geht Gauß bei mir knapp über eine Seite und Cholesky gut über 2 Seiten - angeblich soll aber Cholesky effektiver sprich kürzer sein oder liege ich da falsch? Allein die umformung zu einer symmetrischen Matrix braucht hier schon eine halbe Seite...
tigerbine Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Über 2 Seiten? Du hattest dir doch meine Übungsaufgabe angeschaut--- So klein dimensionale Beispiele mit "guten" Zahlen sind immer schlecht für eine allgemeine Argumentation.
ravesite Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
naja deine Übungsaufgabe besteht ja auch nur aus dem Umformen in die notwendige Form...bei mir ist dann vorher noch die Umformung zur symmetrie und danach die Lösung durch Vorwärts- und Rückwärtssubstitution...Meine Zahlen sind auch nicht ganz so schön aber naja ich soll trotzdem irgendwie sagen, dass Cholesky "besser anzuwenden" ist - ich denke ich liege damit nicht ganz falsch, wenn ich sage, dass Cholesky nur wenig mehr Aufwand bedeutet, wenn man größere Matritzen (mit einem Rechner) lösen will und Gauß dabei mehr Zeit in Anspruch nehmen würde?
tigerbine Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Cholesky ist nur für symmetrische Matrizen definiert und ist gleichzeitig der Test auf positiv definit.
 
 
Math1986 Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Die Durchführung einer Cholesky-Zerlegung benötigt im Rechner ca. , ist also im Schnitt dopelt so schnell wie die Gauß-Elimination mit
ravesite Auf diesen Beitrag antworten »
RE: Kräfteberechnung mit Cholesky
Gut, danke dafür.
Ich hätte noch eine Frage zu meiner Lösung des Kräftesystems - also sollten sich mal die Statiker angesprochen fühlen Augenzwinkern
ich habe für alle drei Kräfte negative Werte raus, bin mir aber sicher die Kräfte/Vektoren richtig angenommen zu haben. Aus der ebenen Statik weiß ich, dass ein negativer Wert bedeutet, dass die Kraft bei der Berechnung falschherum angenommen worden ist. Da das meiner Meinung nach im Raum so pauschal nicht in Frage kommt wäre meine Frage: was hat das negative Vorzeichen bei Kräften im Raum zu sagen?
Andreas1993 Auf diesen Beitrag antworten »

Hallo,

was hast du den für eine Statik Aufgabe?? Ich habe auch eine Statik-Aufgabe und weiß nicht, wie ich auf eine symmetrische Koeffizienten Matrix komme..
ravesite Auf diesen Beitrag antworten »

Hi, ist zwar schon ein Jahr her aber die Mathematik ändert sich ja nicht so schnell.
Sofern du keine Vorgabe hast wie du das Gleichungssystem lösen sollst würde ich das Gauß'sche Eliminationsverfahren empfehlen, da es (per Hand) viel einfacher zu rechnen ist als Cholesky - und für Gauß brauchst du auch KEINE symmetrische Matrix. Du stellst einfach das Gleichungssystem auf, schreibst die Werte in eine Matrix und formst sie zu einer Dreiecks-Matrix um, sodass du das System lösen kannst.
Andreas1993 Auf diesen Beitrag antworten »

Ich habe mal eine Frage, wenn man eine Statik Aufgabe hat, z.B eine Lampe die von Seilen die an der Decke hängen gehalten werden und alle drei Seile gleich lang sind und dann theoretisch auch die gleichen Kräfte aufnehmen. Müsste man doch eine symmetrische Koeffizientenmatrix bekommen??
Andreas1993 Auf diesen Beitrag antworten »

Mein Problem ist, ich habe eine Aufgabe, die ich mit Gauß gelöst habe und auch damit richtig ist. Jedoch muss ich auch das Cholesky Verfahren anwenden. Aber ich kriege daraus keine symmetrische Matrix..

Meine Aufgabe ist es nämlich, das Verfahren von Cholesky und Gauß zu vergleichen..aber da meine Aufgabe ( die ich vom Lehrer bekommen habe ) nicht mit dem Cholesky Verfahren zu lösen ist. Brauche ich eine einfache alternativ Aufgabe im Bereich der Statik..
ravesite Auf diesen Beitrag antworten »

Also ich hab die symmetrische Matrix einfach durch Umstellen und Erweitern bekommen, also genauso wie man für Gauß die Dreiecks-Matrix erstellt, solang umgeformt bis sie symmetrisch war.
Hatte damals die Aufgabe auch von meinem Lehrer bekommen um die Verfahren zu vergleichen eigentlich sollte er dir aber auch eine Problemstellung vorschlagen wo man auch beides anwenden kann...
Andreas1993 Auf diesen Beitrag antworten »

Also meine Koeffizienten Matrix lautet so :

0 0,1330 -0.2182
-0,7682 -0,8865 -0,8729
-0,6402 -0,4432 -0,4369

Kann man diese gescheit umformen? Also ich habe es nicht hinbekommen..Vielleicht kann es einer von euch zeigen. Des Weiteren wollt ich wissen, ob eine symmetrische Koeffizientenmatrix bei einen statischen Problem, also z.B wenn man 3 Stäbe hat auf den Kräfte wirken, dass alle drei Stäbe gleich lang sein müssen und dem entsprechend auch jeder Stab die gleiche Kraft aufnehmen muss??

Ich hoffe mir kann einer weiter helfen..
ravesite Auf diesen Beitrag antworten »

Bei meiner Aufgabe waren alle Stäbe verschieden lang und alle Kräfte sind demnach auch unterschiedlich...das hat der Symmetrie der Matrix keinen Abbruch getan

hat deine Matrix keine Ergebnisspalte? sofern diese 0 ist komme ich mit nur 4 Umformungsschritten auf ne symmetrische Matrix von:

-0,7682 0 0,5815
0 0,1330 -0,2182
0,5815 -0,2182 1,3442

(mit auf 4 Stellen nach dem Komma gerundeten Werten - Angaben ohne Gewähr)
Die müsstest du dann in die Form M=G*G^T bringen damit du Cholesky anwenden kannst
Vor- und Rücksubstitution etc.
Für deine Aufgabe solltest du den Schritt aber nochmal selber rechnen..allein schon um eine Rechnung und eine Kontrolle zu haben.
Andreas1993 Auf diesen Beitrag antworten »

Hi,

also meine rechte Seite besteht aus

0
0
-4903,325

Kannst du mir bitte erläutern wie du das gemacht hast??? Danke für deine Hilfe !!
ravesite Auf diesen Beitrag antworten »

Ich kann das auch nur weil ich etwa die selbe Aufgabenstellung hatte...
Zunächst habe ich der Einfachkeit halber deine ersten beiden Zeilen getauscht, damit vorne die 0 steht, mit der sich leichter weiter rechnen lässt.
Dann musst du die erste Zeile mit der 2. oder 3. addieren und einen Multiplikator einfügen, sodass du an zweiter Stelle in der ersten Zeile auch die 0 hast (wegen Symmetrie)
Das selbe machst du mit der 3. Zeile nur mit anderem Multiplikator, sodass unten links das gleiche steht wie oben rechts in der Matrix. Zuletzt addierst/subtrahierst du von der 3. Zeile die zweite mit einem Multiplikaror so, dass an zweiter Stelle der unteren Zeile das gleiche steht wie an dritter Stelle in der mittleren Zeile - hier kommt dir zugute, dass die 2. Zeile an erster Stelle eine 0 hat, da sich so der erste Wert der 3. Zeile (den du ja zuvor angepasst hast) nichtmehr ändert.
Deine Ergebnisspalte musst du bei allen Umformungen einfach mitziehen und hast da dann am Ende
andere Werte stehen. Sofern das geklappt hat, hast du eine symmetrische, positiv definite Matrix vorliegen und kannst jetzt den Cholesky-Algorythmus anwenden...Danach dann Vor- und Rücksubstitution, also:
aufstellen, Unbekannte ermitteln,
Vorwärtssubstitution
Rücksubstitution
und dann hast deine Stabkräfte in der Ergebnisspalte stehn
Andreas1993 Auf diesen Beitrag antworten »

Hallo,

Danke für deine Hilfe. Aber ich steh grade aufm Schlauch..Du hast die Zeile 1 und 2 getauscht. Dann hattest du das hier..
-0,7682 .. ..
0 .. ..
-0,6402 .. ..

Ist logisch versteh ich.. Aber mit was hast du dann die erste Zeile Multipliziert und mit welche dann addiert damit null raus kommt ??

Irgendwie häng ich total am den scheiß..
Andreas1993 Auf diesen Beitrag antworten »

Ich hätte gedacht, dass man die letzte Zeile mal -2 nimmt und die dann mit der ersten addiert...
ravesite Auf diesen Beitrag antworten »

in deinem Fall 1. Zeile + (-1773/266)*2. Zeile (kann sein, dass der Wert gerundet war) musst halt immer überlegen...Dein Wert +/- was ergibt den gesuchten Wert.
Andreas1993 Auf diesen Beitrag antworten »

Hallo,

ich versteh es immer noch nicht..

Also mal von Anfang an..

0 0.1330 -0.2182 0
-0.7682 -0.8865 -0.8729 0
-0.6402 -0.4432 -0.4364 -4903.325

>> Dann die ersten beiden tauschen.

-0.7682 -0.8865 -0.8729 0 + 1773/266 * die zweite Zeile
0 0.1330 -0.2182 0
-0.6402 -0.4432 -0.4364 -4903.325

Also

-0.7682 0 -2.3273 0
0 0.1330 -0.2182 0
-0.6402 -0.4432 -0.4364 -4903.325

und dann????
ravesite Auf diesen Beitrag antworten »

Wenn
-0.7682 0 -2.3273 0
0 0.1330 -0.2182 0
-0.6402 -0.4432 -0.4364 -4903.325

jetzt deine Ausgangs-Matrix ist willst du ja im nächsten Schritt

-0.7682 0 -2.3273 0
0 0.1330 -0.2182 0
-2.3273 a b c
sowas da stehn haben, also musst du überlegen -0,6402 +/- irgendwas * -0,7682 = -2,3273
dafür rechnest du zB. -2,3272 - -0,6402 dann hast du deinen gesuchten Summanden raus nämlich -1,6871 und diesen Wert musst du mithilfe von -0,7682 aus Zeile 1 und einem Multiplikator herausbekommen. Also teilst du -1,6871 / -0.7682 und bekommst den Multiplikator 2,1962 (gerundet) raus. Dann weißt du dass du Zeile 3 + 2,1962*Zeile1 rechnen musst um an der Stelle den Wert -2,3272 zu bekommen. den rest der Zeile musst natürlich auch noch berechnen (a,b,c).
Und so gehst du dann nochmal mit dem Wert rechts daneben vor nur dass du da Zeile 2 nimmst damit sich der erste Wert nicht ändert.
Andreas1993 Auf diesen Beitrag antworten »

Hallo,

ich hab wieder mal ein Problem..

Meine Ausgangsmatrix ist :

0 0,1330 -0,2182 F AB 0
-0,7682 -0,8865 -0,8729 F AC 0
-0,6402 -0,4432 -0,4364 F AD -4903,325

Die habe ich dann symmetrisch gemacht :

0,7682 0 2,3273 0 0
0 0,1330 -0,2182 0
2,3273 -0,2182 6,6327 -4903,325

Für meine Kräfte bekomme ich dann : 19142, 10306 und 6318...

Nur mein großes Problem ist, dass mein Wert 6,6 zu klein ist, weil ich muss ja daraus kässt sich keine Wurzel ziehen..

Bei deiner Matrix, die du für mich umgestellt hast, würde es gehen. Kannst du mir sagen wie du es genau gemacht hast??
ravesite Auf diesen Beitrag antworten »

Wieso lässt sich aus dem Wert keine Wurzel berechnen? Der Wert, den ich weiter oben berechnet hatte ist genauso schlecht zu berechnen bzw. brauchst du für beide nen Taschenrechner..Die Wurzel aus 6,6327 ist jedenfalls 2,5754 (gerundet). Abgesehn davon, wofür brauchst du überhaupt die Wurzel? Wenn du die Kräfte hast bist du ja ansich fertig...
Deine Kraftwerte habe ich übrigens annährend genauso raus.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »