python - 求解具有 7 个未知数的线性联立方程
问题描述
我正在尝试求解一个由 7 个线性方程组成的系统,以完成涉及“转运单纯形算法”问题的步骤。我使用 numpy 库编写了以下代码:
import numpy as np
# Coefficients matrix
A = [[1,0,0,0,0,0,0], [1,0,0,0,0,0,1], [0,1,0,1,0,0,0], [0,1,0,0,1,0,0], [0,1,0,0,0,0,1], [0,0,1,0,0,1,0], [0,0,1,0,0,1,0]]
# RHS matrix
B = [0,120,100,40,10,60,100]
# Solution matrix
X = np.linalg.inv(A).dot(B)
print (X)
但是,当我运行此代码时,我收到以下错误:
lgerror_singular
raise LinAlgError("Singular matrix")
numpy.linalg.LinAlgError: Singular matrix
我曾尝试使用该np.linalg.solve(A,B)
方法,但这会返回相同的错误。
我也尝试过像这样定义矩阵,B = np.array([0,120,100,40,10,60,100])
但这会返回以下错误:
A = np.array([1,0,0,0,0,0,0], [1,0,0,0,0,0,1], [0,1,0,1,0,0,0], [0,1,0,0,1,0,0], [0,1,0,0,0,0,1], [0,0,1,0,0,1,0], [0,0,1,0,0,1,0])
TypeError: array() takes from 1 to 2 positional arguments but 7 were given
我知道我在这里一定做错了什么,任何帮助将不胜感激!
解决方案
推荐阅读
- python - 避免在 python 正则表达式中重复删除
- javascript - if then else条件在json模式中
- elasticsearch - 改进对人名和地址的弹性搜索查询
- javascript - Flask POST请求表单数据而不刷新页面
- python - Matplotlib:如何绘制两个具有相同 x/y 轴但一个沿 y 轴从另一个开始的条形图
- java - 为什么 vscode 无法识别导入的 org.junit?
- gradle - JaCoCo Gradle Kotlin DSL 从违规规则中排除文件
- google-apps-script - 谷歌表格,在一个单元格中设置多个超链接的脚本
- xml - 将 XML 导出到 ODK 聚合服务器的自定义表单生成器
- mysql - 有效地从一个表中删除与另一个表不匹配的行 [MySQL]