努力️ 2021-10-25 15:32 采纳率: 66.7%
浏览 25

函数A需要使用函数B中的变量值,函数B同样需要函数A中的变量值才能生成新值,这该怎么写程序啊?

函数A 如下:


    def SIR_model(y, t, B, r0):
        S, I, R = y
        dS_dt = -B * S * I
        dI_dt = B * S * I - r0 * I
        dR_dt = r0* I
        O.append(I)
        r.append(R)
        s.append(S)
        return ([dS_dt, dI_dt, dR_dt ])
这里的B指的是函数B中的B
S,I,R有初值,B的初值也能求出来,
S0=0.999999551536256
I0=0.000000448463744
R0 = 0.0

函数B如下:

B = B0 - C * (i+r)

B0=0.36,C=1250,i和r是从函数A中获得的

我不知道是不是该用类来写,如果用类来定义的话该怎么定义呢?谢谢!

  • 写回答

3条回答 默认 最新

  • bekote 2021-10-25 15:40
    关注

    这逻辑没问题吗?函数A需要参数B才能计算I和R,但是B又要通过I和R才能计算,如果I和R是有初值的,那也是先执行函数B计算出B,然后再用B调用函数A呀

    评论

报告相同问题?

问题事件

  • 创建了问题 10月25日