[英]Transformation function for matrix in matlab
我在Matlab中有2個矩陣, A
和B
,我試圖找到一種簡單的方法將它們引入並輸出一個將A
映射到B
的函數,它應該像函數一樣簡單,形式為B=Ax+y
其中x
和y
是靜態數字,但我似乎不記得今天的基本數學技能。 在Matlab中有一種簡單的方法嗎?
編輯
如評論中所述,這是OP原始問題的答案。
取兩個元件b1
和b2
從B
和相同的元件a1
和a2
從A
。 確保a1 ~= a2
。 如果A
所有元素都相同,那么問題就微不足道了。 然后計算
x = (b1-b2) / (a1-a2) ;
y = b1 - a1*x;
err = B - A*x - y;
total_error = sum(abs(err(:)));
如果x
和y
不滿足方程式,則total_error > 0
並且不存在x
和y
。
實際上,如果x和y只是數字,則可以
B = A*x + y;
Matlab能夠通過將數字x
廣播到A
每個元素來進行矩陣乘以標量運算。
如果x
是一個向量並且A*x
是有意義的,則可以執行相同的操作。
如果y
是標量或向量的大小與A*x
相同,則您也可以執行相同的操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.