如何忽略症状.解决复杂的解决方案



我一直在寻找答案,但找不到解决方案。我正在尝试在Python3中使用sympy.solve,我只想看到真正的根和所有积极的答案。

Sympy能够解出我想要的方程,但它和其他答案一样显示出一堆废话。我已经尝试了一些我发现的其他方法,比如解算集,但它们似乎仍然显示了复杂的解决方案

Sympy溶液图像

如果有帮助的话,这是我的代码:

h, rho_c_s, T_c_s, k, pi, M, M_sun, m_H, m_e, mu_e = symbols(
r"h,rho_odot,T_odot,k,pi,M,M_odot,m_H,m_e,mu_e",positive=True,real=True)
rho_c = rho_c_s * (M / M_sun)**(-2 / 7)
T_c = T_c_s * (M / M_sun)**(4 / 7)
expr1 = (h**2) / (20 * m_e) * (3 / pi)**(2 / 3) * (rho_c /
(mu_e * m_H))**(5 / 3)
expr2 = (rho_c * k * T_c) / (mu_e * m_H)
expr = expr1 - expr2
eqn = Eq(expr, 0)
soln = solve(eqn, M, simplify=True,real=True,positive=True,)
init_printing()
soln

我感谢你的帮助。感谢

我想明白了。

你想做的事:

soln[0]

它只会给你:解决方案

复杂的解决方案是正常的和预期的。要隐藏复杂部分,请查看此处:

https://stackoverflow.com/a/73669399/11468876

最新更新