Input File Format

To run the programs you need the seismograms, Green's functions, and an ASCII parameter file. All the inversion codes use the same input file. Programs mtinv, l1mtinv, and srcgrd also can use the same Green's functions but mijinv is designed to used moment-tensor responses and thus requires a different set of Green's functions which have a different filename scheme.

The input file begins with a one-line header that lists the number of waveforms and the scalar seismic moment that was used to calculate the Green's functions. The rest of the file is composed of an additional line for each waveform. Each of those lines contains:

  1. An integer flag to identify the wave type (equals 1, 2, or 3, see below)
  2. The observation file name (a SAC file)
  3. The base-name for the Green's functions (the base name for a set of SAC files)
  4. The station azimuth (clockwise from north in degrees)
  5. A weight factor (floating point number)

An Example File

12 1e22
1 ccm.bhz   ccm_pz 336  -1.0
2 ccm.bhr   ccm_sr 336  -1.0
3 ccm.bht   ccm_st 336  -1.0
1 ceh.bhz   ceh_pz  53  -1.0
2 ceh.bhr   ceh_sr  53  -0.5
3 ceh.bht   ceh_st  53  -1.0
1 wci.bhz   wci_pz   6  -1.0
2 wci.bhr   wci_sr   6  -1.0
3 wci.bht   wci_st   6  -1.0
1 wmok.bhz  wmok_pz 293  -1.0
2 wmok.bhr  wmok_sr 293  -1.0
3 wmok.bht  wmok_st 293  -1.0

Wave Type

The integer flag (F) actually identifies the component. For the deviatoric source codes the number and name of the Green's functions vary between the Z, R, and T components.









Green's Function Naming Conventions

The Green's function suffixes are automatically set by the codes in the package if you use George Randall's reflectivity code to compute them. For the programs mtinv, l1mtinv, and srcgrd the suffix names are listed in the table below


Required files (the prefix "exmpl" is arbitrary)


exmpl_pz.vss, exmpl_pz.vds, exmpl_pz.clv


exmpl_sr.vss, exmpl_sr.vds, exmpl_sr.clv


exmpl_st.vss, exmpl_st.vds

where vss is a vertical strike-slip response, vds is a vertical dip-slip response, and clv is a 45° dip-slip response. The important part of the name is the three-letter suffix - the rest of the name is supplied in the input file, so is arbitrary.

For program mijinv, the name style is inherited from Randall's reflectivity program. An example file is r_0250_5.0_myz, where r indicates radial component, 0250 is the source-receiver distance used in the calculation, and 5.0 is the source depth. A file for each of the six moment-tensor elements is necessary (_mxx, _mxy, _mxz, _myy, _mzz, _mzz). You only need to include the base-name which equals "r_0250_5.0" for the example above, the program will append the suffixes and read in the six response files.

You can compute the responses at any station azimuth, the inversion program will rotate the responses to produce the required north, east, and down time histories.

Time Function

You should convolve an apropriate time function with you Green's functions before the inversion. You can work with velocity or displacement as long as the units of the observations and the Green's functions are the same. Also, the choice of component direction is arbitrary as long as you keep the observed and Green's functions in the same coordinate system.

Seismogram Weighting

Usually variable weighting is useful to insure that the best signals are most important in the inversion. Observations from different distances can have very different absolute amplitudes and the larger signals can dominate the inversion. At times this may be desirable, but this is not always the case, particularly in instances using teleseismic body-wave arrivals.

You can devise arbitrary weighting procedures using the weight value in the input file. To decrease the importance of a waveform, set its weight to a value less than one; to increase the importance of a signal, increase its weight above one.

Their are two classes of weights that vary with the sign (less than zero or greater than zero). If the weight value is greater than zero, each waveform is divided by a scalar equal to sum of the squared amplitudes in the trace; then the value of weight is applied. If the weight is less than zero, the absolute value of the weight is applied.

For regional waveforms, I prefer to use the natural weighting from propagation. Since I usually use a simple one-dimensional velocity structure to compute the Green's functions, the close stations are more consistent with the assumption and thus their naturally larger amplitude supplies them with more importance. For studies of teleseismic body waves scaling each waveform to a uniform distance produces more equal weighting and decreases the effect of complexities recorded at nodal stations.

Overview | Seismogram Prep | "Green's Functions" | Input File Format
Program Output | References | Back to Ammon's Home

Prepared by: Charles J. Ammon

Made on a Mac