未知数数量大于方程数量,如何求解,附Python 代码

未知数如果大于方程数量,意味着限制少于自由度,方程要么无解,要么有无穷个解。

怎么办?我就要部分答案,只要满足方程限制就行?

示例如下:

import sympy as sp
x, y, z = sp.symbols('x, y, z')
eq1 = sp.Eq(x + y + z, 1)             # x + y + z  = 1
eq2 = sp.Eq(x + y + 2 * z, 3)         # x + y + 2z = 3
ans = sp.solve((eq1, eq2), (x, y, z))
# 答案
# {z: 2, x: -y - 1}

 

可以看出,z和x的答案用y表达出来了。

如果需要具体的数值,可以任意设定y值,从而求解出合适的x和z答案即可。

更多精彩,和大家一样关注:

 

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页