Discussion Forums

baudline analysis of Voyager

warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'mimemail_incoming_access' not found or invalid function name in /www/setiquest.org/public/includes/menu.inc on line 453.
2 replies [Last post]
sigblips's picture
Joined: 2010-04-20
Posts: 733

I did a quick analysis of the NASA Voyager signal that is part of the SonATA code release. This Voyager dataset is different from the of usual setiData in that it is packetized with dual polarization streams.  I wrote a simple demux and then feed the signal into baudline's standard input. Auto Drift was used to find the weak drifting Voyager signal and then those parameters were used to decimate and down mix in for a better view.


A -0.47 Hz/sec drift rate was measured. That seems a bit high to me.  Is that a reasonable value?

Joined: 2010-05-15
Posts: 365
drift rate

Hi Sigblips

Because the observation is at high frequency (~ 8 GHz), a drift rate of 0.5 Hz/s is quite reasonable. The Doppler effect is related to velocity (for velocities << c) by

f = fo * (1- v/c)                               (http://en.wikipedia.org/wiki/Doppler_effect)

where f is the observed frequency, fo is the emitted frequency, c is the speed of light, and v is the radial velocity between of emitter in the rest frame of the receiver. Taking the derivative w.r.t. time, we get the drift rate R

R = df / dt = - fo * a / c.

where a is the acceleration. So for R = 0.5 and fo = 8 GHz, the acceleration is -0.019 m / s^2. Did I do that right?

This is compared with the centripetal acceleration on the equator caused by Earth rotation (given that earth radius (r_e) is 6000 km and earth rotates once per day)

a_earthmax = v_e^2 / r_e                    (http://en.wikipedia.org/wiki/Centripetal_force)

where v_e = 2 * pi * r_e / (24 * 3600 seconds per day)  = 436 m/s.

Hence a_earthmax = -0.032 m / s^2. This is less by about a factor of 2 from the observed drift rate. Notice that since we can't see through the earth, the acceleration and drift rate are always negative (but that doesn't include acceleration at the transmitter, which could be present but not for Voyager).

The observed drift rate should be smaller depending on the angle of the arriving signal. For example, the rotation velocity decreases with increasing latitude as cos(latitude). Also, when Voyager appears overhead (that is, on the meridian), you get the maximum drift rate. On the horizon the drift rate is zero (acceleration is zero) where the velocity is at maximum. Also a sinusoidal variation, but complicated by the direction of arrival of the radio waves.


sigblips's picture
Joined: 2010-04-20
Posts: 733
Because of encouragement

Because of encouragement during today's community IRC meeting I have released the source code to the strip_header program that I used to extract the sample data from the packetized Voyager data file. The source code files you want are:

and you can compile the extraction program by doing:
gcc -O2 extract_packet_data.c -o extract_packet_data
then you can pipe the extracted sample data into baudline by:
cat vger-2010-07-14-406.pktdata | extract_packet_data 3 | baudline -stdin -format le16 -channels 2 -quadrature -samplerate 546133
Note that there are two polarizations in the packetized Voyager data file identified as 2 and 3. The drifting signal is about the same in both polarizations. Use a large FFT size and baudline's Auto Drift feature in the Average display to see this weak signal. Auto Drift requires a lot of memory so I'd also use an overlap setting of 100% to minimize RAM usage.