MATLAB 板


LINE

: Warning: Matrix is close to singular or badly scaled. : Results may be inaccurate. RCOND = 3.502134e-017. 我是做數值分析與計算流體力學的,嘗試回答你的問題。 我想你可能要先瞭解一下,不是每一個矩陣都有反矩陣的。 一般線性代數的書在談論到矩陣時,都會特別說明,若是一個矩陣沒有反矩陣, 它就被稱做singular matrix。 一般來說,只要是該矩陣的determinant等於或非常非常接近0,它就不存在或很 難用一般的方法求出反矩陣。 就實際應用面而言,一般會想求反矩陣,並不是真的對那個矩陣的反矩陣有興趣 ,通常都是為了解之後的問題,必須在過程中先求得反矩陣。 舉例來說,最常遇到的就是解聯立方程式。 [A]{X} = {B} 先講一般程式語言的作法。如果你是用C或是Fortran的話,就得先用數值方法求 得[A]的反矩陣,再用反推法求得{X}。光是要求得[A]的反矩陣,就有很多種數 值方法可以用,詳細的就不在這裡談了。 那,如果你是用MATLAB的內建函數,就不必這麼麻煩了。想解上式,可以直接打 X=B/A 或是 X=B\A,都可以得到答案。 如果我沒記錯的話,「右除」只能用在當A是方陣且不是singular時,但「左除」 可以用在A是任意矩陣時(不管是不是singular,不管是不是未知數的數目大於方 程式的數目或小於方程式的數目)。所以,即使A是singular matrix,你也不必 擔心,MATLAB會直接「黑箱作業」,幫你得到答案。 那MATLAB是怎麼「黑箱作業」的呢?這可能就要去翻數值分析的書,裡面都會談 到一個方法,叫做singular value decomposition,簡稱SVD。這是專門對付 singular matrix而發展出來的數值方法。同樣地,我無法在這裡細談,那個牽 扯到太多的數學技巧。 一般SVD,會將[A]分解成三個矩陣相乘,以便之後求解聯立方程式時使用。但不 幸的是,分解出來的這三個矩陣,都不是[A]的反矩陣,因為根據定義,[A]是 singular matrix,它本來就不會有反矩陣。 MATLAB也有一個指令是SVD(),()裡面直接打矩陣的名稱就可以將改矩陣做 singular value decomposition。回想前面提過的,當你使用「左除」這個指令 時,MATLAB本身就會去計算該矩陣是否為singular,如果是的話,它就會自動使 用SVD來求解。 很多數學統計和工程問題都會遇到singular matrix,數學統計上常用到的最小 平方法(least-square method)也會遇到。 回到你本身的問題,你會發現,你得到的矩陣前面,有乘上一個很大很大的值, 大的不像話,那就已經說明,得到的答案有99%是錯的...... 總結一下: 如果你有一個矩陣,是singular matrix,你單純想要求他的反矩陣,MATLAB解 出來的有很大的機率是錯誤的。即使你用別的程式語言加上數值分析的方法, 也只能求得很近似的值而已。因為在數學理論上,它其實是不存在的。 但如果你在整個演算法中,無論如何都必須要先求得它的反矩陣,再加以應用 的話,那就必須要訴諸其他的數值分法,避免「正面」去求它的反矩陣,走別 條路,去得到最後的答案。 -- 年 輕 是 什 麼 ? 是 風 ,是 雲 彩 , 也 是 天 空 , 是 一 種 心 情, 閃 爍 在 生 命 的 每 一 個 轉 折 裡。 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.187.195
1F:推 takuya0608:正解。 09/24 13:07
2F:→ takuya0608:而且寫的很清楚,有興趣的人建議可以去翻閱相關書籍。 09/24 13:08







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP