TauP Curve

TauP Curve creates a xy plot of seismic phases, usually time versus distance. This can be used to create the familar travel time curves, but for only the specified phases and depth. The curves are linearly interpolated between known sample points, and can thus be used to get a feel for the coarseness of sampling. For example, curves for s, S, ScS and Sdiff for a 500 kilometer deep event in PREM could be generated by:

taup curve --mod prem -h 500 -p s,S,ScS,Sdiff --gmt

The -gmt option prepends a GMT psxy command to the output file, creating a runnable script instead of just a data file. The output is put in taup_curve.gmt by default, so to view the results:

sh taup_curve.gmt

and you have a plot of the wavefronts in “taup_curve.pdf”.

Alternatively, using –svg will generate an SVG plot of the same curves:

taup curve --mod prem -h 500 -p s,S,ScS,Sdiff --legend --svg

and results in

taup curve --mod prem -h 500 -p s,S,ScS,Sdiff --legend --svg -o stdout 3.0.0-SNAPSHOT7 https://github.com/crotwell/TauP prem (h=500.0 km) Time (s) 200.0 400.0 600.0 800.0 1000.0 1200.0 1400.0 1600.0 1800.0 Degrees 0.0 20.0 40.0 60.0 80.0 100.0 120.0 140.0 160.0 s S ScS Sdiff

Other paramaters besides distance vs time can be plotted using the -x and -y options. For example tau vs ray parameter with:

taup curve -x rayparamdeg -y tau --legend --svg
taup curve -x rayparamdeg -y tau --legend --svg -o stdout 3.0.0-SNAPSHOT7 https://github.com/crotwell/TauP iasp91 (h=0.0 km) Tau 0.0 200.0 400.0 600.0 800.0 1000.0 1200.0 1400.0 1600.0 Ray Param (s/deg) 0.0 2.0 4.0 6.0 8.0 10.0 12.0 14.0 16.0 18.0 20.0 22.0 24.0 26.0 28.0 30.0 32.0 P S Pn Sn PcP ScS Pdiff Sdiff PKP SKS PKiKP SKiKS PKIKP SKIKS

Note that these images are inteded to be a quick, basic view into the results, and in most cases you may need to manually edit them in order to fix issues related to titles, labels and other image issues.

The usage is:

Usage: taup curve [--debug] [--help] [--legend] [--verbose] [--xabs] [--xlog]
                  [--yabs] [--ylog] [--attenuationfreq=<attenuationFreq>]
                  [--color=<coloring>] [--mapwidth=<mapwidth>]
                  [--mapwidthunit=<mapWidthUnit>] [--mw=<mw>] [-o=<outFile>]
                  [--prop=<toolPropsFilename>] [--reddeg=deg/s] [--redkm=km/s]
                  [--rel=phase] [-x=type] [-y=type] [--xminmax=x x]...
                  [--yminmax=y y]... [[--mod=<modelName>] [-h=depth[,
                  depth...]]... [--stadepth=depth[,depth...]]... [--scat=s
                  s]...] [[-p=phase[,phase...]]...
                  [--phasefile=<phaseFiles>]...] [--gmt | --json | --svg |
                  --text]
Plot travel time vs. distance and other curves for seismic phases.

Options:

      --attenuationfreq=<attenuationFreq>
                           attenuation frequency for amplitude calculations
      --color=<coloring>   style of coloring for paths and wavefronts, one of:
                             auto, wavetype, phase, none
      --debug              enable debugging output
      --help               display this help message
      --legend             create a legend
      --mapwidth=<mapwidth>
                           plot width in inches for GMT, pixels for SVG.
      --mapwidthunit=<mapWidthUnit>
                           plot width unit for GMT. Default is i for inchs
      --mw=<mw>            scale amplitude by source moment magnitude
  -o, --output=<outFile>   output to file, default is stdout.
      --prop=<toolPropsFilename>
                           load defaults from properties file
      --reddeg=deg/s       outputs curves with a reducing velocity (deg/sec),
                             no effect if axis is not distance-like/time
      --redkm=km/s         outputs curves with a reducing velocity (km/sec), no
                             effect if axis is not distance-like/time
      --rel=phase          plot relative to the given phase, no effect unless
                             distance/time
      --verbose            enable verbose output
  -x, --xaxis=type         X axis data type, default is degree180, one of
                             radian, radian180, degree, degree180, kilometer,
                             kilometer180, rayparamrad, rayparamdeg,
                             rayparamkm, time, tau, takeoffangle,
                             incidentangle, turndepth, amp, amppsv, ampsh,
                             geospread, refltran, refltranpsv, refltransh,
                             index, tstar, attenuation, theta
      --xabs               X axis is absolute value
      --xlog               X axis is log
      --xminmax=x x        min and max x axis for plotting
  -y, --yaxis=type         Y axis data type, default is time, one of radian,
                             radian180, degree, degree180, kilometer,
                             kilometer180, rayparamrad, rayparamdeg,
                             rayparamkm, time, tau, takeoffangle,
                             incidentangle, turndepth, amp, amppsv, ampsh,
                             geospread, refltran, refltranpsv, refltransh,
                             index, tstar, attenuation, theta
      --yabs               Y axis is absolute value
      --ylog               Y axis is log
      --yminmax=y y        min and max y axis for plotting
Model Args
  -h, --evdepth, --sourcedepth=depth[,depth...]
                           source depth in km
      --mod, --model=<modelName>
                           use velocity model "modelName" for calculations.
                           Default is iasp91. Other builtin models include
                             prem, ak135, ak135fcont, and ak135favg.
      --scat, --scatter=s s
                           scattering depth and distance in degrees, which may
                             be negative. Only effects phases with 'o' or 'O'
                             in the phase name.
      --stadepth, --receiverdepth=depth[,depth...]
                           the receiver depth in km for stations not at the
                             surface
Phase Names
  -p, --ph, --phase=phase[,phase...]
                           seismic phase names
      --phasefile=<phaseFiles>
                           read list of phase names from file
Output Type:
      --gmt                outputs as GMT
      --json               outputs as JSON
      --svg                outputs as SVG
      --text               outputs as Text