python實現(xiàn)高斯(Gauss)迭代法的例子
更新時間:2019年11月20日 16:20:53 作者:此生無分起相思
今天小編就為大家分享一篇python實現(xiàn)高斯(Gauss)迭代法的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
我就廢話不多說了,直接上代碼大家一起看吧!
#Gauss迭代法 輸入系數(shù)矩陣mx、值矩陣mr、迭代次數(shù)n(以list模擬矩陣 行優(yōu)先)
def Gauss(mx,mr,n=100):
if len(mx) == len(mr): #若mx和mr長度相等則開始迭代 否則方程無解
x = [] #迭代初值 初始化為單行全0矩陣
for i in range(len(mr)):
x.append([0])
count = 0 #迭代次數(shù)計數(shù)
while count < n:
for i in range(len(x)):
nxi = mr[i][0]
for j in range(len(mx[i])):
if j!=i:
nxi = nxi+(-mx[i][j])*x[j][0]
nxi = nxi/mx[i][i]
x[i][0] = nxi
count = count + 1
return x
else:
return False
#調(diào)用 Gauss(mx,mr,n=100) 示例
mx = [[8,-3,2],[4,11,-1],[6,3,12]]
mr = [[20],[33],[36]]
print(Gauss(mx,mr,20))
以上這篇python實現(xiàn)高斯(Gauss)迭代法的例子就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python 調(diào)用 Outlook 發(fā)送郵件過程解析
這篇文章主要介紹了Python 調(diào)用 Outlook 發(fā)送郵件過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08
python 實現(xiàn)socket服務(wù)端并發(fā)的四種方式
這篇文章主要介紹了python 實現(xiàn)socket服務(wù)端并發(fā)的四種方式,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12
tensorflow: variable的值與variable.read_value()的值區(qū)別詳解
今天小編就為大家分享一篇tensorflow: variable的值與variable.read_value()的值區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
python 使用 requests 模塊發(fā)送http請求 的方法
本文分步驟給大家介紹了python 使用 requests 模塊發(fā)送http請求 的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-12-12

