OMEGA Application Usage

Command Line Interface

A description of the command line interface can be obtained by executing OMEGA with the --help option.

prompt> omega2 --help

will generate the following output:

Help functions:
  omega2 --help simple      : Get a list of simple parameters
  omega2 --help all         : Get a complete list of parameters
  omega2 --help <parameter> : Get detailed help on a parameter
  omega2 --help html        : Create an html help file for this program

Required Parameters

-in

File containing one or more molecular connection tables to be processed by OMEGA. Multiple input files of the same format can be merged together into a single input file using the cat command. A pipe can be used to avoid writing the merged input file to disk.

cat filename1.ism filename2.ism | omega2 -in .ism -out output.oeb.gz
-out
File to write conformers generated by OMEGA. Gzipped OEBinary is the recommended output format.

Optional Parameters

Execute Options

-param
The argument for this flag is the name of a file containing control parameters. The control parameter file acts to either replace or augment the command line interface. All parameters necessary for program execution may be provided in the control parameter file, although any command given explicitly on the command line will supersede options found in the parameter file. The application generates a new parameter file containing the full set of execution parameters upon every execution. The name of the parameter file is created by combining the prefix base name with the ‘.parm’ extension.
-mpi_np <n>
Specifies the number of processors n when the application is run in MPI mode.
-mpi_hostfile <filename>
Specifies the name of the file containing processors configuration. For every host this file should contain a line host_name slots=n where n is the number of processors on the host.

File Options

-commentEnergy
This flag causes the conformer energy in kcal/mol to be written in the comment field for each conformer. This is particularly useful when writing SD or MOL2 files that will be passed to software that anticipates strain energies written in the comment field. [default = false]
-includeInput
When true this boolean flag will include the input conformer in the output file. This requires that the input file format is a 3D format (eg: SDF, MOL2, OEB, etc) [default = false]
-log
The argument for this flag specifies the name of the log file. The level of detail for logfile information can be altered using the -verbose flag. Output can be directed to the terminal as well with the -progress log option. Generation of an output log may be disabled by providing ‘nul’ or ‘null’ as an argument. [default = prefix.log]
-pendingFile
Filename used for pending molecules file.
-prefix
The argument for this flag defines the prefix to be used for various information and data files generated by OMEGA. Most important among these is the ‘omega2.parm‘ file which includes a copy of all the parameters used in the OMEGA run. The prefix is also used to generate a default log file name if not explicitly specified with the -log flag. [default = omega2].
-progress
Show progress on screen. Options are ‘none’, ‘dots’, ‘log’ and ‘percent’. The ‘dots’ options will displays dots on screen to show molecules completed. The ‘log’ option will duplicate the log file on screen. The ‘percent’ option will track progress through the input file. [default = none]
-rotorOffsetCompress
This flag controls the behavior of writing the rotor offset compressed flavor of the OEBinary format. Rotor offset compressed files contain the same information as standard Cartesian OEBinary files, but require a small fraction of the storage space. Optimal compression of OMEGA output can be obtained by writing GZip compressed OEBinary files with the -rotorOffsetCompress flag turned on. [default = true]
-sdEnergy
This flag controls the behavior of writing strain energies as SD tags. This flag may be used with either OEBinary or MDL SD files. [default = false]
-status
Filename used for status report file
-verbose
This is a boolean flag that controls the level of detail written to the log file. By default OMEGA will only write minimal information to the log file. Molecule titles and warning messages constitute the bulk of logging at the default level. Verbose logging will cause more information to be written to the log file in order to follow behavior during program execution. In order to have the log shown on the screen, use -progress log. [default = false]
-warts
This boolean flag is used to generate unique titles for conformers that reflect their position in an ensemble of conformations produced by OMEGA. The title given to each conformer will begin with the molecule title taken from the input file, and appended with an underscore and the integer corresponding to the rank order number of the conformer in the final ensemble. [default = false]

3D Construction Parameters

-addfraglib
The argument that follows this flag is one or more fragment files, normally generated by makefraglib. These fragments will supplement the built-in fragment library
-buildff
This flag sets the force field used for constructing fragments that are assembled to build an initial model of the input structure. Consult the description of Force Fields (see Force Fields) for an explanation of appropriate arguments for this flag. [default = mmff94s_NoEstat]
-canonOrder
This flag can be used to disable the automatic reordering of input molecules to a canonical atom and bond order. In order obtain consistent results from different file formats and different connection table orders, OMEGA reorders the input connection table. This behavior can be turned off using the -canonOrder flag, however, the resultant ensembles will likely be inconsistent in their composition. [default = true]
-deleteFixHydrogens
When a fixfile fragment is specified, all possible mappings (matches) of the fragment and the input molecule are considered for positioning the input molecule. This process begins with a substructure search of the fragment in the input molecule. If hydrogens are included on the fixfile fragment, the number of possible matches will grow exponentially with the number of equivalences. Each geminal hydrogen pair on the fixfile produces a non-productive match multiplied by all other non-productive matches. This flag can be used to prevent the explosion of non-productive matches by deleting hydrogens from the fixfile fragment prior to the substructure search. [default = true]
-dielectric
The argument to this flag allows the user to specify the dielectric applied to the Coulomb term of the force field. This flag may only be used with a version of the search force field that includes the Coulomb term, such as the MMFF94 and MMFF94s variants. [default = 1.0]
-exponent
The argument to this flag allows the user to specify the exponent applied to the inverse distance calculation of the Coulomb term of the force field (i.e. (1/r)^{X} where X is the argument to the -exponent flag). This flag may only be used with a version of the search force field that includes the Coulomb term, such as the MMFF94 and MMFF94s variants. The legal values are 1 or 2. [default = 1]
-fixfile
The argument that follows this flag is a molecule file used to specify the coordinates for a substructure of the input molecules. An initial structure is generated for every input molecule, and then a substructure search is performed using the molecule or fragment provided in the fixfile as a query molecule. Every instance of the fixed substructure found in the input molecule up to a predetermined limit (see maxmatch and umatch) is used to replace the coordinates of the atoms that match the substructure. The input molecule coordinates are aligned relative to the substructure prior to fragment replacement, and then the coordinates are taken from the fixed fragment and assigned to the corresponding atoms of the input molecule. A separate alignment, replacement, and then conformer search is carried out for every matching substructure in the input molecule. Molecules that do not match the fixfile will be sent to the fail file.
-fixrms
Fixfile fragments taken from crystallographic sources may differ in their geometry relative to optimal MMFF geometries. OMEGA attempts to superimpose built structures onto fixfile fragments and, if the geometry differs too greatly, OMEGA considers the superposition a poor match and will fail to build a structure using the fixfile. This flag can be used to loosen the default RMS superposition criteria to allow suboptimal superpositions to succeed in spite of the poor geometric complementarity. [default = 0.15]
-fixsmarts
Another way to specify a fixed portion of a molecule. The SMARTS pattern is used to fix a portion of the -fixfile primarily, or fix or portion of the input molecule if -fromCT is set to false secondarily. Molecules that do not match will be sent to the fail file.
-fromCT
This boolean flag determines whether OMEGA should generate an initial set of 3D coordinates using only the connection table of the input molecule. Initial model generation is always necessary for molecule file formats devoid of coordinates (i.e SMILES). Bond lengths and angles taken from molecule files containing coordinates may be retained by setting this flag to false. -enumNitrogen false must also be set for identical stereochemistry to be guaranteed in the output. [default = true]
-maxmatch
This flag is used to limit the number of fixfile substructure matches in the input molecule. Each match will result in replacement of the matching substructure with coordinates taken from the fixfile fragment. The number of matches may need to be limited using this parameter for a substructure where many matches are possible. [default = 1]
-setfraglib
The argument that follows this flag is an OEBinary molecule file containing the coordinates of pre-built acyclic fragments, and multiple conformations of cyclic systems. Starting with OMEGA2.2, this flag is no longer required, as a default fragment library has been built into the program. Although OMEGA can generate fragment 3D geometries on the fly, building them in advance speeds execution significantly. Multiple fragment files may be provided as a comma delimited list of filenames. Only the first matching fragment will be used even if the fragment occurs multiple times. The fragment file(s) chosen should be constructed using a force field corresponding to the one being used for the torsion search. For example, the MMFF94s variant of the Merck Molecular Force Field should be used both for fragment construction and torsion search. Normally this file is built using the makefraglib auxiliary program.
-strictfrags
This flag sets how OMEGA generates fragments that are not in the fraglib. The default is a faster and less rigorous fragment generation than the makefraglib program, whereas a ‘true’ value will require OMEGA to be identical to the makefraglib program. The most noticeable difference is the time limit for fragment generation, which is increased from 30 seconds to 300 seconds with -strictfrags set to true. [default = false]
-strictatomtyping
Use strict atom typing for MMFF94 or allow ‘close enough’ atom typing. A true setting will fail any molecule that contains an atom type that does not have specified parameters. A false setting will allow parameters from a similar atom type to be used. [default = true]
-umatch
The -umatch boolean flag determines whether only the unique substructure matches of the fixfile are used for coordinate replacement. A unique substructure match is defined as a match that does not cover the identical set of target atoms as any other substructure match in a set. For example, a benzene substructure will match a benzene ring 12 times. Only one substructure match constitutes a unique match, while the other 11 matches are duplicates. If the flag is set to false then all possible substructure matches may be used for coordinate replacement. This behavior is usually unnecessary as non-unique matches will frequently lead to duplication. [default = true]

Structure Enumeration

-enumNitrogen
The -enumNitrogen string flag controls the behavior of OMEGA 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’. OMEGA will enumerate all possible puckers if the -enumNitrogens flag is set to true. OMEGA will only enumerate unspecified invertible nitrogens if the flag is set to unspecified. [default = true]
-enumRing
The -enumRing boolean flag controls the behavior of OMEGA with respect to ring conformations. If this flag is set to true, OMEGA will generate all possible combinations of all ring conformations in a molecule. Ring systems with only a single conformation will be replaced with a conformation taken from a fragment file, or generated on the fly by OMEGA. If this flag is set to false then no ring conformer enumeration or replacement will occur. Initial geometries provided in by an input file (see -fromCT) may therefore be preserved by setting -enumRing to false as well. [default = true]
-sampleHydrogens
Sets whether hydrogens will be sampled. This option enables sampling of hydrogen locations for -OH, -SH, and amines. [default = false]

Torsion Driving Parameters

-addtorlib
Takes a filename as a parameter. Torsion rules in the file are placed above any previous torsion rules and therefore are matched first. (see Torsion Library Format)
-erange
The -erange flag sets the energy cutoff used as an accept or reject criteria for conformers depending on the number of rotatable bonds in the structure. Any conformer that has a calculated strain energy less than the sum of the energy window and the energy of the global minimum conformer will be accepted. Conformers with strain energies above this threshold are rejected. The energy range is given as a comma separated list of values that correspond to the -rangeIncrement parameter. For example, -erange “5.0, 10.0, 15.0, 20.0” used with -rangeIncrement 3 sets the energy window to 5.0 Kcal/mol for structures with zero to two rotatable bonds, 10.0 Kcal/mol for structures with three to five rotatable bonds, and so on. The energy window for structures with more rotors than the highest -erange value specified will be taken as the highest specified value.
-ewindow
The -ewindow flag sets the energy window in kcal/mol used as an accept or reject criteria for conformers. Any conformer that has a calculated strain energy less than the sum of the energy window and the energy of the global minimum conformer will be accepted. Conformers with strain energies above this threshold are rejected. [default = 10.0]
-maxConfRange
This string argument to this flag allows the user the specify the maximum number of conformers to be output for a structure based on the number of rotatable bonds in the structure. For example, -maxConfRange “100,200” used with -rangeIncrement 5 will cause OMEGA to output 100 conformers for structures with zero to 4 rotors, and 200 conformers for all structures with more than 4 rotors.
-maxconfs
The -maxconfs flag sets the maximum number of conformations to be generated. Conformers are assembled in energy sorted order. As a special case, setting -maxconfs 0 will result in OMEGA skipping the duplicate removal step and it will write all generated conformers to the output file. Note that this implies -rms 0 is also used. [default = 200]
-maxrot
The -maxrot flag sets the maximum number of rotatable bonds cutoff. Molecules that have equal to or fewer rotors than the -maxrot cutoff will be processed by OMEGA. OMEGA will not search for conformers of molecules that have more rotors than the -maxrot cutoff. By default, OMEGA does not apply a number of rotatable bonds cutoff. Instead, a desired cutoff must be supplied by the user. [default = -1]
-maxtime
This flag limits the amount of time (in seconds) spent generating conformers for each molecule. [default = 120.0]
-rangeIncrement
The -rangeIncrement is used to control the number of rotatable bonds range used with the -maxConfRange, -rmsrange, and -erange flags. The preceding flags are used to control the maximum number of conformers, RMS cutoff, and energy windows used that are dependent on the number of rotors in a given structure. [default = 5]
-rms
The -rms flag sets the minimum Root Mean Square (RMS) Cartesian distance below which two conformers are duplicates. The RMS calculation is performed after superposition such that the true minimum distance between conformers is calculated. Lowering the -rms value may cause OMEGA to generate ensembles that contain more representative conformers of a similar shape. Higher -rms values may result in smaller, yet possibly more shape diverse ensembles. [default = 0.5]
-rmsrange
This string argument to this flag allows the user the specify the RMS cutoff used for duplicate conformer removal based on the number of rotatable bonds in the structure. For example, -rmsrange “0.8,1.0” used with -rangeIncrement 5 will cause OMEGA to use an RMS cutoff value of 0.8 for structures with zero to 4 rotors, and an RMS cutoff value of 1.0 for all structures with more than 4 rotatable bonds.
-searchff
This flag sets the force field used to calculate strain energies of conformers generated during a torsion search. Consult the description of Force Fields (see Force Fields) for an explanation of appropriate arguments for this flag. [default = mmff94s_NoEstat]
-settorlib
The -settorlib flag is used to specify the file name of the file containing rules used in resolution control of the torsion driving part of conformer generation. Refer to the section describing the format of the torsion library (see Torsion Library Format). If no torsion library is provided then OMEGA will use an internally stored copy of the default torsion library.

Stereo Parameters

-flipper
Creates an ensemble or stereoisomers before passing the molecules for conformer generation. A value of ‘true‘ will flip all unspecified stereo centers and a value of ‘force‘ will flip all stereo centers. [default = false]
-flipper_maxcenters
Sets the maximum number of stereocenters than can be flipped exhaustively. [default = 12]
-flipper_warts
Add wart to title of each stereoisomer. [default = false]
-strictstereo
Requires all stereo centers to be specified. Molecules sent to conformer generation with unspecified stereo will fail. [default = true]

General

-strict
Convenience flag for setting -strictstereo, -strictatomtyping, and -strictfrags at once. This setting will override any individual settings for these flags.

Example Executions

This section has a series of example OMEGA command-line executions. Each example is followed by a brief description of its behavior. Sample data files can be found in the data directory.

Basic Commands

prompt> omega2 drugs.smi drugs.oeb.gz
prompt> omega2 -in drugs.smi -out drugs.oeb.gz

These two commands will yield identical results. These execute OMEGA with the default parameters. The file drugs.smi is opened in SMILES format for input, and the output is written to the file drugs.oeb.gz in gzipped OEBinary format.

Using Parameters and Param Files

prompt> omega2 -in drugs.smi -out drugs.oeb.gz -maxconfs 1

The parameter -maxconfs can be used to specify the maximum number of conformers for each output molecule. This command will generate a single low energy conformer for every molecule in drugs.smi.

prompt> omega2 -in drugs.smi -out drugs.oeb.gz -param myparameters

This command is the same as the Basic Commands above except for the -param flag. It executes OMEGA with the parameters found in the myparameters file. The file drugs.smi is opened in SMILES format for input, and the output is written to the file drugs.oeb.gz in gzipped OEBinary format.

prompt> omega2 -param myparameters drugs.smi drugs.oeb.gz
prompt> omega2 drugs.smi drugs.oeb.gz -param myparameters

The first of these two commands will yield exactly the same results as the example above. drugs.smi will be mapped to the -in flag and drugs.oeb.gz will be mapped to the -out flag begin the second to last and last command-line arguments respectively. Unfortunately, the second of these two commands, will fail to parse because the implicit input and output arguments are not the final two arguments in the list.

prompt> omega2 -in drugs.smi -out drugs_maxconfs600.oeb.gz -param myparameters -maxconfs 600

Again, this is a very similar command. It executes OMEGA using the parameters in the myparameters file, except the -maxconfs parameter is over-ridden with the 600 from the command line. The command-line -maxconfs parameter would take precedence over the value in the parameter file independent of the order of flags on the command line.

Advanced Commands

prompt> DBQuery "barbiturate" | omega2 -in .sdf -out .oeb.gz | vida2 .oeb.gz

This execution assumes that a process called “DBQuery” can be called with the parameter “barbiturate” and return a stream of molecules in MDL’s .sdf format. This output is piped into OMEGA, which interprets the format correctly and generates multiconformer molecules using the default parameters. OMEGA writes the output to std::cout in gzipped OEBinary format, which is read by OpenEye’s VIDA molecular viewer.

prompt> omega2 -in drugs.mol2 -out drugs.oeb.gz -fromCT true

The -fromCT true flag will cause OMEGA to ignore the input conformations in the drugs.mol2 file. An initial conformation will be generated by a distance-bounds algorithm from the connection-table of the molecules in the input file. Be aware that the default value of -fromCT is true, however it is listed explicitly here for emphasis.

prompt> omega2 -in drugs.smi -out drugs.oeb.gz -log null

The -log flag normally allows specification of the log file’s name. However, nul and null are reserved names which indicate that no log file will be written (this includes failure modes).

Further specifications

Force Fields

OMEGA provides the facility for users to select one of a number of pre-defined force fields. The force field selected may be different for model construction and torsion search. The ability to select a force field provides a mechanism for task specificity. Some force fields may be more appropriate for solution phase ensemble generation, whilst others may excel for bioactive conformer reproduction. The following pre-defined force fields may be used as arguments to the -buildff and -searchff flags.

  • mmff Exact reproduction of the published Merck Molecular Force Field (MMFF) with addition atom types parameterized using the same algorithm.
  • mmff_NoEstat This force field variant includes all MMFF terms except Coulomb interactions.
  • mmff_Trunc This force field variant excludes both Coulomb interactions and the attractive part of Van der Waals interactions. All other components of the MMFF force field are calculated according to literature specifications.
  • mmff94s Exact reproduction of the 94s variant of the Merck Molecular force Field (MMFF94s) with addition atom types parameterized using the same algorithm.
  • mmff94s_NoEstat This force field variant includes all MMFF94s terms except Coulomb interactions.
  • mmff94s_Trunc This force field variant excludes both Coulomb interactions and the attractive part of Van der Waals interactions. All other components of the MMFF94s force field are calculated according to literature specifications.

Torsion Library Format

A file of alternate torsion rules may be specified with the -settorlib command. OMEGA will match only the first rule found for a torsion angle, and discontinue matching alternate possible rules. Thus, a correctly ordered torsion file will be arranged with the most specific patterns appearing at the top of the file, and more general patterns appearing toward the end. Simple torsion rules are composed of a single SMARTS pattern containing at least four atom expressions, followed by a listing of the torsion angles that OMEGA will sample. Each reference atom in the SMARTS pattern that is used to define the torsion angle being sampled must have a map index (numbered 1 through 4) specified that indicates the ordering of the atoms in the torsion angle. The pattern must appear all on a single line, with a carriage return separating one rule from the next. Comments in the file must be preceded with a # character. The following is an example of a simple torsion rule.

#methyl ester pattern
[O:1]=[C:2]-[O:3][CH3:4] 0

More advanced rules may be included that alter the energy calculation for particular torsion angles. In these types of torsion rules, a SMARTS pattern with associated map indices is still used to define the molecular environment in which the rule is to be applied, but the sampled values appear on subsequent lines with one torsion angle per line. The first number per line indicates the torsion angle, in degrees, that OMEGA must sample. If a second number follows a torsion angle on the same line, the value is added to the total energy computed for that conformer. The following is an example of an advanced torsion rule.

#experimental structure test
O=[C:1][NX3H:2][c:3]([cH,nH0])[nH:4]
0
180 10.0
<end>