About

What is HCIPy?

HCIPy is an open-source, modular Python package for high-contrast imaging on current and future telescopes. By integrating atmospheric simulation, wavefront sensors and coronagraphs in a single library, HCIPy enables both rapid prototyping of individual system elements and the full high-contrast imaging system.

The library defines wavefronts and optical elements for defining an optical system, and provides both Fraunhofer and Fresnel diffraction propgators. Polarization is supported using Jones calculus, with polarizers and waveplates included out of the box. It implements atmospheric turbulence using thin infinitely-long phase screens, and can model scintillation using Fresnel propagation between individual layers. Many wavefront sensors are implemented including a Shack-Hartmann and Pyramid wavefront sensor. Implemented coronagraphs include the vortex, Lyot and APP coronagraph.

By including simulation of both adaptive optics and coronagraphy into a single framework, HCIPy allows simulations including feedback from post-coronagraphic focal-plane wavefront sensors to the AO system.

Acknowledging

If you use HCIPy for your own research, we ask you to cite the HCIPy proceeding (Por et al. 2018). If there is no appropriate place in the body text to cite the proceeding, please include something along the lines of the following in your acknowledgements:

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).

Contributing

Development takes place on Github. We welcome external contributions to HCIPy, be it small or large. If you have something to add, or want something added to HCIPy, please let us know with a Github issue.

Publications

This is a, likely incomplete, list of publications which use HCIPy: