python中用于执行光学传播模拟的框架,用于高对比度成像。
hcip的Python项目详细描述
python高对比度成像(hcipy)
hcipy是一个用python编写的开源面向对象框架,用于执行天文学高对比度成像仪器的端到端模拟。
该库定义用于定义光学系统的波前和光学元件,并提供夫琅和费和菲涅耳衍射推进器。偏振是支持使用琼斯微积分,与偏振片和波片包括在盒子外。它利用无限长的薄相位屏来实现大气湍流,并且可以利用菲涅耳在各层之间的传播来模拟闪烁。实现了许多波前传感器,包括shack-hartmann和金字塔波前传感器。实现的日冕仪包括涡旋日冕仪、lyot日冕仪和app日冕仪。
通过将自适应光学和日冕成像的模拟包含在一个单一的框架中,HCIPY允许模拟包括从日冕后焦平面波前传感器到AO系统的反馈。
有关文档,请参见https://hcipy.readthedocs.io。
安装
可以像往常一样从pypi安装hcipy:
pip install hcipy
要从github安装最新的开发版本:
git clone https://github.com/ehpor/hcipy
cd hcipy
python setup.py develop
然后可以通过运行以下命令更新hcipy:
git pull
python setup.py egg_info
在HCIPY存储库中。
引用
如果您使用HCIPY进行自己的研究,请在您的出版物中包含以下确认:
This research made use of HCIPy, an open-source object-oriented framework written in Python for performing end-to-end simulations of high-contrast imaging instruments (Por et al. 2018).
bibtex引文如下:
@inproceedings{por2018hcipy,
author = {Por, E.~H. and Haffert, S.~Y. and Radhakrishnan, V.~M. and Doelman, D.~S. and Van Kooten, M. and Bos, S.~P.},
title = "{High Contrast Imaging for Python (HCIPy): an open-source adaptive optics and coronagraph simulator}",
booktitle = {Adaptive Optics Systems VI},
year = 2018,
series = {Proc. {{SPIE}}},
volume = 10703
}
文档
完整的文档目前正在进行中。当前文档可以在https://hcipy.readthedocs.io找到。或者,您可以通过执行以下操作自行构建文档:
cd doc
make clean
make html
之后,构建的文档现在应该在doc/_build/html
中作为静态网站可见。
测试
hcipy包含了一个单元测试框架,以确保以前编写的代码不会出现bug。您可以通过调用来运行完整的测试套件
pytest ./tests
在hcipy的根目录中。要运行所有测试,包括可能需要更长时间的测试,请改为调用
pytest ./tests --runslow
贡献
如果您有什么要添加的,或者想在HCIPY中添加什么,请告诉我们。我们积极支持对外捐助,无论大小。贡献新功能:
- 如果你还不是一个合作者,那就放弃吧。
- 创建功能分支(
git checkout -b my_new_feature
) - 正常提交更改。
- 推到分支(
git push origin my_new_feature
) - 在github上创建一个新的请求。
- 我们将回顾这个功能。
如果您在此过程中遇到任何问题,请随时与我们联系。