molcomplex


Namemolcomplex JSON
Version 1.0.3 PyPI version JSON
download
home_pagehttps://github.com/patonlab/molcomplex
SummaryMolecular Complexity Calculations
upload_time2024-07-20 06:23:58
maintainerNone
docs_urlNone
authorGuilian Luchini, Shree Sowndarya S. V.
requires_python>=3.0
licenseMIT
keywords workflows computational chemistry cheminformatics molecular complexity dft automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
                      ___           ___                         ___           ___           ___           ___                       ___           ___      
         /\  \         /\  \                       /\__\         /\  \         /\  \         /\  \                     /\__\         /|  |     
        |::\  \       /::\  \                     /:/  /        /::\  \       |::\  \       /::\  \                   /:/ _/_       |:|  |     
        |:|:\  \     /:/\:\  \                   /:/  /        /:/\:\  \      |:|:\  \     /:/\:\__\                 /:/ /\__\      |:|  |     
      __|:|\:\  \   /:/  \:\  \   ___     ___   /:/  /  ___   /:/  \:\  \   __|:|\:\  \   /:/ /:/  /  ___     ___   /:/ /:/ _/_   __|:|__|     
     /::::|_\:\__\ /:/__/ \:\__\ /\  \   /\__\ /:/__/  /\__\ /:/__/ \:\__\ /::::|_\:\__\ /:/_/:/  /  /\  \   /\__\ /:/_/:/ /\__\ /::::\__\_____
     \:\~~\  \/__/ \:\  \ /:/  / \:\  \ /:/  / \:\  \ /:/  / \:\  \ /:/  / \:\~~\  \/__/ \:\/:/  /   \:\  \ /:/  / \:\/:/ /:/  / ~~~~\::::/___/
      \:\  \        \:\  /:/  /   \:\  /:/  /   \:\  /:/  /   \:\  /:/  /   \:\  \        \::/__/     \:\  /:/  /   \::/_/:/  /      |:|~~|    
       \:\  \        \:\/:/  /     \:\/:/  /     \:\/:/  /     \:\/:/  /     \:\  \        \:\  \      \:\/:/  /     \:\/:/  /       |:|  |    
        \:\__\        \::/  /       \::/  /       \::/  /       \::/  /       \:\__\        \:\__\      \::/  /       \::/  /        |:|__|    
         \/__/         \/__/         \/__/         \/__/         \/__/         \/__/         \/__/       \/__/         \/__/         |/__/     
                                                                                                                                                                                                                                                                                  
Implementing a variety of complementary metrics for molecular complexity and synthetic accessibility.

A collaboration with the Sarpong group to understand complexity of molecules

# Requirements
- numpy, pandas
- rdkit
- openbabel
- mordred 
- SYBA (conda install -c lich syba)

## Set up conda environment directly using the yml file:
To install the required packages through Conda, use the env.yml file as follows and the activate the environment: 
1. `conda env create -f env.yml`
2. `conda activate mc`
This will set up the environment with molcomplex installed.

## For installation by cloning the GitHub folder, perform the follwoing steps:
1. Download the zipped folder or clone using: `git clone https://github.com/patonlab/molcomplex.git`  
2. Navigate to the installed folder and run: `python setup.py install`. This will install `molcomplex` in the environment you are present in. 
3. Install necessary dependencies using the following: `conda install -c lich syba`, `conda install -c conda-forge rdkit`, and `conda install -c conda-forge openbabel`

## Recommended installation and update guide (under works)
In a nutshell, `molcomplex` and its dependencies are installed/updated as follows:  
1. Install using conda-forge: `conda install -c conda-forge molcomplex`  
2. Update to the latest version: `pip install molcomplex --upgrade` 

## Usage
To display the options type:

``python -m molcomplex -h``

The `molcomplex` package can be utilised as follows to obtain a csv with complexity scores.

``python -m molcomplex -f examples/test.txt``

To write to CSV add in the following:

``python -m molcomplex -f examples/test.txt --csv``

To perform a retro analysis by breaking down bonds to get complexity scores for precursors of the input SMILES add the following option:

``python -m molcomplex -f examples/test.txt --csv --retro``

## Usage APP
To run the web app perform the following steps:
1. Navigate to the webapp folder: `cd mcwebapp`
2. Run the app as follows: `python molcomplexapp.py`
3. copy paste the `http://127.0.0.1:8050/` or similar into web browser to utilise as an app.


# Metrics implemented
- Bertz Complexity (CT) Score (JACS 1981, 103, 3241-3243)
- Balaban J Score (Chem. Phys. Lett. 1982, 89, 399-404)
- Coley SCScore (J. Chem. Inf. Model. 2018, 58, 2, 252)
- IPC: Bonchev & Trinajstic's information content of the coefficients of the characteristic polynomial of the adjacency matrix of a hydrogen-suppressed graph of a molecule (J. Chem. Phys. 1977, 67, 4517-4533)
- Ertl SA_Score (J. Cheminform. 2009, 1, 8)
- Boettcher Score (J. Chem. Inf. Model. 2016, 56, 3, 462–470)
- Rücker's total walk count (twc) index: Rücker, G.; Rücker, C. Counts of All Walks as Atomic and Molecular Descriptors. (J. Chem. Inf. Comput. Sci. 1993, 33, 683-695)
- Proudfoot's Cm index based on atom environments: Proudfoot, J. R. A path based approach to assessing molecular complexity. Bioorganic Med. Chem. Lett. 27, 2014–2017 (2017)
- Kappa Shape Indices 1, 2 & 3 (Quant. Struct. Act. Relat. 1986, 5, 1-7)
- McGowan Volume (Chromatographia, 1987, 23, 243-246)
- Labute Approximate Surface Area (Methods Mol Biol 2004, 275, 261-78)
- Van der Waals Volume Atomic and Bond Contributions (J. Org. Chem. 2003, 68, 7368-7373).
- Zagreb Index 
- MOE Type Desciptors (Labute ASA, PEOE VSA, SMR VSA, SLogP VSA)
- SYBA Score (J. Cheminformatics 2020, 12, 35)
- Multiple additional 2D metrics.

# To do list
- compare against human metric
- comment out descriptors that are highly correlated (say > 0.9)

# Currently broken
- Kier's alpha-modified shape indices

# Metrics to implement:

- Bertz’s Ns and Nt index: Bertz, S. H. & Sommer, T. J. Rigorous mathematical approaches to strategic bonds and synthetic analysis based on conceptually simple new complexity indices. Chem. Commun. 16, 2409–2410 (1997).

- Randić's zeta index: Randić, M. & Plavšić, D. Characterization of molecular complexity. Int. J. Quantum Chem. 91, 20–31 (2002).

- https://www.nature.com/articles/s41598-018-37253-8

Two noteworthy substructure-based methods are:
- Barone, R. & Chanon, M. A new and simple approach to chemical complexity. Application to the synthesis of natural products. J. Chem. Inf. Comput. Sci. 41, 269–272 (2001).

- Whitlock, H. W. On the structure of total synthesis of complex natural products. J. Org. Chem. 63, 7982–7989 (1998).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/patonlab/molcomplex",
    "name": "molcomplex",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.0",
    "maintainer_email": null,
    "keywords": "workflows, computational chemistry, cheminformatics, molecular complexity, DFT, automation",
    "author": "Guilian Luchini, Shree Sowndarya S. V.",
    "author_email": "guilian.luchini@colostate.edu, svss@colostate.edu",
    "download_url": "https://files.pythonhosted.org/packages/e1/77/aaf2988cdceb4b1934988b67fc6013d0431d524afb0505730386468bc32f/molcomplex-1.0.3.tar.gz",
    "platform": null,
    "description": "          ___           ___                         ___           ___           ___           ___                       ___           ___      \n         /\\  \\         /\\  \\                       /\\__\\         /\\  \\         /\\  \\         /\\  \\                     /\\__\\         /|  |     \n        |::\\  \\       /::\\  \\                     /:/  /        /::\\  \\       |::\\  \\       /::\\  \\                   /:/ _/_       |:|  |     \n        |:|:\\  \\     /:/\\:\\  \\                   /:/  /        /:/\\:\\  \\      |:|:\\  \\     /:/\\:\\__\\                 /:/ /\\__\\      |:|  |     \n      __|:|\\:\\  \\   /:/  \\:\\  \\   ___     ___   /:/  /  ___   /:/  \\:\\  \\   __|:|\\:\\  \\   /:/ /:/  /  ___     ___   /:/ /:/ _/_   __|:|__|     \n     /::::|_\\:\\__\\ /:/__/ \\:\\__\\ /\\  \\   /\\__\\ /:/__/  /\\__\\ /:/__/ \\:\\__\\ /::::|_\\:\\__\\ /:/_/:/  /  /\\  \\   /\\__\\ /:/_/:/ /\\__\\ /::::\\__\\_____\n     \\:\\~~\\  \\/__/ \\:\\  \\ /:/  / \\:\\  \\ /:/  / \\:\\  \\ /:/  / \\:\\  \\ /:/  / \\:\\~~\\  \\/__/ \\:\\/:/  /   \\:\\  \\ /:/  / \\:\\/:/ /:/  / ~~~~\\::::/___/\n      \\:\\  \\        \\:\\  /:/  /   \\:\\  /:/  /   \\:\\  /:/  /   \\:\\  /:/  /   \\:\\  \\        \\::/__/     \\:\\  /:/  /   \\::/_/:/  /      |:|~~|    \n       \\:\\  \\        \\:\\/:/  /     \\:\\/:/  /     \\:\\/:/  /     \\:\\/:/  /     \\:\\  \\        \\:\\  \\      \\:\\/:/  /     \\:\\/:/  /       |:|  |    \n        \\:\\__\\        \\::/  /       \\::/  /       \\::/  /       \\::/  /       \\:\\__\\        \\:\\__\\      \\::/  /       \\::/  /        |:|__|    \n         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/       \\/__/         \\/__/         |/__/     \n                                                                                                                                                                                                                                                                                  \nImplementing a variety of complementary metrics for molecular complexity and synthetic accessibility.\n\nA collaboration with the Sarpong group to understand complexity of molecules\n\n# Requirements\n- numpy, pandas\n- rdkit\n- openbabel\n- mordred \n- SYBA (conda install -c lich syba)\n\n## Set up conda environment directly using the yml file:\nTo install the required packages through Conda, use the env.yml file as follows and the activate the environment: \n1. `conda env create -f env.yml`\n2. `conda activate mc`\nThis will set up the environment with molcomplex installed.\n\n## For installation by cloning the GitHub folder, perform the follwoing steps:\n1. Download the zipped folder or clone using: `git clone https://github.com/patonlab/molcomplex.git`  \n2. Navigate to the installed folder and run: `python setup.py install`. This will install `molcomplex` in the environment you are present in. \n3. Install necessary dependencies using the following: `conda install -c lich syba`, `conda install -c conda-forge rdkit`, and `conda install -c conda-forge openbabel`\n\n## Recommended installation and update guide (under works)\nIn a nutshell, `molcomplex` and its dependencies are installed/updated as follows:  \n1. Install using conda-forge: `conda install -c conda-forge molcomplex`  \n2. Update to the latest version: `pip install molcomplex --upgrade` \n\n## Usage\nTo display the options type:\n\n``python -m molcomplex -h``\n\nThe `molcomplex` package can be utilised as follows to obtain a csv with complexity scores.\n\n``python -m molcomplex -f examples/test.txt``\n\nTo write to CSV add in the following:\n\n``python -m molcomplex -f examples/test.txt --csv``\n\nTo perform a retro analysis by breaking down bonds to get complexity scores for precursors of the input SMILES add the following option:\n\n``python -m molcomplex -f examples/test.txt --csv --retro``\n\n## Usage APP\nTo run the web app perform the following steps:\n1. Navigate to the webapp folder: `cd mcwebapp`\n2. Run the app as follows: `python molcomplexapp.py`\n3. copy paste the `http://127.0.0.1:8050/` or similar into web browser to utilise as an app.\n\n\n# Metrics implemented\n- Bertz Complexity (CT) Score (JACS 1981, 103, 3241-3243)\n- Balaban J Score (Chem. Phys. Lett. 1982, 89, 399-404)\n- Coley SCScore (J. Chem. Inf. Model. 2018, 58, 2, 252)\n- IPC: Bonchev & Trinajstic's information content of the coefficients of the characteristic polynomial of the adjacency matrix of a hydrogen-suppressed graph of a molecule (J. Chem. Phys. 1977, 67, 4517-4533)\n- Ertl SA_Score (J. Cheminform. 2009, 1, 8)\n- Boettcher Score (J. Chem. Inf. Model. 2016, 56, 3, 462\u2013470)\n- R\u00fccker's total walk count (twc) index: R\u00fccker, G.; R\u00fccker, C. Counts of All Walks as Atomic and Molecular Descriptors. (J. Chem. Inf. Comput. Sci. 1993, 33, 683-695)\n- Proudfoot's Cm index based on atom environments: Proudfoot, J. R. A path based approach to assessing molecular complexity. Bioorganic Med. Chem. Lett. 27, 2014\u20132017 (2017)\n- Kappa Shape Indices 1, 2 & 3 (Quant. Struct. Act. Relat. 1986, 5, 1-7)\n- McGowan Volume (Chromatographia, 1987, 23, 243-246)\n- Labute Approximate Surface Area (Methods Mol Biol 2004, 275, 261-78)\n- Van der Waals Volume Atomic and Bond Contributions (J. Org. Chem. 2003, 68, 7368-7373).\n- Zagreb Index \n- MOE Type Desciptors (Labute ASA, PEOE VSA, SMR VSA, SLogP VSA)\n- SYBA Score (J. Cheminformatics 2020, 12, 35)\n- Multiple additional 2D metrics.\n\n# To do list\n- compare against human metric\n- comment out descriptors that are highly correlated (say > 0.9)\n\n# Currently broken\n- Kier's alpha-modified shape indices\n\n# Metrics to implement:\n\n- Bertz\u2019s Ns and Nt index: Bertz, S. H. & Sommer, T. J. Rigorous mathematical approaches to strategic bonds and synthetic analysis based on conceptually simple new complexity indices. Chem. Commun. 16, 2409\u20132410 (1997).\n\n- Randi\u0107's zeta index: Randi\u0107, M. & Plav\u0161i\u0107, D. Characterization of molecular complexity. Int. J. Quantum Chem. 91, 20\u201331 (2002).\n\n- https://www.nature.com/articles/s41598-018-37253-8\n\nTwo noteworthy substructure-based methods are:\n- Barone, R. & Chanon, M. A new and simple approach to chemical complexity. Application to the synthesis of natural products. J. Chem. Inf. Comput. Sci. 41, 269\u2013272 (2001).\n\n- Whitlock, H. W. On the structure of total synthesis of complex natural products. J. Org. Chem. 63, 7982\u20137989 (1998).\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Molecular Complexity Calculations",
    "version": "1.0.3",
    "project_urls": {
        "Download": "https://github.com/patonlab/molcomplex/archive/refs/tags/v1.0.3.tar.gz",
        "Homepage": "https://github.com/patonlab/molcomplex"
    },
    "split_keywords": [
        "workflows",
        " computational chemistry",
        " cheminformatics",
        " molecular complexity",
        " dft",
        " automation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6aaa836764e96e8d478829bc53d1591e8ec3373bb14a88f599b65b37e034c63f",
                "md5": "420491347fba356ab0d783f3cfa2fb9e",
                "sha256": "016252698b3083bdd01951de4c2dc38726e7e8255d11108fc5c3554a71b75e9f"
            },
            "downloads": -1,
            "filename": "molcomplex-1.0.3-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "420491347fba356ab0d783f3cfa2fb9e",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.0",
            "size": 69931696,
            "upload_time": "2024-07-20T06:23:27",
            "upload_time_iso_8601": "2024-07-20T06:23:27.329662Z",
            "url": "https://files.pythonhosted.org/packages/6a/aa/836764e96e8d478829bc53d1591e8ec3373bb14a88f599b65b37e034c63f/molcomplex-1.0.3-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e177aaf2988cdceb4b1934988b67fc6013d0431d524afb0505730386468bc32f",
                "md5": "276220806b9e018569fba1c8434609fd",
                "sha256": "a551ecf6bfb660440af36c1f507c22bbcdd26cb4ce929b45b360ecdecd0dfc8d"
            },
            "downloads": -1,
            "filename": "molcomplex-1.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "276220806b9e018569fba1c8434609fd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.0",
            "size": 69369082,
            "upload_time": "2024-07-20T06:23:58",
            "upload_time_iso_8601": "2024-07-20T06:23:58.840499Z",
            "url": "https://files.pythonhosted.org/packages/e1/77/aaf2988cdceb4b1934988b67fc6013d0431d524afb0505730386468bc32f/molcomplex-1.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-20 06:23:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "patonlab",
    "github_project": "molcomplex",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "molcomplex"
}
        
Elapsed time: 0.43061s