flipper: Enumerating Stereocenters

flipper Theory

The OMEGA distribution includes flipper, a utility program for enumerating stereocenters in a molecule. We have taken the philosophy that conformer generation and stereochemistry enumeration are related but distinct problems. Thus we provide flipper as part of the OMEGA product, but not as part of the same executable.

The current version of flipper can handle enumeration of R/S stereochemistry (including N and S stereochemistry) as well as cis/trans stereochemistry. flipper uses graph algorithms to determine which atoms are stereocenters. If a stereocenter has a designated stereochemistry, by default flipper does not change the stereochemistry. However, if a stereocenter does not have a specified stereochemistry, flipper will enumerate both stereochemistry states of the stereocenter.

Many common file formats are limited in their ability to fully express stereochemistry without resorting to Cartesian coordinates. This can lead to ambiguity in whether a particular conformer is supposed to represent a racemic mixture or an isolated stereoisomer. SD file format is better than most formats. It allows designation of R, S, or racemic on each tetrahedral stereocenter independent of the particular conformation. However, SD format is not as robust for cis/trans stereochemistry. Isomeric SMILES is the only common file format which allows complete specification of R/S and cis/trans stereochemistry. In fact, although flipper does not currently support higher orders of stereochemistry, the isomeric SMILES format is capable of handling them. For this reason, flipper output is limited to SD format (.sdf or .mol) and isomeric SMILES format (.ism). OpenEye OEBinary format, like isomeric SMILES, is capable of fully specifying stereochemistry, however, isomeric SMILES is more efficient for compounds without any data beyond the title and connection table.

Input dimensionality

flipper is designed for use prior to 3D coordinate generation. So 2D or 1D (SMILES) input is normally expected. Input files containing 3D coordinates are handled, but the 3D coordinates are ignored and not transferred to the output.

flipper Usage

flipper is a simple command-line utility program. The flipper process can also be done with OMEGA using the -flipper flag.

Required Parameters

-in
File containing one or more molecules for which stereoisomers will be generated
-out
This required parameter indicates the output molecule file. The output file format is limited to OEB, isomeric SMILES (.ism NOT .smi) or SD format since these are the only formats which fully specify stereocenters without the need for three-dimensional coordinates.

Other options

-enumNitrogen
The -enumNitrogen string flag controls the behavior of FLIPPER with respect to enumeration of non-planar nitrogens. Any nitrogen with pyramidal geometry in the initial model of the input molecule, and having no more than two ring bonds is considered by OMEGA to be ‘invertible’. FLIPPER will enumerate all possible puckers if the -enumNitrogens flag is set to true. [default = false]
-forceflip
This parameter forces flipper to modify all of the stereocenters in a molecule. If -forceflip is false (the default), flipper only enumerates stereocenters which do not already have a specified stereochemistry. [default = false]
-maxcenters
Obviously, the number of molecules generated by enumerating the stereocenters is 2^N, where N is the number of stereocenters. In some instances, this may be larger than is desired. The -maxcenters parameter indicates the maximum number of stereocenters which will be fully enumerated. If a molecule has more than -maxcenters stereocenters, flipper will randomly enumerate 2^(maxcenters) instances from the full set of potential isomers. [default = 12]
-warts
Add wart to title of each stereoisomer. [default = false]

Example Executions

Below are three example flipper executions. Each example is followed by a brief description of the parameter’s effects. Sample data files can be found in the data directory.

prompt> flipper -in drugs.smi -out enumerated.ism

This execution will examine each stereocenter in drugs.smi. If the stereocenter does not have a specified stereochemistry, flipper will generate molecules with each of the stereochemistry states at each stereocenter.

prompt> flipper -in drugs.smi -out enumerated_forceflip.ism -forceflip true

This execution will differ from the first in that all stereocenters will be enumerated, regardless of whether the stereochemistry is specified in the input file.

prompt> flipper -in drugs.smi -out enumerated_maxcenters6.ism -maxcenters 6

In this execution, flipper will exhaustively enumerate all unspecified stereocenters in molecules with up to 6 stereocenters. For molecules with more than 6 stereocenters, a random set of 64 isomers will be generated from the larger set of potential stereoisomers.