如何用sympy解决这个方程?

问题描述

最近,我得到了一个长方程来求解,看起来像that

我尝试使用sympy.solveset()解决此问题,但是它返回ConditionSet,这意味着它无法处理该方程式。我如何使用simpy库以及至少在python中不能求解此方程?我使用的代码

import sympy as sp

t = sp.symbols('t')
a = 1.46
b = 1.2042 * 10**-4 * ((1.2275 * 10**-5 + t) * sp.ln(1.2275 * 10**-5 + t) - t)

result = sp.solveset(sp.Eq(a,b),t)
print(result)

解决方法

这是一个超越方程。它可能具有Lambert W函数的解析解决方案,但我不确定。我假设您只想使用nsolve可以得到一个数值解:

In [42]: nsolve(a - b,t,1)                                                                                                                   
Out[42]: 1857.54700584719