首页 > 解决方案 > 使用 mldivide 约束参数

问题描述

我有一个形式的矩阵方程AX = B。我知道的大小为 1000x3 AB我想 cacluate X,这是一个 3x3 矩阵。但是,该矩阵的某些项是零和一。即X是形式[a 0 b; 0 c d; 0 0 1]

当我 calcualte 时X = A\B,我得到了、和的很好的近似值a,但是我期望为零的值是非常小的数字。bcd

有没有办法将一些参数限制为零?

标签: matlabmatrixlinear-algebra

解决方案


考虑独立解决每一行。从技术上讲,您有 3 个形式为 的方程组A*x_i=b_i,分别为A[1000x3]、x_i[3x1]、b_i[1000x1]。

现在,您可以制作x_i任何形状,特别是,您可以删除零(连同 A 中将它们相乘的向量)。如果您知道x_3[k 0 m](随机示例),这与求解x_3大小 [2x1] ( [k m]) 和A大小 [1000x2] 相同。

不要浪费计算乘以零


推荐阅读