作为简单数值传播全局变量的物理单位

physunits的Python项目详细描述


藻属

具有通用物理单元定义的简单包。在

安装

使用pip将这个包添加到现有的python环境中 pip install physunits,或者按照特定于发行版的说明进行操作。在

使用

此软件包的一个示例用法是:

>>fromphysunitsimport*>>print(f"{1000*cm/um:.2f} is how many microns there are in a thousand centimeters")10000000.00ishowmanymicronsthereareinathousandcentimeters

软件包尝试只包含最常用的单位前缀,但可以生成其他单位,例如:

^{pr2}$

单位前缀充当简单的全局变量。如果只需要支持单元的一个子集,则手动将它们导入为

fromphysunitsimportmm,nm,um

足够好了。在

physunits可能有用的另一个例子是以下处理电压跟踪的脚本:

importnumpyasnpimportmatplotlib.pyplotaspltfromphysunitsimport*f=2.12*kHzomega=2*np.pi*ft=np.linspace(-670*us,410*us,2**10)my_voltage=(1.5*mV)*np.sin(omega*t)# Now plot voltage in mV vs time in msplt.plot(t/ms,my_voltage/mV)plt.xlabel(r't (ms)')plt.ylabel(r'V (mV)')plt.show()

输出以下曲线图: example_plot

说明

所有单位均参考SI。这意味着base、derived、freedom(imperial)和其他包括前缀的单位总是相对于SI base units。这是manifest的一个例子是,当导入时,单元kg采用数值1.0,而不管前缀表示{}的数值因子。在

UnitSupported
lengthnm, um, mm, cm, m, km, inch, ft, yd
timeps, ns, us, ms, s
massng, ug, mg, g, kg, lb, oz
temperaturenK, uK, mK, K
angle*deg, rad, mrad
frequencymHz, Hz, kHz, MHz, GHz, THz
voltagepV, nV, uV, mV, V, kV
chargeC, mC, uC, nC
currentnA, uA, mA, A
resistanceOhm, mOhm, kOhm, MOhm, GOhm
capacitanceF, mF, uF, nF, pF
inductanceH, mH, uH, nH
magnetic field strengthT, mT, uT, nT, pT
energy**mJ, J, kJ, meV, eV, keV, MeV, GeV, TeV
powernW, uW, mW, W, kW, MW
pressuremPa, Pa, kPa, MPa, atm, psi, Torr, mBar, Bar
rel concentrationppm, ppb

如果你想让一个单位得到支持,可以随意打开一个问题。在

  • 我们all都知道,如果角度有一个国际单位制,它就是弧度,所以在physunits中,它取值{},并且度数是相对于它定义的。这在所有trig函数中都能很好地工作。特别感谢chrisjbillington指出这一点。在

**当电子电压(eV)不是SI的一部分时,SI recognizes its use。此外,latest SI redefinition固定了电子电荷常数的值,有效地固定了eV和{}之间的转换。在

联系和支持

请直接在项目的repository上报告、分叉、测试、贡献或创建问题。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像