1 Star 0 Fork 1

徐晨哲/数值分析

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
徐晨哲雅可比高斯赛德尔.py 950 Bytes
一键复制 编辑 原始数据 按行查看 历史
徐晨哲 提交于 2022-05-11 22:32 . 呜呜呜幸苦死我了
# -*- coding: utf-8 -*-
# -- Sheet --
import numpy as np
def Jacobi(A,b,x0,it_max,ep):
D=np.diag(np.diag(A))
U=-np.triu(A,1)
L=-np.tril(A,-1)
B=np.dot (np.linalg.inv (D),(L+U))
f=np.dot (np.linalg.inv(D),b)
x=np.dot(B,x0)+f
k=1
index=1
while np.linalg.norm(x-x0)>=ep:
x=x0
x=np.dot(B,x0)+f
k=k+1
if k>it_max:
index=0
break
return k,index,x
def G_S(A,b,x0,it_max,ep):
D=np.diag(np.diag(A))
U=-np.triu(A,1)
L=-np.tril(A,-1)
B=np.dot (np.linalg.inv (D-L),U)
f=np.dot (np.linalg.inv(D-L),b)
x=np.dot(B,x0)+f
k=1
index=1
while np.linalg.norm(x-x0)>=ep:
x=x0
x=np.dot(B,x0)+f
k=k+1
if k>it_max:
index=0
break
return k,index,x
A=[[4,3,0],[3,4,-1],[0,-1,4]]
b=[24,30,-24]
x0=[0,0,0]
print(Jacobi(A,b,x0,100,0.000001))
print(G_S(A,b,x0,100,0.000001))
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/changerxu/numerical-analysis.git
git@gitee.com:changerxu/numerical-analysis.git
changerxu
numerical-analysis
数值分析
master

搜索帮助