资源简介

用python编写的比较简洁的LU分解法解方程组

资源截图

代码片段和文件信息

def printmat(matn):
for i in range(n):
for j in range(n):
print str(mat[i][j])
print “ “
print “\n“
def LU(An):
L=[[0 for x in range(n)] for y in range(n)]
U=[[0 for x in range(n)] for y in range(n)]
# for i in range(n):#0--->n-1
# L[i][0]=A[i][0]
# printmat(L3)
# print “\n“


# for i in range(1n):#1--->n-1
# U[0][i]=A[0][i]/float(L[0][0])
# printmat(U3)
# print “\n“

for i in range(n0-1):
for temp in range(n-in):#0--->i-1
sumup=0
for temp2 in range(n-i):
sumup+=L[temp][temp2]*U[temp2][n-i]
L[temp][n-i]=A[temp][n-i]-sumup

for temp in range(n-i+1n):
sumup=0
for temp2 in range(n-i):#0-->n-i-1
sumup+=L[n-i][temp2]*U[temp2][temp]
U[n-i][temp]=(A[n-i][temp]-sumup)/float(L[n-i][n-i])

for i in range(n):
U[i][i]=1
print “the L 

评论

共有 条评论