Table A.1 lists a collection of programs which facilitate advanced processing of SuperDARN generated autocovariance function datasets that are stored in .DAT files.
Table A.1: List of SuperDARN autocovariance function processing programs
*** Program
datheader
*** Usage
datheader [DAT-file]
*** Synopsis
Prints the information that is contained in the header of 'DAT-file'
and the header of the first DAT record for informational purposes.
*** Example
datheader test.dat
*** Program
datacf
*** Usage
datacf [DAT-file] >outfile
*** Synopsis
Read in 'DAT-file' and convert the data into the fixed-length 'acf'
records for use with other acf___ tool programs (see acf.h).
The output is directed to 'stdout' for piping into another filter.
The program will remove bad data points and interpolate linearly
missing points in the ACF. Also some variables in the ACF-record
will be calculated.
*** Example
datacf test.dat >test.acf
*** Program
acffilter
*** Usage
acffilter [option] [option] ... <infile >outfile
Options:
h - this helptext
n [Rec#-Range] - define record-number range
b [Beam-Range] - define beam range
r [Range-Range] - define range range
t [Time-Range] - define time range
s [SNR-Range] - define a signal-to-noise limit,
v - verbose processing, default: off
Notes: Time-Range= 'YY MM DD HH MM SS' (enclose the numbers
defining a time in quotes). Other ranges are two number
separated by a space.
*** Synopsis
This is the universal filter for acf-records. One can select record,
beam, range, time and signal-to-noise ranges. Several filter options
can be combined. Every filter option requires two numerical
arguments defining an ascending range of values.
*** Example
datacf test.dat | acffilter b 3 4 r 20 30 >filtered-test.acf
*** Program
acfsimulated
*** Usage
acfsimulated [Options] >outfile
options:
-h this helptext
-a# number of ACF's to generate
-n# number of peaks in each spectrum (1-3)
-g# add a GS signal of amplitude # to spectrum
-r position first peak at random
-R vary number of Gaussian
-N# noise amplitude (0.0-1.0)
-0# -9# toggle missing lag at position #
*** Synopsis
This routines creates artificial acf-records. It first generates
random parameters of Doppler-velocity spectral peaks, generates
the spectrum, optionally adds noise and simulates ACF's by
Fourier-transforming the spectrum. The position of the first peak
is varied as a function of record number. This can be overridden
with the -r option. The total number of ACF's generated is
controlled with the -a option and defaults to 1. The amplitudes
should be in the range of 0.0 to 1.0. Up to 10 missing lags can
be simulated with the -0, -1, -2, to -9 options.
*** Example
acfsimulated -a5 -n2 -r -g0.8 -N0.1 | acfdisplay
*** Program
acfdisplay
*** Usage
acfdisplay <infile >outtext
*** Synopsis
This program will simply read in acf-records and print out the ACF
and spectral data as a text file in ASCII format. This feature is
useful for debugging purposes.
*** Examples
acfsimulated | acfdisplay
acfsimulated -a10 | acfdisplay | more
*** Program
acffit
*** Usage
acffit <infile >outfile
*** Synopsis
This program will attempt to find the mean phase of the ACF but
using the 'brute=force' approach. The result will be stored in
the first velocity entry of the acf-record.
*** Example
Compare the output of the following command lines:
acfsimulated -a10 -N0.2 | acfdisplay | grep "Center"
acfsimulated -a10 -N0.2| acffit | acfdisplay | grep "Center"
*** Program
acfft
*** Usage
acfft [options] <infile >outfile
Options:
p <samples> <shift> - Periodogram
l <lags> - Correlogram
y <order> - Yule-Walker
b <order> - Burg
c <order> - Covariance
m <order> - Modified Covariance
a <order> <order> <lag> - ARMA
v <order> - Minimum Variance
u <order> <signals> - MUSIC
e <order> <signals> - EV
S - Smooth output
M - MEAN removal in real part of ACF
N - Normalize maximum of psd to 1.0
*** Synopsis
This routine performs a spectral estimation on the complex ACF and
stores the spectrum in the acf-record. Several methods can be used
- see the README file of the spectrum-library for details.
The output can be smoothed (3 point average), the mean from the ACF
can be removed before processing (to avoid groundscatter
contamination in FFT based estimators) and the resulting spectrum
can be normalized to a range from 0.0 to 1.0.
*** Example
datacf test.dat | acffilter n 0 9 | acfft p 32 16 | acfdisplay
*** Program
acfdetect
*** Usage
acfdetect [options] <infile >outfile
acfdetect v [options] <infile >outfile 2>logfile
Options:
c [value] - set cutoff to [value], default=0.15
m [value] - set maximum peak sep. to [value] m/s
z [value] - set zero velocity range to [value] m/s
v - be verbose, default: off
*** Synopsis
This routine will attempt to detect double-peaks in a power
spectrum. The three step process involves: 1.) removing
all signals below a certain cutoff level set by 'c'. 2.)
Determining the number and location of all remaining local maxima.
3.) Select all records with 2 peaks that are separated more than
a value (set by 'z') from zero and are at the most some value (set
by 'm') apart.
*** Example
acfsimulated -a100 -n2 | acfdetect | acfdisplay | grep "#"
*** Program
acfgnuplot
*** Usage
acfgnuplot [options] <infile >gnuplot-script 2>logfile
Options:
p - generate power spectrum plot
a - generate real/imaginary ACF plot
l [label] - label power spectrum curve with [label]
*** Synopsis
This program will convert ACF and spectral data into a plotting
script that can be executed directly by the 'gnuplot' program.
It will generate one graph per page and stores the output in the
file 'psd.ps'. For power spectrum generation use the 'p' option; for
ACF generation use the 'a' option. Use the 'l' option to change the
label pf spectra from 'PSD' to something else. On 'stderr', a single
line containing location, time and page information for each graph
will be printed. Captured into a logfile this should help identify
particular events.
*** Example
datacf test.dat | acfft b 8 | acfgnuplot | gnuplot
*** Program
acfposition
*** Usage
acfposition [options] <infile
Options:
a read read beam/range pairs as ASCII
v be verbose, default: off
r [value] determines radar (1-12)
Radars:
1 = goose bay
2 = schefferville
3 = kapuskasing
4 = halley
5 = saskatoon
6 = british columbia
7 = alaska
8 = stokkseyri (Iceland W)
9 = iceland east
10 = finland
11 = sanae (durban)
12 = syowa (Japan)
*** Synopsis
This program will report the geographic position of the beam/range
target regions of the radar. It will read the beam/range coordinates
either from acf-records or if the 'a' option is selected from an
ASCII file in a format that similar to the logfile of the 'acfdetect'
program, i.e.
text text [BEAM] text [RANGE]
where BEAM and RANGE are the actual numbers. Ranges <5 are not
considered. The latitude/longitude coordinates are degrees-north
and degres-east.
*** Example
acfsimulated -a10 | acfposition r 1