在Python中求解变量的方程

时间:2018-04-05 16:43:39

标签: python variables optimization scipy

我正在尝试解决未知变量(y)的等式,我正在使用下面的内容。然而,它花了很多时间,我已经阅读了一些关于使用scipy.optimize加速它的文章,但不知道如何。任何帮助将不胜感激:

from sympy import Eq, var, solve
var('y')    
eq = Eq(((5/(1+((.0025+y)/2)))**2) + ((5/(1+((.0027+y)/2)))**4) + ((105/(1+((.003+y)/2)))**6),104.90)

solve(eq)

1 个答案:

答案 0 :(得分:0)

如果您正在寻找数字解决方案,可以使用brentq

from scipy.optimize import brentq

f = lambda y: ((5/(1+((.0025+y)/2)))**2) + ((5/(1+((.0027+y)/2)))**4) + ((105/(1+((.003+y)/2)))**6)-104.90

res = brentq(f, 0, 1E8)