-1
함수를 사용하여 행렬을 에크론 형식으로 줄이려고하지만 함수를 호출 할 때 인수도 변경됩니다. 다음 코드는함수 호출이 인수를 변경하는 중 파이썬
def GaussE(E,r):
N = np.size(r)
for i in range(0,N-1):
for j in range(i+1,N):
f=(E[j,i]/E[i,i])
r[j]= r[j] -(f)*r[i]
for k in range(i,N):
E[j,k] = E[j,k]-(f*E[i,k])
return(E,r)
A = np.array([[5.10,8.70],[2.40,4.10]])
b = np.array([9.48,4.48])
print(A,b)
출력 : [5.1 8.7] 2.4 4.1] [9.48 4.48]
X = GaussE(A[:],b[:])
print(A,b) # Why is A and b changing? they should not change
출력 : [5.10000000e + 00 8.70000000e +00] [0.00000000e 5.88235294e + 00 - 03] 파이썬 [9.48 0.01882353]