用于查询ATNF脉冲星目录的Python模块
项目描述
PSRQpy
本模块旨在提供一个用于查询ATNF脉冲星目录的Python接口。这是一个非官方包,并且未经ATNF的认可或授权。
该模块的完整文档可以在此处找到。
欢迎任何评论或建议。
安装
要从源代码安装,克隆git存储库并运行以下命令
python setup.py install --user
作为用户安装,或
sudo python setup.py install
作为root安装。
也可以使用pip
安装此模块,如下所示
pip install psrqpy
或在一个Conda环境中使用
conda install -c conda-forge psrqpy
要求
安装代码的要求是
示例
对目录的简单查询,例如,仅返回所有脉冲星的频率,将是
import psrqpy
q = psrqpy.QueryATNF(params='F0')
# get frequencies as an astropy table
t = q.table
print(t['F0'])
您可以查询多个参数,例如
import psrqpy
q = psrqpy.QueryATNF(params=['F0', 'F1', 'RAJ', 'DecJ'])
# get values as an astropy table
t = q.table
print(t['F0'])
您可以查询特定的脉冲星,例如
import psrqpy
q = psrqpy.QueryATNF(params=['F0', 'F1', 'RAJ', 'DecJ'], psrs=['J0534+2200', 'J0537-6910'])
# get values as an astropy table
t = q.table
# print the table
print(t)
JNAME F0 F0_ERR F1 F1_ERR RAJ RAJ_ERR DECJ DECJ_ERR
Hz Hz 1 / s2 1 / s2
---------- ------------- ------- ------------- ------ ------------ ------- ------------ --------
J0534+2200 29.946923 1e-06 -3.77535e-10 2e-15 05:34:31.973 0.005 +22:00:52.06 0.06
J0537-6910 62.0261895958 1.3e-09 -1.992272e-10 4e-17 05:37:47.416 0.11 -69:10:19.88 0.6
您可以设置搜索条件,例如
import psrqpy
q = psrqpy.QueryATNF(params=['Jname', 'f0'], condition='f0 > 100 && f0 < 200', assoc='GC')
其中 assoc=GC
用于寻找所有球状星团中的脉冲星。
当生成查询时,整个目录会被下载并存储在 QueryATNF
对象中,作为一个 pandas DataFrame
。因此,查询可以被重复使用来访问不同参数、不同脉冲星或使用不同条件的数据,无需重新下载目录。我们最初可能只想查询频率大于 10 Hz 的脉冲星频率,使用
import psrqpy
q = psrqpy.QueryATNF(params=['F0'], condition='F0 > 10')
freqs = q.table['F0']
使用同一个 QueryATNF
对象,我们可以改为获取频率小于 10 Hz 的脉冲星的频率导数,使用
q.condition = 'F0 < 10'
q.query_params = 'F1'
fdot = q.table['F1']
在这些情况下,整个目录(没有任何条件应用和所有可用参数)作为 pandas DataFrame
可通过以下方式访问
catalogue = q.catalogue
您还可以生成基于最新目录信息的美丽周期与周期导数图,只需三行代码即可,例如
from psrqpy import QueryATNF
query = QueryATNF(params=['P0', 'P1', 'ASSOC', 'BINARY', 'TYPE', 'P1_I'])
query.ppdot(showSNRs=True, showtypes='all')
给出
开发和支持
代码开发通过包的 GitHib 仓库 完成。任何贡献都可以通过从该仓库的 fork 和 pull request 模型进行,必须遵守 MIT 许可证。有关代码或支持请求的任何问题都可以通过仓库的 问题跟踪器 提交。
测试套件
提供了许多 PSRQpy 内部函数的测试。这些测试可以从仓库的基本目录运行(在安装了 pytest
和 pytest-socket
模块后,例如使用 pip
)
pytest
这些测试不包括在 pip
安装的代码版本中。
目录的版权和引用
关于目录及其背后的软件的使用,以下声明适用
PSRCAT 是免费软件:您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,许可证版本为 3 或(根据您的选择)任何更高版本。PSRCAT 是希望它将是有用的,但没有任何保证;甚至没有关于其商业性或特定用途适合性的暗示性保证。有关详细信息,请参阅 GNU 通用公共许可证。
PSRCAT 使用 "evaluateExpression: A Simple Expression Evaluator"。版权所有 © 1996 - 1999 Parsifal Software,保留所有权利。
程序和数据库是澳大利亚天文台国家设施、CSIRO 的财产,并受 CSIRO 法律声明和免责声明 的约束。
如果您在出版物中使用了 ATNF 脉冲星目录的信息,我们希望您通过引用出版物 "The ATNF Pulsar Catalogue", R. N. Manchester, G. B. Hobbs, A. Teoh & M. Hobbs, Astronomical Journal, 129, 1993-2006 (2005) 以及引用网址 http://www.atnf.csiro.au/research/pulsar/psrcat 以获取更新版本表示认可。
如果您使用此代码访问目录或生成图表,我将非常感谢(除了引用上述的 ATNF 脉冲星目录 论文 和 URL 外),您还考虑引用此软件的 JOSS 论文。
@article{psrqpy,
author = {{Pitkin}, M.},
title = "{psrqpy: a python interface for querying the ATNF pulsar catalogue}",
volume = 3,
number = 22,
pages = 538,
month = feb,
year = 2018,
journal = "{Journal of Open Source Software}",
doi = {10.21105/joss.00538},
url = {https://doi.org/10.21105/joss.00538}
}
许可证
此代码受 MIT 许可证 的许可。
© Matt Pitkin,2017
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分布
psrqpy-1.2.10.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b82907a6e3bd24edab4d7f384e6d125d084fdd31ce878ac6a6b76aa13226389e |
|
MD5 | 9e121edc2e87c96edbb98404b1a40269 |
|
BLAKE2b-256 | 48ac5eaa712114cb4cfa6636f23711ca6e28fdc6ef6533c1fc31073c03b861f2 |
psrqpy-1.2.10-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 32f90975bf0c175bb5ce87fb5ecfdd442faf4913d0f55dbefb730566f7efb839 |
|
MD5 | 829bed4c1db24821efe2dcbb44cb31e8 |
|
BLAKE2b-256 | d70700103dd14b1a76d512bfcff96918026c9800cdd20b8ec5cddb84c6d703b7 |