1

我在 Matlab 中有 2 个矩阵,A并且B,我正在尝试找到一种简单的方法来接收这些矩阵并输出一个映射A到的函数B,它应该与B=Ax+ywherexy是静态数字形式的函数一样简单,但我不能似乎记得我今天的基本数学技能。在 Matlab 中是否有一种简单的方法可以做到这一点?

4

1 回答 1

0

编辑

这是评论中解释的OP原始问题的答案。

取两个元素b1and b2fromB和相同的元素a1and a2from A。一定要a1 ~= a2。如果 的所有元素A都相同,那么问题是微不足道的。然后计算

x = (b1-b2) / (a1-a2) ;
y = b1 - a1*x;
err = B - A*x - y;
total_error = sum(abs(err(:)));

如果xy不满足等式,则total_error > 0和 不存在这样的xy


实际上,如果 x 和 y 只是数字,你可以这样做

B = A*x + y;

Matlab 能够通过将数字广播xA.

如果x是一个向量并且A*x有意义,你也可以这样做。

如果y是与 大小相同的标量或向量A*x,您也可以这样做。

于 2012-10-10T23:51:07.900 回答