我正在尝试使用 Excel 求解一个由四个未知数组成的四个线性方程组。我的四个初始方程是
2,236 + x = (4/10) * (5,676 + x + y + z + w)
1,764 + y = (3/10) * (5,676 + x + y + z + w)
1,120 + z = (2/10) * (5,676 + x + y + z + w)
556 + w = (1/10) * (5,676 + x + y + z + w)
我首先将方程式重写如下:
-(6/10)* x + (4/10)* y + (4/10)* z + (4/10)* w = -34.40
(3/10)* x – (7/10)* y + (3/10)* z + (3/10)* w = 61.20
(2/10)* x + (2/10)* y – (8/10)* z + (2/10)* w = -15.20
(1/10)* x + (1/10)* y + (1/10)* z – (9/10)* w = -11.60
然后我取出单元格 F2 至 J5 并按如下方式填充它们:
-6/10 4/10 4/10 4/10 -34.40
3/10 -7/10 3/10 3/10 61.20
2/10 2/10 -8/10 2/10 -15.20
1/10 1/10 1/10 -9/10 -11.60
然后我在 J2 中引入以下公式
=MMULT(MINVERSE(F2:I5),J2:J5)
在单元格 J2 至 J5 中返回以下值:
-1,792
-1,536
-880
-440
使用 WolframAlpha 或 Mathematica 可以轻松验证这些值无法解决我的初始方程组。因此,我的问题是:
- 为什么 Excel 给出了错误的方程组答案?
- 如何让 Excel 为我的方程组提供正确的解?
10
最佳答案
1
如果方程组是不确定的,其行列式等于0
。在 Excel 中,由于四舍五入,它可能是一个接近于零的数字。然后尝试解决这样的系统将得到一个随机结果。在这种情况下,将其中一个未知数视为参数并省略其中一个方程(它是其他方程的线性组合)。如果您知道在您的案例中,y = 0
您可以将其视为y
参数并找到其他 3 个未知数的解。
一般解可以考虑任何值y
和适当调整的其他变量的值。
(在我的情况下,小数分隔符是逗号。)
|
F2:I5
为 0,因此MINVERSE(F2:I5)
不存在;但由于 Excel 中的浮点运算无法1/10
无错误地表达数字,因此在您的计算中存在逆。相关:–
–
–
–
–
|