跳转到主要内容

Python的重力工具

项目描述

Python的重力波实用工具

gravtools 模块是现有良好编写的库 pycbcgwpy 的补充模块。这个包最初是一些简单的实用工具,例如常量和日期转换辅助函数。

Build Status

有用的常量

gravtools 包包含一些人类可读的枚举常量,用于PyCBC模块结构的关键组件,例如探测器名称和合并参数名称。这是必要的,因为PyCBC通常依赖于惰性加载模式来加载属性,使用setattr函数将属性分配给像Merger这样的主要类。不幸的是,这使得这些属性无法通过大多数IDE进行检测。此外,这些属性的名称有时也不太容易辨认。

>>> from gravtools import MergerParameters, Observatory
>>> Observatory.LIGOHanford
'H1'

>>> MergerParameters.RadiatedEnergy, MergerParameters.FinalSpin
('E_rad', 'a_final')

时间转换

引力波数据使用GPS时间格式,这是自GPS时代以来的浮点秒数。在gravtools中的time模块包含一个将GPS时间转换为内置datetime的实用函数。

>>> from gravtools import time
>>> time.gps_to_datetime(1187529241)
datetime.datetime(2017, 8, 23, 13, 14, 20)

合并格式化

PyCBC模块中的Merger类默认没有干净的repr。在gravtools包中的merger模块包括对Merger对象进行格式化的实用工具,主要是为了快速检查和显示目的(例如,在一个Jupyter笔记本中)。

>>> from gravtools import merger
>>> from pycbc import catalog
>>> m = catalog.Merger('GW150914')
>>> merger.summary(m)
'Merger[GW150914](Mass1=35.6, Mass2=30.6, FinalSpin=0.69)'

显示的参数也可以通过使用parameters参数进行配置

>>> merger.summary(m, parameters=[MergerParameters.Redshift])
'Merger[GW150914](Redshift=0.09)'

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。

源分布

gravtools-0.1.3.tar.gz (4.2 kB 查看哈希值)

上传于 源代码

构建版本

gravtools-0.1.3-py3-none-any.whl (7.8 kB 查看哈希值)

上传于 Python 3

由以下支持