2013-11-14 112 views
-3

我正在做一個MATLAB的入門課程(我是一名初學者),我在解決有關矩陣方程的問題時遇到了問題。Matlab中的矩陣方程

的公式爲

AX = C - BX 

我要解決的矩陣X。無論我怎麼試圖解決它,我都會空手而歸或出現某種語法錯誤。我想我錯過了一些基本的東西。

任何有關這個問題的幫助,非常感謝。

+2

如果您將代碼與您遇到的錯誤一起發佈,最好是使用 – Bull

回答

2

對於此方程要一致,AB必須具有相同的大小。因此,你可以重新寫你的公式爲:

(A+B)X = C 

這可以在MATLAB來解決了:

X = (A+B)\C 

注意,這將總是找到解決的辦法,不管A+B大小:

  • 如果A+B是正方形,您會找到「the」解決方案。
  • 如果A+B超出/欠定,它將返回最小二乘逼近X

這取決於你自己決定這是否合意。

如果C爲零,則可能需要使用null(或查看svd)。

+0

@B ...:爲什麼? –

+0

@B ...對於確切的解決方案'A'和'B'應該是正方形的,但是當'A'和'B'具有比列多的行時,您可以搜索最小二乘解。 – Shai

+0

@B ...:假設'A = n×m'和'X = m×p',則'AX = n×p'。這意味着'C'也必須是'n×p',所以'B'必須是'n×m'。據我所知,對於'n','m'和'p'的值沒有限制...... –