阅读 119

我们如何使用 SciPy 库来求解线性方程?

SciPy 有一个名为 scipy 的函数。求解线性方程组。我们只需要知道如何用向量表示线性方程。它将求解未知 x 的线性方程组 a * x = b。让我们借助以下示例来理解它 -linalg.solve()

示例

在这个例子中,我们将尝试解决一个线性代数系统,它可以给出如下 -

   3x + 2y = 2

   x - y = 4

   5y + z = -1

函数 scipy。将找到所有上述三个方程都为零的 x、y 和 z 值。linalg.solve()


import numpy as np
from scipy import linalg# The linear algebra system which is given as# 3x + 2y = 2# x - y = 4# 5y + z = -1#We need to find values of x,y and z for which all these equations are zero# Creating the input arraya = np.array([[3, 2, 0], [1, -1, 0], [0, 5, 1]])# Providing the solution Arrayb = np.array([[2], [4], [-1]])# Solve the linear algebrax = linalg.solve(a, b)# Printing the resultprint(x)# Checking the resultnp.dot(a, x) == b

输出结果

[[ 2.]
[-2.]
[ 9.]]


让我们再看一个例子 -

示例

在这个例子中,我们将解决一个更复杂的线性代数系统,如下所示 -

x + 2y - 3z = -3

2x - 5y + 4z = 13

5x + 4y - z = 5


import numpy as np
from scipy import linalg# Creating the input arraya = np.array([[1, 2, -3], [2, -5, 4], [5, 4, -1]])# Providing the solution Arrayb = np.array([[-3], [13], [5]])# Solve the linear algebrax = linalg.solve(a, b)# Printing the resultprint(x)# Checking the resultnp.dot(a, x) == b

输出结果

[[ 2.]
[-1.]
[ 1.]]


文章分类
百科问答
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐