MolecularGraph.jl

DOI TagBot

MolecularGraph.jl is a graph-based molecule modeling and chemoinformatics analysis toolkit fully implemented in Julia.

Usage

Features

  • Chemical structure file I/O

    • 2D structure image drawing and export to SVG
    • 3D structure drawing
    • SDFile import/export (.sdf, .mol)
    • SMILES/SMARTS parser
  • Database

    • InChI (InChI)
    • Serialization (molecule object <-> JSON)
  • Basic descriptors

    • H-bond donor/acceptor
    • rotatable bonds
    • Aromaticity
    • Wildman-Crippen logP
  • Atomic mass

    • standard atomic/molecular weight
    • relative atomic/molecular mass
    • isotopic composition
  • Molecular graph topology

    • Ring, scaffold, connected components
    • Minimum cycle basis (de Pina algorithm)
      • Smallest set of smallest rings (SSSR)
    • Planarity (left-right planarity test)
    • Maximum matching
      • Kekulization
    • Graph traversal
  • 2D geometry

    • Stereochemistry drawing
    • Coordinates generation (coordgenlibs)
  • Sub(super)structure

    • Library search by using SMARTS query
    • Subgraph isomorphism detection with VF2 algorithm
    • Monomorphism, node-induced and edge-induced
    • Constraints (mandatory/forbidden mapping)
  • SMARTS query-based substructure analysis

    • functional group mining
    • structural alerts (by using ChEMBL dataset)
  • Maximum common substructure (MCS)

    • By clique detection algorithm
    • Node-induced (MCIS) and edge-induced (MCES)
    • Connected and disconnected
    • Topological constraint (known as tdMCS)
    • Diameter restriction (MCS-DR) and graph-based local similarity (GLS)

License

MIT license
See Assets/README.md for details of external data sets and their licenses.

(C) 2018-2022 Seiji Matsuoka and contributors