[英]how can I find the parameters of matrix-equation in matlab?
我有下面的矩陣方程式:
[M] = [A][R] + [B][L]
其中: A
和B
= 2 x 2矩陣
M
, R
, L
和= 2 by 1矩陣。
為了估計A
和B
一個特定值,我有9個不同的數據[M]
, [R]
和[L]
。 假設這9個數據是一組數據,而我有數百個組數據。
我需要找到與特定組數據相關的A
和B
的值。
那么,是否有人通過簡單地將[M]
, [R]
和[L]
數據輸入到matlab中,從而對matlab有所了解或知道如何獲取每個組的[A]
和[B]
值?
我設置問題的方式有問題。 無論M,R和L的值是多少,您的方程式都將具有無限數量的解。
不管M,R和L的值如何,一個解都是[A] = [0],[B] = [0],[C] = [M]。 實際上,如果您設置[C] = [M],則[A]和[B]可以是[A] [R] = [0]和[B] [L] = [0]的任何矩陣,並且有無數個。
評論后編輯
好的,我仔細閱讀了您的評論。 我認為您最初提出問題的方式有點誤導。 在您的新配方中,您有9個實例
Xm = a Xr + bYr + cXp + dYp
通常用9x4矩陣乘以四個向量得出9個向量來表示:
y = X b
其中y是包含Xm的9x1向量,X是包含9行Xr,Yr,Xp和Yp值的9x4矩陣,b是我們要解決的未知數。
如果所有方程都是線性獨立的,則系統是超定的,因此您無法獲得精確的解決方案,而只能獲得最佳擬合。 要在Matlab中進行線性最小二乘擬合,命令是:
b = X\y
b是包含a,b,c和d的1x4向量,它是對解的最小二乘近似。 請參閱此matlab參考 。
您不能使用大小不同的矩陣。 這個方程對我來說毫無意義。
更新:
這個更新的公式很有意義。
聽起來像是最小二乘擬合問題。 您將輸入數據,並為系數矩陣獲得最佳估計。 我將不得不更多地了解數據,分組等的確切性質,但是我建議您開始閱讀有關MATLAB最小二乘擬合功能的信息。
最小二乘擬合始於提出一個模型。 假設您有三個自變量(x,y,z)和一個因變量(v):
(來源: equationsheet.com )
現在,您需要解決四個系數。 您將擁有n組點,其中n> 4,因此您需要進行最小二乘擬合。
如果將點替換為方程式,最終將得到矩陣方程式:
如果您將兩邊都乘以 ,您將擁有一個方矩陣,可以將其求逆並求解系數。
該公式還允許更高階的多項式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.