_images/SplitPy_logo.png

Scripts

There are several Python scripts that accompany splitpy, which can be used in bash scripts to automate data processing. These include scripts to download three-component seismogram data and automatically calculate splitting parameters, manually refine the analysis window for more precise estimates, and final averaging of splitting parameters at single stations. All of them use a station database provided as a StDb dictionary.

split_calc_auto.py

Description

This script can be used in one of two ways: 1) to download/collect available teleseismic shear-wave data for later processing; and 2) to further perform an automated processing for the shear-wave splitting estimates using default parameters. Station selection is specified by a network and station code. The data base is provided in a pickled file as a StDb dictionary.

Usage

$ split_calc_auto.py -h
usage: split_calc_auto.py [arguments] <station database>

Script wrapping together the python-based implementation of SplitLab by
Wustefeld and others. This version requests data on the fly for a given date
range. Data is requested from the internet using the client services framework
or from data provided on a local disk. The stations are processed one by one
with the SKS Splitting parameters measured individually using both the
Rotation-Correlation (RC) and Silver & Chan (SC) methods.

positional arguments:
  indb                  Station Database to process from.

optional arguments:
  -h, --help            show this help message and exit
  --keys STKEYS         Specify a comma separated list of station keys for
                        which to perform the analysis. These must be contained
                        within the station database. Partial keys will be used
                        to match against those in the dictionary. For
                        instance, providing IU will match with all stations in
                        the IU network [Default processes all stations in the
                        database]
  -v, -V, --verbose     Specify to increase verbosity.
  -O, --overwrite       Force the overwriting of pre-existing Split results.
                        Default behaviour prompts for those that already
                        exist. Selecting overwrite and skip (ie, both flags)
                        negate each other, and both are set to false (every
                        repeat is prompted). [Default False]
  -K, --skip-existing   Skip any event for which existing splitting results
                        are saved to disk. Default behaviour prompts for each
                        event. Selecting skip and overwrite (ie, both flags)
                        negate each other, and both are set to False (every
                        repeat is prompted). [Default False]
  -C, --calc            Analyze data for shear-wave splitting. [Default saves
                        data to folders for subsequent analysis]
  -P, --plot-diagnostic
                        Plot diagnostic window at end of process. [Default
                        False]

Server Settings:
  Settings associated with which datacenter to log into.

  -S SERVER, --Server SERVER
                        Specify the server to connect to. Options include:
                        BGR, ETH, GEONET, GFZ, INGV, IPGP, IRIS, KOERI, LMU,
                        NCEDC, NEIP, NERIES, ODC, ORFEUS, RESIF, SCEDC, USGS,
                        USP. [Default IRIS]
  -U USERAUTH, --User-Auth USERAUTH
                        Enter your IRIS Authentification Username and Password
                        (--User-Auth='username:authpassword') to access and
                        download restricted data. [Default no user and
                        password]

Local Data Settings:
  Settings associated with defining and using a local data base of pre-
  downloaded day-long SAC files.

  --local-data LOCALDATA
                        Specify a comma separated list of paths containing
                        day-long sac files of data already downloaded. If data
                        exists for a seismogram is already present on disk, it
                        is selected preferentially over downloading the data
                        using the Client interface
  --no-data-zero        Specify to force missing data to be set as zero,
                        rather than default behaviour which sets to nan.
  --no-local-net        Specify to prevent using the Network code in the
                        search for local data (sometimes for CN stations the
                        dictionary name for a station may disagree with that
                        in the filename. [Default Network used]

Parameter Settings:
  Miscellaneous default values and settings

  --sampling-rate NEW_SAMPLING_RATE
                        Specify new sampling rate in Hz. [Default 10.]
  --min-snr MSNR        Minimum SNR value calculated on the radial (Q)
                        component to proceed with analysis (dB). [Default 5.]
  --window DTS          Specify time window length before and after the SKS
                        arrival. The total window length is 2*dst (sec).
                        [Default 120]
  --max-delay MAXDT     Specify the maximum delay time in search (sec).
                        [Default 4]
  --dt-delay DDT        Specify the time delay increment in search (sec).
                        [Default 0.1]
  --dphi DPHI           Specify the fast angle increment in search (degree).
                        [Default 1.]
  --snrT SNRTLIM        Specify the minimum SNR Threshold for the Transverse
                        component to be considered Non-Null. [Default 1.]
  --fmin FMIN           Specify the minimum frequency corner for SNR filter
                        (Hz). [Default 0.02]
  --fmax FMAX           Specify the maximum frequency corner for SNR filter
                        (Hz). [Default 0.5]

Event Settings:
  Settings associated with refining the events to include in matching
  station pairs

  --start STARTT        Specify a UTCDateTime compatible string representing
                        the start time for the event search. This will
                        override any station start times. [Default start date
                        of each station]
  --end ENDT            Specify a UTCDateTime compatible string representing
                        the end time for the event search. This will override
                        any station end times [Default end date of each
                        station]
  --reverse, -R         Reverse order of events. Default behaviour starts at
                        oldest event and works towards most recent. Specify
                        reverse order and instead the program will start with
                        the most recent events and work towards older
  --min-mag MINMAG      Specify the minimum magnitude of event for which to
                        search. [Default 6.0]
  --max-mag MAXMAG      Specify the maximum magnitude of event for which to
                        search. [Default None, i.e. no limit]

Geometry Settings:
  Settings associatd with the event-station geometries

  --min-dist MINDIST    Specify the minimum great circle distance (degrees)
                        between the station and event. [Default 85]
  --max-dist MAXDIST    Specify the maximum great circle distance (degrees)
                        between the station and event. [Default 120]
  --phase PHASE         Specify the phase name to use. Be careful with the
                        distance. setting. Options are 'SKS' or 'SKKS'.
                        [Default 'SKS']

split_calc_manual.py

Description

This script is used if the user desires manual re-picking of the analysis window for refined estimates. Station selection is specified by a network and station code. The data base is provided in a pickled file as a StDb dictionary.

Usage

$ split_calc_manual.py -h
usage: split_calc_manual.py [arguments] <station database>

Script to process and calculate the spliting parameters for a dataset that has
already been downloaded by split_calc_auto.py.

positional arguments:
  indb                  Station Database to process from.

optional arguments:
  -h, --help            show this help message and exit
  --keys STKEYS         Specify a comma separated list of station keys for
                        which to perform analysis. These must be contained
                        within the station database. Partial keys will be used
                        to match against those in the dictionary. For
                        instance, providing IU will match with all stations in
                        the IU network [Default processes all stations in the
                        database]
  -v, -V, --verbose     Specify to increase verbosity.

Parameter Settings:
  Miscellaneous default values and settings

  --window DTS          Specify time window length before and after the SKS
                        arrival. The total window length is 2*dst (sec).
                        [Default 120]
  --max-delay MAXDT     Specify the maximum delay time. [Default 4 s]
  --time-increment DDT  Specify the time increment. [Default 0.1 s]
  --angle-increment DPHI
                        Specify the angle increment. [Default 1 d]
  --transverse-SNR SNRTLIM
                        Specify the minimum SNR Threshold for the Transverse
                        component to be considered Non-Null. [Default 1.]

Event Settings:
  Settings associated with refining the events to include in matching
  station pairs

  --start STARTT        Specify a UTCDateTime compatible string representing
                        the start time for the event search. This will
                        override any station start times. [Default more recent
                        start date for each station pair]
  --end ENDT            Specify a UTCDateTime compatible string representing
                        the end time for the event search. This will override
                        any station end times [Default older end date for each
                        the pair of stations]
  --reverse-order, -R   Reverse order of events. Default behaviour starts at
                        oldest event and works towards most recent. Specify
                        reverse order and instead the program will start with
                        the most recent events and work towards older

split_average.py

Description

This script is used for producing station average shear-wave splitting estimates obtained from either the automated or manual mode. Station selection is specified by a network and station code. The data base is provided in a pickled file as a StDb dictionary.

Usage

$ split_average.py -h
usage: split_average.py [arguments] <station database>

Script to plot the average splitting results for a given station. Loads the
available .pkl files in the specified Station Directory.

positional arguments:
  indb                  Station Database to process from.

optional arguments:
  -h, --help            show this help message and exit
  --keys STKEYS         Specify a comma separated list of station keys for
                        which to perform analysis. These must be contained
                        within the station database. Partial keys will be used
                        to match against those in the dictionary. For
                        instance, providing IU will match with all stations in
                        the IU network [Default processes all stations in the
                        database]
  -v, -V, --verbose     Specify to increase verbosity.
  --show-fig            Specify show plots during processing - they are still
                        saved to disk. [Default only saves]
  -A, --auto            Specify to use automatically processed split results.
                        [Default uses refined ('manual') split results]

Null Selection Settings:
  Settings associated with selecting which Null or Non-Null data is included

  --nulls, --Nulls      Specify this flag to include Null Values in the
                        average. [Default Non-Nulls only]
  --no-nons, --No-Nons  Specify this flag to exclude Non-Nulls from the
                        average [Default False]

Quality Selection Settings:
  Settings associated with selecting the qualities to include in the
  selection.

  --No-Good, --no-good  Specify to exclude 'Good' measurements from the
                        average. [Default Good + Fair]
  --No-Fair, --no-fair  Specify to exclude 'Fair' measurements from the
                        average [Default Good + Fair]
  --Poor, --poor        Specify to include 'Poor' measurements in the average
                        [Default No Poors]

Split Type Settings:
  Settings to Select which Split types are included in the selection.

  --RC-Only, --rc-only, --RC-only
                        Specify to only include RC splits in the average.
                        [Default RC + SC]
  --SC-Only, --sc-only, --SC-only
                        Specify to only include SC splits in the average.
                        [Default RC + SC]