last update: July 31, 1998.
Vicky Kaspi
PMBIRDIE_SUMMARY
pmbirdie_summary is a program for use on zero DM .s. files produced by
pmbirdie_hunter. Its
job is to combine the .s. outputs for many/all pointings on a tape and create
filters, written to .accu files, for use in interference rejection in pmfind.
A sample .s. file viewed with pms_plot can be
viewed here.
pmbirdie_summary should be called using the script
pmbirdfiles .
Note that a successful run of pmbirdie_summary will result in
the announcement of an IEEE flag enabled. This is a feature of
the compiler. IEEE traps, by contrast, signal errors such as division by zero.
WHAT PMBIRDIE_SUMMARY DOES
UNDERSTANDING PMBIRDIE_SUMMARY OUTPUT
WHAT PMBIRDIE_SUMMARY DOES:
pmbirdie_summary was adapted from birdie_summary, though I have significantly
changed some of the algorithms, particularly that for harmonic and fundamental
id.
- It opens all .s. files, identifying "garbage" beams in the process.
Those are noted in the file pm_bad_beams and are ignored.
- The zerodm candidates from the .s. files are sorted by s/n and those
below the s/n threshold set by the input parameter snmin are thrown out. Note that
the diagnostic output file "candidates" contains this list, helpful for debugging.
- The main search for harmonics is done and candidates are identified. The
details of how this is done are complicated. Some
diagnostic outputs, useful for debugging, can be found in files fort.51, 55, 76, 78.
The algorithm involves two passes at the candidates list in order
to identify spurious sub-harmonics introduced by the harmonic folding process
as well as mis-identified fundamentals. pmbirdie_summary output to the screen
will mention the number of filter candidates after each of these passes. Pass 2
should have fewer filters.
- Filters that match the input parameter requirement for number of occurences
and s/n are reported to the PostScript output.
Note that for candidates that occur in a single beam repeatedly, or for
candidates that appear in only one pointing,
the threshhold for the number of occurences required to flag it as a
birdie are different than the parameter nocc. In particular, for candidates
in one beam only (Nbeam=1) if the number of occurences is greater than 4 it
is called a birdie. For candidates occuring exclusively in one
pointing (Nptg=1), if more than 4 occurences are found, it is called
a birdie. For candidates occuring in more than one beam and more than one pointing, the input parameter noccur is the threshhold.
- The .accu files are reopened and filters that are appropriate for
each file are written.
UNDERSTANDING PMBIRDIE_SUMMARY OUTPUT:
pmbirdie_summary writes filters to accu files for use with pmfind.
It also provides diagnostic output in the form of a PostScript
file that has name e.g. PM0017_b_14_38.ps for tape PM0017 pointings
14 through 38 in beam mode. Here
is a sample. Here is a synoposis of the output:
- First page:
- Greyscale showing a low resolution unfolded modulation spectrum for
all pointings (in beam mode) or all beams (in pointing mode). Note
that the spectrum has had standard filters zapped, ie the spectra
that are plotted are those produced by pmbirdie_hunter after the
zapping has been done. The example is beam mode (as stated on the top).
Within the horizontal lines separating the pointings are the spectra
for all 13 beams.
- Note that
data for pointings 24, 25, 26, 27 are entirely absent; they
were deemed to have too much interference by
pmbird creates.
- Note also that pointing 28 has two missing beams; those beams
were either absent for some reason or bad (in this example they
were absent).
- Vertical stripes indicate signals common to many beams/pointings.
In this example, there is a
strong signal at 62.5 Hz with many harmonics (the highest at
1875 Hz).
- Second page:
- Total number of blocks is the sum of the number of blocks per beam
as read from the accu file.
- Total number of beams is the total number of .s. files read in.
- Start beam info is for the first .s. file read in. In this
example it is pointing 14, beam 1.
- End beam info is for the last .s. file read in. In this example
it is pointing 38, beam 13.
- "dummy" beams are beams for which pmbirdfiles
found no .s. file. Dummy beams are necessary to allow
pmbirdie_summary to properly organize the .s. files in the directory.
- "garbage" beams are beams that exist but are corrupted. Either
the .s. file or the .accu file may be corrupted. Garbage files
are ignored and are noted in the file pm_bad_beams.
- Initial list of filters: these are the filters in the file
$searchdir/bhbird read in by
pmbirdie_hunter . Note that the Deleted Frequency Range
is a synopsis of ALL input .s. files -- it shows the max and
min of the range of deleted frequencies. Individual .s. files
usually have had much narrower ranges deleted. Note also that
the deleted range may sometimes exceed the input range (never
by more than a spectral bin.) This is because of the quantized
representation of the modulation spectrum.
- Output filters: here is what the columns represent:
- Peak Freq: peak frequency of the fundamental
- Frequency Range: the frequency range this birdie (and its
related harmonics, back extrapolated) were found in. Note
that the range may not be symmetric about the peak.
- Nharm: harmonic number of the highest harmonic found. Note
that for a harmonic to be identified, it must be less than
10 harmonic numbers larger than the highest one found previously.
(e.g. if only the fundamental has been found, the 11th
harmonic will not be identified.).
- max s/n: maximum s/n found for the fundamental or any of
its harmonics.
- Noccur: number of .s. files in which the fundamental or any
of its first 16 harmonics appears. This is also the number
of .accu files to which this particular filter is written.
- Nbeam: number of unique beams the fundamental or any of its
first 16 harmonics in which was found.
- Nptg: number of unique pointings the fundamental or any of its
first 16 harmonics in which was found.
- Note: if there are so many filters that pmbirdie_summary cannot
fit them all on one page, pmbirdie_summary prints a warning message
and proceeds. The true number of filters gets written to the ascu
files, however, only the list in the postscript output is affected.
Hopefully this will happen rarely.