编写一段高斯列元素消去法计算的python代码
时间: 2023-08-07 21:05:19 浏览: 82
下面是一个简单的高斯列元素消去法计算的Python代码:
```python
import numpy as np
def gaussian_elimination(A, b):
n = len(b)
# 前向消元
for i in range(n):
for j in range(i+1, n):
factor = A[j][i] / A[i][i]
for k in range(i, n):
A[j][k] = A[j][k] - factor * A[i][k]
b[j] = b[j] - factor * b[i]
# 回代求解
x = np.zeros((n,))
for i in range(n-1, -1, -1):
x[i] = (b[i] - np.dot(A[i][i+1:], x[i+1:])) / A[i][i]
return x
```
其中,输入参数 `A` 是一个 $n\times n$ 的矩阵,`b` 是一个长度为 $n$ 的向量,表示线性方程组 $Ax=b$ 中的系数矩阵和常数向量。返回值 `x` 是一个长度为 $n$ 的向量,表示方程组的解。在函数中,先进行前向消元,再进行回代求解。
阅读全文