与positronium相关的python工具

positronium的Python项目详细描述


与positronium相关的python工具

先决条件

在python 2.7和3.5中使用anaconda(continuum analytics)进行测试。 使用ipython 4.0.1(python 3.5.1内核)编写的示例。

包依赖项:

  • 坐立不安

ipython示例依赖项:

  • matplotlib

安装

通过PIP(推荐):

pip install positronium

或者,尝试开发版本

git clone https://github.com/PositroniumSpectroscopy/positronium

然后运行

python setup.py install

关于

此包旨在整理与 正电子素原子(与反粒子正电子结合的电子)。 函数一般是简单的近似,近似地给出。 正确的答案,而不是严格的量子力学计算。

这个包目前只包含几个非常简单的模块。

常数

旨在以国际单位制收集有用的常数,包括:

constdescription
m_Ps2 * mass_electron
Rydberg_PsRydberg value for Ps
a_PsBohr radius for Ps
decay_pPsdecay rate of para-Ps (S=0)
decay_oPsdecay rate of ortho-Ps (S=1)
lifetime_pPslifetime of para-Ps (S=0)
lifetime_oPslifetime of ortho-Ps (S=1)
frequency_hfsfrequency of the ground-state hyperfine splitting
energy_hfsenergy interval of the ground-state hyperfine splitting
frequency_1s2sfrequency of the 1s2s transition
energy_1s2senergy interval of the 1s2s transition

示例用法,

>>>frompositronium.constantsimportlifetime_oPs,frequency_hfs>>>print("The mean lifetime of ortho-Ps is","%.1f ns."%(lifetime_oPs*1e9))Themeanlifetimeofortho-Psis142.0ns.>>>print("The ground-state hyperfine splitting is","%.1f GHz."%(frequency_hfs*1e-9))Theground-statehyperfinesplittingis203.4GHz.

其中适当的常数存储在float的子类中,称为 测量值,它有一些额外的属性[不确定性,单位, source,url],例如

>>>lifetime_oPs1.4203738423953184e-07>>>lifetime_oPs.uncertainty3.631431333889514e-11>>>print(lifetime_oPs.source)R.S.Vallery,P.W.Zitzewitz,andD.W.Gidley(2003)Phys.Rev.Lett.90,203402>>>lifetime_oPs.article()

最后一行打开指向源日志的url。

玻尔

包含对rydberg公式的改编,该公式用于 计算正电子的主能级,或区间 介于两个级别之间。默认单位是“ev”,但是,这可以是 已使用关键字参数“unit”更改。

例如,激发莱曼α所需的紫外波长(单位:nm) 转换可通过以下方式找到:

>>>frompositroniumimportBohr>>>Bohr.energy(1,2,unit='nm')243.00454681357735

它接受初始(n1)和/或最终(n2)能量的numpy数组 水平,例如

>>>importnumpyasnp>>>n1=np.arange(1,10)>>>np.array([n1,Bohr.energy(n1,unit='eV')]).Tarray([[1.,6.8028465],[2.,1.70071163],[3.,0.75587183],[4.,0.42517791],[5.,0.27211386],[6.,0.18896796],[7.,0.1388336],[8.,0.10629448],[9.,0.08398576]])

ps

这个包包含一个名为ps的类,它可以用来表示 用量子数计算正电子的特殊原子态

nprinciple
lorbital angular momentum
mmagnetic quantum number
Stotal spin
Jtotal angular momentum

这可用于返回能量等的估计值 水平,

>>>frompositroniumimportPs>>>x1=Ps(n=2,l=1,S=1,J=2)>>>x1.energy(unit='eV')-1.7007156827724967

使用

Richard A. Ferrell (1951) Phys. Rev. 84, 858 http://dx.doi.org/10.1103/PhysRev.84.858

这包括精细结构,但不包括辐射修正。

使用乳胶代码表示状态可以使用,

>>>x1.tex()'$2^{3}P_{2}$'

有关更多示例,请参阅ipython/jupyter笔记本,

https://github.com/PositroniumSpectroscopy/positronium/tree/master/examples

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

推荐PyPI第三方库


热门话题
使用jaxrpc的Java eclipse WebService客户端   java编程方式在对象上写入名称   java Spring批处理:重试后跳过   java Android错误:错误:任务执行失败:应用程序:transformClassesWithDexForDebug'   带有清单文件nullPointerException的java Android元数据   spring Java Quartz调度作业停止运行   JavaMockito:如何在不调用实际方法的情况下,模拟带有参数和无效返回类型的静态方法?   java Tomcat连接池问题无法在关闭的连接上调用方法   java如何交换列表中的项目?   java如何停止线程并通过Toast在线程中正确显示文本?   java为什么连续写入OutputStream时偏移量0不会导致重复字节?   java我无法生成头文件   不兼容的返回类型错误java   修改值后键值对的java Jolt转换规范   java有自动更新Javadoc的工具吗?   java线程如何在ints自身实例类中共享变量   java继承一个非gwt模块   java Hibernate xml配置   使用netty4异步调用的java链接HTTP请求响应