My platform of work uses Starlink and some routines written by Tom Marsh (yes, there is life beyond IRAF, and I’m not talking about MIDAS 🙂 ).

Measure radial velocities

For CVs use Schneider & Young (1980). Remember to do this on continuum-subtracted data.

Measure K1 using radial velocities of the accretion disk

First you’ll need to measure the period (see elsewhere in this page). Then you can measure radial velocities using Schneider & Young’s double gaussian method (1980). The velocities and orbital phases are then fitted with an orbital solution. For many different separations of gaussians you use a diagnostic diagram to decide which reliable measure is the closest one to the white dwarf. As you know the orbital period you might find that phase binning the data before measuring the radial velocities is of help in case of poor S/N data.

Measure orbital periods from spectroscopic data

Basically you want to measure radial velocities and look for any periodicities present in those measurements. The first step should be done by means of one or more of the following methods:

  • Measure the radial velocities using Schneider & Young’s double-gaussian method or another standard one. Use several different separations and widths of gaussians and analyse them independently. You expect to find consistent results. This method has the inconvenience of letting you measure just one line at a time, and you won’t have any hints of the optimal separation and widths to use so you will have to inspect the data and make educated guesses.
  • An alternative is to use a cross-correlation of many lines at once. This exploits the information contained in the whole spectrum and thus might be less prone to errors present in specific wavelengths (although it is a good idea to mask everything you are not going to measure, anyway). A good template for the cross-correlation might be the average of many spectra but you should prepare the dataset for this; for instance, if you already have an estimation of the orbital solution you could remove this motion from the dataset and then average them (a trailed spectra would look mostly “straight” as opposed to the “wavy” aspect it normally has). Of course, also use some common sense… You don’t want a template that is obviously affected but one particularly bright spectrum of a dataset. A disadvantage of this method is that it won’t allow you to measure the phasing of the dataset (i.e. to measure HJD0).
  • Finally, you might consider the independent technique of measuring the red and blue wing ratios. You expect this to modulate with the orbital period because the variations are produced by the motion of the disk with respect to the observer. To apply this method you need well defined wings.

For all the above I use mostly molly routines, written by Tom Marsh.The second step might be carried out using PERIOD from the Starlink suite (in my system located in /star/bin/period/period); FROG, from the same suite; or rvanal, by Tom Marsh.

Software I use for curve fitting

  • fityk
  • qtiplot (the Scaled Levenbergt-Marquardt algorithm is surprisingly robust compared to other implementations I’ve used).
  • gnuplot
  • Perl modules.

UVES stuff

After the data reduction work in the directory of reduced data: ls *.fits > listfits

cp listfits listtxt

vi listxt (and replace all “fits” by “txt” extensions)

~/iraf (opens my very nice version of IRAF)

Use wspectext to convert the FITS files to a ASCII spectra. Use the @listfits and @listtxt as input/output respectively

Use the script /home/eundas/code/Perl/molly/ to write instructions to join the reduced spectra with their uncertaintie in single 3-columns ASCII files.

Use the following line to extract the particular headers required by molly:

dfits *.fits | fitsort OBJECT EXPTIME RA DEC EQUINOX MJD-OBS | awk '{printf "%s %.4f %.4f %.4f %.2f %.8f \n", $2,$3,$4*24/360,$5,$6,$7+2400000.5+0.5*$3}' > threecolumns_headers.txt

This should be run in the original, non-reduced images.

vi threecolumns_headers.txt

Delete the two firts lines and replace them by:

Object Dwell RA Dec Equinox RJD

Now do:

ls threecolumns_*l.txt > list_l
ls threecolumns_*u.txt > list_u

and use the script /home/eundas/code/Perl/molly/ to write the instructions to read the ASCII files from molly:

perl /home/eundas/code/Perl/molly/ list_l

perl /home/eundas/code/Perl/molly/ list_u

Inside molly, use the threecolumns_headers.txt to correct the headers of the slots in molly.