pybindingcurve


Namepybindingcurve JSON
Version 1.2.3 PyPI version JSON
download
home_pageNone
SummaryProtein ligand binding simulation in Python
upload_time2024-06-19 11:57:39
maintainerNone
docs_urlNone
authorSteven Shave
requires_python>=3.9
licenseNone
keywords molecular similarity ligand based virtual screening
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PyBindingCurve

*Shave, Steven, et al. "PyBindingCurve, simulation, and curve fitting to complex binding systems at equilibrium." Journal of Chemical Information and Modeling (2021).* https://doi.org/10.1021/acs.jcim.1c00216

PyBindingCurve is a Python package for simulation, plotting and fitting of experimental parameters to protein-ligand binding systems at equilibrium.  In simple terms, the most basic functionality allows simulation of a two species binding to each other as a function of their concentrations and the dissociation constant (K<sub>D</sub>) between the two species.  A number of systems are built in and can be solved using direct analytical, kinetic, or Langrange multiplier based techniques.  User-defined custom systems can also be specified using a simple syntax.

Try without installing on Google colab! https://colab.research.google.com/drive/1upxm56mGYWo8jvTTJjZLOEq6DT0lRy8d


![PyBindingCurve simulation](https://raw.githubusercontent.com/stevenshave/pybindingcurve/master/pybindingcurve_logo.png "Breaking a dimer")

# Installation
PyBindingCurve may be installed from source present in the GitHub repository https://github.com/stevenshave/pybindingcurve via git pull, or from the Python Package Index (https://pypi.org/project/pybindingcurve/) using the command :
> pip install pybindingcurve

# Requirements
PyBindingCurve requires Python 3.9 or later. The following packages are also required
- numpy>=1.26
- matplotlib>=3.8
- lmfit>=1.2.2
- mpmath>=1.3.0
- autograd>=1.6.2

# License
[MIT License](https://github.com/stevenshave/pybindingcurve/blob/master/LICENSE)



# Usage
A tutorial and API documentation can be found [here](https://stevenshave.github.io/pybindingcurve/)

A quickstart example for simulation of protein-ligand binding is as follows:

```
import numpy as np
import pybindingcurve as pbc
my_system = pbc.BindingCurve("1:1")
system_parameters = {"p": np.linspace(0, 20), "l": 10, "kdpl": 1}
my_system.add_curve(system_parameters)
my_system.show_plot()
```
Tests written using the pytest framework may be run with 'pytest' (ensure pytest is installed in your python environment, or pip install it)

# Authors
PyBindingCurve was written by Steven Shave 
![email](https://raw.githubusercontent.com/stevenshave/pybindingcurve/master/email-address-image.gif)


Please get in contact for custom solutions, integration to existing workflows and training.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pybindingcurve",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "molecular similarity, ligand based virtual screening",
    "author": "Steven Shave",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/9a/e2/d14385223948350d68066da6d62931debbd64e0693859f4637c958045a91/pybindingcurve-1.2.3.tar.gz",
    "platform": null,
    "description": "# PyBindingCurve\r\n\r\n*Shave, Steven, et al. \"PyBindingCurve, simulation, and curve fitting to complex binding systems at equilibrium.\" Journal of Chemical Information and Modeling (2021).* https://doi.org/10.1021/acs.jcim.1c00216\r\n\r\nPyBindingCurve is a Python package for simulation, plotting and fitting of experimental parameters to protein-ligand binding systems at equilibrium.  In simple terms, the most basic functionality allows simulation of a two species binding to each other as a function of their concentrations and the dissociation constant (K<sub>D</sub>) between the two species.  A number of systems are built in and can be solved using direct analytical, kinetic, or Langrange multiplier based techniques.  User-defined custom systems can also be specified using a simple syntax.\r\n\r\nTry without installing on Google colab! https://colab.research.google.com/drive/1upxm56mGYWo8jvTTJjZLOEq6DT0lRy8d\r\n\r\n\r\n![PyBindingCurve simulation](https://raw.githubusercontent.com/stevenshave/pybindingcurve/master/pybindingcurve_logo.png \"Breaking a dimer\")\r\n\r\n# Installation\r\nPyBindingCurve may be installed from source present in the GitHub repository https://github.com/stevenshave/pybindingcurve via git pull, or from the Python Package Index (https://pypi.org/project/pybindingcurve/) using the command :\r\n> pip install pybindingcurve\r\n\r\n# Requirements\r\nPyBindingCurve requires Python 3.9 or later. The following packages are also required\r\n- numpy>=1.26\r\n- matplotlib>=3.8\r\n- lmfit>=1.2.2\r\n- mpmath>=1.3.0\r\n- autograd>=1.6.2\r\n\r\n# License\r\n[MIT License](https://github.com/stevenshave/pybindingcurve/blob/master/LICENSE)\r\n\r\n\r\n\r\n# Usage\r\nA tutorial and API documentation can be found [here](https://stevenshave.github.io/pybindingcurve/)\r\n\r\nA quickstart example for simulation of protein-ligand binding is as follows:\r\n\r\n```\r\nimport numpy as np\r\nimport pybindingcurve as pbc\r\nmy_system = pbc.BindingCurve(\"1:1\")\r\nsystem_parameters = {\"p\": np.linspace(0, 20), \"l\": 10, \"kdpl\": 1}\r\nmy_system.add_curve(system_parameters)\r\nmy_system.show_plot()\r\n```\r\nTests written using the pytest framework may be run with 'pytest' (ensure pytest is installed in your python environment, or pip install it)\r\n\r\n# Authors\r\nPyBindingCurve was written by Steven Shave \r\n![email](https://raw.githubusercontent.com/stevenshave/pybindingcurve/master/email-address-image.gif)\r\n\r\n\r\nPlease get in contact for custom solutions, integration to existing workflows and training.\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Protein ligand binding simulation in Python",
    "version": "1.2.3",
    "project_urls": {
        "Homepage": "https://github.com/stevenshave/pybindingcurve"
    },
    "split_keywords": [
        "molecular similarity",
        " ligand based virtual screening"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1deec42f4f69d3740f4e0835e73a90bd4c504a011e72ea8761dc5f1dece3c193",
                "md5": "31f571c95ed8790dae1ca36355578d4c",
                "sha256": "b355daaaa3ad0b8fd467b68eb03b081f034d8ca58dfa3c07106e36a396f7c573"
            },
            "downloads": -1,
            "filename": "pybindingcurve-1.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "31f571c95ed8790dae1ca36355578d4c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 35357,
            "upload_time": "2024-06-19T11:57:26",
            "upload_time_iso_8601": "2024-06-19T11:57:26.402147Z",
            "url": "https://files.pythonhosted.org/packages/1d/ee/c42f4f69d3740f4e0835e73a90bd4c504a011e72ea8761dc5f1dece3c193/pybindingcurve-1.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9ae2d14385223948350d68066da6d62931debbd64e0693859f4637c958045a91",
                "md5": "4029b41907d0805d8fe51f44412dc178",
                "sha256": "21d929cd72f403300ff4bb8da00694c2d59c2401b3f74178c0137a01f6ac0e31"
            },
            "downloads": -1,
            "filename": "pybindingcurve-1.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "4029b41907d0805d8fe51f44412dc178",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 33705,
            "upload_time": "2024-06-19T11:57:39",
            "upload_time_iso_8601": "2024-06-19T11:57:39.521109Z",
            "url": "https://files.pythonhosted.org/packages/9a/e2/d14385223948350d68066da6d62931debbd64e0693859f4637c958045a91/pybindingcurve-1.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-19 11:57:39",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "stevenshave",
    "github_project": "pybindingcurve",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pybindingcurve"
}
        
Elapsed time: 1.43733s