Instructions for modeling S-wave velocity structure from the results
of velocity spectrum analysis in JRG
John Louie, 27 April 1999
Copyright © 1999 John N. Louie, all rights reserved.
Objective
This page describes a method for modeling S-wave velocity structure
from the results of velocity spectrum analysis in JRG, using a Sun
SPARC computer running the Solaris 2.5.1 or later operating system.
If you do not have a Sun available, your department probably has
methods already for modeling velocity spectra.
This tutorial describes the details of creating and checking a model structure
that fits an interpreted velocity spectrum.
However, it does not provide any background on surface-wave propagation,
velocity spectra, or the modeling technique; nor does it address all the
potential pitfalls that accompany this or any data-fitting procedure.
Detailed Instructions for Sun SPARC Solaris
Before you download or use my software, please be sure you have
sent me an email message with: your name and email address;
whether you are a student or faculty member, consultant or employee;
the name of your university or company, and department; and a sentence
or two describing what use you intend to make of these methods.
Send your message to
louie@seismo.unr.edu
- Interpret your final velocity spectrum plot or plots.
They may look like the plot at right, which is a vspect output
with Fmax=25 Hz and Vmin=50 m/s.
- The PostScript output of JRG was annotated in a graphical layout
program that can directly read the Generic PostScript plot files,
Adobe Illustrator 7. I added frequency lines every 2 Hz, and annotated
the non-linear velocity axis.
- If you are interpreting several vspect plot outputs, I suggest printing
them all out, and then making similar axis annotations at the same size.
Copy the annotations onto a clear overhead-projection sheet to overlay
on your vspect plots.
- On each plot identify the normal-mode dispersion trend, down to the
right and distinct from the aliasing and slantstack truncation artifact
trends, which are down to the left.
- Note the velocity and frequency ranges of the identifiable dispersion
trend.
- Pick several frequency-velocity pairs along the trend, and
write them into a text file. Name the file something like
``
data0001.dis''.
- If you are picking noise records rather than refraction records,
try to pick the lowest velocity edge of any trend. This stays closest to the
real velocities, and below the higher apparent velocities of waves traveling
not along but obliquely to the geophone array.
- Convert the frequency-velocity pairs in the text file to pairs
of period in seconds and velocity in kilometers per second. It will now
look like this:
0.5 0.2
0.222 0.11
0.125 0.1
0.1 0.095
0.077 0.09
The order of pairs in this file is not important.
- Also create a text file containing a velocity model to give your
data-fitting an approximate start. Name it something like
``
data0001.mod''. The model fitting the data above looks
like:
3
0.006 2.000 0.156 0.090
0.006 2.000 0.207 0.120
9999 2.000 0.468 0.270
- The first line gives the number of layers - the bottom layer is a
half-space.
- The remaining lines give the properties of each layer.
- The left column is the layer thickness in km - not the depth of the
interface.
- The second column is the density in g/cc.
- The third column is P-wave velocity in km/s.
- The fourth column is S-wave velocity in km/s.
- The thickness of the half-space is given as 9999 km.
- Note that, in the disper program used below, you will not be able
to change the Vp/Vs ratio away from the ratios fixed by the model file
you read in. So if you have reason to believe that a layer may have
an unusual Vp/Vs ratio, build that into that layer's parameters in
this file.
Modeling the dispersion
- Move to the directory where you did all your data analysis.
- Obtain the ``disper'' modeling program package by HTTP from this link.
It is about a quarter of a megabyte in size:
http://www.seismo.unr.edu/ftp/pub/louie/rg/disper-solaris.tar.Z
- Unpack the disper software in your directory with the command:
zcat disper-solaris.tar.Z | tar xvf -
- disper uses an iterative dispersion-modeling code developed by
Saito and modified by Yuehua Zeng of UNR. I wrapped it in a graphical
interface that only runs on a Sun using OpenWindows XView graphics.
You should sit directly in front of a Sun workstation to run it, since
it does not often display properly on a remote X-Windows display server.
- Log into the Sun workstation, start OpenWindows, cd to your data
directory, and type the following command into a command or shell tool:
./disper &
- disper will start with a window like the one at right. Click
on the image for a full-sized image. Make sure
it is all displayed on the screen.
- The top of the disper window frame has a menu you can get to
by pointing at it and holding the right mouse button down.
You use this menu to refresh the plot, when it becomes confused, or
to quit disper.
- In disper the top panel shows the dispersion-curve plots.
Your data will apear as filled squares. The middle panel contains
the controls. The bottom panel plots the velocity model.
It gives interface depths, not thicknesses. You can
manipulate the velocity model by dragging the mouse over the plot with
the left button held down. As you drag a velocity or interface depth,
you can watch the synthetic dispersion curve, plotted as open squares
in the top panel, move about your data points.
- disper appears ready to model structure on a lithospheric scale.
Before you can model shallow structure to 100 m depths, you will have to
make a number of settings:
- Enter the name of your dispersion pick file, like
data0001.dis , into the Name field. Select
File->Load Dispersion to read it in.
- Set the Period Min and Max bounds to values outside the range
of periods in your picks. For the data above these might be 0.05 to
0.6 seconds.
- Set the Period Step to a value that will divide your period range by
twenty or so, such as 0.02 .
- Set the Velocity Min and Max bounds to values outside the range
of velocities in your picks. For the data above these might be 0.08 to
0.22 km/s.
- Set the Velocity Step to a value that will divide your velocity range by
20 or so, such as 0.01 .
- Set the Max. Depth to 0.1 km, and then hit the return key.
- Enter the name of your starting model file into the Name field, and
then select File->Load Model.
- Select Refresh from the frame menu.
At this point you should see your data points, with a synthetic dispersion
curve not fitting them, and all the layers in the velocity model.
- Take an iterative, top-down approach to interactively modeling your
dispersion picks. Before you attempt to make a change to a model,
check to be sure the Edit Layer selector properly shows that you will be editing
layer Thickness or Vs. A procedure might be:
- Select Edit Layer: Vs, and then drag with the left mouse button down
left and right atop the top layer's S velocity until it fits your picks
at the smallest periods. Note that the layer's Vp will change as well,
to keep the Vp/Vs ratio constant with that of the input model.
- Select Edit Layer: Thickness and then drag up and down atop the
top layer's boundary until any trends in the shortest-period picks are
matched.
- Select Edit Layer: Vs, and then drag left and right atop the next
layer's S velocity until it fits your picks at the middle periods.
Unless you have good evidence for a velocity
inversion, try not to introduce one.
- Select Edit Layer: Thickness and then drag up and down atop the
next layer's boundary until any trends in the middle-period picks are
matched.
- Now Select Edit Layer: Vs, and then drag left and right atop the bottom
layer's S velocity until it fits your picks at the longest periods.
- As you adjust thicknesses and velocities, note down the ranges of
these parameters in each layer that seem to fit the dispersion data
equally well. These become the indeterminance of your data.
- Investigate the usual trade-off between the thickness and velocity of
your middle layer. Try to find the two end-member combinations of
large thickness and high velocity, and small thickness and low
velocity, that both fit the data equally well.
- Take note of the deepest depth that your dispersion data constrain.
How deep does another, significantly faster layer have to be before it
has no effect on dispersion at your longest picked periods?
- When you have a model you would like to save, write two files:
data0001.mod - enter this name into the Name
field, and then select File->Save Model.
data0001.mds - enter this name into the Name
field, and then select File->Save Dispersion.
Careful! The Save commands will over-write anything already in the
named file, without asking.
- The dispersion and model files are simple text files that you can
plot in your favorite graphics application or spreadsheet. You may want
to convert the thicknesses given in the model file to depths, and
plot a line for each layer. You can edit the model file to look like
this version of the model file above:
0.000 2.000 0.156 0.090
0.006 2.000 0.156 0.090
0.006 2.000 0.207 0.120
0.012 2.000 0.207 0.120
0.012 2.000 0.468 0.270
0.050 2.000 0.468 0.270
Note this file expresses the 0.050 km deepest depth of constraint.