我正在使用Python中的numpy.linalg.inv()函数进行操作。我通过从较大的ZMatrix中获取嵌套for循环中的某些元素来填充4个矩阵。如下
#populating arrays for Zp
for k1 in range(3):
for m1 in range(3):
Za[k1][m1] = ZMatrix[k1][m1]
for k1 in range(3,4):
for m1 in range(0,2):
Zb[k1-3][m1] = ZMatrix[k1][m1]
for k1 in range(0,2):
for m1 in range(3,4):
Zc[k1][m1-3] = ZMatrix[k1][m1]
for k1 in range(3,4):
for m1 in range(3,4):
Zd[k1-3][m1-3] = ZMatrix[k1][m1]
然后我想做以下计算
ZpMatrix = Za-(Zb*np.linalg.inv(Zd)*Zc)
它会引发错误:
LinAlgError: Singular matrix
如何在没有此错误的情况下进行我想要的计算。
非常感谢