Skip to main content

A Pulsar Timing Package, written in Python from scratch

Reason this release was yanked:

import pkg_resources fails

Project description

PINT Logo

PINT

Actions Status Coverage Documentation Status PINT Paper 1 on arXiv PINT Paper 2 on arXiv PINT on ASCL License:BSD Code of Conduct

PINT is not TEMPO3

PINT is a project to develop a pulsar timing solution based on python and modern libraries. It is still in active development, but it is in production use by the NANOGrav collaboration and it has been demonstrated produce residuals from most “normal” timing models that agree with Tempo and Tempo2 to within ~10 nanoseconds. It can be used within python scripts or notebooks, and there are several command line tools that come with it.

The primary reasons PINT was developed are:

  • To have a robust system to produce high-precision timing results that is completely independent of TEMPO and Tempo2

  • To make a system that is easy to extend and modify due to a good design and the use of a modern programming language, techniques, and libraries.

IMPORTANT Notes!

PINT has a naming conflict with the pint units package available from PyPI (i.e. using pip) and conda. Do NOT pip install pint or conda install pint! See below!

PINT requires longdouble (80- or 128-bit floating point) arithmetic within numpy, which is currently not supported natively on M1/M2/M3 Macs. However, you can use an x86 version of conda even on an M1/M2/M3 Mac (which will run under Rosetta emulation): see instructions for using Apple Intel packages on Apple silicon. It’s possible to have parallel versions of conda for x86 and ARM.

Installing

Conda Version PyPI PyVersions

PINT is now available via PyPI as the package pint-pulsar, so it is now simple to install via pip. For most users, who don’t want to develop the PINT code, installation should just be a matter of:

$ pip install pint-pulsar

By default this will install in your system site-packages. Depending on your system and preferences, you may want to append --user to install it for just yourself (e.g. if you don’t have permission to write in the system site-packages), or you may want to create a virtualenv to work on PINT (using a virtualenv is highly recommended by the PINT developers).

PINT is also available for Anaconda python under the conda-forge channel:

$ conda install -c conda-forge pint-pulsar

The above two options install the latest released version. If you want access to the latest development version, the source code, example notebooks, and tests, you can install from source, by cloning the source repository from GitHub, then install it, ensuring that all dependencies needed to run PINT are available:

$ git clone https://github.com/nanograv/PINT.git
$ cd PINT
$ pip install .

Complete installation instructions are available on readthedocs.

Using

See the online documentation. Specifically:

Are you a NANOGrav member? Then join the #pint channel in the NANOGrav slack.

If you have tasks that aren’t covered in the material above, you can email pint@nanograv.org or one of the people below:

Want to do something new? Submit a github issue.

And for more details, please read and cite(!) the PINT paper_1 and paper_2.

Articles that cite the PINT paper can be found in an ADS Library. A list of software packages that use PINT can be found here.

Project details


Download files

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

Source Distribution

pint_pulsar-1.0.2.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

pint_pulsar-1.0.2-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file pint_pulsar-1.0.2.tar.gz.

File metadata

  • Download URL: pint_pulsar-1.0.2.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pint_pulsar-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b79d01efe2357bd0e4ed3ebb9869c4007bef6c83d36a62d8c9634cf7a7cc8131
MD5 77104c516ae576c196a6ef500f792924
BLAKE2b-256 3846c72f00ef0474d75c216ff1974eaa6ab38c6944030a4cadcfca60cc5bdbd3

See more details on using hashes here.

Provenance

File details

Details for the file pint_pulsar-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: pint_pulsar-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pint_pulsar-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fb60cb1cdc97dab256d894cd211af67395fd51707b6204c6f2a30af42031dd62
MD5 6a13a312ea2dbb642cc254358b51af2d
BLAKE2b-256 59c1884a961119430325b5e096bcd79dada14ee61a39bc34b5646a07b99dab6c

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page