makefraglib: Creating a Fragment Library

makefraglib identifies, extracts, and generates conformers of molecular fragments. The model builder in OMEGA fragments input molecules, retrieves corresponding fragment conformers, and assembles them into a three dimensional structure. Pregenerating fragment conformers using makefraglib accelerates the model building procedure.

makefraglib Theory

The model builder in OMEGA attempts to capture all of the relevant bond length and angles, and ring conformations for an input molecule. Fragment assembly allows for a ‘divide and conquer’ approach to model building. Much of the relevant information for building a molecular models is contained in carefully chosen fragments. makefraglib uses distance constraints and geometry optimization to generate fragment conformations. Only a single conformation is stored for acyclic fragments, while all possible unique ring conformers are retained within user defined limits. Libraries created with makefraglib can then be provided to OMEGA using the -setfraglib or -addfraglib flags.

makefraglib Usage

makefraglib can be used from the command-line to generate ring templates for use with OMEGA starting from only a collection of molecules. The output file from makefraglib can then be passed directly into OMEGA using the -setfraglib or -addfraglib flag. Although fragment libraries may be concatenated using the Unix ‘cat’ command, this is not strictly necessary as multiple fragment libraries may be specified as one argument to the flag.

Required Parameters

-in
File containing one or more molecules from which fragments will be generated
-out
File to write fragments generated by makefraglib. OEBinary format is required and Gzipped OEBinary is recommended.

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

-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 instead of a file by giving a hyphen ‘-‘ as the argument to the flag instead of a filename. Generation of an output log may be disabled by providing ‘nul’ or ‘null’ as an argument. [default = prefix.log]
-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 ‘makefraglib.parm’ file which includes a copy of all the parameters used in the makefraglib run. The prefix is also used to generate a default log file name if not explicitly specified with the -log flag. [default = makefraglib].
-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]
-skip
Existing fragment library to avoid duplicating
-verbose
This is a boolean flag that controls the level of detail written to the log file. [default = false]

3D Construction Parameters

-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]
-ewindow
The -ewindow flag sets the energy window used as an accept or reject criteria for fragments. Any fragment that has a calculated strain energy less than the sum of the energy window and the energy of the global minimum fragment will be accepted. Conformers with strain energies above this threshold are rejected. [default = 4.0]
-fromCT
This boolean flag determines whether makefraglib 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. [default = true]
-rms
The -rms flag sets the minimum Root Mean Square (RMS) Cartesian distance below which two fragments are duplicates. The RMS calculation is performed after superposition such that the true minimum distance between fragments is calculated. Lowering the -rms value may cause makefraglib to generate ensembles that contain more fragment conformers of a similar shape. Higher -rms values may result in smaller, yet possibly more shape diverse ensembles. [default = 0.1]
-startfact
Factor for determining number of random starting geometries when generating fragments.

Example Executions

The following section shows several common command-line executions of makefraglib. Each example is followed by an explanation of what the program will do. Sample data files can be found in the data directory.

prompt> makefraglib -in drugs.smi -out fraglib.oeb

All of the molecules in drugs.smi will be processed. The set of all unique fragments (according to OMEGA fragmentation rules) from all of the molecules in drugs.smi will be collected.

prompt> makefraglib -in vendor.smi -out new_fraglib.oeb -skip fraglib.oeb -ewindow 5.0

Conformers will be generated for all of the unique fragments found in the user supplied file vendor.smi that are not present in fraglib.oeb. An energy window of 5 Kcal above the global minimum conformer will be used to accept or reject conformations of flexible ring systems.