繁体   English   中英

如何在Matlab中找到矩阵方程的参数?

[英]how can I find the parameters of matrix-equation in matlab?

我有下面的矩阵方程式:

[M] = [A][R] + [B][L] 

其中: AB = 2 x 2矩阵

MRL和= 2 by 1矩阵。

为了估计AB一个特定值,我有9个不同的数据[M][R][L] 假设这9个数据是一组数据,而我有数百个组数据。

我需要找到与特定组数据相关的AB的值。

那么,是否有人通过简单地将[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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM