waves - Computes Rayleigh Waves vertical or horizontal displacement time series
waves [ infile ]
Compatible with
Basic Seismic Utilities (BSU), this program computes
Rayleigh waves from the dispersion curve which is first
computed by program disper. The input file,
waves.d, contains namelist parameters required by
waves.
One begins by generating the input file first. Run the
program genwav. The output of genwav is
usually called waves.d and becomes the input to
waves. The output of waves includes synthetic
Rayleigh wave seismic records. These seismic files are BSU
compatible. Fortran 90 Version.
&waves
Namelist
ksw = 0 plot dispersion: phase velocity vs. frequency
= 1 plot dispersion: wavenumber vs. frequency
stepz = number of samples in the shortest S-wave length modeled
The shortest wavelength=(slowest S-velocity)/(fmax). See BUGS note below for potential traps, and how this parameter can be changed to fix a problem. Default is 20 samples/wavelength.
modes = 1,2,3,4,5,6,7,8,9 (include all modes up to 9)
= 1,0,0,0,0,0,0,0,0 (include only fundamental, even if more modes available)
fmin = minimum frequency to
include (will sync to closest value in
earth.crv file)
fmax = maximum frequency to include (limited by what is
available in
earth.crv)
NOTE: Parameters fmin and fmax control the generation of the minimum phase wavelet (scalar source moment) for the synthetic seismogram. The bandwidth of the wavelet is internally reduced so that the spectrum is near zero within the (fmin,fmax) bandwidth contained in the curve file (typically earth.crv). The wavelet minimum frequency is set to 4*fmin, and the wavelet maximum frequency is set at fmax/2. This prevents a ringing wavelet.
fsamin = sample interval in seconds. MUST agree with disper run.
To ensure agreement with disper dispersion computation, specify the same aperture for both programs. That is, if the tmax=maximum trace time and sample interval are the same, all will be well. Thus, earth.crv file will have correct frequency increment for computing a synthetic seismogram in waves; deltf=1/(N*fsamin).
curve = name of dispersion
curve file produced by disper run. Example,
earth.crv
mapmat = 0 generate plot programs in Octave/Matlab
format.
= 1 generate plot programs in Scilab format.
scilb1 = name of file for phase
velocity /or wavenumber dispersion
plot, if mapmat=1
example: sclb1=’matc.sci’
scilb2 = name of file for group velocity dispersion plot, if mapmat=1
example: scilb2=’matu.sci’
matlb1 = name of file for phase
velocity /or wavenumber dispersion
plot, if mapmat=0
example: matlb1=’matc.m’
matlb2 = name of file for group velocity dispersion plot, if mapmat=0
example: matlb1=’matu.m’
irvsel = 0 generate a vertical
component displacement synthetic
seismogram
= 1 generate a radial, horizontal component displacement synthetic seismogram
ofile = name of output listing file documenting run.
&source
Namelist
tm = moment tensor specifying radiation pattern, 3x3
sz, sy, sx = the depth, y-coordinate, x-coordinate of
source
&recvr
Namelist
nrec = number of receivers
rz = receiver depths (+down)
ry = receiver y-coordinates
rx = receiver x-coordinates (typically require nrec number
of these
Options
infile |
This is the name of the file with the namelists. Typically this file is called waves.d, it is easily generated by the program genwav. |
NOTE:
If invoked with no options, will prompt user for the input
file name
EXAMPLE:
waves waves.d
File waves.d is processed by waves.
wavV.seg
If vertical motion is selected, this is the file with the time series data in bsegy format.
wavR.seg
If horizontal motion is selected, this is the file with the time series data in bsegy format.
standard output
produces a listing on the fly of the dispersion curve, including Group and Phase velocities
waves.tmp
Saved output very similar to standard output, gives input parameters and listing of the dispersion curves.
matc.m |
phase velocity dispersion plotting procedure for execution by Octave | ||
matu.m |
group velocity dispersion plotting procedure for execution by Octave | ||
m0.m |
Octave file plots scalar source moment (wavelet) in time, and spectrum. |
waves.his
Text file records maximum Lagrangian for the run, and at which frequency.
gendis(1), genwave(1), disper(1), showmdl(1), halfsp(1)
no known bugs, but there are some potential parameter selection traps. See documentation for details. One thing to look for is a large lagrangian with a glitch in the group velocity plot. This can occur when modeling an abrupt discontinuity between thick layers by using two control points very close together (for the discontinuity). Program waves has to compute numerical energy integrals with a finer depth interval than may have been used in the preceeding disper run. This interval is a function of the maximum frequency and affects all frequencies. The current version uses the stepz parameter set to 20. This sets the numerical integration interval to 20 samples per shortest wavelength of the SV wave component (determined by fmax and slowest S-wave velocity in the model), and if this integration interval is less than the width of the discontinuity, the implied model changes and becomes inconsistent with the disper run. In other words, the discontinuity becomes subdivided into additional layers with different transitional velocities across what would otherwise be an abrupt discontinuity. Corrective action is to either make the discontinuity more abrupt (move control points closer together), OR to decrease the stepz parameter (which may unfortunately increase the lagrangian, but often is not serious).
Copyright © 2024 by Paul Michaels
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
P. Michaels, PE. <[email protected]>