2017-04-03 194 views
0

我想找到圖中給出的T逆。第一張照片是矩陣T,另一張是T逆。Matlab:如何計算矩陣的逆

T

T inverse

I = eye(3); 
T = [I/2, (j/2)*I, 0; 
    I/2, (-j/2)*I, 0; 
    0,0,I]; 

使用錯誤horzcat CAT參數尺寸並不一致。

然後我試着用I = eye(2)得到了同樣的錯誤。什麼是正確的方法?

+1

有什麼錯'inv' - 中結果當你谷歌matlab +矩陣+逆?只要確保你將imaginay單位表示爲'1i'或'1j'。 – thewaywewalk

+1

@thewaywewalk我認爲主要的問題是OP使用文字'0',而書面方程使用矩陣** 0 **;因此,尺寸誤差。 – TroyHaskin

回答

3

鑑於

I = eye(3); 

要乘element-wise using .*A(請確保您使用的虛數單位1j,而不是一個未定義的變量j

A = [1/2, (1j/2), 0; 
    1/2, (-1j/2), 0; 
    0,0,1]; 

得到T

T = A.*I 

但除此之外,感覺就像你真的想乘A以恆定C = I = 1

T = A.*1 

你與inverse功能獲得逆:

Tinv = inv(T) 
+0

Tinv = 2.0000,0,0; 0,0 + 2.0000i,0; 0,0,1.0000; – SKM

+0

我得到了第2行元素的不同值,圖片中的第一列是-jI,但代碼的輸出是元素爲0.另一件我注意到在Tinv圖片中,它是沒有'2',但是Matlab已經將這些元素與'2'相乘。你可以請檢查並告訴我,如果你得到與我一樣的'Tinv'結果嗎? – SKM

+1

@SKM這個答案中的代碼給出了正確的答案,與你的問題中給出的答案相匹配。 'A = [1/2,(1j/2),0; 1/2,( - 1j/2),0; 0,0,1];'然後'inv(A)= [1,1,0; -i,i,0; 0,0,1];'如上所述。嘗試清理你的工作區(使用'clear')並重新開始。 – Wolfie