MakeFraglib
Overview
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.
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 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.
Example Commands
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 drugs_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_drugs_fraglib.oeb -ewindow 5.0
Conformers will be generated for all of the unique fragments found in the user supplied file vendor.smi. An energy window of 5 kcal above the global minimum conformer will be used to accept or reject conformations of flexible ring systems.
Command Line Help
A description of the command line interface can be obtained by executing MakeFraglib with the –help option.
> makefraglib --help
will generate the following output:
Help functions:
makefraglib --help simple : Get a list of simple parameters
makefraglib --help all : Get a complete list of parameters
makefraglib --help defaults : List the defaults for all parameters
makefraglib --help <parameter> : Get detailed help on a parameter
makefraglib --help html : Create an html help file for this program
makefraglib --help versions : List the toolkits and versions used in the application
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 ‘.param’ extension.
- -mpi_np <n>
Specifies the number of processors
nwhen 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=nwherenis 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
-verboseflag. Generation of an output log may be disabled by providingnulas a argument in Windows and/dev/nullas an argument on Linux and macOS. [default =prefix_log.txt]
- -prefix
The argument for this flag defines the prefix to be used for various information and data files generated. Most important among these is the ‘prefix_parm.txt’ file which includes a copy of all the parameters used in the run. The prefix is also used to generate a default log file name if not explicitly specified with the -log flag. [default = <app_name>].
- -verbose
This is a boolean flag that controls the level of detail written to the log file. By default only minimal information is written to the log file. Verbose logging will cause more information to be written to the log file in order to follow behavior during program execution. [default = false]
- -molNames
This parameter takes a text file containing a list of molecule names (one name per line in the file). If this parameter is set then only molecules in the input file(s) (see parameter
-in) with names that match those in the text files will be read in.The general purpose of this flag is to provide an easy mechanism for reading a few specific molecule(s) that are contained in a large file, without having to extract those molecules by hand from the input molecules file. [default = NONE].
- -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]
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]
- -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]
- -ewindow
- -ewindowRing
These flags set the energy window in accepting or rejecting fragment conformers. Any fragment conformer that has a calculated strain energy less than the sum of the energy window and the energy of the global minimum fragment conformer will be accepted. Conformers with strain energies above this threshold are rejected. [default = 4.0]
- -rms
- -rmsRing
These flags set the minimum Root Mean Square (RMS) Cartesian distance below which two fragment conformers are duplicates. The RMS calculation is performed after superposition such that the true minimum distance between fragment conformers is calculated. Lowering the value may cause makefraglib to generate ensembles that contain more fragment conformers of a similar shape. Higher values may result in smaller, yet possibly more shape diverse ensembles. [default = 0.1]
- -startfact
- -startfactRing
Factor for determining number of random starting geometries when generating fragments. Legal values are from 1 to 100. [default = 2, 20]
- -fragGen
- -fragGenRing
Maximum Number of conformers to be generated with distance geometry for each fragment. [default = 40, 50000]
- -fragKeep
- -fragKeepRing
Maximum Number of conformers to be kept for each fragment. [default = 1, 1024]
- -timeLimit
- -timeLimitRing
Maximum time in sec allowed for each fragment generation. [default = 300]