2012-03-29 10 views
1

行列をいくつかの記号変数で逆転しようとしていますが、Matlabは単に 'FAIL'を返します。私はinv(K)を使用しています。これは、いくつかの演算後、MATLABが出力するKです:私のスクリプトの私の行列は、(例えば)このようになっていることをMatlabは行列を反転しようとすると "FAIL"を返す

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 

注:

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

この形式を使用して行列を定義するか、表現目的で使用しただけですか?私は行列の定義がMatlabのために正式ではないと思うか、間違っていますか? – tartar

+0

これはMatlabが出力するものです。私のスクリプトのマトリックスがどのように見えるかを編集するを参照してください。 – user1114864

答えて

5

行列は6x6のですが、そのランクがよりされていないこと3つで、それは可逆的ではありません。フルランク行列のみを反転することができます。

1

pinvを使用できます。それはあなたに疑似逆を与える。それはあなたに何かを与えるかもしれない。場合は、これだけでこの行列だけに立ち往生している場合。それ以外の場合は、逆行列について学習している場合は、スレッド上ですでに答えを返す必要があります。

関連する問題