Travel Time Curves for Specific Distance Samples

When MKTTCURVES computes travel times, it scans the take off angle of each phase with a constant angular increment. This translates into an uneven sampling of epicentral distance. But in many cases one would like to have travel times for a set of specific predefined epicentral distances.

A loop which calls MKTTIME many times could be used to produce travel time curves in such cases, but it would waste a lot of CPU time to do so, since each call of MKTTIME invokes MKFINDP to determine the necessary ray parameter.

It is far better to use MKTTQUICK with a list of ray parameters that correspoond to the desired epicentral distances:

  1. Call [p,a,d]=mkfindp(phase,delta,h,model); with input parameters
    phase
    The seismic phase for which you would like to have travel times
    delta
    A list of epicentral distances, in degrees
    h
    Source depth in kilometers. This has to be a single value!
    model
    a MODEL structure containing the velocity model
  2. Call ttcurves=mkttquick(model,h,p,a,phase); with input parameters
    model
    a MODEL structure containing the velocity model
    h
    Source depth in kilometers. This still has to be a single value!
    p
    Output parameter p from MKFINDP. This is a list of ray parameters which corresponds to the list of epicentral distances used in the call of MKFINDP
    a
    Output parameter a from MKFINDP. Thuis is a list of take off angles, corresponding to the ray parameters at source depths. These angles are necesary to distinguish upgoing from downgoing rays, when a non-surface source is used.
    phase
    The seismic phase for which you would like to have travel times. This has to be the same as in the call of MKFINDP.
  3. ttcurves is now a TTCURVES structure as returned by MKTTCUVRES, but sampled at the distances you initially defined when calling MKFINDP.

eof.