首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用RK4解算积分

用RK4解算积分
EN

Stack Overflow用户
提问于 2020-03-29 20:45:11
回答 1查看 142关注 0票数 0

这个问题要求我们在python中使用从05的Rk4方法∫sinh()(−5)来解决这个积分。最好的方法是什么,你怎么把它变成一首颂歌呢?

代码语言:javascript
复制
def RK4(f, dx, x0, y0, imax):
    output = np.empty((imax, 3))
    i = 0
    xi = x0
    yi = y0
    while(i < imax):
        k1 = dx*f(xi,yi)
        k2 = dx*f(xi + 0.5*dx, yi + 0.5*k1)
        k3 = dx*f(xi + 0.5*dx, yi + 0.5*k2)
        k4 = dx*f(xi + dx, yi + k3)

        yi = yi + 1/6*(k1 + 2*k2 + 2*k3 + k4)
        xi += dx
        output[i, 0] = xi
        output[i, 1] = yi[0]
        output[i, 2] = yi[1]
        i += 1
    return output

RK4(0,0,5,100,10)

我得到一个错误,对于k1 (“整型对象不可调用”)??我如何解决这个问题,或者问题出在我的代码中的其他地方。谢谢你的帮助。另外,这个问题明确要求我们使用辛普森规则和RK4方法来求解积分。

EN

回答 1

Stack Overflow用户

发布于 2020-03-31 14:05:41

您正在传递一个整数0来代替该函数。然后在k1行中,您尝试使用该整数作为函数,这会给出报告的错误,因为对0(0,5)没有合理的解释。你可以使用

代码语言:javascript
复制
RK4(lambda x,y:0,0,5,100,10)

但是,如果步长为零,则不会发生积分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60914465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档