首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jacobi的python代码迭代是什么bug?

Jacobi的python代码迭代是什么bug?
EN

Stack Overflow用户
提问于 2022-04-21 10:29:44
回答 1查看 112关注 0票数 0

这是求解线性方程组的Jacobi迭代法程序的一部分,代码问题是迭代的前解向量与这个迭代的解向量是相同的。

代码语言:javascript
复制
import numpy as np
def Jacobi(A,b,x,e,N): ## Ax=b,e precision ,N max times 
    A,b=np.array(A,dtype=float),np.array(b,dtype=float)
    n=A.shape[0]
    x,y=np.array(x),np.zeros(n)
    for k in range(N):
        for i in range(n):
            m=0
            for j in range(n):
                m=m+A[i,j]*x[j]
            y[i]=x[i]+(b[i]-m)/A[i,i]
        R=max(abs(x-y))
        x=y
        print(R)
A=[[5,-1,-1,-1],[-1,10,-1,-1],[-1,-1,5,-1],[-1,-1,-1,10]]
B=[-4,12,8,34]
x0=np.zeros(4)
Jacobi(A,B,x0,0.001,10)

X和y应该是不相等的,但是程序输出的R=0.Just类似于在这里输入图像描述

EN

回答 1

Stack Overflow用户

发布于 2022-04-22 01:26:18

在第13行

代码语言:javascript
复制
x=y.copy()

因为x=y让x=y永远。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71952935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档