Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Basic Gaia data simulation, manipulation, and analysis toolkit

Project description

PyGaia

Python toolkit for basic Gaia data simulation and 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

No competition! It is higly 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 transformation of the covariance matrix of the astrometric observables to to a different epoch. This is implemented in the class pygaia.astrometry.coordinates.EpochPropagation. Epoch transformation 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 notes

This package is intended for Python3.

The following python packages are required:

For the plotting tools:

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-2020 Anthony Brown, Leiden University, Gaia Data Processing and Analysis Consortium

PyGaia is open source and free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/licenses.html.

Changelog

2.2 (January 2021)

2.1 (December 2020)

  • Minor fixes to code, documentation link in EpochPropagation class updated.

2.0 (December 2020)

  • This version is for the post-Gaia EDR3 performance predictions which are extrapolated from the actual Gaia (E)DR3 performances. See https://www.cosmos.esa.int/web/gaia/science-performance
  • MANY BREAKING CHANGES! For the pre-Gaia EDR3 version of the code see https://github.com/agabrown/pygaia-v1
  • The performance predictions for astrometry now depend only on G and can only be generated for Gaia (E)DR3/DR4/DR5 . Variations as a function of sky position and colour are not included.
  • The code was cleaned up, making it (more) conformant with the Python standards. This again causes many breaking changes due to renaming of modules and functions.

1.32 (October 2019)

  • Mission length scaling in photometric and radial velocity uncertainties.

1.31 (September 2019)

  • Allow for list of spectral types as input to vradErrorSkyAvg.

1.30 (March 2019)

  • Switched from Basemap to Cartopy in sky.py.
  • Epoch propagation added, including the propagation of the covariance matrix.
  • Covariance matrix construction from Gaia catalogue columns, including "radial proper motion" term.
  • Changed convention for longitude numerical values. They are now between 0 and 2PI instead of -PI and +PI. THIS IS A BREAKING CHANGE.

1.22 (February 2019)

  • Test cases slightly updated

1.21 (April 2018)

  • Added constant AU expressed in maskmyr/s
  • Fixed large memoery consumption in the _getJacobian method in the coordinate transformation code. Thanks to jchelly for pointing out this problem.

1.2 (December 2016)

  • Add method to CoordinateTransformation for the transformation of the full (5x5) covariance matrix of the astrometric parameters.
  • Add keyword to astrometric errors prediction functions that allows to specify an extended mission lifetime.

1.1 (September 2016)

  • Bug fix in coordinate transformation code.
  • Updated photometry and radial velocity error predictions.
  • End-of-mission photometry errors, including calibration floor, introduced for the broad band fluxes.
  • Photometry errors now include 20% margin for CCD-transit and end-of-mission predictions.
  • Example plot of photometry errors fixed.

1.0 (November 2015)

  • Added numerical constants.
  • Improved setup.py, made code compatible with Python3

0.9 (September 2015)

  • Photometric performance predictions updated to post-launch estimates.

0.83 (July 2015)

  • Minor error in documentation of astrometryToPhaseSpace() method corrected.

0.82 (July 2015)

  • Error corrected in transformSkyCoordinateErrors() method. Thanks to Teresa Antoja and Taniya Parikh!

0.81 (June 2015)

  • Forgot to update changelog for version 0.8

0.8 (June 2015)

  • Radial velocity performance predictions updated to post-launch estimates.

0.7 (December 2014)

  • Astrometry performance predictions updated to post-launch estimates.

0.6 (July 2014)

  • Warning on upcoming changes in performance predictions, following the Gaia commissioning period
  • radial velocity horizons plot in examples folder

0.5 (August 2013)

  • Utilities for obtaining absolute magnitudes of stars in V and G.
  • Functions to obtain the upper and lower bounds on the astrometric parameter errors (corresponding to the sky regions with best/worst astrometric errors).
  • Proper motion error plot.
  • Parallax horizon plot.

0.4 (April 2013)

  • Added transformation of proper motions and of position and proper motion errors.

0.31 (February 2013)

  • Updated README. TODO added.

0.3 (February 2013)

  • Added documentation on installation requirements. Added the handling of an ImportError for the argparse module to the example scripts.

0.2 (February 2013)

  • Problems in setup.py fixed as well is bugs in the error simulation code.

0.1 (February 2013)

  • First release

0.0 (October 2012)

  • Creation from bits and pieces of python code that AB had lying around.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for PyGaia, version 2.2
Filename, size File type Python version Upload date Hashes
Filename, size PyGaia-2.2-py2.py3-none-any.whl (37.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size PyGaia-2.2-py3.7.egg (69.3 kB) File type Egg Python version 3.7 Upload date Hashes View
Filename, size PyGaia-2.2.tar.gz (29.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page