/hasasia

Python package for calculating pulsar timing array sensitivity curves.

Primary LanguagePythonMIT LicenseMIT

hasasia

Documentation Status https://codecov.io/gh/Hazboun6/hasasia/branch/master/graph/badge.svg?token=GBKYR808FO Zenodo Badge JOSS Status

A Python package to calculate gravitational-wave sensitivity curves for pulsar timing arrays.

https://raw.githubusercontent.com/Hazboun6/hasasia/master/hasasia_calligraphy.jpg

حساسية (hasasia) is Arabic for sensitivity . Image Credit: Reem Tasyakan

Features

Calculates the following structures needed for signal analysis with pulsars:

  • Pulsar transmission functions
  • Inverse-noise-weighted transmission functions
  • Individual pulsar sensitivity curves.
  • Pulsar timing array sensitivity curves as characteristic strain, strain sensitivity or energy density.
  • Power-law integrated sensitivity curves.
  • Sensitivity sky maps for pulsar timing arrays

Getting Started

hasasia is on the Python Package Inventory, so the easiest way to get started is by using pip to install:

pip install hasasia

The pulsar and spectrum objects are used to build sensitivity curves for full PTAs. The Spectrum object has all of the information needed for the pulsar.

import hasasia.senstivity as hsen

toas = np.arange(54378,59765,22) #Choose a range of times-of-arrival
toaerrs = 1e-7*np.ones_like(toas) #Set all errors to 100 ns
psr = hsen.Pulsar(toas=toas,toaerrs=toaerrs)
spec = hsen.Spectrum(psr)

Publication

This work is featured in a publication, currently released on the arXiv. If you would like to reference the formalism used in this work please use the following attribution:

@article{Hazboun:2019vhv,
            author = {{Hazboun}, Jeffrey S. and {Romano}, Joseph D. and {Smith}, Tristan L.},
             title = "{Realistic sensitivity curves for pulsar timing arrays}",
           journal = {\prd},
          keywords = {General Relativity and Quantum Cosmology, Astrophysics - Instrumentation and Methods for Astrophysics},
              year = 2019,
             month = nov,
            volume = {100},
            number = {10},
               eid = {104028},
             pages = {104028},
               doi = {10.1103/PhysRevD.100.104028},
       archivePrefix = {arXiv},
            eprint = {1907.04341},
       primaryClass = {gr-qc},
            adsurl = {https://ui.adsabs.harvard.edu/abs/2019PhRvD.100j4028H},
           adsnote = {Provided by the SAO/NASA Astrophysics Data System}
         }

Otherwise if you would like to reference the Python package use the following citation:

@article{Hazboun2019Hasasia,
               journal      = {Journal of Open Source Software},
               doi          = {10.21105/joss.01775},
               issn         = {2475-9066},
               number       = {42},
               publisher    = {The Open Journal},
         title        = {Hasasia: A Python package for Pulsar Timing Array Sensitivity Curves},
         url          = {http://dx.doi.org/10.21105/joss.01775},
               volume       = {4},
               author       = {Hazboun, Jeffrey and Romano, Joseph and Smith, Tristan},
               pages        = {1775},
               date         = {2019-10-23},
               year         = {2019},
               month        = {10},
               day          = {23},
         }

Credits

Development Team: Jeffrey S. Hazboun, Joseph D. Romano and Tristan L. Smith

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.