README.rst 5.01 KB
Newer Older
Javier Quinteros's avatar
Javier Quinteros committed
1 2 3
das-scripts
===========

4 5
.. image:: https://img.shields.io/pypi/v/dasscripts.svg
   :target: https://img.shields.io/pypi/v/dasscripts.svg
Javier Quinteros's avatar
Javier Quinteros committed
6

7 8
.. image:: https://img.shields.io/pypi/pyversions/dasscripts.svg
   :target: https://img.shields.io/pypi/pyversions/dasscripts.svg
Javier Quinteros's avatar
Javier Quinteros committed
9

10 11
.. image:: https://img.shields.io/pypi/format/dasscripts.svg
   :target: https://img.shields.io/pypi/format/dasscripts.svg
Javier Quinteros's avatar
Javier Quinteros committed
12

13 14
.. image:: https://img.shields.io/pypi/status/dasscripts.svg
   :target: https://img.shields.io/pypi/status/dasscripts.svg
Javier Quinteros's avatar
Javier Quinteros committed
15 16 17 18 19

Scripts to work with data generated by DAS systems.

Overview
--------
20 21
This package provides a set of scripts to read, manipulate and convert seismic waveforms
generated by DAS systems. In particular, the ones saved in TDMs format.
Javier Quinteros's avatar
Javier Quinteros committed
22

23 24
Dasconv
-------
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
This utility lets you convert and manipulate seismic waveforms in TDMs format and export them into MiniSEED.

Data acquired from experiments with DAS systems are usually stored in one folder. Files within this folder have names
indicating the experiment and the start time of the waveforms saved. An example of the files generated in a test
experiment is shown below. ::

    $ ls -l
    total 1577352
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:38 default_UTC_20190508_093735.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:38 default_UTC_20190508_093805.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:39 default_UTC_20190508_093835.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:39 default_UTC_20190508_093905.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:40 default_UTC_20190508_093935.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:40 default_UTC_20190508_094005.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:41 default_UTC_20190508_094035.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:41 default_UTC_20190508_094105.409.tdms
    -rwxrwxrwx  1 user  staff   49965056 May  8 09:42 default_UTC_20190508_094135.409.tdms

There, *default* is the name of the experiment and the rest is the start time with the following format:
*experiment_TZ_YYYYMMDD_HHmmss.fff.tdms*.

Dasconv provides also a TDMS class which needs to receive one mandatory parameter to be instantiated,
*filename*, which is actually the experiment name and how all filenames in the containing folder start with.
A detailed explanation on how to use it on your own programms can be found in the documentation.

A typical help message from dasconv looks like the following: ::
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81

    usage: dasconv.py [-h] [-l {CRITICAL,ERROR,WARNING,INFO,DEBUG}] [-d DIRECTORY]
                      [--start START] [--end END] [--chstart CHSTART]
                      [--chstop CHSTOP] [--chstep CHSTEP] [--decimate DECIMATE]
                      [--version]
                      filename

    Read, manipulate and convert seismic waveforms generated by a DAS system.

    positional arguments:
      filename              Experiment to read and process. It is usually the
                            first part of the filenames.

    optional arguments:
      -h, --help            show this help message and exit
      -l {CRITICAL,ERROR,WARNING,INFO,DEBUG}, --loglevel {CRITICAL,ERROR,WARNING,INFO,DEBUG}
                            Verbosity in the output.
      -d DIRECTORY, --directory DIRECTORY
                            Directory where files are located.
      --start START, --starttime START
                            Start of the selected time window. Format:
                            2019-02-01T00:01:02.123456Z
      --end END, --endtime END
                            End of the selected time window. Format:
                            2019-02-01T00:01:02.123456Z
      --chstart CHSTART     First channel to export
      --chstop CHSTOP       Last channel to export
      --chstep CHSTEP       Step between channels in the selection
      --decimate DECIMATE   Factor by which the sampling rate is lowered by
                            decimation.
      --version             show program's version number and exit
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100


Examples
========

Export waveforms from channels 800, 802 and 804 starting at 2019-05-08T09:37:35.409000 until 2019-05-08T09:38:05.400000.
The waveforms will be exported to MiniSEED format after being decimated by a factor of 5 (e.g. from 1000Hz to 200Hz). ::

    dasconv -d /home/user/test/ --start "2019-05-08T09:37:35.409000" --end "2019-05-08T09:38:05.400000" default --chstart 800 --chstop 805 --chstep 2

Export waveforms from channels 0 and 1 from the beginning of the measurements until 2019-05-08T09:32:15.
The waveforms will be exported to MiniSEED format after being decimated by a factor of 5 (e.g. from 1000Hz to 200Hz). ::

    dasconv -d /home/user/test/ --endtime "2019-05-08T09:32:15" default --chstart 0 --chstop 1

Export waveforms from channels 0 to 4 from the beginning of the measurements until 2019-05-08T09:32:15.
The waveforms will be exported to MiniSEED format after being decimated by a factor of 5 (e.g. from 1000Hz to 200Hz). ::

    dasconv -d /home/user/test/ --endtime "2019-05-08T09:32:15" default --chstart 0 --chstop 4 --decimate 2