跳转到主要内容

未提供项目描述

项目描述

Test status PyPI version

lkPRF

lkPRF 是一个用于处理来自NASA开普勒和TESS等任务的PRF文件的工具。此工具可让您加载来自工程数据的PRF文件,并在给定位像素处评估它们。

lkPRF 在做什么?

此工具为您做两件事

  1. 为您下载和格式化工程文件。
  2. 在像素网格上评估PRF文件。

安装

您可以使用pip安装lkprf

pip install lkprf --upgrade

用法

:question: 注意: lkprf 使用元组指定位置,并使用Python的(行, 列)约定。

要使用此包,您首先根据要使用的任务初始化一个PRF模型

import lkprf
prf = lkprf.KeplerPRF(channel=42)

import lkprf
prf = lkprf.TESSPRF(camera=1, ccd=1) # Optionally specify a sector 

然后您可以使用evaluategradient函数获取指定位置的PRF估计值,如下所示。

prf.evaluate(targets=[(5, 5)], origin=(0, 0), shape=(11, 11))

这将返回一个形状为(1, 11, 11)的数组,其中包含一个(11, 11)的图像,其中包含一个目标,位置在(row=5, column=5)。图像原点在(row=0, column=0)。请注意,对于开普勒和TESS,原点(0,0)包含附带(非科学)像素;然而,lkprf仍然会在该位置生成预期的模型。

prf.evaluate(targets=[(5, 5), (9, 9)], origin=(0, 0), shape=(11, 11))

这将返回一个形状为(2, 11, 11)的数组,其中包含两个(11, 11)的图像。第一个图像包含一个目标,位置在(row=5, column=5)。第二个图像包含一个目标,位置在(row=9, column=9)。您可以传递任何数量的目标元组列表来为每个目标创建PRF。PRF被归一化,使得如果所有目标通量都落在像素中,总通量将为1。

:question: 注意:如果“目标”没有出现在您的图像中,请确保originshape关键字会创建一个包含您的目标坐标的数组。

同样,您也可以得到PRF的梯度

prf.gradient(targets=[(5, 5)], origin=(0, 0), shape=(11, 11))

这将返回一个包含两个数组的元组,每个数组的形状为(1, 11, 11)。第一个数组是相对于行的梯度,第二个是相对于列的梯度。您可以同样传递任何数量的目标来计算更多目标的梯度。

示例

以下示例使用以下片段创建

prf.evaluate(targets=[(5, 5)], origin=(0, 0), shape=(11, 11))

开普勒

以下是一个开普勒PRF示例图像,通道42,源位置在(row=5, column=5)

Kepler PRF Example

TESS

以下是一个TES PRF示例图像,相机1,CCD 1,源位置在(row=5, column=5)

TESS PRF Example

在哪里可以了解更多信息?

有关如何使用lkprf生成TPF-like PRF模型的更多示例,请参阅此教程

下载PRF数据时遇到的问题

要使用lkPRF,您必须连接到互联网以下载相关文件。下载特定相机/CCD/通道的数据后,这些文件将存储在包内,因此您可以在离线状态下使用这些数据。

如果您从特定的相机/CCD/通道评估一个PRF一次,您会发现lkPRF在为您下载和构建正确文件时会变慢。如果您中断下载,您可能会发现文件已损坏。为确保文件重新下载,您必须清除缓存。您可以使用以下方法完成此操作

import lkprf
lkprf.clear_kepler_cache()
lkprf.clear_tess_cache()

lkprf在磁盘上找不到PRF文件时,它将尝试重新下载。

项目详情


下载文件

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

源分布

lkprf-1.1.1.tar.gz (10.6 kB 查看哈希)

上传时间

构建分布

lkprf-1.1.1-py3-none-any.whl (11.5 kB 查看哈希)

上传于 Python 3

由以下支持