SMI_CANONICALISE(1)

NAME
smi_canonicalise - canonicalise SMILES

DESCRIPTION
USAGE

    smi_canonicalise [<args>] [<files>]

DESCRIPTION

    smi_canonicalise reads in files with SMILES descriptors and outputs them according to stable atom ordering established by Graph::Nauty. Moieties, if more than one, are ordered in lexicographic order.

OPTIONS

--infer-hydrogens
    infer hydrogen atom counts according to valency rules [default]

--no-infer-hydrogens
    do not infer hydrogen atom counts

--aromatise
    aromatise Kekule structures (experimental)

--no-aromatise
    do not attempt to aromatise [default]

--aromatisation-method STR
    Mark flat rings as aromatic. Two methods are supported: 'electron-cycles', which follows Richard L. Apodaca's electron cycle-based approach (default), 'Huckel', which aims to follow H??ckel's rule as implemented in Chemistry::Ring. 'external-list': uses aromaticity defined using --aromatic-atoms or --aromatic-bonds options.

--aromatic-atoms STR
    comma-separated list of 0-based aromatic atom numbers to be consulted during aromaticity detection. Implies --aromatisation-method 'external-list'.

--aromatic-bonds STR
    comma-separated list of bonds, expressed as dash-separated pairs of 0-based aromatic atom numbers. The list is consulted during aromaticity detection. Implies --aromatisation-method 'external-list'.

--kekulise
    kekulise simple aromatic structures (experimental)

--no-kekulise
    do not attempt to kekulise [default]

--no-acyclic-aromatic-bonds
    convert acyclic aromatic bonds to single

--canonicalise-haloanions
    canonicalise the representation of haloanions [default]

--no-canonicalise-haloanions
    retain input representation of haloanions

--canonicalise-nitro-groups
    canonicalise the representation of nitro groups by converting them from *-[N+]([O-])=O to *-N(=O)=O

--no-canonicalise-nitro-groups
    retain input representation of nitro groups [default]

--ignore-class
    ignore SMILES atom class in canonicalisation (useful for testing)

--preserve-order
    preserve input order of molecular entities and atoms

--random-order
    instead of canonical, output SMILES in random order (useful for testing)

--help
    print usage message and exit