edit · history · print

How To…

This is a work in progress, but please add to it as you see fit.

Work with Parkes Multibeam Pulsar Survey Data

How to find a specific pointing

The PM survey has all data labelled by the tape number and the pointing number on the tape. Each pointing consists of 13 beams. Each beam lies on a fixed point in the sky, given a ‘grid id’. The grid id is generated from the galactic longitude and latitude of the pointing. Ideally, each grid id should have been observed once, however due to bad data, or other effects, some have been observed multiple times, and a small number have been missed. There is a many-to-one mapping between tape ID and grid ID.

To find data, one must know the tape ID, as this is how the data is indexed on the disk. However tape ID is not related to the sky position, therefore it is useful to be able to find the tape ID for a given grid ID. This can be achieved by using a file called pmobs.db. This file is created by the telescope control software, and it appends two lines for each pulsar observation that is carried out. Please see the page on pmobs.db for more details.

The important fact here is that the grid id and the tape label and pointing number are in the same line of the file. Therefore by ‘grep’ing for the grid ID, one can determine the tapes and pointings to look at.

Of course, this is not as easy as it appears, as pmobs.db only has the grid id for the central beam, and the observation you want may be in a different beam. Therefore 13 greps are required to check each of the possible centre beams for different arrangements of the reciever.

It is important to note that the grid id cannot ever tell you which beam to extract from the file, as the beam numbers are from the receiver which is at an unknown orientation to the sky.

On the positive side, there is several tools to help you with this…

Firstly, if logged into Parkes (say, Perseus), the command:

tape_list [tape name]

will print all files from that tape (it’s just a glorified grep, but saves some typing!). Since it is powered by grep, one can just write a source id instead of a tape name (say the grid number) and it will return all observations of that source.

Alternately, if you have a Gl and Gb, and want to find the grid id and search the pmobs.db, the tool ‘gridid’ has been created to do that. It’s a bit of a botch job however, so care should be taken to ensure that it makes sense. It is configured in /psr at JBO, however it will be made available shortly as part of the PSRUtils Package. To use:

gridid [gl] [gb]

Note that this only works for PMsurv and PASurv observations (and anything else that uses PMsurv grid ids). This will return other results though, for example from the MMB survey (which will be bogus as their grid ids are different), so watch out!

How to get a pointing from the archives

Currently there is no online mechanism for extracting files from the archive, although this is planned.

Therefore you need to find a local copy of the PM survey. At JBO this is (or should be soon!) at:

/remote/dcore[8–15]_1/PMSURV/

The files are typically indexed by tape name, then by pointing, for example:

PM0042/PM0042_001

is pointing 1 on tape PM0042

Dealing with the data

The data for the PM survey is in the SCAMP data format, and can be extracted by the sc_td software ((I think) it can also be used directly by Presto).

In general the following seems to work (although there are many more options of sc_td you might want to try):

sc_td -d d -A -b [beam number] -K [tape name] [file name]

Where: [beam number] is the ordinal number of the beam you want to extract (1–13, not 1-D), [tape name] is the name of the tape (so that it can be looked up in kill.chans) and [file name] is the name of the file you want to process.

This will provide you with a [file name][beam name]1.dat and the same .hdr. For example you might get

PM0042_001B1.dat
PM0042_001B1.hdr

Note that if you are using an older version of sc_td, you might have to remove the -K switch and you might get mangled file names (in particular with the wrong pointing number), but the right file should have been extracted. Also don’t panic if it reaches 2051 blocks (for a full PM file) and throws some error about end of file, this is just the way of sc_td, your files have been extracted ok!

What can I do with .dat/.hdr files?

So you have some .dat/.hdr files. Well… you can now process them, but the way you do this depends on what software you want to use.

Here we will use PDM, PulsarHunter and Sigproc for some examples, but you might want to use PMMinifind or Presto.

Folding the data with a known period and DM

Lets suppose you want to fold the data up in time and frequency with a known period and dispersion measure. It may be that you know the period and DM exactly (i.e. you have already optimised the period on this data, or have a good ephemeris), then you can just fold the data. If you know the pulsar period, but don’t have the exact values (e.g. you have done an FFT or looked the period up in a catalogue, you might want to do optimisation, therefore use PDM or PulsarHunter

Sigproc filterbank, dedisperse and fold - For when you know exactly the period and DM

So, firstly check if you have Sigproc installed. Assuming it is, you can perform the following steps (Assuming your file is called PMXXXX_XXXX1.dat):

filterbank PMXXXX_XXXX1.dat > PMXXXX_XXXX1.fil This converts the .dat and .hdr into a sigproc generic raw data format.

dedisperse PMXXXX_XXXX1.fil -d [dm] > PMXXXX_XXXX1.tim This dedispersed the data at a dm of [dm] and places the single channel time series into PMXXXX_XXX1.tim.

fold PMXXXX_XXXX1.tim -p [period] | profile This will make a nice ascii profile of the plot. Of course you probably want something more useful, so either pipe the output from fold into a file and then read it into your favourite plotting package, or perhaps make an EPNFormat file:

fold PMXXXX_XXXX1.tim -p [period] -epn > PMXXXX_XXXX1.epn

Check the fold help for more (type ‘fold -h’) output options.

PDM - for when you want to optimise (only works for Parkes Filterbank data)

PDM is the standard PMsurv folder. It has been tried and tested over the years and is considered to be relyable.

to use, simply type:

pdm

and follow the options… unfortunately it’s a bit picky about what you say to it.

Here is a typical conversation:

>$ pdm

Input data file: PT0279_0461
Telescope site: PARKES    

 File extn (3 char max): mjk
 Graphics device (n for none): /vps
 Nkill, (chk(j),j=1,nkill): 0
 Write plot data to file? (y/n) [y]: 
 Write dedispersed data to file? (y/n) [n]: 
 Write profile file? (y/n) [y]: 
 Period (p), frequency (f), baryctr P (b) or catalogue (c)? [c]: p
 Folding centre period (ms)? : 123.4567
 Half-range of period scan (ms) or negative Nsub? : -256
 Centre DM? : 345
 Nr of bands for DM search? : 6
 Range factor for DM search (max nr samples/chan)? : 1

 Block length (sec):   0.256
 Nr of blocks to skip?         : 0
 Nr of blocks to read? (0=all) : 1
 Tsub array overflow - nsub decreased
 Nsub too small - set to 3
 2048 256 0 2

 1mjk  RAA:  15:52:41.4  DecA: -56:49:02.  Gl:  325.850  Gb:   -2.240  Date: 061
  UT:  19:35:22.0  LST:  11:41:10

 EOF reached at nsub =   0

Using these options will cause it to at least produce a plot (which may be called pgplot.ps, although it may also be [infile].ps). Try playing around with these options to find what you want (At least change the period and dm!).

PulsarHunter - an alternate way to optimise (works on a range of different data types).

PulsarHunter is best combined with sigproc to perform the initial dedispersion steps.

If you have Sigproc and PulsarHunter installed, then you can do a PDM style optimisation with the command:

ph-pdm infile ] [[outfile [dm] -period [period]

Note that ph-pdm is a script that does the following:

@@filterbank [infile].dat | dedisperse -d [dm] -s 4 → [infile].sub ph-tune [infile].sub [outfile] …options…

That is, it uses sigproc to make a sub-banded time-series with 4 sub bands (i.e. 4 dedispersed frequency channels) and then runs ph-tune. Therefore you can use any option that ph-tune takes (try ph-tune with no args to see a list of options).

This gives you a postscript output as well as a .phcf file. The .phcf (PularHunter Candidate File) stores all the info about the data in a format described in PHCFFormat. This can be viewed with ph-view-phcf, which starts an Xwindow with the plots in.

Note that pulsarhunter is pretty new, so it is not as tested as PDM. Although it is generally more flexible than PDM, it is still being developed so more features will appear/disappear in future.

Search for new Pulsars

Once you have filterbanked the data:

filterbank infile.dat > outfile.fil

you can use the generic sigproc search methodology.

PMsurv data can also be searched with PMMinifind

Looking at the results (2001 A.Faulkner reprocessing)

A quick way to check what is in a beam is to look at the processed results. This data is currently only available at JBO.

The results are stored in the results directories in

dcore15_1/PMSURV/results and dcore14_1/PMSURV/results

The data is subdivided into tape, pointing and beams. Each results directory contains the following files:

  • .ph files (one per candidate from standard search)
  • .aph files (one per candidate from accel search)
  • a .ascu file which contains bookkeeping info (I have no idea what this is, please explain ~mkeith)
  • .pulse_best and .pulse_stats which are single pulse search output (I have no idea how to read this format ~mkeith)
  • a ‘long’ dir which contains a number of .lph files and ffa files that are long period search candidates. (Sorry, no idea what these contain either ~mkeith)
  • a .sp file (I have no idea what this is ~mkeith)
  • a dir with the name of the pointing, that contains the phase acceleration candidates (See Presto for information on the phase acceleration search). Note that for some reason not all beams have this…

The .ph files and .aph files are the most useful, as they have the actual candidates. Most of the other files are not described here, but it would be useful if someone with knowledge of these could fill this in.

The .ph files and the .aph files are almost identical, but they have some subtle differences. The files are in a binary format with no markings to identify the components. They can be read by Reaper, vph (the .ph/.aph viewing software) and JReaper.

To best understand the uses of these files, and the way they were produced, it would be advisable to read Andrew Faulkner’s PhD thesis.

Search for new pulsars with Sigproc and PulsarHunter

see Search With Sigproc.

Create Time of Arrival measurements from observations

Before timing of a pulsar can commence, one must generate time of arrival measurements from the observations. How this is done varies depending on the telescope/hardware that is used.

At Parkes/Epping

Timing at the ATNF principally uses the PSRCHIVE software from Swinburne.

Given .ar archive files (If the data is already in the epping archive)

Given a set of .ar archives (and frequency and time ‘scrunched’ .FT files) one can use all the psrchive commands to make the toas and view the profiles. Useful commands are:

  • pdmp *.ar do a period and frequency optimisation on the .ar file
  • pam -FT -e FT *.ar makes ‘.FT’s from the ‘.ar’s. Use -E *.eph to use a new ephemeris
  • pav -D -N2,2 *.FT displays the folded profiles 2 by 2.
  • pas x.FT To make a standard template from x.FT
  • pat -s x.std *.FT Creates tempo format TOAs from the FTs using standard template x.std
  • pat -s x.std -f tempo2 *.FT Creates tempo2 format TOAs from the FTs using standard template x.std

To make the .ar archive files (for fresh data, straight from the telescope)

Creating these files depends on the hardware system used.

At Jodrell Bank

At Arecebo

Fit TOAs

Using Tempo

Using PSRTime

Using Tempo2

Work with PSRCHIVE to analyse Parkes CPSR2 data

Typical data - querying attributes

For the purpose of this demonstration, I will be using data from PSR J0437–4715 collected at Parkes in 2009. A typical data set will generally contain files from a stable reference flux calibrator eg. HYDRA A taken once per day, files from a 100% linearly polarized reference source (CAL - an amplitude modulated linear noise diode signal), taken before and after each observation, and the observation files from the pulsar itself. Before starting any analysis, it is worth getting to know the file attributes.

One can check a file’s attributes using psrstat. A polarization calibration is marked ‘PolnCal’, a flux calibrator is marked ‘FluxCal-On’ or ‘FluxCal-Off’, and a pulsar observation type marked ‘Pulsar’.

For example,

psrstat m2009100020946.fb produces the following output for this particular polarization calibration file:


Attribute Name   Description                                 Value
------------------------------------------------------------------
file             Name of the file                            m2009100020946.fb
nbin             Number of pulse phase bins                  1024
nchan            Number of frequency channels                128
npol             Number of polarizations                     4
nsubint          Number of sub-integrations                  1
type             Observation type                            PolnCal
site             Telescope name                              7
name             Source name                                 CAL
coord            Source coordinates                          04:37:00.000-47:35:00.00
freq             Centre frequency (MHz)                      1341
bw               Bandwidth (MHz)                             64
dm               Dispersion measure (pc/cm^3)                0
rm               Rotation measure (rad/m^2)                  0
dmc              Dispersion corrected                        0
rmc              Faraday Rotation corrected                  0
polc             Polarization calibrated                     0
scale            Data units                                  FluxDensity
state            Data state                                  Coherence
length           Observation duration (s)                    4.718762


etc...

Similarly,

psrstat m2009097074500.fb produces the following output for a Pulsar file:

Attribute Name   Description                                 Value
------------------------------------------------------------------
file             Name of the file                            m2009097074500.fb
nbin             Number of pulse phase bins                  1024
nchan            Number of frequency channels                128
npol             Number of polarizations                     4
nsubint          Number of sub-integrations                  1
type             Observation type                            Pulsar
site             Telescope name                              7
name             Source name                                 0437-4715
coord            Source coordinates                          04:37:15.815-47:15:08.63
freq             Centre frequency (MHz)                      3256
bw               Bandwidth (MHz)                             64
dm               Dispersion measure (pc/cm^3)                2.64397811889648
rm               Rotation measure (rad/m^2)                  0
dmc              Dispersion corrected                        0
rmc              Faraday Rotation corrected                  0
polc             Polarization calibrated                     0
scale            Data units                                  FluxDensity
state            Data state                                  Coherence
length           Observation duration (s)                    13.1076740000001

etc...

Other useful tools for querying attributes are vap, psredit and vip.

For example:

vap -nc bw * returns the bandwidth (bw) without headers (-n) of all the files in the current directory. Type vap -H for a full list of parameters able to be queried.

psredit -c type,name,dm <archive> returns the observation type, name and dispersion measure of an archive

vip -a <file> returns the pointing attributes of a particular file, such as RA, DEC, LST etc

Once familiar with the file attributes, it is a good idea to sort the observation files according to frequency and/or bandwidth, in preparation for downstream analysis. This becomes important during archive creation to avoid frequency/bandwidth mismatch errors.

Calibration

Set up calibrator summary file

Gather all cal files into a single directory, and make this directory the working directory.

Create a database summary file (default output is database.txt) of all the calibrators eg:

pac -wp . -u $file-extension where pac searches in the local directory (-p .) for files with extension $file-extension (-u), and writes to a new database.txt file (-w)

Next, determine the system temperature and flux density of the reference source using fluxcal eg:

fluxcal -d database.txt -c $prefix/share/fluxcal.cfg where fluxcal.cfg contains the standard candle information

Here, fluxcal appends database.txt with flux calibration solutions, but keeps a copy of the original as database.txt.bkp

Calibrator graphical display

Graphical display of the calibrator archive is possible with pacv, psrplot and pav, utilising the PGPLOT graphics package, for example

pacv -P <archive>.fluxcal produces a publication quality plot of a flux calibrator archive, showing system and noise diode cal equivalent flux densities with frequency, of both polarizations. When applied to a HYDRA cal file, say a ‘FluxCal-Off’ pointing (ie. a pointing taken one full beam width north or south of HYDRA), pacv will display the calibrator solution of the instrument response in terms of absolute gain, differential gain and differential phase

pacv -n cpu <archive> plots uncalibrated on-pulse total and polarized flux (-n cpu) with frequency; for calibrated use -n cpc; to view system parameters (ie. off-pulse) use -n spu and -n spc

pacv -n csu <archive> plots uncalibrated on-pulse Stokes parameters (-n csu) with frequency; for calibrated use -n csc; likewise to view system parameters use -n ssu and -n ssc

psrplot -p D -j FTp <archive> scrunches frequency channels, sub-integrations and polarizations (-j FTp), and produces a single plot of total flux (-p D), eg. for checking the performance of the linear noise diode cal square wave.

pav -X - -publn - -ch 0.8 <archive> produces a black and white publication plot (- -publn) with a set character height (- -ch 0.8), of the cal and system amplitude and phase as a function of frequency channel (X)

Calibrate the pulsar archives

The next step is to make the pulsar observations directory the working directory and use psradd to create 5 minute integrations (-I 300), prior to calibration eg:

psradd -I 300 *.$file-extension the output files of which have .it extensions. Use of the -E <psr.eph> argument tells psradd to load a new ephemeris if required.

Assuming the archives are free of problematic RFI (See ‘RFI Mitigation’ below), they can be calibrated for flux and polarisation, again by applying pac but this time with reference to the calibrator summary file created above. By default, pac uses the ‘SingleAxis’ calibration model, but use of this model assumes that the two receptors are orthogonally polarised, that the reference source is 100% polarised, and that both receptors receive the signal in phase.

pac -d /path to/database.txt *.it

The output files are given .calib extension if both flux and pol calibration were possible, and .calibP if only pol calibration was possible; use of the -P argument with pac, calibrates for polarization only.

In order to acquire a more accurate instrument response, use of the ‘Reception’ calibration model is required. Firstly, pcm is used to produce a calibrator solution by choosing the most suitable phase bins in the integrated pulse profile created by psradd, for example:

Say the output of pac above are .calibP files, then

psradd -T -o total.calibP *.calibP creates a Tscrunched archive (-T) ‘total.calibP’ (-o)

Then run pcm on the uncalibrated *.it archives:

pcm -d /path to/database.txt -c total.calibP -s -t2 -D result *.it where pcm automatically chooses the best phase bins from the calibrated archive (-c), intrinsic signal fluctuations are compensated for (-s), a diagnostic report is printed (-D result), and the process is split between two processor cores (-t2) since it is quite computationally intensive. The output from pcm is the calibrator solution ‘pcm.fits’, and can be viewed with pacv.

The solution from pcm can now be used for calibration. First, the solution must be added to the calibrator database; e.g.

cp pcm.fits /path to/pcm_<date>.fits
cd /path to
pac -wp . -u fits -u $file-extension
cd -

Then run pac using the -S command-line option that enables the calibration technique described in section 2.1 of Ord, van Straten, Hotan & Bailes (2004); eg:

pac -d /path to/database.txt -e new.calib -S *.it where pac outputs the fully calibrated files with extension ‘.new.calib’ (-e).

Finally, create a new fully calibrated archive for viewing with pav or psrplot (see ‘Viewing archives’ below) eg:

psradd -T -o total.calibP.new *.new.calibP

Viewing archives

The PSRCHIVE suite offers two archive viewing and plotting routines, namely pav and psrplot. Both utilise the PGPLOT graphics package and can produce publication quality plots.

1) pav

pav can graphically display the content of an archive, and also allows preprocessing of the archive before displaying it, but without any change to the archive’s content.

For example,

pav -FTp -DC <archive>, scrunches all frequency channels, sub-integrations and pols (-FTp), and plots the centred (-C) integrated pulse profile (-D)

pav -FY <archive>, scrunches all frequency channels (-F), and plots sub-integrations with pulse phase (Y)

pav -G <archive>, plots pulse amplitude and phase with frequency (G); addition of the -d (dedisperse) option corrects for the dispersion delay of the interstellar medium, illustrated by the frequency-dependent phase sweep across the band

pav -FT -SC -g 1/xs <archive>, scrunches all frequency channels and sub-integrations (-FT), and plots centred polarization parameters I, L, V and PA (-SC) on PGPLOT window no. 1 (-g 1/xs); addition of - -plot_qu displays the stokes parameters I, Q, U, V and PA, and addition of - -ld displays pulse phase in degrees

Other options for pav include the ability to zoom in on a specific range of phase (-z), frequency (-k), sub-integration (-y) and position angle (-l).

2) psrplot

To list available plot types use psrplot -P. To list plot options for a specific plot type use psrplot -C <plot-type>, or psrplot -A <plot-type> for more common options.

Some psrplot examples:

psrplot -N1×3 -jFT -c ch=2 -p o -p s -p Y <archive>, preprocesses by scrunching frequency and integrations (-jFT), and plots an array of 3 plots one on top of the other (-N1×3), polarisation angle (-p o), stokes parameters (-p s) and subint/phase with amplitude (-p Y). Character height (ch) is set to double the default using the -c argument (-c ch=2).

Zooming in on the data is possible by including eg. -c ‘x:range=(0.5,0.7)’, which plots the xrange from 0.5–0.7

Overlaying multiple plots can be achieved using both the -F and -c arguments, for example:

psrplot -p D -j FTp -F -c “x:win=(0,1),y:win=(0,1)” fileA fileB

Archive manipulation

PSRCHIVE facilitates many levels of archive manipulation, from changing file parameters to full pre-processing and output of new archives. Here are just a few examples.

psredit allows you to change a file parameter (-c), for example to change the bandwidth (bw) sign to positive (sometimes the CPSR2 output might have been set incorrectly) and output to a new archive (-e) with no change to the original:

psredit -c bw=64 -e new <archive>

pam allows you to conduct pre-processing on an archive, for example

pam -m -SFT <archive> scrunches in time and frequency (FT), transforming to Stokes parameters (S) and overwrites the archive (-m) while,

pam -e new -SFT <archive> creates the new archive (-e), leaving the original untouched.

Supposing you wanted to tweak the folding period of an archive but leave the original unchanged, use pam with the - -period option eg.

pam -e new -FTp - -period <arg> <archive>

Archives may be combined with or without preprocessing using psradd, for example

psradd -I 300 -E <.eph> <archive> creates 5 minute integrations (-I 300) using the supplied ephemeris (-E). The addition of the -j option allows preprocessing before integration.

RFI mitigation

Use pazi the interactive version of paz the zapper to check for and remove bad subints, channels or bins.

First, create a phase-aligned archive from individual sub-integrations eg.

psradd -f <archive>.ar *.fb

1) To check the subints, create a frequency-scrunched archive and run pazi:

pam -e Fscrunched -F <archive>.ar

pazi <archive>.Fscrunched enters into interactive mode with a cross as a cursor on the time/phase graphic, movable by mouse.

Any bad subints can now be zapped by right-clicking the mouse, or to remove a block of subints for example, left-click at one end of the block, move the cursor to the other end of the block and press ‘z’. By default the subints are not removed but zero-weighted (paz -w) to conserve the temporal signature of the archive. A useful option is ‘p’ which prints the command used, listing the subints that are zero-weighted. Left click the mouse twice to zoom in, and at any time use ‘u’ to undo any changes if required.

When happy with the outcome, press ‘s’ to save the file (default is to <archive>.pazi), and ‘q’ to quit.

The saved file can be checked and viewed with pav eg:

pav -Y <archive>.pazi

2) To check for bad channels first create a time-scrunched archive, then run pazi:

pam -e Tscrunched -T <archive>.ar

pazi <archive>.Tscrunched

With the cursor on the time/phase graphic, press ‘f’ to switch to the frequency/phase graphic.

Any bad channels can now be zapped using the methods described above. Similarly, ‘p’ prints the command and lists the channels that pazi removes.

Press ‘s’ to save the file, and ‘q’ to quit.

As above, the saved file can be checked and viewed with pav eg:

pav -G <archive>.pazi

Alternatively, after checking the subints and channels above but not saving the changes, run paz on the unscrunched archive using the output from the ‘p’ option above to automate the procedure, for example:

paz -w “20” -z “119 120 121 122 123 124 125 126 127 0 1 2 3 4 5 6 7 8 9 10” -e pazi <archive>.ar

Here, paz zero-weights subint 20 (-w), and flags channels (-z) at the edges of the band (119 120 121 122 123 124 125 126 127 0 1 2 3 4 5 6 7 8 9 10) and outputs the new archive ‘<archive>.pazi’

The saved file can be checked and viewed with pav eg:

pav -TG <archive>.pazi (frequency/phase) or

pav -FY <archive>.pazi (subint/phase)

3) Corrupt phase bins can be zapped either interactively or manually. In interactive mode, pazi allows checking and removal of bins by use of the ‘b’ option, and as above, bins can be removed individually or in blocks, with the use of ‘p’ printing the command plus a list of bins removed.

Increase throughput with scripts

psrsh is a scripting tool designed to allow repetitive processing of multiple archives. For example the following script, if included in a shell for-loop, will load each archive, perform some preprocessing and then unload with new file extensions, leaving the originals untouched:

#!/usr/bin/env psrsh

#zap band edges
zap edge 0.05

#scrunch frequency channels and subints
FT

#centre maximum intensity of profile
centre max

#unload with new extension
unload ext=new
 

Archive analysis

Analysis of pulsar archives can be done either by dedicated software in the PSRCHIVE suite itself such as pdmp for parameter optimisation and pat for timing, or by running external scripts on the ascii output from PSRCHIVE’s pdv or psrtxt.

Optimisation

pdmp searches for the best period and DM, and S/N at that period/DM of a given archive, eg:

pdmp <archive> -g archive.ps/ps Here the output is a postcript file (-g DEVICE).

Using 0437–4715 as an example, you could then refine the DM search by decreasing the DM range (-dr) and step (-ds), eg:

pdmp -dr 5 -ds 0.01 <archive>

To plot the DM/period output only, use the -k option:

pdmp -k 0 0 <archive>

To include a period offset in the search, use the -po option:

pdmp -po <> <archive>

pdmp also outputs two ascii files, pdmp.per and pdmp.posn. These can be passed to an external plotting package such as gnuplot, and in the case of a millisecond pulsar in a binary orbit such as 0437–4715, plotting period change with time for example, can demonstrate the doppler effect on the signal as the pulsar orbits its companion.

Timing

In order to produce pulse time of arrival estimates (TOAs), a template profile needs to be created and a fudicial point chosen on that profile, for each frequency of observation. These templates or standards (stds) are then aligned so that toas can be combined from different frequencies.

a) Create the stds.

Using 300 second calibrated integrations, scrunch them (-j FTp) and add them into one archive eg:

psradd -f 300sec.ar -j FTp *.calibP

Then run pas on the archive for each frequency eg.:

pas 300sec.ar At this point, pas enters interactive mode, offering a number of fine tuning options. With the crosshairs over the plot, centre © and smoooth the profile (m), and save (s) the file.

b) Align the templates

Choose one of the stds created above as the reference profile, and align the others to it either individually (-r) or automatically (-a) eg:

pas -r <reference_profile> -a *.std

This leaves all stds aligned in phase with your reference profile.

c) Create the TOAs

Run pat on the calibrated 300 second subints and output to a .tim file eg:

pat -a /path/to/refernce_profile *.calibP > pulsar.tim

d) Fit the TOAs to the timing model

In the presence of a parameter (.par) file for the chosen pulsar, run TEMPO or TEMPO2 on the .tim files. Alternatively, use GUIs such as PSRCHIVE’s RHYTHM.

Produce ASCII output for external analysis

1) pdv

pdv can print output as ascii textfiles, that can then be manipulated using awk as you see fit, and sent to external plotting packages. For example,

pdv -K -f -n 20 archive > file.txt prints mean flux and pulse width (both W10 and W50) (-f) of channel 20 (-n), and hashes the header lines (-K).

pdv -FTZKt archive > file.txt scrunches frequency and time (-FTp), hashes the header lines and prints the pulse profile, stokes parameters and polarisation angle as ascii (-t).

pdv -NK archive > file.txt prints the S/N

2) psrtxt

psrtxt can output single channels, bins, pols or subints to ascii text.

A useful option is to find max and min values in the data eg:

psrtxt -m -b 100 <archive> returns the max and min values in bin 100 (-b) and the relevant channels, pols and subints the values occurred in.

edit · history · print
Page last modified on September 07, 2012, at 08:45 PM