NAME
orbwfproc_wfspec - single and multiple channel spectra computations
SYNOPSIS
As specified in
orbwfproc(1) parameter file:
wf_tasks &Tbl{
...
<task_name> wfspec <parameters> <input> <outputs>
...
}
DESCRIPTION
wfspec is a task class used by
orbwfproc(1) to compute spectra of waveform data.
wfspec task instances read multi-channel waveform data gathers, of data type
wfgather
as produced by
wfgather task instances, computes spectra
and writes output
wfspec data type packets into the output fifo.
INPUT
Each
wfspec task instance reads input data objects from an
orbwfproc(1) FIFO queue.
Only FIFO queue data of type
wfgather is used, such as produced by
wfgather tasks (see
orbwfproc_wfgather(3o)).
OUTPUT
Each
wfspec task instance creates output data objects that are pushed to one or more
orbwfproc(1) FIFO queues.
The output data objects are all of type
wfspec and contain time-siced spectra and frequency-sliced wvaeforms.
OPTIONS FROM ORBWFPROC COMMAND LINE
None.
OPTIONS FROM DBWFPROC COMMAND LINE
None.
PARAMETER FILE ENTRY
An example of a
wfspec task parameter file entry within the
orbwfproc(1) parameter file is:
# This is the list of processing tasks to be run
wf_tasks &Tbl{
#task_name class_name parameters input output
...
spec wfspec spec_params wfgather wfspec # compute waveform spectra
...
}
spec_params &Arr{ # parameters for spec task
accept &Tbl{ # accept SEED regular expressions
BR_Q113_HH.
}
reject &Tbl{ # reject SEED regular expressions
}
translations &Tbl{ # seed code translations table - converts HH. channels to HN.
.._.*_HHZ ONETSTA_HNZ
.._.*_HHN ONETSTA_HNN
.._.*_HHE ONETSTA_HNE
}
verbose 0 # verbose logging level
type smrsp # spectra type
staproc_name BR_Q113_SP1 # station-process code
output_wfs yes # should waveform frequency slices be output?
output_specs yes # should parameter file time slice spectra be output?
tpad 300.0 # A time pad increment for filter transients
decimation_factor 200 # A decimation factor for output waveforms
proc_pre sm1 # A process code prefix
parameters &Tbl{ # spectra processing parameters - this example is for type smrsp
# freq damping
-0.010 0.05
-0.015
-0.020
...
-90.0
-100.0
}
process_code_peak_accel pa # Process code for peak acceleration
process_code_peak_vel pv # Process code for peak velocity
}
...
The wfspec task parameters are as follows.
-
accept
This is a table that is used to determine which channels are used for the spectra computations.
Each of the table entries is a regular expression that is matched against all of the SEED net_sta_chan[_loc]
channel identifiers from the input data packets. Only those that match one of the expressions are processed.
This parameter is optional and if not specified, all channels are processed.
-
reject
This is a table that is used to determine which channels are not used for the spectra computations.
Each of the table entries is a regular expression that is matched against all of the SEED net_sta_chan[_loc]
channel identifiers from the input data packets. Those that match one of the expressions are excluded from processing.
This parameter is optional and if not specified, no channels are rejected.
-
translations
This is a
morph table of SEED net_sta_chan[_loc] expressions that specifies which input SEED channels
to use for spectra computations and a mapping that translates the input SEED net_sta_chan[_loc]
codes to output SEED net_sta_chan[_loc] codes. See the morph(3) man page for a
description of morph table specifications. The input string is composed from
the input SEED net_sta_chan[_loc]. If an expression is found to match the input
string, the morph utility generates an output string according to the
morph substitution rules. The output strings should be specified in net_sta_chan
or net_sta_chan_loc form. The special string ONETSTA can be used in the output
string to mean substitution with the input net_sta code. Similarly, the special
string OCHANLOC can be used in the output string to mean substitution with the
chan or chan_loc code determined from the input SEED packets and the special
string OCHAN can be used in the output string to mean substitution with just the
chan code determined from the input SEED packets.
If an input net_sta_chan[_loc]
string does not match any of the morph table entries, then that channel is not
processed.
This parameter is optional and if not specified, channel SEED codes are not translated.
-
verbose
This controls verbose logging. It defaults to 0 if not specified.
The following parameters are dependent on the type of spectra being computed.
-
type
This is a string specification that determines how the spectra are computed. Currently
the only allowed type is smrsp. smrsp specta are strong motion response spectra
and are computed for a set of frequencies and damping ratios using a damped harmonic oscillator
as the filter.
For type smrsp, the following parameters are defined.
-
staproc_name
This is a unique name used to identify these particular spectra. This string is used as the src part
of the ORB srcname for the spectra parameter file ORB packets.
-
output_wf
This is a boolean that determines if waveform frequency-slices should be output.
-
output_specs
This is a boolean that determines if spectra paraeter file time-slices should be output.
-
tpad
This is a time duration in seconds used to buffer waveform filter transients.
-
decimation_factor
This is an integer decimation factor used to decimate output frequency-slice waveforms. Note
that output frequency slice waveforms are composed of maximum amplitude values over a time window
equal to the input wfgather data object time durations. Therefore these waveforms do not need to
be sampled at high sample rates. This provides an efficient way to down sample the spectra amplitide waveform
functions to a more reasonable sample rate.
-
proc_pre
This is a process code prefix used to name individual feqeuency slice waveforms in a manner similar to the
multiple filter option in orbwfproc_wffilter(3o). The actual process code is composed by appending
the filter index to the prefix for each waveform frequency slice.
-
parameters
This is a table with each line representing a single frequency or the strong motion response spectra.
The first field is the frequency in Hz, if the frequency value is >= 0.0, or if the field is negative, it
is taken as the negative of the period in seconds and the frequency is computed as 1 over the absolute value
of the field. The second field is the dampling ratio and need only be specified in the first entry in the
table unles it changes for different frequencies.
-
process_code_peak_accel
This is a process code for identifying peak acceleration. If this is not specified, then peak acceleration will not be computed.
-
process_code_peak_vel
This is a process code for identifying peak velocity. If this is not specified, then peak velocity will not be computed.
SEE ALSO
orbwfproc(1)
orbwfproc_wffilter(3o)
AUTHOR
Danny Harvey
Boulder Real Time Technologies, Inc.