[問題] 關於左除法的問題

看板MATLAB作者 (史雷斯)時間11年前 (2013/07/25 03:21), 編輯推噓7(707)
留言14則, 7人參與, 最新討論串1/1
小弟最近寫程式需要解相當長的聯立方程式, 但是學校給的MATLAB卻無法使用solve指令, 且矩陣也不是方陣,無法利用反矩陣求解, 後來自己上網找到了另一個解聯立的作法,叫做左除法,能夠進行矩陣倒除, 但是我卻找不到左除法是依據什麼計算方式運作的。 範例: 3x +4y =10 5x -2y =8 A=[3 4;5 -2]; C=[10;8]; X=A\C %%這就是左除法 X = 2 %% 得出解x=2 y=1 1 有沒有人能稍微解釋一下左除法的計算方式? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.127.186.6

07/25 04:45, , 1F
就跟國中生解聯立方程的方法差不多啊
07/25 04:45, 1F

07/25 06:31, , 2F
在你這裡等同於inv(A)*C
07/25 06:31, 2F

07/25 11:13, , 3F
就是A取反矩陣之後右乘C,算是很基本的矩陣運算的定義
07/25 11:13, 3F

07/25 11:14, , 4F
另外MATLAB強大的地方就是即使不是方陣也可以除
07/25 11:14, 4F

07/25 12:51, , 5F
高斯消去法
07/25 12:51, 5F

07/25 14:21, , 6F
因為我實際要解的聯立方程式是3*14的矩陣
07/25 14:21, 6F

07/25 14:21, , 7F
非方陣應該是不能求反矩陣才對
07/25 14:21, 7F

07/25 14:22, , 8F
後來自己去查到了,MATLAB的左除法是用LU分解的步驟計算的
07/25 14:22, 8F

07/25 14:23, , 9F
條件太多會變最小方差 條件太少就找出一組解
07/25 14:23, 9F

07/25 14:56, , 10F
另外請問一下 MATLAB處理非方陣的除法是怎麼算的?
07/25 14:56, 10F

07/25 14:57, , 11F
補上單位矩陣把它補成方陣才計算嗎?
07/25 14:57, 11F

07/25 18:03, , 12F
可以用edit去看code
07/25 18:03, 12F

07/26 00:11, , 13F
應該是看你的目的及需求 解這種最佳解問題有很多方法
07/26 00:11, 13F

07/29 00:49, , 14F
據說matlab會判斷矩陣的形式選擇算法
07/29 00:49, 14F
文章代碼(AID): #1Hy2aSDy (MATLAB)
文章代碼(AID): #1Hy2aSDy (MATLAB)