lcheapo


Namelcheapo JSON
Version 1.0.6.post2 PyPI version JSON
download
home_pagehttps://github.com/WayneCrawford/lcheapo
SummaryLCHEAPO data routines
upload_time2022-12-07 09:36:22
maintainer
docs_urlNone
authorWayne Crawford
requires_python>=3.8
license
keywords oceanography marine obs
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # lcheapo

Viewing and modifying LCHEAPO OBS data

## Overview

### Command-line programs

Type ``{command} -h`` to get a list of parameters and options

#### Programs that don't modify files

| Program     | description                                           |
| ----------- | ----------------------------------------------------- |
| lcdump      | dump raw information from LCHEAPO files               |
| lcinfo      | return basic information about an LCHEAPO file        |
| lcplot      | plot an LCHEAPO file                                  |
| lctest      | plot LCHEAPO tests                                    |
| lc_examples | create a directory with examples of lcplot and lctest |

#### Programs that modify files

These programs use the *SDPCHAIN* protocols for FAIR-
compliant data:

- Create/append to a process-steps.json file
- Read from input directory (-i) and output to (-o)

| Program     | description                                                                   |
| ----------- | ----------------------------------------------------------------------------- |
| lccut       | extract section of an LCHEAPO file                                            |
| lcfix       | fix common bugs in an LCHEAPO file                                            |
| lcheader    | create an LCHEAPO header + directory                                          |
| sdpcat      | concatenate data files                                                        |
| sdpstep     | run a command line tool and save info to process-steps file                   |
| lc2ms_weak  | converts LCHEAPO file to basic miniSEED files                                 |
| lc2SDS_weak | converts LCHEAPO file to SeisComp Data Structure, with basic drift correction |

## lctest control files

lctest uses YAML-format control files to indicate what kind of plots to
output.  The datetime ranges in the `plots` sections must be within those given
in the `input` section, as data is only read using the `input` time bounds.

for details on the control file format, type:
```
  python
    > import lcheapo
    > help(lcheapo.lctest)
```

to put example lctest control files in the current directory, type:
```
    lctest --examples
```

### Example plots

### Examples

#### 1: Analysing one station

``` yaml
---
input: 
    start_time: "2022-02-22T10:00:01"
    end_time: "2022-02-25T15:25:25"
    datafiles:
        -   name: "TestAcq-BB02-ProgV1-3.raw.lch"
            obs_type: 'BBOBS1'
            station: 'TEST'
    description: "Tests on BBOBS"
output:
    show: True
    filebase: 'BB02-V1_3-tests'
plot_globals:
    spectra:
        window_length.s: 1024
plots:
    time_series:
        -   description: "Entire time series"
            select: {station: "*"}
            start_time: "2022-02-22T10:00:01"
            end_time: "2022-02-25T15:25:25"
        -   description: "Quiet time"
            select: {station: "*"}
            start_time: "2022-02-23T21:00:00"
            end_time: "2022-02-24T03:00:00"
        -   description: "Stack time"
            select: {station: "*"}
            start_time: "2022-02-25T13:54:00"
            end_time: "2022-02-25T14:03:00"
    spectra:
        -   description: "Quiet time"
            select: {station: "*"}
            start_time: "2022-02-23T21:00:00"
            end_time: "2022-02-24T03:00:00"
    stack:
        -   description: "Stack, Jump South"
            orientation_codes: ["Z"]
            offset_before.s: 0.3
            offset_after.s: 1
            times:
            -    "2022-02-25T13:57:00.66"
            -    "2022-02-25T13:58:00.53"
            -    "2022-02-25T13:59:00.2"
        -   description: "Stack, Jump Est"
            orientation_codes: ["Z"]
            offset_before.s: 0.3
            offset_after.s: 1
            times:
            -    "2022-02-25T14:00:00.4"
            -    "2022-02-25T14:01:00.15"
            -    "2022-02-25T14:02:00.18"
    particle_motion:
        -   description: "Stack, Jump South"
            orientation_code_x: "2"
            orientation_code_y: "1"
            offset_before.s: 0.00
            offset_after.s: 0.03
            offset_before_ts.s: 0.2
            offset_after_ts.s: 1
            times:
            -    "2022-02-25T13:57:00.66"
            -    "2022-02-25T13:58:00.53"
            -    "2022-02-25T13:59:00.2"
        -   description: "Stack, Jump Est"
            orientation_code_x: "2"
            orientation_code_y: "1"
            offset_before.s: 0.1
            offset_after.s: 0.2
            offset_before_ts.s: 0.3
            offset_after_ts.s: 1
            times:
            -    "2022-02-25T14:00:00.4"
            -    "2022-02-25T14:01:00.15"
            -    "2022-02-25T14:02:00.18"
```
##### Output plots
###### time_series
![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Entire_time_series_ts.png)
![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Quiet_time_ts.png)

###### spectra
![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Quiet_time_spect.png)

###### stack
![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Stack_Jump_South_stack.png)

###### particle_motion
![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Stack_Jump_South_pm.png)


#### 2: Comparing several stations

```yaml
---
input:
    start_time: null
    end_time: null
    datafiles:
        - 
            name: "20191107T14_SPOBS09_F02.raw.lch"
            obs_type: "SPOBS2"
            station: "09F2"
        - 
            name: "20191107T14_SPOBS09_F02.raw.lch"
            obs_type: "SPOBS2"
            station: "09c1"
        - 
            name: "20191107T14_SPOBS09_F02.raw.lch"
            obs_type: "SPOBS2"
            station: "09c2"
    description: "Simulation of multi-instrument test"
output:
    show: True
    filebase: "MAYOBS6"
plot_globals:
    stack:
        offset_before.s: 0.5
        offset_after.s:  1.5
        plot_span: False
    particle_motion:
        offset_before.s: 0.00
        offset_after.s: 0.03
        offset_before_ts.s: 0.1
        offset_after_ts.s: 0.2
    spectra:
        window_length.s: 100
plots:
    time_series:
        -
            description: "Entire time series"
            select: {station: "*"}
            start_time: null
            end_time: null
        -
            description: "Quiet period"
            select: {channel: "*3"}
            start_time: null
            end_time: "2019-11-07T13:57"
        -
            description: "Rubber hammer taps"
            select: {station: "*"}
            start_time: "2019-11-07T14:08"
            end_time: "2019-11-07T14:11:10"
    spectra:
        -
            description: "Entire time series"
            select: {component: "3"}
            start_time: null
            end_time: null
        -
            description: "Quiet period"
            select: {channel: "*3"}
            start_time: null
            end_time: "2019-11-07T13:57"
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/WayneCrawford/lcheapo",
    "name": "lcheapo",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "oceanography,marine,OBS",
    "author": "Wayne Crawford",
    "author_email": "crawford@ipgp.fr",
    "download_url": "https://files.pythonhosted.org/packages/d2/43/060b94ccb489daccb1ed0f611465ace606f2b4637cc66e0858391464ee11/lcheapo-1.0.6.post2.tar.gz",
    "platform": null,
    "description": "# lcheapo\n\nViewing and modifying LCHEAPO OBS data\n\n## Overview\n\n### Command-line programs\n\nType ``{command} -h`` to get a list of parameters and options\n\n#### Programs that don't modify files\n\n| Program     | description                                           |\n| ----------- | ----------------------------------------------------- |\n| lcdump      | dump raw information from LCHEAPO files               |\n| lcinfo      | return basic information about an LCHEAPO file        |\n| lcplot      | plot an LCHEAPO file                                  |\n| lctest      | plot LCHEAPO tests                                    |\n| lc_examples | create a directory with examples of lcplot and lctest |\n\n#### Programs that modify files\n\nThese programs use the *SDPCHAIN* protocols for FAIR-\ncompliant data:\n\n- Create/append to a process-steps.json file\n- Read from input directory (-i) and output to (-o)\n\n| Program     | description                                                                   |\n| ----------- | ----------------------------------------------------------------------------- |\n| lccut       | extract section of an LCHEAPO file                                            |\n| lcfix       | fix common bugs in an LCHEAPO file                                            |\n| lcheader    | create an LCHEAPO header + directory                                          |\n| sdpcat      | concatenate data files                                                        |\n| sdpstep     | run a command line tool and save info to process-steps file                   |\n| lc2ms_weak  | converts LCHEAPO file to basic miniSEED files                                 |\n| lc2SDS_weak | converts LCHEAPO file to SeisComp Data Structure, with basic drift correction |\n\n## lctest control files\n\nlctest uses YAML-format control files to indicate what kind of plots to\noutput.  The datetime ranges in the `plots` sections must be within those given\nin the `input` section, as data is only read using the `input` time bounds.\n\nfor details on the control file format, type:\n```\n  python\n    > import lcheapo\n    > help(lcheapo.lctest)\n```\n\nto put example lctest control files in the current directory, type:\n```\n    lctest --examples\n```\n\n### Example plots\n\n### Examples\n\n#### 1: Analysing one station\n\n``` yaml\n---\ninput: \n    start_time: \"2022-02-22T10:00:01\"\n    end_time: \"2022-02-25T15:25:25\"\n    datafiles:\n        -   name: \"TestAcq-BB02-ProgV1-3.raw.lch\"\n            obs_type: 'BBOBS1'\n            station: 'TEST'\n    description: \"Tests on BBOBS\"\noutput:\n    show: True\n    filebase: 'BB02-V1_3-tests'\nplot_globals:\n    spectra:\n        window_length.s: 1024\nplots:\n    time_series:\n        -   description: \"Entire time series\"\n            select: {station: \"*\"}\n            start_time: \"2022-02-22T10:00:01\"\n            end_time: \"2022-02-25T15:25:25\"\n        -   description: \"Quiet time\"\n            select: {station: \"*\"}\n            start_time: \"2022-02-23T21:00:00\"\n            end_time: \"2022-02-24T03:00:00\"\n        -   description: \"Stack time\"\n            select: {station: \"*\"}\n            start_time: \"2022-02-25T13:54:00\"\n            end_time: \"2022-02-25T14:03:00\"\n    spectra:\n        -   description: \"Quiet time\"\n            select: {station: \"*\"}\n            start_time: \"2022-02-23T21:00:00\"\n            end_time: \"2022-02-24T03:00:00\"\n    stack:\n        -   description: \"Stack, Jump South\"\n            orientation_codes: [\"Z\"]\n            offset_before.s: 0.3\n            offset_after.s: 1\n            times:\n            -    \"2022-02-25T13:57:00.66\"\n            -    \"2022-02-25T13:58:00.53\"\n            -    \"2022-02-25T13:59:00.2\"\n        -   description: \"Stack, Jump Est\"\n            orientation_codes: [\"Z\"]\n            offset_before.s: 0.3\n            offset_after.s: 1\n            times:\n            -    \"2022-02-25T14:00:00.4\"\n            -    \"2022-02-25T14:01:00.15\"\n            -    \"2022-02-25T14:02:00.18\"\n    particle_motion:\n        -   description: \"Stack, Jump South\"\n            orientation_code_x: \"2\"\n            orientation_code_y: \"1\"\n            offset_before.s: 0.00\n            offset_after.s: 0.03\n            offset_before_ts.s: 0.2\n            offset_after_ts.s: 1\n            times:\n            -    \"2022-02-25T13:57:00.66\"\n            -    \"2022-02-25T13:58:00.53\"\n            -    \"2022-02-25T13:59:00.2\"\n        -   description: \"Stack, Jump Est\"\n            orientation_code_x: \"2\"\n            orientation_code_y: \"1\"\n            offset_before.s: 0.1\n            offset_after.s: 0.2\n            offset_before_ts.s: 0.3\n            offset_after_ts.s: 1\n            times:\n            -    \"2022-02-25T14:00:00.4\"\n            -    \"2022-02-25T14:01:00.15\"\n            -    \"2022-02-25T14:02:00.18\"\n```\n##### Output plots\n###### time_series\n![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Entire_time_series_ts.png)\n![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Quiet_time_ts.png)\n\n###### spectra\n![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Quiet_time_spect.png)\n\n###### stack\n![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Stack_Jump_South_stack.png)\n\n###### particle_motion\n![](https://github.com/WayneCrawford/lcheapo/raw/main/README_images/BB02-V1_3-tests_Stack_Jump_South_pm.png)\n\n\n#### 2: Comparing several stations\n\n```yaml\n---\ninput:\n    start_time: null\n    end_time: null\n    datafiles:\n        - \n            name: \"20191107T14_SPOBS09_F02.raw.lch\"\n            obs_type: \"SPOBS2\"\n            station: \"09F2\"\n        - \n            name: \"20191107T14_SPOBS09_F02.raw.lch\"\n            obs_type: \"SPOBS2\"\n            station: \"09c1\"\n        - \n            name: \"20191107T14_SPOBS09_F02.raw.lch\"\n            obs_type: \"SPOBS2\"\n            station: \"09c2\"\n    description: \"Simulation of multi-instrument test\"\noutput:\n    show: True\n    filebase: \"MAYOBS6\"\nplot_globals:\n    stack:\n        offset_before.s: 0.5\n        offset_after.s:  1.5\n        plot_span: False\n    particle_motion:\n        offset_before.s: 0.00\n        offset_after.s: 0.03\n        offset_before_ts.s: 0.1\n        offset_after_ts.s: 0.2\n    spectra:\n        window_length.s: 100\nplots:\n    time_series:\n        -\n            description: \"Entire time series\"\n            select: {station: \"*\"}\n            start_time: null\n            end_time: null\n        -\n            description: \"Quiet period\"\n            select: {channel: \"*3\"}\n            start_time: null\n            end_time: \"2019-11-07T13:57\"\n        -\n            description: \"Rubber hammer taps\"\n            select: {station: \"*\"}\n            start_time: \"2019-11-07T14:08\"\n            end_time: \"2019-11-07T14:11:10\"\n    spectra:\n        -\n            description: \"Entire time series\"\n            select: {component: \"3\"}\n            start_time: null\n            end_time: null\n        -\n            description: \"Quiet period\"\n            select: {channel: \"*3\"}\n            start_time: null\n            end_time: \"2019-11-07T13:57\"\n```\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "LCHEAPO data routines",
    "version": "1.0.6.post2",
    "split_keywords": [
        "oceanography",
        "marine",
        "obs"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "b57b80c23bb1bffa7bea08b611fb89b8",
                "sha256": "c7073296ee223b02bd854007cb32e55ab9fbc7eaa8070940012143ff6afecb3b"
            },
            "downloads": -1,
            "filename": "lcheapo-1.0.6.post2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b57b80c23bb1bffa7bea08b611fb89b8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 103527,
            "upload_time": "2022-12-07T09:36:18",
            "upload_time_iso_8601": "2022-12-07T09:36:18.509017Z",
            "url": "https://files.pythonhosted.org/packages/58/98/e415b08086bfae536c16c7391b10d21581f51348147905287164b208c81d/lcheapo-1.0.6.post2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "4f891cd81bb6b3972a70a4c23dc52b38",
                "sha256": "0d136ec683d7e2c1a90ac57bf461cff3e346116edd0bb373ce620da5e129e35e"
            },
            "downloads": -1,
            "filename": "lcheapo-1.0.6.post2.tar.gz",
            "has_sig": false,
            "md5_digest": "4f891cd81bb6b3972a70a4c23dc52b38",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 87665,
            "upload_time": "2022-12-07T09:36:22",
            "upload_time_iso_8601": "2022-12-07T09:36:22.429823Z",
            "url": "https://files.pythonhosted.org/packages/d2/43/060b94ccb489daccb1ed0f611465ace606f2b4637cc66e0858391464ee11/lcheapo-1.0.6.post2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-12-07 09:36:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "WayneCrawford",
    "github_project": "lcheapo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "lcheapo"
}
        
Elapsed time: 0.01502s