跳转到主要内容

Python的Healpix工具包

项目描述

https://badge.fury.io/py/healpy.svg https://anaconda.org/conda-forge/healpy/badges/version.svg https://github.com/healpy/healpy/actions/workflows/cibuildwheel.yml/badge.svg Documentation Status https://mybinder.org/badge_logo.svg https://zenodo.org/badge/DOI/10.5281/zenodo.2605425.svg http://joss.theoj.org/papers/10.21105/joss.01298/status.svg

描述

healpy是一个用于处理球面上像素数据的Python包。它基于分层等面积等纬度像素化(HEALPix)方案,并捆绑了HEALPix C++库。

HEALPix 是为了高效处理宇宙学实验(如BOOMERANG和WMAP)中的宇宙微波背景数据而开发的,但现在它也被用于天文学的其他分支来存储全天空巡天的数据。目标受众原本主要是宇宙学科学界,但现在,任何对处理球面像素化数据感兴趣的人都非常欢迎提出新功能。

功能

healpy 提供以下工具:

  • HEALPix 嵌套和环形方案之间转换天空坐标和像素索引

  • 在天空中的圆盘、多边形或条带内查找像素

  • 在银河、黄道和赤道参考系之间应用坐标变换

  • 将自定义旋转应用于向量或完整地图

  • 以 FITS 格式读取和写入 HEALPix 地图到磁盘

  • 升级和降级现有 HEALPix 地图的分辨率

  • 以莫拉维亚、正交和地图投影可视化地图

  • 使用多线程 C++ 程序将地图转换为球谐空间并返回

  • 从地图中计算自功率谱和交叉功率谱,并从谱创建地图实现

文档可以在 https://healpy.readthedocs.io 找到,教程在 https://healpy.readthedocs.io/en/latest/tutorial.html,或者执行 mybinder

要求

  • Python 3.9、3.10 或 3.11

  • Numpy(测试版本 >=1.19)

  • Matplotlib

  • 某些发行版需要 Python 开发包(例如,Ubuntu 的 python-dev 包)

  • Astropy

使用 Pip 快速安装

安装 Healpy 最快的方法是使用 pip(>= 1.4.2),它将自动获取 Healpy 的最新版本以及任何缺少的依赖项

pip install --user healpy

如果您已使用 pip 安装,您可以通过不时升级来保持您的安装最新

pip install --user --upgrade healpy

有关详细信息和其他安装选项,请参阅 INSTALL.rst

可选

Healpy 依赖于 HEALPix C++ 和 cfitsio C 库。源代码包含在 Healpy 中,您无需单独安装它们。

但是,如果您已经安装了它们,Healpy 应该会检测并重用它们,而不是从源代码构建。要使用您自己的 HEALPix 和 cfitsio 安装,您还需要

有关进一步说明,请参阅 INSTALL.rst

已知问题

  • 使用 OpenMP 支持构建:底层 HEALPix C++ 库可以构建以使用 OpenMP 来加速在具有多个核心的系统上的某些操作。大多数但不是所有现代 C/C++ 编译器都支持 OpenMP,值得注意的例外是 clang

    如果您的 Healpy 构建失败,出现无法链接到 -lgomp 的错误信息,那么这通常意味着 Healpy 检测到一个已经安装的具有 OpenMP 支持的 HEALPix C++ 库,但是您正在尝试使用不支持 OpenMP 的编译器构建 Healpy。尝试使用 python setup.py clean –all 清理构建,并将环境变量 CCCXX 设置为指向具有 OpenMP 功能的编译器,例如 gcc/g++。

  • Healpy 目前不支持 Windows。请参阅 https://github.com/healpy/healpy/issues/25

  • 与HEASOFT中的cfitisio不兼容:由于头文件名冲突,目前无法使用HEASOFT包中提供的cfitsio库编译HEALPix C++。HEASOFT的include目录中包含一个名为“rotmatrix.h”的文件,与HEALPix自己的rotmatrix.h冲突。

  • C++包的编译问题:一些gcc版本(我们有4.4.5和4.4.6版本的报告)在编译libsharp时发生内部编译错误。遗憾的是,我们没有找到这个编译问题的解决方案。据我们所知,这个问题已在gcc 4.4.7以及4.5.x和更新的版本中得到修复。

  • Healpy像素函数,例如ang2pix,不支持32位平台。请参阅https://github.com/healpy/healpy/issues/194

支持

对于具体的如何做问题,请在StackOverflow上创建一个问题,并使用healpy标签,以便答案在谷歌上易于搜索。

如果您认为您发现了一个错误或有安装问题,请在GitHub上创建一个问题:https://github.com/healpy/healpy/issues

贡献

项目开发在github上进行,http://github.com/healpy/healpy,请在那里创建一个问题来报告错误或建议改进。我们非常欢迎合作,只需在github上fork项目并发送pull请求到主存储库。

开发者

核心开发者

  • Cyrille Rosset

  • Andrea Zonca

  • Martin Reinecke

  • Leo Singer

  • Daniel Lenz

贡献者列表:https://github.com/healpy/healpy/graphs/contributors

致谢

  1. 引用HEALPix和healpy论文,请参阅存储库中的CITATION文件

  2. 添加致谢声明:“本文中的一些结果已使用healpyHEALPix包推导得出”。

  3. 在首次使用HEALPix缩写时,在论文主体中放置脚注,引用HEALPix网站,目前为http://healpix.sf.net

  4. 您还可以通过Github Sponsors直接支持healpy的维护和开发。

项目详情


下载文件

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

源分布

healpy-1.17.3.tar.gz (4.4 MB 查看哈希值)

上传时间

构建分布

healpy-1.17.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ x86-64

healpy-1.17.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.3 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ ARM64

healpy-1.17.3-cp312-cp312-macosx_14_0_arm64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.12 macOS 14.0+ ARM64

healpy-1.17.3-cp312-cp312-macosx_12_0_x86_64.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.12 macOS 12.0+ x86-64

healpy-1.17.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

healpy-1.17.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.3 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ ARM64

healpy-1.17.3-cp311-cp311-macosx_14_0_arm64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.11 macOS 14.0+ ARM64

healpy-1.17.3-cp311-cp311-macosx_12_0_x86_64.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.11 macOS 12.0+ x86-64

healpy-1.17.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ x86-64

healpy-1.17.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.2 MB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ ARM64

healpy-1.17.3-cp310-cp310-macosx_14_0_arm64.whl (2.7 MB 查看哈希值)

上传于 CPython 3.10 macOS 14.0+ ARM64

healpy-1.17.3-cp310-cp310-macosx_12_0_x86_64.whl (2.8 MB 查看哈希值)

上传于 CPython 3.10 macOS 12.0+ x86-64

healpy-1.17.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ x86-64

healpy-1.17.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.2 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ARM64

healpy-1.17.3-cp39-cp39-macosx_14_0_arm64.whl (2.7 MB 查看哈希值)

上传于 CPython 3.9 macOS 14.0+ ARM64

healpy-1.17.3-cp39-cp39-macosx_12_0_x86_64.whl (2.8 MB 查看哈希值)

上传于 CPython 3.9 macOS 12.0+ x86-64

支持者

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面