MolecularGraph.jl

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

README.md on GitHub

Installation

(@v1.8) pkg> add MolecularGraph

Usage

See Pluto.jl notebook tutorials

  • Getting started
  • Molecular graph basics
    • Scope of MolecularGraph.jl
    • Considerations in molecular graph implementation
    • Basic operations provided by Graphs.jl interface
    • MolGraph type and atom/bond properties
  • Properties and descriptors
    • Built-in molecule properties and descriptors
      • Lipinski's Rule of five (RO5)
      • Molecular formula
      • Atom and bond properties
      • Graph topology (ring and fused ring)
    • Auto-update mechanism of properties
  • Preprocessing
    • Remove hydrogen vertices
    • Extract molecules of interest
    • Standardize charges
    • Dealing with resonance structure
    • Customize property updater
  • Mass and isotopes
    • Molecular weight and exact mass
    • Uncertainty
    • Isotopic composition
    • Simulate mass spectrum
  • Substructure and query
    • Substructure match
    • InChI and InChIKey
    • SMARTS query
    • Structural alerts (e.g. PAINS)
    • Functional group analysis
    • Query containment
  • Maximum common substructure (MCS)
    • Maximum common induced substructure (MCIS)
    • Maximum common edge-induced substructure (MCES)
    • Connected or disconnected MCS
    • Working with larger molecules
    • Topological constraint (tdMCS)
  • Drawing molecule
    • Settings of 2D structure images
      • Change image size
      • Layout for web and Pluto notebook
    • Regenerate 2D coordinates
    • 3D molecule rendering using Makie.jl

License

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

(C) 2018-2023 Seiji Matsuoka and contributors