=====
dupin
=====
|Cite|
|Github-Stars|
.. |Cite| image:: https://img.shields.io/badge/dupin-cite-yellow
:target: https://dupin.readthedocs.io/citing.html
.. |GitHub-Stars| image:: https://img.shields.io/github/stars/glotzerlab/dupin.svg
:target: https://github.com/glotzerlab/dupin
Welcome to ``dupin`` a Python package for detecting rare events in molecular simulations.
Overview
--------
**dupin** is designed to provide an unopinionated Python API for partitioning temporal point cloud data into regions of stability and transition.
Generally such data comes from molecular simulations or experimental imaging techniques.
For example, if a researcher imaged gold nanoparticles nucleating into FCC crystal, **dupin** could help to partition the system into the initial fluid, transition, and crystal regions of the point cloud trajectory.
Though, **dupin** attempts to be general and *unopinionated* we provide sensible defaults and do not sacrifice ease of use for customizability.
Resources
---------
- `Documentation <https://dupin.readthedocs.io/en/latest/index.html>`__: Read our API documentation.
- `Installation Guide <https://dupin.readthedocs.io/en/latest/installation.html>`__: Look at our installation guide.
- `GitHub Repository <https://github.com/glotzerlab/dupin>`__: Check out the source code.
- `Issue Tracker <https://github.com/glotzerlab/dupin/issues>`__: File a bug report or pull request.
Related Tools
-------------
- `HOOMD-blue <https://hoomd-blue.readthedocs.io/en/stable/index.html>`__: Molecular simulation engine
- `freud <https://freud.readthedocs.io/en/stable/index.html>`__: Molecular trajectory analysis
- `ruptures <https://centre-borelli.github.io/ruptures-docs/>`__: Change point decection library
- `kneed <https://kneed.readthedocs.io/en/latest/>`__: Elbow detection library
Example
-------
.. code-block:: python
import dupin as du
import numpy as np
import ruptures as rpt
signal = np.load("signal.npy")
dynp = rpt.Dynp(custom_cost=du.detect.CostLinearFit())
detector = du.detect.SweepDetector(dynp, 8)
chps = detector.fit(signal)
.. image:: docs/_static/detect.gif
Credits
-------
This package was created with `Cookiecutter <https://github.com/audreyr/cookiecutter>`_ based on a
modified version of `audreyr/cookiecutter-pypackage <https://github.com/audreyr/cookiecutter-pypackage>`_.
Raw data
{
"_id": null,
"home_page": "",
"name": "dupin",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "Brandon Butler <butlerbr@umich.edu>",
"keywords": "event detection,molecular simulations",
"author": "",
"author_email": "\"Brandon Butler et al.\" <butlerbr@umich.edu>",
"download_url": "https://files.pythonhosted.org/packages/a7/dd/36ca99db6be5e94cea59e44316b396c82c3819d52fbe8cdee55092f5360e/dupin-0.1.tar.gz",
"platform": null,
"description": "=====\ndupin\n=====\n\n|Cite|\n|Github-Stars|\n\n.. |Cite| image:: https://img.shields.io/badge/dupin-cite-yellow\n :target: https://dupin.readthedocs.io/citing.html\n.. |GitHub-Stars| image:: https://img.shields.io/github/stars/glotzerlab/dupin.svg\n :target: https://github.com/glotzerlab/dupin\n\nWelcome to ``dupin`` a Python package for detecting rare events in molecular simulations.\n\nOverview\n--------\n\n**dupin** is designed to provide an unopinionated Python API for partitioning temporal point cloud data into regions of stability and transition.\nGenerally such data comes from molecular simulations or experimental imaging techniques.\nFor example, if a researcher imaged gold nanoparticles nucleating into FCC crystal, **dupin** could help to partition the system into the initial fluid, transition, and crystal regions of the point cloud trajectory.\nThough, **dupin** attempts to be general and *unopinionated* we provide sensible defaults and do not sacrifice ease of use for customizability.\n\nResources\n---------\n- `Documentation <https://dupin.readthedocs.io/en/latest/index.html>`__: Read our API documentation.\n- `Installation Guide <https://dupin.readthedocs.io/en/latest/installation.html>`__: Look at our installation guide.\n- `GitHub Repository <https://github.com/glotzerlab/dupin>`__: Check out the source code.\n- `Issue Tracker <https://github.com/glotzerlab/dupin/issues>`__: File a bug report or pull request.\n\nRelated Tools\n-------------\n\n- `HOOMD-blue <https://hoomd-blue.readthedocs.io/en/stable/index.html>`__: Molecular simulation engine\n- `freud <https://freud.readthedocs.io/en/stable/index.html>`__: Molecular trajectory analysis\n- `ruptures <https://centre-borelli.github.io/ruptures-docs/>`__: Change point decection library\n- `kneed <https://kneed.readthedocs.io/en/latest/>`__: Elbow detection library\n\nExample\n-------\n\n.. code-block:: python\n\n import dupin as du\n import numpy as np\n import ruptures as rpt\n\n signal = np.load(\"signal.npy\")\n dynp = rpt.Dynp(custom_cost=du.detect.CostLinearFit())\n detector = du.detect.SweepDetector(dynp, 8)\n\n chps = detector.fit(signal)\n\n.. image:: docs/_static/detect.gif\n\nCredits\n-------\n\nThis package was created with `Cookiecutter <https://github.com/audreyr/cookiecutter>`_ based on a\nmodified version of `audreyr/cookiecutter-pypackage <https://github.com/audreyr/cookiecutter-pypackage>`_.\n",
"bugtrack_url": null,
"license": "",
"summary": "Offline and online event detection scheme for rare events in molecular simulations.",
"version": "0.1",
"project_urls": {
"Documentation": "https://dupin.readthedocs.io",
"Issues": "https://github.com/glotzerlab/dupin/issues",
"Source": "https://github.com/glotzerlab/dupin"
},
"split_keywords": [
"event detection",
"molecular simulations"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0d7b92030a1f9007ba0ddb072ee61a9af5ab2b939e2f662bcc9a6d28962eea5c",
"md5": "27fb6a5e7563fec36596584b77b06928",
"sha256": "00adf2d9054d3d8580a2545770617511719a1949c49cc564cc3bbcf48a450626"
},
"downloads": -1,
"filename": "dupin-0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "27fb6a5e7563fec36596584b77b06928",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 41148,
"upload_time": "2024-01-18T22:29:26",
"upload_time_iso_8601": "2024-01-18T22:29:26.435241Z",
"url": "https://files.pythonhosted.org/packages/0d/7b/92030a1f9007ba0ddb072ee61a9af5ab2b939e2f662bcc9a6d28962eea5c/dupin-0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a7dd36ca99db6be5e94cea59e44316b396c82c3819d52fbe8cdee55092f5360e",
"md5": "65f6746f688c0f490a84d1476eb0a183",
"sha256": "b6f09c49cb088989d5383601d92f76833f04a165fec57f13b311bdebde357036"
},
"downloads": -1,
"filename": "dupin-0.1.tar.gz",
"has_sig": false,
"md5_digest": "65f6746f688c0f490a84d1476eb0a183",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 752689,
"upload_time": "2024-01-18T22:29:27",
"upload_time_iso_8601": "2024-01-18T22:29:27.621561Z",
"url": "https://files.pythonhosted.org/packages/a7/dd/36ca99db6be5e94cea59e44316b396c82c3819d52fbe8cdee55092f5360e/dupin-0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-18 22:29:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "glotzerlab",
"github_project": "dupin",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "bottleneck",
"specs": []
},
{
"name": "freud-analysis",
"specs": []
},
{
"name": "kneed",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "ruptures",
"specs": []
},
{
"name": "scikit-learn",
"specs": []
},
{
"name": "pandas",
"specs": []
}
],
"lcname": "dupin"
}