如何在遇到Python条件时停止功能运行?

时间:2019-12-01 15:24:48

标签: python break odeint

我正在尝试用Python解决/模拟材料平衡方程。当浓度值之一变为负值时,我想停止模拟。我使用了条件语句,然后使用break函数。没有显示错误。我不明白为什么这不起作用。 break语句的位置正确吗?请帮忙!! 这是我的代码:

def simulation(z,t,k):

    k1 = k[0]
    k2 = k[1]
    k3 = k[2]
    tol = z[0] 
    H = z[1]
    O = z[2] 


    dHdt = k1*tol*H - k2*tol*H
    dtoldt = (-k1 * tol * H) - (k1 * tol * H) - (k3 * tol * O)
    dOdt = -k3*tol*O

    for i in range (0,3):
        if z[i] < 0:
           break

   return [dHdt, dtoldt, dOdt]

k = [125.656, 478.36, 2698.3]
t = np.linspace(0, 1000, 100)
z0 = [100, 150, 200]

z = odeint(simulation, z0, t, args=(k,))
print(z)

0 个答案:

没有答案