错误消息:索引越界,在嵌套循环中?



我正在使用嵌套循环来定义矩阵,但我不断收到错误:

IndexError: index 127 is out of bounds for axis 1 with size 127.

我在最后一行收到此错误,由coeffs[i,i+1].在我也有coeffs[i,i+1]的早期嵌套循环中不会返回此错误。 我尝试仅替换coeffs[i,i+1]右侧的浮点数,但错误仍然存在,因此问题肯定出在这里。我也尝试过range(0,n+1),这不会改变任何事情。 据我了解,Python 看到 i+1 索引并立即决定它可以找到一个不存在的元素。但是,我的矩阵大小是 nxn,我已经给了它边界条件for i == n。我已经尝试了替换elif i != 0 and i != 1,但它没有帮助。(Funcs 是我也在定义的一个向量,它不会产生任何问题。有什么想法吗?

提前非常感谢。

for i in range(0,n):
if i == 0:
coeffs[i,i] = 1
coeffs[i,i+1] = 0
funcs[i] = Tb
if i == n:
coeffs[i,i] = 1
funcs[i] = Th
else:
coeffs[i,i] = -2
coeffs[i,i-1] = 1+(w[i]*delz/2*kappa)
coeffs[i,i+1] = 1-(w[i]*delz/2*kappa) 

如下

IndexErrorTraceback (most recent call last)
<ipython-input-245-f2fa3a661305> in <module>()
39         coeffs[i,i] = -2
40         coeffs[i,i-1] = 1+(w[i]*delz/2*kappa)
---> 41         coeffs[i,i+1] = 1-(w[i]*delz/2*kappa)
42 
43 

索引错误:索引 127 超出大小为 127 的轴 1 的界限

范围 (0,n( 中的最后一项是 n-1,而不是 n

最新更新