我有一段代码,按照给定的N值从一个随机的N×N矩阵创建一个上三角矩阵,只是想知道我是否可以更改范围等以允许它给出一个较低的三角矩阵还是我只需要完全编写一段新代码?
N = 3
A = np.random.rand(N, N)
for row in range(0, N-1):
for i in range(row+1, n):
factor = A[i, row] / A[row, row]
for j in range(row, n):
A[i, j] = A[i, j] - factor * A[row, j]
print(A)
答案 0 :(得分:0)
是的,您可以更改给定的代码。考虑一下这一点的数学基础。什么定义“上三角”?关键属性是,对于每个非零条目A[i, j]
,您都有i <= j
。
要使其生成一个较低的三角形,您需要反转该逻辑,以便您正在使用i >= j
。尝试将索引切换为A
;你从哪里得到的?
尝试写下该更改。 那是我们在下一个问题发布时希望看到的成果。更好的是,不看到它发布了,因为您不需要我们就可以运行它。