FMCS(1)

NAME
fmcs - fmcs

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/