# coding:utf-8 import numpy as np import sys # 设置矩阵 def set_matrix(): # 设置系数矩阵A matrix_a =np.mat([ [2.0, 1.0, 2.0], [5.0, -1.0, 1.0], [1.0, -3.0, -4.0]],dtype=float) matrix_b = np.mat([5, 8, -4],dtype=float).T return matrix_a, matrix_b # 高斯顺序消去法 def gauss_shunxu(mat): for i in range(0,mat.shape[0]-1): # 判断顺序顺序主子式的首个元素不为0 if mat[i,i] == 0: print mat print 'break:(', i, ',', i, ')元素为0' break else: # i行下面的每一行分别跟i行做计算,消掉第i个元素 mat[i+1:,:] = mat[i+1:,:] - (mat[i+1:,i]/mat[i,i])*mat[i,:] return mat def huidai(mat): x = np.mat(np.zeros(mat.shape[0],dtype=float)) # 先算x(n) 用 b(n)/a(nn) n = x.shape[1]-1 x[0,n] = mat[n,n+1]/mat[n,n]
高斯消元法(三):用Python简单实现顺序消元法
最新推荐文章于 2022-11-02 15:00:36 发布
本文介绍了如何使用Python实现高斯顺序消去法来解决线性方程组。通过设置系数矩阵和常数矩阵,利用高斯消元法将增广矩阵转换为上三角矩阵,然后进行回代计算,最终得出解。
摘要由CSDN通过智能技术生成