The MiniSEED format is a subformat of the commonly used SEED data format (get a description of the SEED data format from IRIS). It is well suited for continuous data sets or for archiving large time spans of data. SH accesses MiniSEED data by start time and read length and reads only part of the file rather than accepting a filename and reading it completely (like in other formats e.g. GSE or Q). SEED and even MiniSEED is a very flexible data format and allows a great variety of subformat types. SH/SHM is not able to read general MiniSEED, several restrictions apply:
the data must be coded in Steim1 or Steim2 compression
the data must be organized in separate files for each data stream
the data must not contain records other than data records (that's what I understand as MiniSEED)
The record length of the SEED records is not restricted. We work with 4096 and 512 byte records. There are no naming conventions to be matched for such MiniSEED files. Data are read in by specifying start time, read length, station list, channel code and components. In order to find the appropriate data file(s) for reading SH needs a directory file which holds necessary information about location, filename and content of a set of MiniSEED files. This file is usually called sfdfile.sfd and resides on the data directory or on any other location ('sfd' stands for 'seed file directory'). SH/SHM can read only data which are listed in such a file. Processing of online data in MiniSEED format with SH needs an update of the sfdfile before. The SH package contains a program to create sfdfile.sfd. Its syntax is
sfdlist <wild> <dataroot> [<outfile>] [<quiet>] [<reclth>] [<byteoff>]
where
The sfdlist program searches the specified directory and all its subdirectories for data files matching the given wildcard. If too many data files exist in the data directory tree the program aborts with an error message. In this case use the (slower) program sfdlist_l. The commands sfdlist and sfdlist_l are aliases to the programs $SEED_PROG/sfdlist.csh and $SEED_PROG/sfdlist_l.csh, respectively. After the sfdfile.sfd has been created SH can read in the data files listed. The appropriate SH command (reads) for reading MiniSEED data needs the location of the sfdfile.sfd. Because of its VAX/VMS origin, SH does not distinguish between upper and lowercase by default and has its own interpretation of slashes / in the command line. Therefore it is a good idea to define an environment variable pointing to your sfdfile.sfd before using SH. This makes it a easier to specify the required pathname within SH. E.g. if your sfdfile path is /home/gonzo/data/sfdfile.sfd use
setenv DATA /home/gonzo/data
to define the environment variable DATA. Please mind the uppercase variable name and do not include the sfdfile.sfd itself to the definition. From within SH you may read in MiniSEED data now using the command
reads <sfdpath> <start-time> <seclth> <stations> <comp> <chan>
where
SHM has no command lines, all parameters are controlled by the Read dialog box. The <sfdpath> parameter is specified in the textfield in the lower right corner. The colon after the environment variable name may be omitted here. All other settings are done by mouse clicks and should be self-explaining.
Please note that there is not yet a possibility to read in complete SEED volumes directly into SH/SHM. There is a need for a program writing an appropriate sfdfile.sfd for such a volume, handling the byte offsets correctly for all streams. Instead the SEED volume must be split up in MiniSEED files using the program $SEED_PROG/split_seed <seedvolume>. The resulting miniseed_* files are MiniSEED formatted and can be read in as described above. The split_seed program can be used also for multiplexed MiniSEED files.
SH/SHM read in the data from MiniSEED which is usually given in counts. To calibrate the data create a file $SEED_INPUTS/seedcalib_<station>-<chan>-<comp> for each stream. The files are formatted as text lines of the form <start> <end> <calib>. <start> and <end> are beginning and end dates (in SH time format) where <calib> is valid. <calib> is a floating point number and is multiplied to the counts when reading the data from the MiniSEED file. If no calibration file is found or no time window of the calibration file matches the start time of the data, a message is displayed and a calibration value of 1.0 is used (i.e. counts remain unchanged).
This page last modified 5-Dec-2005