How to prepare a pole and zero file for ISOLA

advertisement
How to prepare a pole and zero file (pzfile) for ISOLA.
Preparing a proper pz-file needs some training. That is why it may often cause some
problems to the beginners. To facilitate the training, we give here a simple
explanation (without formulas) and an example.
Instrumental correction in ISOLA code includes two steps. Symbol [] denotes units.
Step 1: Record in [counts] is multiplied by a conversion constant C [(m/s)/counts],
thus we get record in (m/s).
Step 2: Complex spectrum of record is divided by complex transfer function and back
transformed into time domain. The transfer function is computed using poles, zeros
and a constant, usually denoted A0. Modulus of the transfer function has a plateau,
the hight of which must equal 1. This is achieved just by A0, thus A0 is called
normalization constant.
ISOLA needs poles, zeros and A0 expressed in rad/sec. Some manuals (e.g. Guralp)
give them in Hz, instead. To get poles and zeros in [rad/sec] we multiply their values
in [Hz] by 2pi. To get A0 [rad/sec] we multiply A0 [Hz] by (2 pi)**(NP-NN)
where NP and NZ is the number of the (complex) poles and zeros.
ISOLA needs the so-called velocity, broad-band records. It means records of the
instruments whose amplitude response (modulus of transfer function) to input velocity
is flat in a broad frequency range.
When user has no velocity recorder, but an accelerograph instead, he has to apply an
appropriate conversion constant C to get from counts to m/sec^2, and then there are
two options what to do. (i) Apply instrumental correction using poles, zeros and A0 of
the accelerograph with one modification – one complex zero must be added. This will
be equivalent to integration of the acceleration record. Or, (ii) integrate the
accelerograph record prior usage in ISOLA by his/her preferable software. If method
(ii) is used, the instrumental correction must be by-passed. This can be achieved by
formally prescribing A0=1 and just one pole and one zero, both with Re=1, Im=0.
Users working with data in SEED format get two files containing the intrumental
information: the so-called RESP files, and the SAC-pz files (for each component
separately, everything in rad/sec). The files may obtain the ‘history’ of the instrument,
so the data corresponding to the appropriate recording period (say, from 2000 to
2002) must be selected. Use of RESP is complicated also by the fact that poles and
zeros are not necessarily in one place (for example, this is the case of Lennartz/20sec
data of the HL network, where user must combine values from different ‘stages’).
Advantage of RESP files is that they explicitly provide the A0 value. The conversion
constant C can be obtained from RESP files using the so-called sensitivity, available
at the end of the files, in the B053F07 numerical field: we compute C [(m/s)/counts] =
1 / sensitivity. Advantage of the SAC-pz files is simplicity, but one must very
cautious with the zeros; the SAC-pz files represent response for input displacement,
so user of ISOLA must ignore one zero (e.g., if the SAC-pz file gives three zeros,
ISOLA must have prescribed two zeros). SAC-files do not explicitly give A0 and C.
Instead, they provide the value called CONSTANT which is A0 / C. In case like that,
when ISOLA user does not know the values of A0 and C separately, he can formally
prescribe in his pz-file A0=CONSTANT and C=1. (In that case, however, his plots
of the modulus of the transfer function will formally have their plateau equal
CONSTANT, not 1.)
Users working for example with Guralp manuals will proceed in a slightly different
manner. First of all (as already mentioned above), they will have to pass poles, zeros
and A0 expressed in Hz to the ISOLA units of rad/sec. As for C, the user will have to
know two constants. One of them is sensitivity of the seismometer (e.g. 2*3000
V/(m/s)). Note a different usage of the same word here, compared to the RESP seed
files ! One has also to be cautious whether factor 2 is to be used, or ignored (i.e. to
take 6000 or 3000). This depends on the type of the connection between the
seismometer and the digitizer. Guralp provided the following guide: They have two
types of digitizers: MK2 ... factor 2 is NOT to be used, MK3 ... factor 2 is to be used.
Most often they used single-ended connection [the 3T sensor with digitizer MK2
mounted on its top] and differential connection [digitizers MK3 separately from 3T].
But this is not necessarily the case. Guralp therefore recommended this: If the serial
number of the digitizer begins with letter D (e.g. in the sensor T3123/D103,) you have
a MK2 digitizer, while the MK3 digitizers have serial numbers beginning with A, B
or C (e.g. T3434/AB91). This issue needs a consultation with a technician or the
provider. The other important constant is related to the digitizer, i.e. the constant to
convert Volts to counts. If, for example, we know that 1 count=10**(-6) Volt, and,
from above, we have 1 m/sec=3000 Volt, we get 1 count = 300 * 10**(-12) m/sec. In
other words, for the 4th row of the ISOLA pz-file we got then C= 300 * 10**(-12)
[(m/sec)/count]
Example
We present the above using the example of a Trillium seismometer and a Trident
(Nanometrics) digitizer. From the manuals we know the following: The Trident
digitizer is set at 1 count per microvolt. The Trillium manual gives:
Thus we have the following: A0 = 133310. Using the Trillium sensitivity (1500
V/m/sec) and digitizer’s sensitivity (1cont/microV) we get the value 6.66667e-10 as
m/sec per 1 count. Finally we put the above values in a text file with the following
format.
Example of Pole and Zero file for ISOLA (Trillium40 seismometer and Trident
digitizer).
A0
133310
count-->m/sec
6.6667e-10
zeroes
3
0.0 0.0
0.0 0.0
51.5 0.0
poles
5
-272
218
-272
-218
56.5
0
-0.1111 0.1111
-0.1111 -0.1111
Before proceeding with instrument correction we can use option Plot Response (from
Raw data Preparation GUI). At this plot we should always check if the flat part of the
amplitude response (the so-called ‘plateau’) is equal to 1. That means that our A0
value is correct.
Frequency Response for Trillium-40 seismometer (amplitude-top, phase-bottom).
Using accelerograph records in ISOLA
1) Since ISOLA always needs the instrument response for input velocity, you should
use poles and zeros for input acceleration and add one more complex zero (0.,0.). This
is a must when your accelerograph is of an old style and its response is not flat down
to zero frequency.
2) If your accelerograph has its response flat down to zero frequency (as common for
most modern instruments, e.g. Guralp CMG-5T), and because most ISOLA
applications are for frequencies below the corner frequency of accelerograph (e.g. 50
Hz), you even do not need poles and zeros of the accelerograph. You can simply use
one pole (1.,0.) and one zero (1.,0.), which formally cancel each other in order to
simulate constant acceleration response, and simply add one more zero (0.,0.) as
explained above. This is demonstrated below.
3) If your record is in counts, you need conversion factor C to pass from counts to
m/s^2: units of C are (m/s^2)/count; it should appear on line 4 of the pzfile. If your
record is not in counts, but directly in ground motion units, you should only
distinguish whether it is in m/s^2, or cm/s^2, etc. The following example is for record
in cm/s^2. Line 4 in this case (1.e-2) then makes conversion from cm/s^2 to m/s^2 as
needed in ISOLA.
A0
1
count-->m/sec
1.000000e-002
zeroes
2
0.000000e+000
1.000000e+000
poles
1
1.000000e+000
0.000000e+000
0.000000e+000
0.000000e+000
How to create pzfile in the Create Pole Zero tool of the ISOLA main window.
The window is self-explanatory, but it needs a few comments. In particular, the tool
has two boxes to enter the two ‘sensitivity’ parameters:
Digitizer Sensitivity ... D [count/Volt]
Seismometer Sensitivity ... S [V/(m/s)]
Code uses the product (D.S) [count/(m/s)]
If user does not know D and S, but only the value of the product (D.S) [count/(m/s)],
he formally puts the value of D.S into the D-box and the value 1 into the S-box, or,
vice versa (D.S into S and 1 into D).
In both cases the created pzfile will have the value C=1./(D.S) [(m/s)/count] on its 4th
line, as always needed in ISOLA.
When using RESP files form SEED, it provides explicitly A0 and poles and zeros in
rad/s. The conversion constant C [4th line of pzfile] can be obtained from RESP files
using the so-called sensitivity [counts/(m/s)], available at the end of the files, in the
B053F07 numerical field: we compute C [(m/s)/counts] = 1 / sensitivity. In other
words, similarly to the above case, using the pzfiles tool of ISOLA, user enters
directly the value of sensitivity form B053F07, either into box D or S, filling the other
box with value 1.
The SAC-pz files (also obtained from SEED files) represent response for input
displacement; therefore ISOLA user must remove one zero (e.g., if the SAC-pz file
gives three zeros, ISOLA pzfile must contain only two zeros). The SAC-pz files do
not explicitly give A0 and C. Instead, they provide the value called CONSTANT
which is A0 / C. In case like that, when ISOLA user does not know the values of A0
and C separately, he can formally prescribe in his pz-file A0=CONSTANT and C=1,
i.e. user enters value 1 into box boxes D and S.
Download