pystorm3


Namepystorm3 JSON
Version 0.1.6 PyPI version JSON
download
home_pagehttps://github.com/NeuroLife77/pystorm
SummaryPython implementation of some Brainstorm functions
upload_time2024-04-17 17:50:59
maintainerDominic Boutet
docs_urlNone
authorDominic Boutet
requires_python>=3.9
licenseGPL-3.0 license
keywords neuroscience neuroimaging neural oscillations time series analysis time frequency analysis
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Pystorm
Python implementation of various functions from the [Brainstorm](https://neuroimage.usc.edu/brainstorm/) [repository](https://github.com/brainstorm-tools/brainstorm3), often written for GPU compatibility and/or jit compilation.

## Note on the current scope of Pystorm
Pystorm does not handle interactions with Brainstorm or matlab and, in its current state, does not handle loading of data files. 

It mainly operates as a library of functions to perform operations on data directly (e.g., numpy array of sensor signals and imaging kernel). 

It aims to be lightweight, fast, and hopefully easily scalable to parallel computing and high performance computing.

It can be installed using pip through pypi where it is named **pystorm3**: 

`python -m pip install pystorm3` 

or

`pip install pystorm3`.

## Pystorm functions

### Currently implemented
- Power spectral density estimation ([PSD Welch method](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/timefreq/bst_psd.m), physical units only) in source and sensor space (can operate on GPU)
- Band-pass filtering (equivalent to ["bst-hfilter-2019"](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/math/bst_bandpass_hfilter.m))
- Hilbert transform
- Amplitude envelope correlation (equivalent to ["penv" and "oenv"](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/connectivity/bst_henv.m)). Can only be applied on signal directly for now: does not work with (sensor, kernel) input.

### Coming soon
- Sign flip for parcellated source signal
- [tPAC](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/process/functions/process_pac_dynamic.m) (time-resolved Phase-Amplitude Coupling) with [surrogate data z-score](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/process/functions/process_pac_dynamic_sur2.m)

### Currently not implemented
- Handling of unconstrained sources

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/NeuroLife77/pystorm",
    "name": "pystorm3",
    "maintainer": "Dominic Boutet",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "dominic.boutet@mail.mcgill.ca",
    "keywords": "neuroscience, neuroimaging, neural oscillations, time series analysis, time frequency analysis",
    "author": "Dominic Boutet",
    "author_email": "dominic.boutet@mail.mcgill.ca",
    "download_url": "https://files.pythonhosted.org/packages/cc/19/bd361fcb39f38411bc7cd55bee5fec9ae3c3b1a35919ce632b19fe2e5aa5/pystorm3-0.1.6.tar.gz",
    "platform": null,
    "description": "# Pystorm\nPython implementation of various functions from the [Brainstorm](https://neuroimage.usc.edu/brainstorm/) [repository](https://github.com/brainstorm-tools/brainstorm3), often written for GPU compatibility and/or jit compilation.\n\n## Note on the current scope of Pystorm\nPystorm does not handle interactions with Brainstorm or matlab and, in its current state, does not handle loading of data files. \n\nIt mainly operates as a library of functions to perform operations on data directly (e.g., numpy array of sensor signals and imaging kernel). \n\nIt aims to be lightweight, fast, and hopefully easily scalable to parallel computing and high performance computing.\n\nIt can be installed using pip through pypi where it is named **pystorm3**: \n\n`python -m pip install pystorm3` \n\nor\n\n`pip install pystorm3`.\n\n## Pystorm functions\n\n### Currently implemented\n- Power spectral density estimation ([PSD Welch method](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/timefreq/bst_psd.m), physical units only) in source and sensor space (can operate on GPU)\n- Band-pass filtering (equivalent to [\"bst-hfilter-2019\"](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/math/bst_bandpass_hfilter.m))\n- Hilbert transform\n- Amplitude envelope correlation (equivalent to [\"penv\" and \"oenv\"](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/connectivity/bst_henv.m)). Can only be applied on signal directly for now: does not work with (sensor, kernel) input.\n\n### Coming soon\n- Sign flip for parcellated source signal\n- [tPAC](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/process/functions/process_pac_dynamic.m) (time-resolved Phase-Amplitude Coupling) with [surrogate data z-score](https://github.com/brainstorm-tools/brainstorm3/blob/master/toolbox/process/functions/process_pac_dynamic_sur2.m)\n\n### Currently not implemented\n- Handling of unconstrained sources\n",
    "bugtrack_url": null,
    "license": "GPL-3.0 license",
    "summary": "Python implementation of some Brainstorm functions",
    "version": "0.1.6",
    "project_urls": {
        "Homepage": "https://github.com/NeuroLife77/pystorm"
    },
    "split_keywords": [
        "neuroscience",
        " neuroimaging",
        " neural oscillations",
        " time series analysis",
        " time frequency analysis"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aa59cb3bca8fb5a6bd52ba9b70013562ca5fcc0f44ca7ed7fb8a90eba5bac635",
                "md5": "403fbc40d2a511c9a3f8de20587ae9eb",
                "sha256": "31f155dac5228d8ef5c11950def4effe5af2d48080c1ee01422a6fc9f441fbb1"
            },
            "downloads": -1,
            "filename": "pystorm3-0.1.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "403fbc40d2a511c9a3f8de20587ae9eb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 34419,
            "upload_time": "2024-04-17T17:50:55",
            "upload_time_iso_8601": "2024-04-17T17:50:55.323474Z",
            "url": "https://files.pythonhosted.org/packages/aa/59/cb3bca8fb5a6bd52ba9b70013562ca5fcc0f44ca7ed7fb8a90eba5bac635/pystorm3-0.1.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cc19bd361fcb39f38411bc7cd55bee5fec9ae3c3b1a35919ce632b19fe2e5aa5",
                "md5": "cbfc04e705b7babdc54dcb4fe66a4093",
                "sha256": "7eadfdc25249e92267e39e2098cafa1774a5472e11f6fb6e9115f118193e117d"
            },
            "downloads": -1,
            "filename": "pystorm3-0.1.6.tar.gz",
            "has_sig": false,
            "md5_digest": "cbfc04e705b7babdc54dcb4fe66a4093",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 32523,
            "upload_time": "2024-04-17T17:50:59",
            "upload_time_iso_8601": "2024-04-17T17:50:59.231526Z",
            "url": "https://files.pythonhosted.org/packages/cc/19/bd361fcb39f38411bc7cd55bee5fec9ae3c3b1a35919ce632b19fe2e5aa5/pystorm3-0.1.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-17 17:50:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "NeuroLife77",
    "github_project": "pystorm",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pystorm3"
}
        
Elapsed time: 0.24136s