Alessandro Ridolfi's home page

Direct download: pysolator_0.5.tar.gz



PYSOLATOR is a software that allows you to remove the orbital modulation from a binary pulsar and/or its companion.

In essence, it subtracts the predicted Roemer delay for the given orbit and then resamples the time series so as to make the signal appear as if it were emitted from the barycenter of the binary system.

For this reason, PYSOLATOR is the ideal tool to search for pulsations from a putative second pulsar in systems like pulsars with neutron star companions. By removing the orbital motion of the companion, PYSOLATOR makes the search for pulsations much easier and faster!


1) Installation

PYSOLATOR has been designed with the end user in mind, so as to require the minimum effort to get it go. For this reason, no real installation is needed. To get started with PYSOLATOR:

  1. Download the code from the link above

  2. Unpack the tarball with
    tar -zxvf pysolator_0.5.tar.gz

  3. Run the code with:

Obviously, to have PYSOLATOR at hand from any directory, you can add the folder where the code is located to your PATH environment variable.

2) Basic usage

To successfully use PYSOLATOR, you need:

  1. A barycentered PRESTO dedispersed time series (".dat" file, plus the corresponding ".inf" file) containing the signal of the pulsar of interest.
    To generate a barycentered PRESTO dedispersed time series, you can use the PRESTO's prepdata routine on the original search mode data, without using the -nobary option.

  2. A phase-connected ephemeris (".par" file) of known pulsar with the DDGR binary model for the orbit and at least two post-Keplerian parameters.
    The latter are necessary to measure the masses of the pulsar and its companion (assuming General Relativity), which in turn give access to a precise description of the companion orbit, generally not known unless the ratio between the mass of the pulsar and that of the companion is known.

Assuming to have a dedispersed time series called "observation_J0000+0000.dat" and a corresponding ephemeris called "ephemeris_J0000+0000.par", we can remove the orbit from the pulsar and the companion by simply typing:

pysolator -datfile observation_J0000+0000.dat -par ephemeris_J0000+0000.par

After demodulating the time series for the pulsar and/or the companion orbit, PYSOLATOR produces a number of output files, namely:

  • isol_observation_J0000+0000_q_0.7143_p.dat (+ corresponding .inf file):
    Time series demodulated for the pulsar orbit: here the pulsar signal resembles that of an isolated pulsar located at the binary barycenter.

  • isol_observation_J0000+0000_q_0.7143_c.dat (+ corresponding .inf file):
    Time series demodulated for the companion orbit: here the signal coming from the putative companion pulsar will resemble that of an isolated pulsar located at the binary barycenter.

  • ephemeris_J0000+0000_noorb.par :
    Copy of the original ephemeris but without the orbital parameters. Useful to fold the demodulated time series of the pulsar, to check that the modulation of the known signal was done correctly.

  • ephemeris_J0000+0000_q_0.7143_comp.par :
    Ephemeris containing the orbital parameters of the companion, calculated assuming a mass ratio q=Mp/Mc=0.7143, in turn derived from the MTOT and M2 parameters of the orginal ephemeris. NB: the spin period is set to be the same as that of the pulsar! Don't try to use this ephemeris to fold, if you haven't searched for the companion yet!

3) Command line options

PYSOLATOR offers a number of advanced options for more specific applications and cases. Here follows a list of all the available options:

  • -par <parfile>
    Use <parfile> as the ephemeris file

  • -datfile <observation.dat>
    Demodulate the data of the barycentered time series file <observation.dat>

  • [{ -pulsar_only | -comp_only}]
    -pulsar_only: demodulate the pulsar orbit only. Do not demodulate the companion orbit
    -comp_only: demodulate the companion orbit only. Do not demodulate the pulsar orbit

  • [ -ncpus N]
    Use N threads when demodulating eccentric orbits to speed up the processing

  • [ -Mp_Mc X]
    Manually input the mass ratio of the binary system, overriding the MTOT/M2 parameters, if present in the input ephemeris. Useful when the uncertainties on the masses are large. X is float.

  • [ -dt X]
    Output the demodulated time series with a sampling time of X seconds. X is float.

  • [ -numout N]
    Output only the first N samples of the demodulated time series. N is integer.

  • [ -o "basename"]
    Manually specify the output file basename

  • [{ -Q | -V}]
    -Q: quiet mode. Do not print anything onto the standard output. May be useful when running PYSOLATOR within scripts or pipelines
    -V: very verbose mode. Print a lot of additional information. Useful for debugging purposes

  • { -h | -help | --help}
    Show a simple usage help.

When the code succefully finds the MTOT and M2 parameters in the ephemeris file, it is able to calculate the projected orbit of the companion star, hence it demodulates the signal of both the pulsar and of the companion.

4) Acknowledgements

My biggest thanks goes to Vishnu Balakrishnan, for extensively testing the code thoughout its development, reporting bugs and giving nice suggestions. Thanks to Jason Wu and Andrew Cameron for using the code and providing useful feedback. Big thanks to Jose Martinez, Andrew Cameron and Cherry Ng for giving me the opportunity to apply the code to exciting science cases of several double neutron star binary pulsars. Thanks to Paulo Freire for great scientific insights and explanations about binary pulsars.

5) References

PYSOLATOR, in most cases in its early stage of development, has been used to look for pulsations from the possible companion radio pulsars in several double neutron star systems. Here follow the relative articles:

Coast of Ogliastra, Sardinia (Italy) Atmospheric CO2