2012-03-29 6 views
1

Ich versuche, eine Matrix mit einigen symbolischen Variablen zu invertieren, aber Matlab gibt einfach 'FAIL' zurück. Ich benutze inv (K). Dies ist K dass Matlab Ausgänge nach einiger Berechnung:Matlab gibt "FAIL" zurück, wenn versucht wird, Matrix zu invertieren

K = 

[ 11/80, 7/80, -11/80, -7/80, 0, 0] 
[ 7/80, 11/80, -7/80, -11/80, 0, 0] 
[ -11/80, -7/80, 11/80, 7/80, 0, 0] 
[ -7/80, -11/80, 7/80, 11/80, 0, 0] 
[  0,  0,  0,  0, 0, 0] 
[  0,  0,  0,  0, 0, 0] 

invK = inv(K); 

FAIL 

Beachten Sie, dass meine Matrix in meinem Skript wie folgt (zum Beispiel) aussieht:

K = [1,2,3; 
    3,2,1; 
    1,1,1]; 
+0

verwenden Sie dieses Format zum Definieren einer Matrix oder nur für Darstellungszwecke? Ich denke, dass Matrix-Definitionen für Matlab nicht formell sind, oder irre ich mich? – tartar

+0

Dies ist, was Matlab ausgibt. Siehe Bearbeiten für wie die Matrix in meinem Skript aussieht. – user1114864

Antwort

5

Diese Matrix ist 6x6 aber sein Rang ist nicht mehr als drei, daher ist es nicht invertierbar. Nur vollständige Matrizen können invertiert werden.

1

Sie könnten pinv verwenden. Es gibt Ihnen die Pseudoinverse. Das könnte dir etwas geben. Falls Sie mit dieser und nur dieser Matrix festgefahren sind. Sonst wenn Sie über Matrixinversen lernen, dann sollten Sie mit der Antwort schon hier auf den Thread gehen.

Verwandte Themen