|
|
nichttriviale Lösung von linearem LGS in Matlab erzwingen |
|
BuddyCasino |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.09.2009, 16:11
Titel: nichttriviale Lösung von linearem LGS in Matlab erzwingen
|
|
Moin, moin
Wie bringe ich Matlab dazu bei einem linearen Gleichungssystem zb (Ax=0) für x die nichttriviale Lösung auszugeben.
Wenn A=[2 -3 1; 3 1 3; -5 2 -4] mit A*x=0
Gruß Buddy
|
|
|
|
|
martind |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 27.03.09
|
|
|
|
Wohnort: München
|
|
|
|
Version: aktuellste, aber auch ältere
|
|
|
|
|
|
Verfasst am: 30.09.2009, 09:03
Titel:
|
|
Hi Buddy,
Wenn Du die Symbolic Math TB hast, noch dazu ab R2008b, dann kannst Du folgendermaßen vorgehen:
in MATLAB:
>> A=[2 -3 1; 3 1 3; -5 2 -4]
A =
2 -3 1
3 1 3
-5 2 -4
>> syms x1 x2 x3
>> x = [x1;x2;x3]
x =
x1
x2
x3
>> feval(symengine,'solve',A*x)
ans =
{[x1 = -(10*z)/11, x2 = -(3*z)/11, x3 = z]}
im Notebook Interface der Symbolic Math Toolbox (offnen mit Befehl "mupad":
[ A := matrix(3,3,[[2,-3,1],[3,1,3],[-5,2,-4]])
[ solve(A*matrix(3,1,[x1,x2,x3]) = matrix(3,1,[0,0,0]))
Selbe Ergebnis wie oben. Auch per Hand nachgerechnet, sieht richtig aus.
Gruß, Martin
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 30.09.2009, 09:47
Titel:
|
|
Hallo,
das geht auch ohne Symbolic Math:
Grüße,
Harald
|
|
|
martind |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 27.03.09
|
|
|
|
Wohnort: München
|
|
|
|
Version: aktuellste, aber auch ältere
|
|
|
|
|
|
Verfasst am: 30.09.2009, 11:59
Titel:
|
|
Ist aber nur eine Lösung. Die Matrix hat nur Rang 2 und daher gibt es unendlich viele Lösungen. Aber es stimmt NULL ist sicherlich für viele die bessere Alternative.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 30.09.2009, 14:32
Titel:
|
|
Ja, es wird eine Lösung zurückgegeben bzw. eine Basis des Kerns. Jede andere Lösung kann damit aus Linearkombinationen der beiden gebildet werden.
Grüße,
Harald
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|