|
Autor |
Unterbestimmtes LGS aber einen Lösungsteil vorgeben |
|
cedi123
Ehemals Aktiv  Dabei seit: 17.08.2017 Mitteilungen: 45
 | Themenstart: 2018-09-30
|
Hallo,
ich würde gerne ein Programm schreiben, welches ein lineares Gleichungssystem löst, was aber vorerst unterbestimmt ist (6 Variablen, 3 Gleichungen). Wenn man das Programm aufruft, soll man vorher schon 3 Variablen zu Null setzen und das Programm soll mit dieser Info das Gleichungssystem lösen.
Wie löse ich das? Ich versuche das mit Matlab zu realisieren, benutze also für ein Gleichungssystem der Art A*x=b den Befehl "A\b".
Kann ich irgendwie A und b so verändern, dass es mir die restlichen Variablen ausspuckt?
Ich hatte überlegt, z.B. die 3. Spalte der Matrix A zu Null zu setzen, wenn die 3. Variable Null ist.
Ist das zielführend?
Danke im Vorraus!
|
Profil
| Folgende Antworten hat der Fragensteller vermutlich noch nicht gesehen. Er/sie war noch nicht wieder auf dem Matheplaneten |
elmio
Senior  Dabei seit: 31.01.2007 Mitteilungen: 559
Wohnort: verschiede Orte, D
 | Beitrag No.1, eingetragen 2019-01-26
|
Hi cedi123,
stell dir vor du kennst Variablen i ( = z.B. 2 4 6), d.h. du kennst x(i); dann sind die übrigen unbekannt, nenne ich mal j (= z.B.1 3 5) dann kannst Du die Gleichung wie folgt zerlegen:
A*x = b
[A(i,i) A(i,j)] [ x(i) ] = b(i)
[A(j,i) A(j,j)] [ x(j) ] = b(j)
Das sind dann also 2 Gleichungen:
A(i,i)*x(i) + A(i,j)*x(j) = b(i)
A(j,i)*x(i) + A(j,j)*x(j) = b(j)
Du kannst also die bekannten Grössen auf die rechte Seite bringen
A(i,j)*x(j) = b(i) - A(i,i)*x(i)
A(j,j)*x(j) = b(j) - A(j,i)*x(i)
Jetzt gibt es leider keine Garantie das eine der beiden Gleichungen lösbar ist, oder wenn ja welche, deswegen kannst du jetzt weiter definieren:
[A(i,j)] = A2
[A(j,j)]
und
[b(i) - A(i,i)*x(i)] = b2
[b(j) - A(j,i)*x(i)]
und die Gleichungen somit wieder zusammen bauen:
A2*x(j) = b2
Was jetzt unpassenderweise 6 Gleichungen mit 3 unbekannten sind. Du kannst die Lösung der kleinsten quadrate benutzen:
(A2' * A2) * x(j) = A2'*b2
also ist
x(j) = ( A2'*A2 ) \ (A2'*b2)
Ich glaube zumindest dass das so stimmen müsste (keine Garantie).
Gruss,
elmio
|
Profil
|
|
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen. Lesen Sie die
Nutzungsbedingungen,
die Distanzierung,
die Datenschutzerklärung und das Impressum.
[Seitenanfang]
|