跳转到主要内容

AMI-Reduce管道脚本的接口层。

项目描述

一个用于脚本化AMI-reduce管道的Python包。

有关完整说明,请参阅Staley and Anderson (2015)。如果您在使用drive-ami进行可能导致出版物的工作时,我们要求您引用上述论文以及相关的ASCL条目

理由

从射电天文学的角度来看

此包使从Python脚本化原始AMI数据的简化变得简单。更重要的是,它提供了工具将原始文件分组到数据集中,在每个单独的文件夹下输出每个数据集的UVFITS。它通过从原始数据中提取指向信息来完成此操作,从而产生相当可靠的分组(尽管您可以手动编辑这些,请参阅以下内容)。

在处理数据时,所有来自reduce的输出都保存到相关的日志文件中,保留了用户从交互式界面中通常可以获得的所有信息。同时,所有传递给reduce的模拟命令都记录在每个处理文件的单独日志中,因此可以轻松手动重新运行脚本并调整还原过程。

此外,当运行脚本中列出的命令时,界面会静默解析来自reduce输出的关键信息,例如标记百分比、降雨调制和估计噪声。然后,这些信息以易于机器读取的JSON格式存储到磁盘上,与UVFITS一起(这些信息也可能在未来添加到UVFITS标题中)。

从软件工程的角度来看

使用Fortran编写,具有交互式终端界面,reduce管道需要一点技巧才能与调用脚本协作,使得大量文件的自动化处理变得棘手。幸运的是,Python库pexpect提供了一个简单的机制来模拟人类交互,基于这个机制我创建了一个接口类。通过一些精心的修改,绕过了诸如最大路径长度约为32个字符的限制。Python日志库允许我们向用户提供最少的进度信息,同时保留所有可能的调试和科学评估信息。

安装

要求:
  • 您需要一个有效的AMI-reduce安装(自然地)

  • pexpect 用于与AMI-reduce交互。它是Python设置的一部分自动安装。

  • astropy 用于计算坐标距离等。它是Python设置的一部分自动安装。

从命令行(最好在虚拟环境中)

git clone git://github.com/timstaley/drive-ami.git
cd drive-ami
pip install numpy #Workaround for buggy scipy/numpy combined install.
pip install .

用法

命令行脚本与包一起安装。它们的源文件可以在https://github.com/timstaley/drive-ami/tree/master/bin找到。要获取完整详细信息,请运行例如:

driveami_list_rawfiles.py -h

其中-h代表“帮助”。

典型用法是运行driveami_list_rawfiles.py来构建可用数据的完整列表,然后运行driveami_filter_rawfile_listing.py来提取所需目标的条目。最后,driveami_calibrate_rawfiles.py实际使用AMI-REDUCE进行处理。

项目详情


下载文件

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

源分布

drive-ami-1.0.7.tar.gz (31.1 kB 查看哈希值)

上传时间

由以下机构支持