扩展近红外信息内容

eniric的Python项目详细描述


eniric-扩展近红外信息内容

Codacy徽章Codacy徽章构建状态覆盖状态更新代码climateissue count测试覆盖率python 3

eniric是一个python 3软件,用于访问近红外(nir)光谱的径向速度精度。 ensiric是在figueria等人使用的代码initilly上构建的。2016年分析M-矮星的精度,扩展使用菲尼克斯-ACES库中任何同伦光谱的能力,使其更易于使用。

特点:

  • 光谱展宽 考虑到给定的旋转速度vsini和分辨率r
  • 大气传输 分析3种情况下的RV精密度,见Figueria等人。2016
    • 大气传输不处理SIST
    • 在一年中掩盖所有受给定百分比大气吸收影响的区域。
    • 假设测量通量的方差受到影响的完美大地电磁波相关性。
  • 相对RV精度 RV预选相对于光度学波段中心的指定每像素信噪比存在。figueira等人使用的默认值。2016年J波段中心的信噪比为100。
  • 重新采样 允许每半高宽将光谱重采样到n个像素。默认值为3。
  • 波段选择 分析近红外光谱中单个光度带zyjhk可达到的RV精度。
  • 增量质量/精度 除了光度带精度之外,您还可以确定整个光谱中窄波长切片上的增量光谱质量或RV精度,类似于Artigau等人的图1。2018年

用法

现在可以计算任何Phoenix-ACES模型的理论RV精度。 您需要在"config.yaml"中配置Phoenix模型的路径

<>
aces_precision.py -t 3900 -l 4.5, -m 0.5 -r 100000 -v 1.0 -b J K

将计算凤凰-ACES光谱J波段和K波段的RV精度,参数为[teff=3900K,logg=4.5,[fe/h]=0.5],观测分辨率为100000,旋转速度为1.0 km/s。
有关要使用的命令行参数的详细信息,请参见wiki或键入

aces_precision.py -h 

轮廓

该程序分为"光谱准备"和"精度计算"两个主要阶段工作。

光谱制备

eniric/nirranalysis.py

此阶段接受原始的Phoenix-ACES光谱模型并对其进行转换,将此计算结果保存为.txt文件。

它包括:

  • 从通量到光子计数的转换。
  • 分辨率卷积
  • 重新采样

eniric_scripts中提供了一些脚本,用于在所有所需参数上自动运行此准备。您必须修改到事物的路径。

精度计算

python eniric_scripts/nir_precision.py

这将接收经过处理的光谱,并对原始文件中列出的所有3个条件执行精度计算。

  • CODD1。总信息
  • <>+/-30公里/秒的大地电磁线>;2%掩蔽
  • COD3。具有方差校正的完美大地电磁校正

它还将磁通水平缩放到所需频带中的所需信噪比水平,如下所示,因为这会影响所计算的rv精度。默认情况下,J波段的信噪比为100。

频带信噪比缩放。

默认情况下,根据初始文件,每个谱带在j波段的中心被归一化为100 snr。

现在这是通过在频带中心以1像素分辨率(3个点)测量信噪比来自动实现的。并相应地缩放。这就增加了一个与rv精度相关的光谱模型因子。 要绕开,可以手动指定要规格化到的snr级别和要规格化到的特定频带。(例如,它可以是它自己)。

说明

创建一个空目录来保存分析。 创建带有重新采样、结果、菲尼克斯数据的数据目录 复制config.yaml并调整与您创建的内容和原始菲尼克斯光谱相关的路径。

eniric_scripts/prepare_spectram.py-这将打开菲尼克斯通量谱,以微米为单位添加波长轴,并将通量转换为光子计数。它保存在菲尼克斯数据目录中。(波长的复制确实浪费了空间。)

eniric_scripts/nir_run.py-对制备的光谱执行分辨率和旋转卷积。

这也会进行重新采样。

例如python../codes/eniric/eniric_scripts/nir_run.py-s m0 m3 m6 m9-b y j h k-v 1.0 5.0 10.0-r 60000 80000 100000——采样率3

背景

此代码的来源在figueira等人的中使用。2016年

P. Figueira, V. Zh. Adibekyan, M. Oshagh, J. J. Neal, B. Rojas-Ayala, C. Lovis, C. Melo, F. Pepe, N. C. Santos, M. Tsantaki, 2016,
Radial velocity information content of M dwarf spectra in the near-infrared,
Astronomy and Astrophysics, 586, A101

它在卷积方面存在一些效率问题,这些问题都是改进后的upo

错误:

修改此代码时发现许多错误。严重影响了大地电磁线掩蔽的条件。这会改变这一列中的RV,有时会显著改变。然而,这并没有改变已发表论文的结论。修正后的表格将包含在更新出版物Neal et.al.中。2018年(筹备中)。

最大的是 1)使用numpy映射切片而不是综合列表。(~快250倍) 2)使用joblib并行化卷积。 3)缓存结果以避免重复相同的卷积。

在解决1)特定测试用例的卷积速度从1hour 22 minutes下降到27 seconds

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

推荐PyPI第三方库


热门话题
无法将XML加载到属性对象Java中   java如何判断当前线程是否为事件分派线程   java如何在带有CouchbaseTemplate的Spring数据Couchbase中使用密钥前缀   java将JSON数组存储在不同的列表或数组中   java OpenCV检测最大矩形会产生令人费解的结果   java正则表达式获取选项卡式值及其频率   安卓致命异常:主java。lang.NullPointerException   java有没有一种方法可以使用CLI(命令行界面)使用junit测试用例测试我的项目的jar文件?   Java数组属性   java我应该升级到CGLIB 3.0吗?   用户界面什么Java GUI框架适合第一个GUI项目?   java如何使用tomcat、mysql和jdbc驱动程序在internet上发布我的jsp项目   java计数字符串中非重叠出现的次数   通用域名格式。太阳网httpserver Java httpserver基本身份验证问题   java Android WebView:只显示网页的一半   将json字符串转换为java中的对象列表   io使用Java在目录中查找第一个文件   if语句如何在java游戏中使用switch和case?