Isolating the Receiver Response Langston's Source Equalization Procedure |
Each seismogram is a composite of source (rupture kinematics, etc.) and propagation effects (depth phases, etc). For receiver function studies, we must isolate the near-receiver structure from the source and distant structure effects. |
|
The availability of three-component observations allows us to use the redundant source information on the three components to "equalize" source and near-source structure effects and isolate the receiver structure effects on the waveforms. Langston (1979) developed the source equalization procedure remove the effects of near-source structure and source time functions. The procedure works quite well and enables the use of shallow earthquake waveforms in receiver structure studies. The earliest receiver function studies such as Phinney (1964) worked in the frequency domain using the ratio of amplitude spectra to estimate the gross characteristics of structure. Langston (1979) extended the method to include phase information by using a complex frequency-domain ratio and inverse transforming back into the time domain. For his deconvolution he used a water-level stabilization method and a low-pass Gaussian filter to remove high-frequency noise not filtered by the water-level. |
|
Value of "a" |
Frequency (hz) |
Approximate |
---|---|---|
10 |
4.8 |
0.50 |
5 |
2.4 |
0.75 |
2.5 |
1.2 |
1.00 |
1.25 |
0.6 |
1.50 |
1.0 |
0.5 |
1.67 (5/3) |
0.625 |
0.3 |
2.10 |
0.5 |
0.24 |
2.36 |
0.4 |
0.2 |
2.64 |
0.2 |
0.1 |
3.73 |
An easier way to remember these values is to note that the values approximately follow the rule of thumb: the filter gain is 0.1 at a frequency approximately equal to a/2 . In the time domain, the width of the Gaussian pulse is about 5/[3*sqrt(a)] (this is the full-width at half the maximum).
To see the effects of the water-level parameter on the resolution of the source equalization procedure, we compute what is called the averaging function. The averaging function is calculated by deconvolving the vertical component of motion from itself, using the chosen water-level parameter. If the water-level fraction is zero, the result is a perfect Gaussian (from the low-pass filter included in the procedure. Large water-level values produce a broadened, and often distorted averaging function. For receiver function analyses, a water-level value of 1.0 produces a scaled version of the cross-correlation of the horizontal and vertical seismograms rather than the desired deconvolution.
This view of the averaging function is valid assuming that there is neither noise nor uncertainty in the underlying assumptions in the deconvolution. Now this is obviously not the case with observed seismograms, but the averaging function remains a good way to see the effects of the water-level on the waveform and can provide a guide to what details in the resulting receiver function that you should not interpret.
The program that is used to perform the source equalization is called pwaveqn. The "n" at the end identifies the normalization procedure where the averaging function is scaled to unit amplitude. pwaveqn works with either synthetic seismograms or real data, and will perform the rotation of observed north and east components into the radial and tangential directions. The program reads and writes SAC files and the IO parameters (filename, water level, Gaussian width factor, etc., see below) are entered interactively.
Here is a script that accepts command-line arguments and runs the pwaveqn:
#/bin/csh # # The files should be named: # basename[n,e,z] # and the event and station coordinates should # be in the header of the files. # if ($#argv == 0) then echo "Usage: equalize basename waterlevel gauss_width tshift" exit 1 endif # # Set up the input # set filename = $1 set outfile = $1 set waterlevel = $2 set gaussian = $3 set time_shift = $4 # # Run the Program # pwaveqn << echo $filename y n $outfile $waterlevel $gaussian $time_shift n echo # All Done
The output of the run would be SAC files named:
Filename |
Contains |
$file.eqr |
Radial Receiver Function |
$file.eqt |
Tangential Receiver Function |
$file.aftn |
Averaging Function |
The iterative deconvolution code can be misused if you don't use it correctly. Use lots of bumps and let the iterative process run for a substantial amount of time. The specific number of bumps depends on the length of the receiver function and the Gaussian width. If you see "flat" regions in your receiever functions, make sure that you haven't undersampled the response by using too few "bumps".
The misfit between the observed radial seismogram and the receiver function estimate convolved with the observed vertical component is a valuable parameter to identify problematic deconvolutions. I usually stick to signals better than 90% fit but when data are hard to come by, I'll use 80%. Much of those impressive fits come from the P-wave, which is interesting, but not all that interesting. This is my preference, not a rigid rule - you should understand and analyze your own data to the point where you can make your own decision.
The iterative deconvolution scaling is different than that used in the waterlevel and the inversion codes (this is because I use the iterative deconvolution for source analyses, and the amplitude scaling is more important). The difference is really a convention - the ampltiudes in the receiver functions are used in an absolute sense (as they should be). Back when instruments were narrow band, we found that normalizing helped with some aspects of our analyses. This is not the case anymore, but the convention remains. Thus if you compute a receiver function with the iterative codes, but want to use them in the inversion codes, then you must normalize them by the area of the averaging function.
Gaussian Width Factor |
Divide Iterdecon Rftn By |
0.5 |
0.29 |
1.0 |
0.57 |
1.5 |
0.85 |
2.5 |
1.42 |
3.0 |
1.70 |
5.0 |
2.83 |
If you are simply stacking the rftns or something, the iterdecon amplitudes should be fine without modification. The way to check the scaling is to deconvolve something from itself (that's the averaging function) - you should get a unit area pulse. The original convention that we used long ago was a unit amplitude.
Overview | Data Prep | Source Equalization | Creating a Model
Computing the Response | Inverting a Waveform | References
Back to Ammon's Home
Prepared: June 1997 - Charles J. Ammon, Penn State
Modified: June 2006 - Charles J. Ammon, Penn State