Welcome to SyGMa’s documentation!

Contents:

Introduction

SyGMa is a python library for the Systematic Generation of potential Metabolites. It is a reimplementation of the metabolic rules outlined in Ridder, L., & Wagener, M. (2008) SyGMa: combining expert knowledge and empirical scoring in the prediction of metabolites. ChemMedChem, 3(5), 821-832.

Requirements

SyGMa requires RDKit with INCHI support

Installation

  • Install with Anaconda: conda install -c 3d-e-Chem -c rdkit sygma

OR

AND

  • pip install sygma OR, after downloading sygma, python setup.py install

Example

import sygma
from rdkit import Chem


def test_predict_phenol_metabolites():
    """Test prediction of phenol metabolites by sygma module"""

    # Each step in a scenario lists the ruleset and the number of reaction cycles to be applied
    scenario = sygma.Scenario([
        [sygma.ruleset['phase1'], 1],
        [sygma.ruleset['phase2'], 1]])

    # An rdkit molecule, optionally with 2D coordinates, is required as parent molecule
    parent = Chem.MolFromSmiles("c1ccccc1O")

    metabolic_tree = scenario.run(parent)
    metabolic_tree.calc_scores()

    metabolite_list = metabolic_tree.to_list()
    assert len(metabolite_list) == 12
    assert metabolite_list[0]['SyGMa_score'] == 1
    assert metabolite_list[1]['SyGMa_pathway'] == 'O-glucuronidation_(aromatic_hydroxyl); \n'

Docker

SyGMa can be executed in a Docker container as follows:

docker run 3dechem/sygma c1ccccc1O

Rulesets

SyGMa comes currently with two rulesets:

phase1
Phase 1 metabolism rules include mainly different types of oxidation, hydrolysis, reduction and condensation reactions
phase2
Phase 2 metabolism rules include severaly conjugation reaction, i.e. with glucuronyl, sulfate, methyl and acetyl

Indices and tables