galpy is a Python 2 and 3 package for galactic dynamics. It supports orbit integration in a variety of potentials, evaluating and sampling various distribution functions, and the calculation of action-angle coordinates for all static potentials.
galpy is an astropy affiliated package and provides full support for astropy’s Quantity framework for variables with units.
Jo Bovy - bovy at astro dot utoronto dot ca
See AUTHORS.txt for a full list of contributors.
If you find this code useful in your research, please let me know. If you use galpy in a publication, please cite Bovy (2015) and link to http://github.com/jobovy/galpy. See the acknowledgement documentation section for a more detailed guide to citing parts of the code. Please also send me a reference to the paper or send a pull request including your paper in the list of galpy papers on this page (this page is at doc/source/index.rst). Thanks!
LOOKING FOR HELP?
If you are having issues with the installation of
galpy, please first
consult the Installation
PYTHON VERSIONS AND DEPENDENCIES
galpy supports both Python 2 and 3. Specifically, galpy supports
Python 2.7 and Python 3.6 and 3.7. It should also work on earlier Python
3.* versions, but this is not extensively tested on an ongoing basis.
Travis CI builds regularly check support for Python 2.7 and 3.7 (and of
3.6 using a more limited, core set of tests) and Appveyor builds
regularly check support for Python 3.7 on Windows.
This package requires Numpy,
Matplotlib. Certain advanced
features require the GNU Scientific Library
(GSL), with action calculations
requiring version 1.14 or higher. Use of
pynbody. Support for providing
inputs and getting outputs as Quantities with units is provided through
CONTRIBUTING TO GALPY
If you are interested in contributing to galpy's development, take a look at this brief guide on the wiki. This will hopefully help you get started!
Some further development notes can be found on the wiki. This includes a list of small and larger extensions of galpy that would be useful here as well as a longer-term roadmap here. Please let the main developer know if you need any help contributing!
DISK DF CORRECTIONS
The dehnendf and shudf disk distribution functions can be corrected to follow the desired surface-mass density and radial-velocity-dispersion profiles more closely (see 1999AJ....118.1201D). Calculating these corrections is expensive, and a large set of precalculated corrections can be found here [tar.gz archive]. Install these by downloading them and unpacking them into the galpy/df/data directory before running the setup.py installation. E.g.:
curl -O https://github.s3.amazonaws.com/downloads/jobovy/galpy/galpy-dfcorrections.tar.gz tar xvzf galpy-dfcorrections.tar.gz -C ./galpy/df/data/