Configuration parameters explained

respGen is configured at /opt/osop/respgen/setup.py. The setup.ini file can be ignored. Any time sudo respgen is executed, /opt/osop/respgen/setup.py is read into the docker container.

Parameters common to more than one stage

UFILE

Default value: ‘DATA/10_LHZ.512.seed’

Description: The miniSEED-formatted waveform binary file from the sensor with the unknown response.

Stages: Used in view_cohe, stages 0 & 1

Required?: Yes

Comments: If UFILE and KFILE have different start and end times, they will be cut to match. If UFILE or KFILE have gaps, the program will exit.

KFILE

Default value: ‘DATA/00_LHZ.512.seed’

Description: The miniSEED-formatted waveform binary file from the sensor with the known response.

Stages: Used in view_cohe, stages 0 & 1

Required?: Yes

Comments: See UFILE (above)

URESP

Default value: ‘DATA/RESP.IU.KIP.10.LHZ’

Description: The RESP-formatted text file of the unknown sensor response

Stages: Used in stages 0 & 4

Required?: No

Comments: The RESP-formatted instrument response text file for the sensor with the unknown response. Used in Stage 0 and Stage 4 for visual comparison only.

KRESP

Default value: ‘DATA/RESP.PA.BRU2..EHZ’

Description: The RESP-formatted text file of the known sensor response

Stages: Used in stages 0 & 2

Required?: Yes

Comments: The RESP-formatted instrument response text file for the sensor with the known response. Used in Stage 0 for visual comparion and in Stage 2 to restore the response of the unknown instrument.

OVERLAP_FRACTION

Default value: 0.8

Description: Consequent time windows overlap by this amount of their length

Stages: Used in view_cohe and stage 1

Required?: Yes

NUM_OF_WINDOWS

Default value: 100

Description: Approximately this amount of time windows will be used (and the longest period/lowest frequency automatically calculated) according to the ‘100x’ rule.

Stages: Used in view_cohe and stage 1

Required?: Yes

Comments: This determines the window length and hence, the lowest frequency resolved. According to the Adam Ringler’s recommendations, if you want to resolve a frequency, you have to robustly average ~100 coefficients for that frequency which are independent, that is, coming from different time windows (100x rule). As we are interested most in the lower part of the response, the window length should be made as big as possible. The algorithm chooses the maximum power of 2 so that approximately NUM_OF_WINDOWS windows of that length, overlapped by OVERLAP_FRACTION, will fit into the waveform

LOWFRQ

Default value: 0.0001

Description: The lowest frequency of interest plotted

Stages: Used in stages 0 & 4

Required?: Yes

Comments: Choose this around a decade or so past what you suspect is the low corner frequency or the unknown sensor. Recommended values for: [B,H,L]HZ, Broad band: 0.0001; [E,S]HZ, Short period: 0.01.

stage 1(e)

NUM_OF_POINTS

Default value: 1500

Description: Number of ‘deputy’ frequencies which survive after exponential culling

Required?: Yes

Comments: If you set this to a value greater than the total number of frequencies participating in the FFT, it has no effect; in that case, all the original frequencies are used. The NUM_OF_POINTS is the number of frequencies participating in transfer function. The frequencies for the transfer function are generated using exponential range (i.e., the spacing between the consecutive frequencies increases exponentially).

stage 2

MEDIAN_LEN

Default value: 7

Description: Median filter length. Must be an odd value. Must be odd.

Required?: Yes

Comments: A value of 7 seems to nicely remove peaks and gaps of 1 or 2 points.

stage 3

COHE_LIMIT

Default value: 0.6 (stage1); 0.4 (stage1e)

Description: Coherence threshold. This culls out coeffs that come from noise. No points with coherence < COHE_LIMIT will participate in restoring PZ

Required?: Yes

Comments: Recommended values for stage1: 0.6; for stage1e: 0.4

DETERMINE_DEGREE

Default value: True

Description: Stage 3 can either select the best degree of the polynomials participating in the rational function, or the degrees can be given below. True is the default, while False is useful for development. If this is True, we must provide the maximum degree NMAX below which is used in the search. If this is False, we must provide the degrees of the polynomials MM and NN below. When True, stage 3 automatically finds the best configuration of MM and NN.

Required?: Yes

NMAX

Default value: 6

Description: If above is True, provide the maximum number of poles used for search

Required?: Only if DETERMINE_DEGREE is True

NN

Default value: 4

Description: Number of poles

Required?: Only if DETERMINE_DEGREE is False

MM

Default value: 3

Description: Number of zeros

Required?: Only if DETERMINE_DEGREE is False

Note: Stage 4 will add an additional zero is the units are in velocity. So, when NN = MM = X, the result might be X+1 zeros in total.

stage 4

NORMFREQ

Default value: 0.1

Units: Hertz (Hz)

Description: Frequency of sensitivity for RESP encoding. Used both in RESP field B053 as ‘Normalization frequency’ and in RESP field B058 as ‘Frequency of sensitivity’. Choose a frequency in the flat portion of the instrument response curve (e.g., 0.1 for LH channels and 5 for BH or HH channels).

Required?: Yes

Comments: Recommended values for: LHZ (0.1); BHZ (5); SHZ (5); EHZ (5); HHZ (5)

ZERO_LIMIT

Default value: 0.0015

Description: zeros which are closer than this to the origin are set to pure 0+0j

Required?: Yes