User Tools

Site Tools


Optional exercises

If you have interest in exploring the baseband data in detail, the following things can be tried. These are mainly to illustrate some of the tools available to inspect data independent of the correlator.

Make high resolution spectra of baseband channels

The utility m5spec can read baseband data and generate spectra. The program and output text file containing the spectrum is documented in Reference Manual sections 5.50. This program works on many varieties of VLBA baseband data (including the Mark5B data in the first dataset), but does not work on VDIF data with multiple threads (e.g., from the second dataset). The dataformat parameter appropriate for dataset 1 data is Mark5B-2048-16-2, and a complete command to generate spectra with 500 spectral points per baseband channel is:

m5spec /home/avntrainee/difx_data/n6043/NRAO+301_0540_N6043_PT_No0008 Mark5B-2048-16-2 500 2000 spec.out

Here the number 2000 is the number of FFT frames to process. Increasing that number will lead to more averaging and a spectrum with higher signal to noise. It might be instructive to change the values of the two numbers (number of spectral points and number of FFTs to process) to get a feel for how these parameters change the output.

The gnuplot program can be used to plot the data. First start gnuplot in a terminal:


Then at the prompt you can issue plotting commands such as:

p 'spec.out' u 1:2 w l

Column 1 (identified in the 1:2 parameter) is the spectral point frequency offset (starting at 0 and extending to the bandwidth of the channel) and column 2 is amplitude data for the first baseband channel. There should be three features of note:

  • The bandpass rolls off toward the edge of the band but does not drop to zero. What does this imply?
  • There are spikes in the data every 1 MHz. These are pulse cal tones. How does the relative strength of pulse cal tones change as the number of spectral points is increased? Why?
  • RFI: signal on top of the bandpass that is not related to pulse cal tones is probably RFI. The S-band channels especially have RFI.

It might be instructive to step through the 16 baseband channels to see what real data looks like.

Inspect VDIF data headers

You can decode and print the headers of the VDIF data frames with a program called printVDIFheader . This program takes a VDIF data file (e.g., from the ts036h experiment) and prints the contents of the header for every frame. To prevent the data from going on forever, you likely want to pace the output with the unix tool “less”.

cd /home/avntrainee/difx_data/ts036h

printVDIFheader NRAO+338_0039_TS036H_NL_No0001 | less

Then hit q when you are satisfied.

The header can be printed in binary with:

printVDIFheader NRAO+338_0039_TS036H_NL_No0001 5032 hex | less

or more output, explaining all the values, can be printed with:

printVDIFheader NRAO+338_0039_TS036H_NL_No0001 5032 long | less

Detect the 80 Hz noise diode

A program called m5fold “folds” the power at a given frequency and produces a power curve as a function of phase in that period. At the VLBA (and several other VLBI antennas) noise power is injected with a square wave and decoded by downstream electronics to determine the System Temperature.

To try this, look at data from n6043:

cd /home/avntrainee/difx_data/n6043

m5fold NRAO+301_0540_N6043_PT_No0008 Mark5B-2048-16-2 50 20000 80 fold80

and then plot the output file “fold80” with gnuplot. The first column is the phase (expressed as time since the first phase bin in seconds), and columns 2 to 17 correspond to the 16 baseband channels. The number “80” in the above command is the frequency to fold.


p 'fold80' u 1:5

Try a couple other frequencies, such as one that is not commensurate with 80 Hz (such as 79 Hz). What do you expect if you try 40 Hz?

You can increase the number of samples in the folded profile by increasing the number “50” in the command. You can increase or decrease the amount of data to process by changing “20000”. The bigger, the higher the output signal to noise ratio.

Snoop on other people's correlation

The correlation status messages are sent to a multicast address that everyone on the local network can access. Thus you can see what other machines are doing without interfering. To do this, start a 2 more terminals and in each run the setup_difx setup script. Then run


in one and


in the other. These two terminals will show the same output that your dedicated monitor terminals have, but will include information from all jobs running in the room.

difx/ivs2016extras.txt · Last modified: 2016/03/11 20:43 by walterbrisken