Python 和 Sympy 的三角恒等式,tan(A/2) = (sin A )/(1 + cos A)

Trigonometric identities with Python and Sympy, tan(A/2) = (sin A )/(1 + cos A)

我不确定如何让 Sympy 执行/简化这些类型的身份?

它会做 sin(a + b) 之类的事情,但似乎不会做其他事情(如标题中的那个)

一种方法是尝试各种简化组合 functions/methods,例如 rewritesimplify。例如,下面给出你想要的结果:

import sympy as sp

x = sp.var('x', real = True)

f = sp.tan(x/2)

sp.re(f.rewrite(sp.exp).simplify().rewrite(sp.sin)).simplify()

sin(x)/(cos(x) + 1)