DESCRIPTION

usage: fmcs [-h] [--maximize {atoms,bonds}] [--min-num-atoms INT]

  • [--compare {topology,elements,types}] [--atom-compare {any,elements,isotopes}] [--bond-compare {any,bondtypes}] [--atom-class-tag TAG] [--ring-matches-ring-only] [--complete-rings-only] [--select SELECT] [--timeout SECONDS] [--output FILENAME] [--output-format {smarts,fragment-smiles,fragment-sdf,complete-sdf}] [--output-all] [--save-atom-class-tag TAG] [--save-counts-tag TAG] [--save-atom-indices-tag TAG] [--save-smarts-tag TAG] [--save-smiles-tag TAG] [--times] [-v] [--version] filename

Find the maximum common substructure of a set of structures

positional arguments:

filename

SDF or SMILES file

optional arguments:

-h, --help

show this help message and exit

--maximize {atoms,bonds}

Maximize the number of 'atoms' or 'bonds' in the MCS. (Default: bonds)

--min-num-atoms INT

Minimimum number of atoms in the MCS (Default: 2)

--compare {topology,elements,types}

Use 'topology' as a shorthand for '--atom-compare any --bond-compare any', 'elements' is '--atom-compare elements --bond-compare any', and 'types' is '--atomcompare elements --bond-compare bondtypes' (Default: types)

--atom-compare {any,elements,isotopes}

Specify the atom comparison method. With 'any', every atom matches every other atom. With 'elements', atoms match only if they contain the same element. With 'isotopes', atoms match only if they have the same isotope number; element information is ignored so [5C] and [5P] are identical. This can be used to implement user-defined atom typing. (Default: elements)

--bond-compare {any,bondtypes}

Specify the bond comparison method. With 'any', every bond matches every other bond. With 'bondtypes', bonds are the same only if their bond types are the same. (Default: bondtypes)

--atom-class-tag TAG

Use atom class assignments from the field 'TAG'. The tag data must contain a space separated list of integers in the range 1-10000, one for each atom. Atoms are identical if and only if their corresponding atom classes are the same. Note that '003' and '3' are treated as identical values. (Not used by default)

--ring-matches-ring-only

Modify the bond comparison so that ring bonds only match ring bonds and chain bonds only match chain bonds. (Ring atoms can still match non-ring atoms.)

--complete-rings-only

If a bond is a ring bond in the input structures and a bond is in the MCS then the bond must also be in a ring in the MCS. Selecting this option also enables --ring-matches-ring-only.

--select SELECT

Select a subset of the input records to process. Example: 1-10,13,20,50- (Default: '1-', which selects all structures)

--timeout SECONDS

Report the best solution after running for at most 'timeout' seconds. Use 'none' for no timeout. (Default: none)

--output FILENAME, -o FILENAME

Write the results to FILENAME (Default: use stdout)

--output-format {smarts,fragment-smiles,fragment-sdf,complete-sdf}

'smarts' writes the SMARTS pattern including the atom and bond criteria. 'fragment-smiles' writes a matching fragment as a SMILES string. 'fragment-sdf' writes a matching fragment as a SD file; see --save-atom-class for details on how atom class information is saved. 'complete-sdf' writes the entire SD file with the fragment information stored in the tag specified by --save-fragment-indices-tag. (Default: smarts)

--output-all

By default the structure output formats only show an MCS for the first input structure. If this option is enabled then an MCS for all of the structures are shown.

--save-atom-class-tag TAG

If atom classes are specified (via --class-tag) and the output format is 'fragment-sdf' then save the substructure atom classes to the tag TAG, in fragment atom order. By default this is the value of --atomclass-tag.

--save-counts-tag TAG

Save the fragment count, atom count, and bond count to the specified SD tag as space separated integers, like '1 9 8'. (The fragment count will not be larger than 1 until fmcs supports disconnected MCSes.)

--save-atom-indices-tag TAG

If atom classes are specified and the output format is 'complete-sdf' then save the MCS fragment atom indices to the tag TAG, in MCS order. (Default: mcs-atomindices)

--save-smarts-tag TAG

Save the MCS SMARTS to the specified SD tag. Uses '-' if there is no MCS

--save-smiles-tag TAG

Save the fragment SMILES to the specified SD tag. Uses '-' if there is no MCS

--times

Print timing information to stderr

-v, --verbose

Print progress statistics to stderr. Use twice for higher verbosity. --version

For more details on these options, see https://bitbucket.org/dalke/fmcs/