The WXM data is stored in a file called the "archive file". This file is stored in IPW format (the IPP over the wire format, which is architecture independent).
There is a program called read_archive, which allows a user to
extract and examine the information from that file. The syntax for
calling read_archive is not really fixed (the program is a collection of
hacks and outdated ideas). But it is serviceable, and allows plots to
be made using the "gnudl mode" option -g.
Directly from the source code:
usage: gnudl [ -? ] [ -q | -g | -x | -f ] [-l lower] [-u higher] filename
-q quick mode: shows headers and one-line info
-x begins to extract information
-f displays full information (histograms, ...)
-g display information so GNUDL can use it
-l lower, -u upper: specify search bounds
-? displays this information message
NOTE: if you do not specify -h or -x, it assumes -h all
NOTE: if you give "-" as a filename, read_archive will read
standard input, beginning on an IPP message boundary.
Here are examples of how I use the read_archive program to see what has been happening.
tail -f archive_whatever | read_archive -x -- -and you will then see data as it is coming.
read_archive -g archive_823202577 | fgrep TH | awk '{print $3 " " $4}'
hete.scm package for gnudl); here's an example with gnuplot:
<91 sst10b->960201> gnuplot
G N U P L O T
unix version 3.5 (pre 3.6)
patchlevel beta 162
last modified Sun Mar 5 12:10:10 MET 1995
Copyright(C) 1986 - 1994
Thomas Williams, Colin Kelley and many others
Send comments and requests for help to info-gnuplot@dartmouth.edu
Send bugs, suggestions and mods to bug-gnuplot@dartmouth.edu
Terminal type set to 'x11'
gnuplot> plot '<read_archive -g ar* | fgrep TH' using 3:4 with lines
Here's an example with gnudl:
Not here yet ...
<113 sst10c->960201> read_archive -g archive_823202577 | fgrep WXM_CMD | fgrep sent WXM_CMD 01:49:05.402 6545.402 sent by 7005 is 30 -- 0x1e WXM_CMD 01:49:05.515 6545.515 sent by 7005 is 31 -- 0x1f WXM_CMD 01:49:06.649 6546.649 sent by 7005 is 32 -- 0x20 WXM_CMD 01:49:07.573 6547.573 sent by 7005 is 33 -- 0x21 WXM_CMD 01:52:44.315 6764.315 sent by 7005 is 33 -- 0x21 WXM_CMD 02:03:39.906 7419.906 sent by 7005 is 34 -- 0x22 WXM_CMD 02:20:25.485 8425.485 sent by 7005 is 35 -- 0x23 <114 sst10c->960201>The commands sent in this example are kind of bogus (30, 31, ...), but here's how to read this line:
grep
WXM_CMD.
There is a separate program `tag_extract' which extracts the photon tag data from the archive. The session will look like:
tag_extract < archive_file (00:41:38.226 098 03 11) (00:41:38.349 006 00 05) (00:41:38.390 052 09 11) (00:41:38.431 078 18 05) (00:41:38.513 072 22 02) (00:41:38.554 082 18 08) (00:41:38.636 095 00 05) (00:41:38.677 032 07 04) (00:41:38.718 025 04 08) (00:41:38.759 089 20 05) (00:41:38.800 010 00 05) (00:41:38.841 079 26 08) (00:41:38.882 002 17 04)
The first field is spacecraft time, in hours, minutes and seconds.
The second field is the position (uncalibrated), normalized to the range 0 to 127.
The third field is the energy bin, which ranges from 0 to 31.
The fourth field is the wire, 0 to 11.
You can then look at the time histories (or light curves) from the tag data stream with the command
tag_extract < archive_file | tag2th [-d delta_t]
Here's an example of its use with a 4.5 second delta_t (time
resolution):
<10 sst10b->19960809> tag_extract < ../19960807/archive_839443701 | tag2th -d 4.5 2501.379 000158 2505.879 000148 2510.379 000164 2514.879 000156 2519.379 000170 2523.879 000166 2528.379 000170 2532.879 000150 2537.379 000164 2541.879 000164 2546.379 000174 2550.879 000154 2555.379 000172 2559.879 000164 2564.379 000152 2568.879 000160 2573.379 000156
The first column is the time, the second column is the total number of counts in that time bin.