Python Sympy can';t解这个三角方程

Python Sympy can';t解这个三角方程,python,sympy,Python,Sympy,我试图让Symphy解下面的三角方程,但它给了我这个错误: NotImplementedError: could not solve b*tan(3*atan(6/b)/2) - 9 有没有一种方法可以让sympy解出下面的方程 import sympy from sympy import * a = sympy.symbols("a") b = sympy.symbols("b") eq1 = sympy.Eq(b*tan(2*a), 6) eq

我试图让Symphy解下面的三角方程,但它给了我这个错误:

NotImplementedError: could not solve b*tan(3*atan(6/b)/2) - 9
有没有一种方法可以让sympy解出下面的方程

import sympy

from sympy import *

a = sympy.symbols("a")
b = sympy.symbols("b")

eq1 = sympy.Eq(b*tan(2*a), 6)
eq2 = sympy.Eq(b*tan(3*a), 9)

result = sympy.solve([eq1, eq2], (a,b))
print(result)

您可以使用expand应用三角加法公式,这些公式将所有内容简化为
tan(a)
中的有理函数:

然后方程可以求解:

In [14]: eq1, eq2 = [eq.expand(trig=True) for eq in [eq1, eq2]]

In [15]: solve([eq1, eq2], (a,b))
Out[15]: 
⎡⎛              18⋅√5⋅ⅈ⎞  ⎛             -18⋅√5⋅ⅈ ⎞⎤
⎢⎜-ⅈ⋅atanh(√5), ───────⎟, ⎜ⅈ⋅atanh(√5), ─────────⎟⎥
⎣⎝                 5   ⎠  ⎝                 5    ⎠⎦

然后它就解决不了了,希望能给你一些想法。从方程中删除
b
似乎会导致一个结果
solve([Eq(tan(2*a)/6,tan(3*a)/9)],a)
i的值是多少?或者它有值吗?
i
-1
的平方根。
In [14]: eq1, eq2 = [eq.expand(trig=True) for eq in [eq1, eq2]]

In [15]: solve([eq1, eq2], (a,b))
Out[15]: 
⎡⎛              18⋅√5⋅ⅈ⎞  ⎛             -18⋅√5⋅ⅈ ⎞⎤
⎢⎜-ⅈ⋅atanh(√5), ───────⎟, ⎜ⅈ⋅atanh(√5), ─────────⎟⎥
⎣⎝                 5   ⎠  ⎝                 5    ⎠⎦