/PyGaia

Gaia science performance simulation toolkit

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

PyGaia

Python toolkit for Gaia science performance simulation and astrometric catalogue data manipulation.

Description

PyGaia provides python modules for the simulation of Gaia data and their uncertainties, as well modules for the manipulation of the Gaia catalogue data. In particular transformations between astrometric observables and phase space variables are provided as well as transformations between sky coordinate systems. Only (very) basic functionality is provided. Full blown simulations of Gaia data in all their gory detail requires the Java tools developed by the Gaia Data Processing and Analysis Consortium (DPAC) in particular its Coordination Unit 2 (CU2).

This toolkit is basically an implementation of the performance models for Gaia which are publicly available at: http://www.cosmos.esa.int/web/gaia/science-performance. In addition much of the material in chapter 4 of the book Astrometry for Astrophysics: Methods, Models, and Applications (2012, van Altena et al.) is implemented.

  • The code in this package is not intended for accurate astrometry applications, such as predicting in detail astrometric paths of stars on the sky.
  • Epoch transformation is provided, including the transformation of the astrometric covariance matrix to different epochs.

Astropy astrometry modules versus pygaia.astrometry

It is recommended to use the Astropy facilities for handling astrometric data, including transformations from (Cartesian) phase space coordinates to astrometric observables and vice versa. See the astropy.coordinates package. Compared to the pygaia.astrometry package this gives you more functionality, the use of units, and much better maintained code.

The only functionality not (yet) provided in Astropy is the propagation of the covariance matrix of the astrometric observables to to a different epoch. This is implemented in the class pygaia.astrometry.coordinates.EpochPropagation. Epoch propagation as such is implemented in Astropy as the apply_space_motion() function of the SkyCoord class.

Documentation

All classes and methods/functions are documented so use the python help() function to find out more.

Installation

To install from source.

git clone https://github.com/agabrown/PyGaia.git
cd PyGaia
python -m pip install .

From PyPI:

pip install pygaia

Dependencies

This package is intended for Python3.

The following python packages are required:

For the plotting tools:

Acknowledgements

PyGaia is based on the effort by Jos de Bruijne to create and maintain the Gaia Science Performance pages (with support from David Katz, Paola Sartoretti, Francesca De Angeli, Dafydd Evans, Marco Riello, and Josep Manel Carrasco), and benefits from the suggestions and contributions by Morgan Fouesneau and Tom Callingham.

The photometric uncertainties code in PyGaia is based on the tool provided by Gaia DPAC (https://www.cosmos.esa.int/web/gaia/dr3-software-tools) to reproduce (E)DR3 Gaia photometric uncertainties described in the GAIA-C5-TN-UB-JMC-031 technical note using data in Riello et al (2021).

Attribution

Please acknowledge the Gaia Project Scientist Support Team and the Gaia Data Processing and Analysis Consortium (DPAC) if you used this code in your research.

License

Copyright (c) 2012-2024 Anthony Brown, Leiden University, Gaia Data Processing and Analysis Consortium