8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

为什么我不能在积分器中使用浮点数

bastiag5 1月前

18 0

当计数器 < 时间时:w = d*u.copy()对于范围(1,节点 -1)内的 i:对于 np.arange(-1/2, 1/2)内的 j:u[i] = ((w[j+1//2]/dx**2)*(u[i+1]-u[i]))counter += dtif f <= 0.5:IndexErr...

当计数器<时间时:

w = d*u.copy()

for i in range(1, nodes -1):
    for j in np.arange(-1/2, 1/2):

        u[i] = ((w[j+1//2]/dx**2)*(u[i+1]-u[i]))

counter += dt
if f <= 0.5 :

IndexError:只有整数、切片( : )、省略号( ... )、numpy.newaxis( None )和整数或布尔数组才是有效索引

代码程序

帖子版权声明 1、本帖标题:为什么我不能在积分器中使用浮点数
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由bastiag5在本站《python》版块原创发布, 转载请注明出处!
最新回复 (0)
  • w[j+1//2]
    

    这几乎肯定就是问题所在。

    由于数学运算的顺序, 1//2 首先执行除法,结果为零。

    然后将零添加到 j ,这当然会产生 j .

    所以这相当于 w[j] .

    在内循环的第一次迭代中, j 0.5 ,这导致了问题。您无法根据浮点值对序列进行索引。

返回
作者最近主题: