CGRTools

https://zenodo.org/badge/14690494.svg

Tools for processing of reactions based on Condensed Graph of Reaction (CGR) approach.

Basic operations:
  • Read/write/convert formats: MDL .RDF (RXN) and .SDF (MOL), .MRV, SMILES, INCHI (Linux and Windows), .XYZ, .PDB

  • Standardize molecules and reactions and valid structures checker.

  • Duplicate searching.

  • Tetrahedron, Allene and CIS-TRANS stereo checking.

  • Produce CGRs.

  • Perform subgraph search.

  • Build/edit molecules and reactions.

  • Produce template based reactions and molecules.

  • Atom-to-atom mapping checker and rule-based fixer.

  • Perform MCS search.

  • 2d coordinates generation (based on SmilesDrawer)

  • 2d/3d depiction.

Full documentation can be found here

INSTALL

Highly recommended to use python 3.8+. Python 3.6 and 3.7 deprecated.

Linux Debian based

  • Install python3.8, virtualenv and git:

    sudo apt install python3.8 python3.8-dev git python3-virtualenv
    
  • Create new environment and activate it:

    virtualenv -p python3.8 venv
    source venv/bin/activate
    

Mac

  • Install python3.8 and git using brew:

    brew install git
    brew install python3
    
  • Install virtualenv:

    pip install virtualenv
    
  • Create new environment and activate it:

    virtualenv -p python3.8 venv
    source venv/bin/activate
    

Windows

  • Install python3.8 and git using Chocolatey:

    choco install git
    choco install python3
    
  • Install virtualenv:

    pip install virtualenv
    
  • Create new environment and activate it:

    virtualenv venv
    venv\Scripts\activate
    

General part

  • stable version available through PyPI:

    pip install CGRTools
    
  • Install CGRtools with MRV files parsing support:

    pip install CGRTools[mrv]
    
  • Install CGRtools with structures clean2d support (Note: install NodeJS into system, see details):

    pip install CGRtools[clean2d]
    
  • Install CGRtools with optimized XYZ parser:

    pip install CGRtools[jit]
    

If you still have questions, please open issue within github.

PACKAGING

For wheel generation just type next command in source root:

python setup.py bdist_wheel

CONTRIBUTORS

CITE THIS

CGRtools: Python Library for Molecule, Reaction, and Condensed Graph of Reaction Processing. Journal of Chemical Information and Modeling 2019 59 (6), 2516-2521. DOI: 10.1021/acs.jcim.9b00102

CGRtools package

CGRtools.inchi(inchi: str) Union[CGRtools.containers.molecule.MoleculeContainer, Dict[str, str]]

convert INCHI string into MoleculeContainer object. string should be start with INCHI and optionally continues with space/tab separated list of key:value [or key=value] data.

CGRtools.smiles(smiles: str) Union[CGRtools.containers.molecule.MoleculeContainer, CGRtools.containers.cgr.CGRContainer, CGRtools.containers.reaction.ReactionContainer, Dict[str, str]]

SMILES string parser.

Subpackages

Tutorial