使用numpy和Python通过使用back/forward subs从LU分解解决系统
试图用计算机来解决这个LU分解系统。以下是我目前掌握的代码,我得到一个错误:使用numpy和Python通过使用back/forward subs从LU分解解决系统,python,numpy,decomposition,Python,Numpy,Decomposition,试图用计算机来解决这个LU分解系统。以下是我目前掌握的代码,我得到一个错误: import numpy as np from copy import copy L=np.array([(1,0,0,0),(-1,1,0,0),(2,-1,1,0),(-3,2,-2,1)]) U=np.array([(2,1,-1,3),(0,1,-1,3),(0,0,-1,3),(0,0,0,3)]) b=np.array([(12,-8,21,-26)]) def solve_system_LU
import numpy as np
from copy import copy
L=np.array([(1,0,0,0),(-1,1,0,0),(2,-1,1,0),(-3,2,-2,1)])
U=np.array([(2,1,-1,3),(0,1,-1,3),(0,0,-1,3),(0,0,0,3)])
b=np.array([(12,-8,21,-26)])
def solve_system_LU(L,U,b):
x = np.zeros(b.shape)
n=len(L)
y=[0 for i in range(n)]
for i in range(0,n,1):
y[i]=b[i]/float(L[i][i])
for k in range(0,i,1):
y[i]-=y[k]*L[i][k]
n=len(U)
x=[0 in range(n)]
for i in range(n-1,-1,-1):
x[i]=y[i]/float(U[i][i])
for k in range (i-1,-1,-1):
U[i]-=x[i]*U[i][k]
return(x)
ans=solve_system_LU(L,U,b)
print(ans)
请始终将准确的错误输出添加到您的问题中。