IRIS DMC: rdseed ManualIRIS -> DMC -> Manuals -> rdseed rdseed 4.x Manual Jump to: OPTIONS DESCRIPTION Output Header Corrections User Prompt Mode Input Options Alternate Response Files and the use of miniSEED Volumes The Alias File Time Tear Tolerance rdseed Alert message file rdseed error logging Data Recovery Recovering auxiliary data from FDSN SEED volume DIAGNOSTICS EXAMPLES FILES CHANGES & BUGS AUTHOR NAME rdseed - Read an FDSN SEED format volume SYNOPSIS rdseed -{aclsSRtdoxzei} [-f filename] [v (n)] OPTIONS The following options may be selected: -a retrieve the abbreviation dictionaries. -c retrieve volume table of contents. -l list contents of each record in the volume. -s retrieve all station and channel header information. -S extract a "weed" compatible station information file. -R retrieve all response information in a "evalresp" compatible format. -t construct a list of all event start/stop times and starting record numbers. -q specify the output directory -Q specify data type (E=Everything, D=Data of undetermined state, R=Raw waveform data, Q=QC'd data) -d dump the data records -o data output format 1=SAC, 2=CSS, 3=AH, 4=mini seed, 5=seed, 6=sac ascii, 7=SEGY -x read the summary file -z check reversals. Argument is btw 1..3 -e extract event data (blockette 71) from seed volume. -i ignore network codes. -v specify the volume number [1-n] to process (default is 1). -f specify the input filename (default is /dev/nrst0). DESCRIPTION rdseed reads from the input tape (or other input file) in the format defined by the Federation of Digital Seismographic Networks (FDSN), popularly known as the Standard for Exchange of Earthquake Data (SEED). According to the command line function option specified by the user, rdseed will read the volume and recover the volume table of contents (-c option), the set of abbreviation dictionaries (-a option), or station and channel information and instrument response tables (-s option). The desired volume on tape (or in a file) can be selected with the (-v option). The first volume is "1" , the second "2" and so forth. (Note: this option is only used when a physical volume contains more than one logical volume. Two additional options allow access to detailed information concerning the actual contents of the volume (rather than reading files purporting to contain such information from the volume, for which one uses the -c option). The first of these options (-t) writes out a list of data start and stop times along with the starting records at which those data may be found. (For the purposes of this discussion, a record is defined as a set of station/channel/time continuous data records.) The other option (-l) is primarily a diagnostic tool; it writes a description of every record on the volume. In order to extract data from the SEED volume for analysis by other packages, the user must run rdseed in User Prompt Mode which is discussed below. As data is extracted from the SEED volume, rdseed looks at the orientation and sensitivity of each channel and determines if channel polarity is reversed. Refer to the description of blockettes 52 and 58 in the SEED manual for a description of reversed polarity. A negative sensitivity in blockette 58 is indicative of a reversed polarity. The user can request that reversed channels be corrected. This correction is a simple multiplication by -1.0 . The output response file information is NOT adjusted for channels which rdseed inverts. Output Header Corrections rdseed does correct the header information in the SAC, AH and CSS files as follows: SAC headers contain both scale factor and Dip/Azimuth information. If a Dip/Azimuth reversal has been corrected, rdseed will correct the Dip/Azimuth information in the SAC header. If a negative sensitivity is corrected, the header SCALE value is also made positive. If rdseed finds both types of reversals, NO corrections to the data or header are made. CSS headers are handled in the same way as SAC headers. The header information is found in CSS formatted relation files that are seperate from the data files. These files are named RDSEED.WFDISC, RDSEED.SITE and RDSEED.SITECHAN. The AH format presents a problem. There is no place for Dip/Azimuth information. Headers contain only a scale factor. Therefore when a Dip/Azimuth reversal occurs, there is no place in the header to indicate that occurrance. Therfore the following rules are followed. If the user has not requested dip/azimuth checking and one is detected, rdseed will invert the sign of the scale factor in the AH header. If the user has asked for inversion checking, the data will be inverted and NO change in the scale factor will occur. Negative sensitivity is handled the same way as in the SAC and CSS headers. Again, if rdseed finds both types of reversals, NO corrections will be made. User Prompt Mode When rdseed is run without any options, the user is prompted for all of the options as well as some additional options. Input Options Input Device (/dev/nrst0): the input device can be changed from the default of /dev/nrst0. Note that when a taoe is being accessed, it is best to use the norewind device. This allows rdseed to search for multiple volumes on tape accross tape file marks. Output Device (stdout): the output device can be changed from the default of stdout.\ Volume # [(1)-N]: volume number can be changed from the default value of 1. Options [acsSrRtde]: one of the options must be selected. All except "d" and "e" have the same meaning as the corresponding command line options. the "e" option will generate a "weed" compatible event file. If the "d", "s" or "S" option is selected, further selection can be made. Summary File (None): a rdseed summary file can be selected as input for rdseed. Used in conjunction with WEED to specify station time windows. Station List (ALL) : a list of selected stations separated by spaces or commas. Wildcard substitution of characters "*" , "?" and "." is performed. A station name can be that of an alias whose name is defined in a file whose filename is specified by the enviornment variable SEEDALIAS. See details below. Channel List (ALL) : a list of selected channels separated by spaces or commas. Wildcard substitution of characters "*" ,"?" and "." is performed. Network Code (ALL) : a list of selected networks separated by spaces or commas. Enter ?? to disable network processing. If the "d" option is selected, further selection can be made. Output Format [(1=SAC),2=AH,3=CSS, 4=miniseed, 5=seed, 6=SAC ascii, 7=SEGY]: select output format as SAC, AH, CSS 3.0 binary, mini seed, seed, SAC ascii or SEGY; default is SAC. Check Reversal [(0=No), 1=Dip.Azimuth, 2=Gain, 3=Both]: select signal reversal checking; default is No. Select Data Type [(E=Everything), D=Data of Undetermined State, R=Raw waveform Data, Q=QC'd data] : users must specify what type of data they wish. This can effect users that invoke rdseed from within a script, but will not effect those of you that invoke rdseed with command line arguments. Start Time(s) (FIRST) : a list of seismogram start times of the form YYYY.DDD.HH:MM:SS.FFFF or YYYY/MM/DD.HH:MM:SS.FFFF separated by spaces. YYYY may be YY i.e. "90" for "1990". Least significant parts may be omitted, in which case they become zero i.e. "90.270" is time 00:00:00.000 of the 270th day of 1990. End Time(s) (LAST) : a list of seismogram end times of the same form as start times. Each start time (except the last one) must have a corresponding end time. If the last start time does not have a corresponding end time, the end time is assumed to be the last time in the volume. Sample Buffer Length [2000000]: each seismogram is assembled in a sample buffer prior to output. The size of the buffer can be changed. This number is the number of samples. If the length is too small for the any of the requested seismograms an error message will inform the user that the waveform is being broken into pieces. The user may increase the size of the buffer to avoid this problem. Extract Responses [Y/(N)] : channel response extraction is selected via this prompt. Alternate Response Files and the Use of miniSEED Volumes The user can specify that station configuration and responses be taken from another SEED volume. This will allow for two possible scenarios to be accomplished. First, if station information is found to be in error, the user can use the headers from another SEED volume that is known to be correct. Second, if the SEED volume is a "data-only" volume (miniSEED), the user can use a "data-less" SEED volume and the "data-only" SEED volume to extract the desired waveforms. So you say, "how do I do this?". The environment variable ALT_RESPONSE_FILE should be defined with its value being the path name of the SEED volume (be it full or data-only SEED) from which responses should be taken. If miniSEED is being used, enter the miniSEED file name into the rdseed prompt as you would a normal seed volume. The Alias File An alias file can be defined which contains a list of station alias names. The first word in each line of the file is the alias. The following words are station names which will match the corresponding alias. The alias file name must be defined in the SEEDALIAS environment variable. For example, the file rdseed.alias contains the following: CHINA BJI XIAN SHNG All references to station CHINA will match station BJI, XIAN or SHNG. The source code is written in such a way that it will run, with recompilation, on both big-endian (e.g., Sun) and little-endian machines (e.g., VAX) under UNIX. This program has not yet been tested under VAX VMS. Time Tear Tolerance Normally, the tolerance for determining time tears is found in the station header information. Some stations may have clocks that wander excessively. This may cause time tears in the data. The drift tolerance can be adjusted by defining an environment variable called SEEDTOLERANCE. Its value is multipled by a drift tolerance that is contained in the SEED volume for each channel. Thus a value of 3.0 will increase the drift tolerance by a factor of three. Drift is defined in units of "seconds per sample" and is typically around .00005 sec/smp. rdseed Alert message file When rdseed determines that data reversal is necessary and the user specifies that rdseed should reverse the data, rdseed creates a file with the data reversal information inside. This information includes the file name where the reversal was applied. When you exit the program, a message is displayed reminding you to look at this file. This file is called rdseed.alert.log and is located in the startup directory. rdseed error logging All rdseed error messages are logged to a file, called rdseed.error.log with the date. This file is appended to throughout the day. Data Recovery There are two necessary steps to recovering seismograms from a SEED tape. The first step consists of finding out what is on the tape; one does this by using any of the command line options -c or -t, to list the station and channel names, starting times, and record numbers of the seismograms contained in the volume. Seismic data are recovered from SEED tapes in the second step. Using the station, channel and time information, use User Prompt Mode to select start and stop times for individual seismograms. Seismogram files are written to the current directory with names of the form yyyy.ddd.hh.mm.ss.ffff.SSSSS.CCC.Q.SAC for SAC Files yyyy.ddd.hh.mm.ss.ffff.SSSSS.CCC.Q.AH for AH Files yy.ddd.hh.mm.ss.ffff/SSSSS.CCC.Q.w for CSS Files mini.seed for mini seed yyyy.ddd.hh.mm.ss.ffff.SSSSS.CCC.Q.SAC_ASC for sac ascii yyyy.ddd.hh.mm.ss.ffff.SSSSS.CCC.Q.SEGY for SEGY where yyyy is the year, ddd is the Julian day, hh.mm.ss.ffff is the time of day of the start of the first record, SSSSS is the station name, and CCC is the component name for the particular seismogram being recovered. This seismogram file naming convention was chosen to provide unique names to output files without user intervention; however, the large number of files which can be generated to a single directory might cause problems for some operating systems. Notice that CSS uses a slightly different format that puts channel data in subdirectories. This is due to a limitation in the filename field in the CSS database. For CSS there are three additional files created, RDSEED.WFDISC, RDSEED.SITE and RDSEED.SITECHAN. These files are used by the CSS database system. Be aware that rdseed always appends onto the mini.seed file. You need to manually remove this file if you wish to start over. Recovering auxiliary data from an FDSN One may also retrieve the set of abbreviation dictionaries or the set of station information tables from an FDSN SEED volume. The former is accomplished with the command rdseed -af inputfile while the latter results from rdseed -sf inputfile Output from these commands should be redirected to files, as in examples 6 and 7. DIAGNOSTICS Various warnings and error messages are issued to the standard error device by the procedure. Typical response of the procedure to a warning condition is to write a message to the standard error device and then to continue execution. An error condition, on the other hand, will cause a message to be generated to the standard error device followed by immediate termination of the procedure. EXAMPLES 1. Reading the table of contents from a volume. rdseed -cf /dev/rmt8 > tape.contents & or rdseed Input Device (/dev/rst0) : /dev/rmt8 Output Device (stdout) : tape.contents Volume # [(1)-N] : Options [acsSrRtde] : c reads the table of contents from the tape on device /dev/rmt8 into a file called tape.contents; the job is run in the background (command line example). Output directed to "stderr", such as error messages, comes to the terminal. Table-of-contents entries have the format AFI LPZ 1988,228,00:00:00.68 1 147 where the columns represent station name, channel name, start time, location flag (here, a blank), subsequence number, and starting record number. 2. Determining event start/stop times on a volume. rdseed -tvf 2 image > image.times & or rdseed Input Device (/dev/rst0) : image Output Device (stdout) : image.times Volume # [(1)-N] : 2 Options [acsSrRtde] : t reads a disk file called "image" and creates a table containing starting record numbers, station and channel names, start and stop times of events, nominal sample rate, calculated sample rate and numbers of samples for that file. Output is written to the file "image.times". The lines of the output table have the format 119 ANMO LPZ 1988,230,00:00:00.6800 1988,230,18:35:04.6800 1.00 66904 where the columns represent station name, channel name, start time, end time, sample rate in samples per second, number of samples, and starting record number for these data. 3. Creating a detailed list of the contents of a volume. rdseed -lf /dev/rmt11 > tape.list & reads a tape on drive mt11 and writes a list of the contents of each record to a file called tape.list. The job is run in the background. 4. Reading all data from a tape. rdseed Input Device (/dev/rst0): /dev/rmt8 Output Device (stdout): tape.extraction.list Volume # [(1)-N]: Options [acsSrRtde]: d Station List (ALL): Channel List (ALL): Output format [(1-SAC),2-AH...]: Select Data Type [(E=Everything), D=Data of Undetermined State, R=Raw waveform Data, Q=QC'd data] : Start Time(s) (FIRST) : End Time(s) (LAST): Sample Buffer Length [2000000]: Extract Responses [Y/(N)]: reads all seismograms from the tape on device /dev/rmt8 into the current directory, writes "stdout" output to a file. 5. Reading the abbreviation dictionaries. rdseed -af tape.image > tape.abbreviation.dictionaries or rdseed Input Device (/dev/rst0): tape.image Output Device (stdout): tape.abbreviation.dictionaries Volume # [(1)-N]: 1 Options [acsSrRtde]: a extracts the abbreviation dictionaries from a tape image stored on disk, sends the result to a file, and runs in the foreground. 6. Reading station information. rdseed -sf /dev/rmt8 > tape.station.information & or rdseed Input Device (/dev/rst0): /dev/rmt8 Output Device (stdout):tape.station.information Volume # [(1)-N]: 1 Options [acsSrRtde]: s recovers station and channel location and response information from the tape on device /dev/rmt8, writes the information to a file, and in the command line form runs in the background. 7. Reading specific station/channel/time information. rdseed Input Device (/dev/rst0) : /dev/rmt8 Output Device (stdout) : tape.station.information Volume # [(1)-N] : 2 Options [acsSrRtde] : d Summary File (None) : Station List (ALL) : BJI YKW1 Channel List (ALL) : *Z Network List (ALL) : Output format [(1-SAC),2-AH..]: Select Data Type [(E=Everything), D=Data of Undetermined State, R=Raw waveform Data, Q=QC'd data] : Start Time(s) (FIRST) : 1990,270,20:30 End Time(s) (LAST) : 1991/2/1 Sample Buffer Length [2000000]: 3000000 Extract Responses [Y/(N)] : Y reads all seismograms from stations BJI and YKW1, all Z channels, from year 1900, julian day 270, hour 20, minute 30 to Febuaury 1, 1991. The buffer size was increased to 3 million samples and the channel response information will be output. FILES yyyy,ddd,hh.mm.ss.ffff.SSSSS.CCC.[Q,R or D]- seismogram files as described above mini.seed - file of mini seed data rdseed.err_log.MM.DD.YY - a log of all error messages created during the day's usage. rdseed.alert_log - file created when rdseed reverses the data. SEE ALSO Halbert, S. E., R. Buland, and C. R. Hutt (1988). Standard for the Exchange of Earthquake Data (SEED), Version V2.0, February 25, 1988. United States Geological Survey, Albuquerque Seismological Laboratory, Building 10002, Kirtland Air Force Base East, Albuquerque, New Mexico 87115. 82 pp. O'Neill, D. (1987). IRIS Interim Data Distribution Format (SAC ASCII), Version 1.0 (12 November 1987). Incorporated Research Institutions for Seismology, 1616 North Fort Myer Drive, Suite 1440, Arlington, Virginia 22209. 11 pp. Tull, J. (1987). SAC User's Manual, Version 10.2, October 7, 1987. Lawrence Livermore National Laboratory, L-205, Livermore, California 94550. ??? pp. SEED Reference Manual, WEED CHANGES & BUGS version 3.44 - added support for mini seed output - added "r" option to output response information - changed "Printers/*.c" to eliminate null pointer crashes - merged ddl support fixed small bugs in parse_nchar.c & parse_double.c version 3.45 - fixed bug in process_data.c, where under certain circumstances a null pointer resulted in program crash. - fixed minor bug, if they specified options:ct, then the times data output complained. - Also added a printout header to the time series output. - modified and fixed some bugs in the free() routines. Put in checks to make sure we weren't deallocating a NULL pointer, etc. - added code to clear allocated memory to zeros. - Added code to use multiple alt_response_file - Added new way of calculating the A0 for AH output. - If the output is SAC, added response file output. - Fixed bug wherein program complained if outputing a mini-seed and it encountered a blockette 1000 already. - Fixed a bug wherein the program didn't put the correct time out to mini-seed files. - Fixed a steim compression bug. Program wasn't reading the start of data correctly. - Fixed a off-by-one bug in parse_61 - number_of_numerators version 3.46 - fixed mini_flag not being reinitialized after every loop thru rdseed. Minor bug. - fixed small problem in process_data where the program returns if the logical record's time was outside any selected time. Just let it do its thing. - added seed subset generation. **** - expanded the decode string too hold complete name (from 5) - added frequency multiplication to calib factor in output_css.c version 4.0 - Finished seed subset generation. Generates the same seed version as the original, if greater than 2.0 - Added more support for network code. Touched a lot of modules. Added new command line for network code. This will allow for duplicate station names. - Added support for blocks 43..48 in output_ah. - Changed process_data so it will look for and use the blockette 1000 information, if there. - Added individual station/channel/network selection when the user selects the 's' option. - Untangled some minor spagetti which was causing some missed waveforms. - Changed AH output so it doesn't do inapproriate calculations if channels are AT, SHO, LOG - Added network code to output file name of RESP files. - updated the man page - Made changes to the way rdseed reads in the header information. Previously, rdseed would read in all stations/channel regardless of a specifications made by the user. It would then eliminate station/ channels at output time. Now it only reads in the requested station/ channels. Should save memory, especially on dataless seed volumes being linked to miniseed stuff. version 4.1 - changed all references to patchlevel.h in include statements to a new file (called it version.h). In addition to the PATCHLEVEL, also defines the VERSION for use in print statements files effected by this procedure: Main/output_resp.c Main/rdseed.c Printers/pagetop.c Decoders/process_time_span.c - changed the output format of the response file information in the following files: Main/output_resp.c Printers/print_53.c Printers/print_54.c Printers/print_55.c Printers/print_56.c Printers/print_57.c Printers/print_58.c Printers/print_60.c Printers/print_61.c Printers/print_43.c Printers/print_44.c Printers/print_45.c Printers/print_46.c Printers/print_47.c Printers/print_48.c Printers/print_41.c this includes changes that add the comment string (through the creation of the Include/resp_defs.h include file) and the blockette/field number addresses for parsing. - Also added the Transfer Function Type to the output in Printers/print_53.c (so that more than just the string generated by rdseed is given as the Transfer Function Type) and aligned the dictionary reference integers in [53] and [54] so that they look better. - finally, the output for the print_60, find_41 and find_43 through find_48 files were changed considerably. Breaking comments were added to each type of filter, the blockette info from blockette 60 was expanded, and blockette 60 had a breaking comment added. A new command line option was also added to rdseed (-R) to print this new format. For the time being, both RESP file formats will be supported. Eventually, only this new format will survive. the files that were changed to support this "dual" RESP format are: Main/output_resp.c Main/rdseed.c Printers/print_53.c Printers/print_54.c Printers/print_55.c Printers/print_56.c Printers/print_57.c Printers/print_58.c Printers/print_60.c Printers/print_61.c Printers/print_43.c Printers/print_44.c Printers/print_45.c Printers/print_46.c Printers/print_47.c Printers/print_48.c Printers/print_41.c - the changes should be easy to remove, since they involved defining a new flag (outresp_old_flag) to output the old format (defined in rdseed.h and rdseed.c), adding an option to the command line interpretation section of rdseed.c, and duplicating most of the code in the rest of the files to add an equivalent function where the dual functions can be identified easily by the presence of the string 'old' in the function name that is called to support the old format (e.g. old_print_type43 output_old_resp, and print_old_resp). The R option was also added to the interactive part of the rdseed program (and made the default if the user asks to extract responses there). - Added support for "weed" - Added the 'S' extract station info option - Added the 'e' extract event info option - Found a bug in the output_seed stuff, where the program "forgot" to output the block 74s. - Added a routine to output the LOG records, if there. - Added summary file processing to rdseed. - Added new input line to the interactive mode. Input summary file >>>> - updated man page version 4.11 - added ability to ignore network codes if there. Farm products don't all have network codes. - fixed bug in free_43.c and free_44.c version 4.11a - If new style resp file output, no Network Code. Needed a line added. fixed RESP file output so it indents properly - an issue for evalresp. added the ability to skip channels and network from interactive cmdline. version 4.12 - An error reading the tapes was fixed. - rdseed.c - A0 * gains was added to SAC POLES & ZEROS file output for SAC data - Some internal date format changes for use with WEED - summary.c - A minor bug with blockette 1000 and steim 2 - output_mini.c - Minor bug fix to parse_50.c - make sure network code is a null string instead of a null byte. - Added some code to clean up the logical record memory area, problem crops up if logical record size < 4096 read_logical_record.c - Added change so it processes "I" of family 50 - DDL - parse_key.c & parse_30.c - Also fixed a bug where it separated the timespan if they crossed a day boundary. - rdseed wasn't positioning itself properly when reading multiple tapes volumes. - AH output was changed, bug fix wherein it didn't get the right instrument abbrviation, also added a unit type to the comment field, also added hypocenter info in available. - output_mini.c had a lot of changes needed to fix orientation code missing in the geoscope volumes. Also put check in to make sure the number of blockettes is accurate. - Fixed a bug in time_span_out.c where the sample count was overflowing the sizeof(int)! - Also, if they specified multiple time slices, it wasn't processing them all. - output_sac.c - added conversion of CONSTANT value to what we do with AH output data, convert from velocity or accel to displacement. - Also changed the SAC poles and zeros file to reflect the 3 letter channel name in the case of geoscope. - minor problem with decode_32bit.c, needed unsigned changed to a signed int. - fixed a problem with the way that the 'station' information was output. The 'new' RESP file format needed to be consistent with the station information so that the blockette and field number prefixes could be removed with a simple 'cut' command. The files effected by this change were: rdseed/Printers/find_30.c rdseed/Printers/find_33.c rdseed/Printers/pagetop.c rdseed/Printers/print_10.c rdseed/Printers/print_11.c rdseed/Printers/print_12.c rdseed/Printers/print_30.c rdseed/Printers/print_31.c rdseed/Printers/print_32.c rdseed/Printers/print_33.c rdseed/Printers/print_34.c rdseed/Printers/print_35.c rdseed/Printers/print_41.c rdseed/Printers/print_43.c rdseed/Printers/print_44.c rdseed/Printers/print_45.c rdseed/Printers/print_46.c rdseed/Printers/print_47.c rdseed/Printers/print_48.c rdseed/Printers/print_50.c rdseed/Printers/print_51.c rdseed/Printers/print_52.c rdseed/Printers/print_59.c rdseed/Printers/print_70.c rdseed/Printers/print_71.c rdseed/Printers/print_72.c rdseed/Printers/print_73.c rdseed/Printers/print_74.c rdseed/Printers/print_abrvd.c - the result of these changes is that all of the 'station' information will be preceded by a blockette and field number prefix, as was the case with the response information in the RESP files. This consistency should make it easier to parse the station information from this output, since the routines that added a prefix to the response output in versions 4.1, 4.11, and 4.11a were used in the 'station' information output (so the station information output had a mixture of blockette/field number prefixes for some of the information and no blockette/field number prefixes in other parts of the output). This fix may make this type of output useable with evalresp once more. Thomas J. McSweeney (tjm@iris.washington.edu), Feb 20, 1996 version 4.14 - changed 'print_type50' so that a network code is always printed. If it is a NULL pointer, the string "??" is printed, otherwise the network code is printed. - bug fix to find_41.c to fix problems with output of RESP files containing blockette [41] style FIR filters. Each was followed by a blank line that should have contained a '#' character prefix on it. Thomas J. McSweeney (tjm@iris.washington.edu), Apr 29, 1996 - Added support for differing logical record sizes within the data record. - Added support for event processing from weed. rdseed will place waveforms for each event as found in the summary file into seperate directories. This function is activated from the weed interface. - Alpha port: Fixed many problems associated with 64bit compilation. At the same time fixed many bugs which showed up with Alpha port (byte swapped data). - Added code to place event/station distance, both degrees and Km, azimuth and back azimuth into SAC headers. - Version support, looks to see the version of weed which is running it. - added sip and azimuth in AH output. - Opps, dip and azimuth needed switching in AH header output. - added dip and azimuth reversal in output_ah.c - added event lat/lon information in AH headers. - Changed some longs to ints in steim.c (64bit port) - Added support for data blockette swapping if needed. Currently only blockette 100 is located and swapped. - Small bug fixed in output_css.c where if no description entered for instrument type, program would crash. - Added support for negative BIAS in summary file processing. - Took out call to timelocal() and converted to mktime() - Bug fix in summary file processing where it goofed about what data to grab. - Changed the output format for event files into a more readable format, as per Ken suggestion. The precision of the floats were changed. - changed decode_geoscope.c so i is insensitive to case when scanning for data type code. - added scan_for_blk_1000() in process_data.c so it would get the word order from this if available. - Changed process_data.c to do the byte swapping upfront, instead of peppered throughout the code. - The LOG record output wasn't being done right for "Seed" output. WOuld miss the log records. - Small bug fix for seed output, blockette 74s seek locations weren't being computed properly on subsequent interations. - Took out some longs and other problem spots for Alpha port. - This version was never releases, went to 4.15 directly from 4.12 - Added SAC ascii output version 4.15 - Added SEEDTOLERANCE - or rather activated it. - Bug in output_polesNzeros() where if LOG channel it crashed. - Changed the way rdseed reads stn/chn information, more flexible, not dependent on order of info in seed volume. - Added ability to process data records of varying sizes. - needed to look at data record size from the blk1000 - added command line processing for summary file. - bug in output_event_info, date conversion on leap years - bug in steim.c when day is 366 - changed some things so it compiles and runs on linux. - Conflict with rdseed.h's abs and stdlib.h's. Made into all CAPS. - Small bug with using one letter network code ala geoscope - Activated blk 11 and 12 usage. - Added SEGY output. - Bug fix with network codes of one letter, ala geoscope - implemented blockette 11 and 12 usage, if disk file - Added alert message processing, if reversals are initiated, rdseed will write message to disk and alert the user about this file. - Small bug caught in scanning for blockette 1000 - Added to "WEED" station file, station effective dates. - Small bug in date conversion routine when leap year. - removed some unnecessary routines from the Snoop directory - Small bug in output_seed() where if network code is length of one, the resulting blockettes needed padding to 2. - In output_seed(), needed to get the network code from the data record. - summary.c - small bug in how the channel names were being interfaced to the old style holding array (from keyboard). - ah_resp.c - small bug in the complex math routines. - steim.c - bug in time computation when leap year. - Added event info (if there) to output seed volume - Added stdlib.h for atof() - solaris compatability revision 5 - took out getwd() for getcwd() - also bug fix, fread didn't work on tape drives rev 6 - Bug in naming of output files for geoscope data - bug in getcwd() in log_errors() resulted in I/O error - result too large - Bug in the 't' option - lrecord_ptr off by one rev 7 - added event hypo info for SAC headers - put some sanity checking for fsdh->bofb field - one last bug fix for finding chn recs when stn recs don't match based one effective time. Default to what is there - added blockette 51, 59 output 'C' option - new command line options for 'C' - bug fix in convert date of event if leap year in output_event_info.c rev 8 - changed how the summary file is processed. - took out the old_resp flag option - added a perror() to output_segy.c - added some I/O error messages to output_sac.c - same with output_resp.c output_ah.c and output_css.c - output_css.c : changed elevation from meters to km also fix a calib of zero bug (if no stage 0 (58)) rev 9 - bug fix for really small (<32k) seed volumes. - bug fixes for summary file processing. - small apparently harmless overflows fixed (process_data.c) - some needed byteswapping for updated version version 4.16 - output of sub-seed from Geoscope files had 0 in network code - also, mod made for reading small <32k seed volumes - took out innocous warning mess on 'c' option, could be dataless - added station/channel/net prompts to option 'C', the station/channel comments option. Also user can specify time windows for effective time processing. - bug in output_mini() where it didn't properly write records with an existing blk1000 and the rec length !- 4096 - bug in output_seed, changed timeadd() to timeadd_double(). Also in output of blk 55/56, missing % in sprintf() - some errors which showed up in linux compilations. - added in location code processing 4.16.1 - added toms fix to the IIR instrument error message, poles > 0 in parse_53.c 4.16.2 - small fix to bug that seems to have come back in extract_time_span() where if the data record size was < logrec size, it didn't properly look at the sub index value as found in the block 74. Off by one - also add in if num_itms < 0 do perror("") in extract_this_time_span(). 4.16.3 - blk 1001 virtual support, program complained if running under linux - location code processing added to the 't' option 4.16.8 - added in support for block 42/62. - printing blocks 51/59 needed a flag to print the station information. - added support for CSS's affiliate, network and hypocenter table. - bug fix in output_mini.c, pointer to new block needed recalculating. - sac ascii output needed the numbers reformatted from %15.7f to %15.7g, to conform with the SAC manual. Maintains a 80 column output with large numbers - output_seed.c - changed fopen("a+") to fopen("a"), caused problems with linux, but should be this way anyway. Also "w+" to "w". - Polynomial response was added in. - get_date() returned pointer to local variable. - bug in rdseed.c - process_stn_lrecs(), buffer needed memset() to spaces in case read failed from EOF. - summary.c, many changes associated with location codes. Also added file version checking. version 4.17 - new summary file processing - support for opaque data type - added capability for processing multi 53 poles_zeros blks when calculating A0 - took out erroneous message about found a pole > 0 - added support for 16 bit ints (H2O data) version 4.18 - Doug Neuhauser's changes to allow 512 byte data records and to allow for very low sample rate. - fixed a crash bug when encountering an unknown compression code. - SAC poles and zeros file needed location code in file name. version 4.18.1 - decode_16_bit.c - needed to take out debug output file Address bug reports to Chris Laughbon at IRIS DMC, 206-547-0393, or send ARPAnet mail to chris@iris.washington.edu. Please DO NOT "fix bugs" locally without telling the author about them. Please DO NOT redistribute this program. Address requests for the program to IRIS at the numbers given above. version 4.19 - added support for output directory specification (command line only) - added support for data quality designations version 4.19.1 We had to go back using older versions of Steim Decompression software. The newer versions that we used do not work correctly on some data that are byte swapped and written on little endian machines. The entire issue of Steim compressed data produced on little endian machines is currently being clarified. A new release of rdseed will be made after all issues are clarified. AUTHOR Dennis O'Neill; Allen Nance, IRIS [return to top] version 09/20/2001 IRIS | DMS | GSN | PASSCAL | GET DATA IRIS Data Management Center 1408 NE 45 St. ,Suite 201, Seattle, Wa. 98105 Phone: (206)547-0393 FAX: (206)547-1093 webmaster@iris.washington.edu