This program performs a plain old Fourier transform or a polyphase filter bank operation on baseband (raw voltage time series) data. In other words, this is a software spectrometer. The input is expected to be 8-bit, complex, dual-polarization data, interleaved in the following manner:
polXre0 | polXim0 | polYre0 | polYim0 | polXre1 | polXim1 | polYre1 | polYim1 | ...
The output is written in the headerless SIGPROC .fil
format, along with a .fhd
configuration file.
If doing PFB, this program requires a filter coefficients file to be present in the current directory. Filter coefficients files can be created using the yapp_genpfbcoeff.py Python script.
Usage:
yapp_ft [options] data-file
The options are:
-h
or--help
: Display this usage information-s
or--skip time
: Length of data to be skipped, in seconds (default is 0 s).-p
or--proc time
: Length of data to be processed, in seconds (default is all data).-l
or--tsamp tsamp
: Sampling time in seconds.-f
or--centre-freq freq
: Centre frequency of the observing band in MHz.-b
or--pfb
: Do polyphase filter bank.-t
or--ntaps ntaps
: Number of taps in the PFB (default is 8).-n
or--nfft N
: Number of points in FFT (default is 4096).-a
or--nacc acc-len
: Number of spectra to be accumulated (default is 1 - no accumulation).-o
or--obs-site site-name
: Observatory name.-r
or--pulsar psr-name
: Pulsar name.-g
or--graphics
: Turn on plotting.-i
or--invert
: Invert background and foreground colours in plots (default is white on black).-e
or--non-interactive
: Run in non-interactive mode.-v
or--version
: Display the version.
The flags -l
(or --tsamp
) and
-f
(or --centre-freq
) are required
arguments.
Example:
The following performs an 8-tap pre-filtering followed by a
1024-point Fourier transform on the data in rawdata.dat
.
The spectra thus produced are accumulated to a length of 10, and the
output is written to a headerless SIGPROC filterbank file named
rawdata.dat.fil
, and metadata is written to a file
named rawdata.dat.fhd
. The site name (in this case,
'GBT') and the pulsar name ('J1921+2153') go into the metadata
file.
yapp_ft -l 0.00000078125 -f 1420.405751 -b -n 1024 -a 10 -o GBT -r J1921+2153 rawdata.dat