欢迎来到代码驿站!

JavaScript代码

当前位置:首页 > 网页前端 > JavaScript代码

python实现迭代法求方程组的根过程解析

时间:2021-02-06 10:05:15|栏目:JavaScript代码|点击:

这篇文章主要介绍了python实现迭代法求方程组的根过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

有方程组如下:

迭代法求解x,python代码如下:

import numpy as np
import matplotlib.pyplot as plt
 
A = np.array([[8, -3, 2], [4, 11, -1], [6, 3, 12]])
b = np.array([[20, 33, 36]])
 
# 方法一:消元法求解方程组的解
result = np.linalg.solve(A, b.T)
print('Result:\n', result)
 
# 方法二:迭代法求解方程组的解
B = np.array([[0, 3/8, -2/8], [-4/11, 0, 1/11], [-6/12, -3/12, 0]])
f = np.array([[20/8, 33/11, 36/12]])
error = 1.0e-6
steps = 100
xk = np.zeros((3, 1)) # initialize parameter setting
errorlist = []
for k in range(steps):
  xk_1 = xk
  xk = np.matmul(B, xk) + f.T
  print('xk:\n', xk)
  errorlist.append(np.linalg.norm(xk-xk_1))
  if errorlist[-1] < error:
    print('iteration: ', k+1)
    break
 
# 把误差画出来
x_axis = [i for i in range(len(errorlist))]
plt.figure()
plt.plot(x_axis, errorlist)

结果如下:

上一篇:js与jquery实时监听输入框值的oninput与onpropertychange方法

栏    目:JavaScript代码

下一篇:Underscore之Array_动力节点Java学院整理

本文标题:python实现迭代法求方程组的根过程解析

本文地址:http://www.codeinn.net/misctech/57999.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有