从 sympy 单元获取结果

Get results from sympy units

我正在尝试让一些电动力学与单位一起进行。为了检查我的表现,我正在检查这个关系:

所以我已经定义了 mu0 和 epsilon 0,我想得到光速:

import sympy.physics.units as u
import sympy as sp
sp.sqrt(1/(u.magnetic_constant*u.electric_constant))
>>>> 1/(sqrt(magnetic_constant)*sqrt(vacuum_permittivity))

所以我的结果不是很有用。我试图在网上找到解决方案,但我无法弄清楚。会喜欢你的意见

您可以简单地使用单位模块中定义的convert_to函数:

In [3]: expr = sp.sqrt(1/(u.magnetic_constant*u.electric_constant))

In [4]: expr
Out[4]: 
                      1                      
─────────────────────────────────────────────
  ___________________   _____________________
╲╱ magnetic_constant ⋅╲╱ vacuum_permittivity 

In [5]: u.convert_to(expr, u.speed_of_light)
Out[5]: speed_of_light

In [6]: u.convert_to(expr, u.meter/u.second)
Out[6]: 
299792458⋅meter
───────────────
     second