Seismometer Instrument Response Tutorial

Written by Jake Walter and Zhigang Peng

Return to Jake Walter's webpage

This website contains a brief tutorial on how to remove instrument response using Seismic Analysis Code (SAC).

1.1 Software requirements

NOTE that there are a number of resources that exist that comprehensively explain the transfer function and polezero representation of the instrument response. A few include typing help transfer within SAC and consulting (Appendix C in the SEED Manual).

1.2 Grabbing data from IRIS

  • Submit a breq_fast request at IRIS for the full SEED file or for this tutorial, use this (SEED file), which contains data observed at station QSPA's (South Pole, Antarctica) STS-2 during the passing of seismic waves from the 2010 Maule, Chile earthquake.
  • Use rdseed to dump the data.

     rdseed -d -R -p -f seedfilename

    • In the GT lab, you may need to use rdseed.linux
    • The -R flag dumps the RESP file, which provides the full response information by stage (ground motion, sensor, digitizer, and any digital filtering). The -p flag dumps a SAC polezero file, which is the transfer function between ground displacement (always from IRIS this way, but can vary in manufacturer literature) and digital counts. This is used by the SAC command transfer (see following section).
  • This command gives you a SAC polezero file, a RESP file, and the data contained in the SEED volume.

1.3 Data request exercise

    1. Let's get familiar with getting data from IRIS, by submitting a breq_fast request for a few hours of data for any station you like (a few hours of data should be available within minutes of submitting).
    2. Save the file to a working directory.

2.1 SAC polezero file

  • In practice, most seismologists use the polezero file, which is formatted like this for SAC:

    ZEROS 7
    -15.1500  0.0000
    -176.6000  0.0000
    -463.1000  -430.5000
    -463.1000  430.5000
    POLES 11
    -0.0370  -0.0370
    -0.0370  0.0370
    -15.6400  0.0000
    -97.3400  -400.7000
    -97.3400  400.7000
    -374.8000  0.0000
    -520.3000  0.0000
    -10530.0000  -10050.0000
    -10530.0000  10050.0000
    -13300.0000  0.0000
    -255.0970  0.0000
    CONSTANT 2.990630e+27

    • The constant is the normalization factor, A0, times the sensitivity, S.

2.2 Using the SAC transfer function

  • We issue a simple set of commands to read the data, remove the mean, taper the beginning and end of the SAC file, and then finally use the transfer command with the polezero file to deconvolve the instrument response to get ground velocity (m/s).

     r sacfilename
     transfer from polezero subtype PZfile to vel freqlimits 0.001 0.002 40 50

    • At this point, the resulting seismogram is the closest representation of ground velocity at the station. In practice, we usually save the file before any additional manipulation (filtering, etc).
    • If we want ground displacement, we use the input none, as shown below:

       transfer from polezero subtype PZfile to none freqlimits 0.001 0.002 40 50

  • Alternatively, we can use the RESP file that we extracted earlier from the SEED volume, using transfer again

     transfer from evalresp to vel freqlimits 0.001 0.002 40 50

    • Note that there is no need to designate the actual file, it looks for the station info in the SAC header of the file you first read in.

  • Finally, we can also remove the instrument response of our instrument and then apply the instrument response for another instrument. Below, we remove the instrument response and then apply the Wood-Anderson response, wa. A number of instrument responses already exist within SAC, consult the help files within SAC. The amplitude on a Wood-Anderson seismometer was used in the original calculation of local earthquake magnitude, due to its widespread use in Southern California.

     transfer from polezero subtype PZfile to wa 

2.3 SAC transfer exercise

    1. Extract the polezero file and SAC data from a SEED volume.
    2. Remove the instrument response and save the file.
    3. Remove the instrument response, apply a Wood-Anderson response, and save the file.
    4. Plot the uncorrected seismogram, the ground velocity, and the Wood-Anderson seismograms.
    BONUS: Find a station with an STS-1, merge multiple days, remove the response with no freqlimits, and then examine long periods. Do they correspond to tides?

3.1 Obtain polezero file from a RESP file

  • In order to convert a RESPfile into a polezero file, we can use the script, written by Dr. Lupei Zhu, located here /home/zpeng/bin/ Either copy the file to your personal bin or include the full path.

     /home/zpeng/bin/ RESPfile

3.2 Script to remove instrument response using polezero

  • We can also easily remove the instrument response in a script, similar to Section 2.2. See /data1/tremor/POLENET/20100227_M88/do_pole_zero_transfer.csh for an example of how to do this. Usage, where BK is the network, and PKD is the station:

     do_pole_zero_transfer.csh BK PKD