Prepare Giga Collections
Description
Constructs Giga-Docking and FastROCS collections from input file(s) or collection(s).
This floe filters the input molecule and generates conformers for the Gigadock and FastROCS collections, with a maximum of 200 and 10 conformers per molecule, respectively. The filtering is configurable (see the “Filtering: Basic Properties”, “Filtering: SMARTS” and “Filtering: OEFilter” parameter groups). Use the ‘Dry Run’ switch to, at negligible cost examine the contents of the input files (see the Floe report) and see how many molecules pass each filter (examine the port counts) without generating conformers or creating any collections.
The input molecules are expected to come from a collection outputted by one of the generative design floes, or more commonly an input file. Supported file formats are: can, can.gz, csv, csv.bz2, csv.gz, cxsmiles, cxsmiles.gz, ism, ism.gz, isosmi, isosmi.gz, mol2, mol2.gz, oeb, oeb.gz, oedb, oez, sd, sd.gz, sdf, sdf.gz, smi, smi.gz, syb, syb.gz, tar, tar.bz2, tar.gz, tgz, tsv, tsv.bz2, tsv.gz, usm, usm.gz, zip. Comma and tab separated files (i.e. csv and tsv) are expected to have SMILES representations of molecules in one of the columns. For archive formats (e.g., .tar and .zip) this floe will read molecules from files in the archive that are of a supported format.
IMPORTANT: For comma and tab separated files (i.e., CSV and TSV) this floe cannot automatically identify molecule titles from the file, and will by default create molecules with no titles that will be filtered out (i.e., the floe will read in no molecules). When working with CSV/TSV input files you should run the floe once with ‘Options -> Dry Run’ and ‘Options -> Allow Empty Titles’ both on. A floe report will be created that you can examine to see the column/field titles in the CSV/TSV file. In subsequent runs you can then specify the column/field you want to use (must be a string field) as the molecule title using the ‘Format Specific Settings -> Mol Title Field’ parameters. If the file doesn’t have any appropriate title columns/fields you can leave ‘Options -> Allow Empty Titles’ in subsequent runs.
Disk Space Considerations: With file input there is a limitation on the size of the file. The disk space available for a file is specified by the ‘Hardware->Disk Space’ parameter. For non-archive files this is that maximum size input file. For archive files (e.g., tar and zip) each file is extracted from the archive processed and then cleaned up before extracting the and processing the next file in the archive. The disk space required is thus the size of the archive file plus the size of the largest single file in the archive when it is extracted from the archive.
Details
Title : Prepare Giga CollectionsTags : Large Scale Floes Collection PreparationPython Name : #04_prepare_giga_collections
Parameters
Inputs
Input File(s) One or more input files to convert into docking & FastROCS collections.Type : file_inRequired : FalsePython Name : input_file
Inputs : Alternate
Input Dataset(s) One or more input datasets to convert into Gigadock and FastROCS collections.Type : data_sourceRequired : FalsePython Name : input_datasets Input Collection(s) One of more input collections to convert into docking and FastROCS collections. These collection(s) are expected to be from the output of the reaction enumeration floes.Type : collection_sourceRequired : FalsePython Name : input_collection
Outputs
Giga Docking Collection Name Name of the collection to createType : collection_sinkRequired : TrueDefault : GigaDock CollectionPython Name : docked_collection_name FastROCS Collection Name Name of the collection to createType : collection_sinkRequired : TrueDefault : FastROCS CollectionPython Name : rocs_collection_name Temporary Collection Name This collection is used to store temporary data during the run of the floe and is automatically deleted when the floe completes. If you cancel the floe you should delete the collection manually.Type : collection_sinkRequired : TrueDefault : Prepare Giga Collections Temporary CollectionPython Name : temp_collection_name
Options
Dry Run If ‘On’, molecules will be read and passed through the filtering cubes normally but will not be passed to the omega conformer generation and collection creation cubes. This makes the floe very inexpensive to run, however no output collections will be generated. With this switch on you can see how many molecules will be read from your input file(s)/collection(s) and how many will pass the filters (examine the filtering Cube port counts) that have configured, and make adjustments without incurring significant expense. Once the best filtering settings are determined you can run the Floe with those settings and this option turned off to generate the collections.Type : booleanRequired : TrueDefault : FalseChoices :True, FalsePython Name : dry_run_switch Allow Empty Titles If ‘On’, molecules without titles will be allowed. If ‘Off’ molecules without titles will be filtered out. If your input is a comma or tab separated file you can use the ‘Format Specific Settings -> Mol Title Field’ parameter to set the molecule title to a specific string column in the comma or tab separated file.Type : booleanRequired : TrueDefault : FalseChoices :True, FalsePython Name : allow_no_title_switch Keep this fraction Parameter to create collections that contain a random subset of the input molecule when set to less than the default value of 1. This parameter is the fraction of the input molecules that will be retained using a random selection criterion.Type : decimalRequired : TrueDefault : 1.0Range : 0.0 to 1.0Python Name : random_retain_probability
pKa
Set Neutral pH on input molecules If turned ‘Off’ a neutral pH 7.4 pKa state will not be set on the input molecules. This option should only be turned off if you are certain your input molecule has a correct pKa state set.Type : booleanRequired : TrueDefault : TrueChoices :True, FalsePython Name : set_neutral_ph_on_input_molecules
Filtering : Basic Properties
Max molecular weight Molecules with molecular weight greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high molecular weight.Type : decimalRequired : FalseDefault : 500.0Max Value : 1000.0Python Name : mw_max Min molecular weight Molecules with molecular weight less than this value will be filtered out. If unspecified this cube will not filter out molecules with low molecular weight.Type : decimalRequired : FalsePython Name : mw_min Max rotatable bond count Molecules with rotatable bond count greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high rotatable bond count.Type : integerRequired : FalseDefault : 15Range : 0 to 20Python Name : rot_bond_max Min rotatable bond count Molecules with rotatable bond count less than this value will be filtered out. If unspecified this cube will not filter out molecules with low rotatable bond count.Type : integerRequired : FalsePython Name : rot_bond_min Max count undefined atom stereo Molecules with count undefined atom stereo greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high count undefined atom stereo.Type : integerRequired : FalseDefault : 3Max Value : 6Python Name : atom_stereo_max Max count undefined bond stereo Molecules with count undefined bond stereo greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high count undefined bond stereo.Type : integerRequired : FalseDefault : 3Max Value : 6Python Name : bond_stereo_max Max acceptor count Molecules with acceptor count greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high acceptor count.Type : integerRequired : FalsePython Name : acc_max Min acceptor count Molecules with acceptor count less than this value will be filtered out. If unspecified this cube will not filter out molecules with low acceptor count.Type : integerRequired : FalsePython Name : acc_min Max donor count Molecules with donor count greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high donor count.Type : integerRequired : FalsePython Name : don_max Min donor count Molecules with donor count less than this value will be filtered out. If unspecified this cube will not filter out molecules with low donor count.Type : integerRequired : FalsePython Name : don_min Max topological polar surface area Molecules with topological polar surface area greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high topological polar surface area.Type : decimalRequired : FalsePython Name : tpsa_max Min topological polar surface area Molecules with topological polar surface area less than this value will be filtered out. If unspecified this cube will not filter out molecules with low topological polar surface area.Type : decimalRequired : FalsePython Name : tpsa_min Max xlogp Molecules with xlogp greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high xlogp.Type : decimalRequired : FalsePython Name : xlogp_max Min xlogp Molecules with xlogp less than this value will be filtered out. If unspecified this cube will not filter out molecules with low xlogp.Type : decimalRequired : FalsePython Name : xlogp_min Max formal charge Molecules with formal charge greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high formal charge.Type : integerRequired : FalsePython Name : charge_max Min formal charge Molecules with formal charge less than this value will be filtered out. If unspecified this cube will not filter out molecules with low formal charge.Type : integerRequired : FalsePython Name : charge_min Max aromatic ring count Molecules with aromatic ring count greater than this value will be filtered out. If unspecified this cube will not filter out molecules with high aromatic ring count.Type : integerRequired : FalsePython Name : aro_max Min aromatic ring count Molecules with aromatic ring count less than this value will be filtered out. If unspecified this cube will not filter out molecules with low aromatic ring count.Type : integerRequired : FalsePython Name : aro_min
Filtering: SMARTS
Required SMARTS If one or more SMARTS patterns are supplied to this parameter then every molecule passed to this cube must match one of these smarts patterns of it will be filtered. This check is skipped if no SMARTS patterns are supplied to this cube.Type : stringRequired : FalseAccepts Multiple ValuesPython Name : required_smarts Excluded SMARTS Every molecule that matched any of the SMARTS patterns supplied to this parameter will be filtered.Type : stringRequired : FalseAccepts Multiple ValuesPython Name : excluded_smarts
Filtering: OEFilter
Options for setting up filters based on OEFilter. If multiple filters are specified (either custom or builtin) they are treated independently. A molecule failing any individual filter will be discarded. If no filters are selected all molecules will pass this step.
OEFilter TypeType : stringRequired : TrueDefault : BlockBusterChoices :BlockBuster, Lead, Drug, PAINS, NonePython Name : oefilter_type Filter Rules Optional rules to create an OEFilter (see https://docs.eyesopen.com/toolkits/python/molproptk/filter_files.html).Type : file_inRequired : FalsePython Name : filter_in
Filtering: 2D Similarity to Known Molecules
These parameters allow molecules being prepared to be filtered by their 2D Tanimoto to one or more known molecules (commonly the known molecules would be actives from a project). To use this filter, a dataset of known molecules must be passed to the ‘Known Molecules’ parameter and either or both the ‘Filter Out Tanimotos Higher Than’ and ‘Filter Out Tanimotos Lower Than’ parameters must be specified (if these are not specified all molecules will pass this filter). If there are multiple known molecules, the molecule being prepared’s highest Tanimoto to any of the known molecules will be used to filter it. The ‘Options->Dry Run’ parameter can be set to ‘On’ to cheaply test how changing the parameters in this group affect the number of molecules being filtered out.
Known Molecules If this parameter is specified each molecule being prepared will be assigned a single 2D Tanimoto value equal highest 2D Tanimoto to any molecule in this dataset(s). The prepared molecule will then be filtered by comparing this value to the setting of the ‘Filter Out Tanimotos Higher Than’ and/or ‘Filter Out Tanimotos Lower Than’ parameters. WARNING: A significant filtering compute cost can be incurred, even in ‘Dry Run’ mode, if a large number of molecule are passed to this parameter (For a 1 Billion molecule collection and 10K known molecules the filtering portion of the cost is typically be about ~$20).Type : data_sourceRequired : FalsePython Name : known_molecules Filter Out Tanimotos Higher Than If specified molecules with a 2D Tanimoto higher that this value will be filtered out. Use this parameter if you want to remove molecules that are similar in 2D space to any of the known molecules.Type : decimalRequired : FalsePython Name : filter_out_tanimotos_higher_than Filter Out Tanimotos Lower Than If specified molecules with a 2D Tanimoto lower than this value will be filtered out. Use this parameter if you want to remove molecules are different in 2D space to any of the known molecules.Type : decimalRequired : FalsePython Name : filter_out_tanimotos_lower_than Known Molecules 2D Fingerprint Method The 2D Fingerprint method used to compute the Tanimotos for the known molecules filter.Type : stringRequired : FalseDefault : CircularChoices :Circular, Path, TreePython Name : known_molecules_2d_fingerprint_method Use Virtual Screening 2D Fingerprint Variant If ‘On’ the virtual screening variant of the selected 2D fingerprint will be used for the knownmolecules filter. The virtual screening variant treats certain functional group identically regardless of there pKa state. E.g. protonated and unprotonated carboxylic acids.Type : booleanRequired : FalseDefault : TrueChoices :True, FalsePython Name : use_virtual_screening_2d_fingerprint_variant Known Molecule Tanimoto Field If this parameter is specified the 2D Tanimoto used for known molecule filtering for each processed molecule will be placed in the output collections in a field of this name. If unspecified the Tanimoto value will not be stored in the output collections.Type : field_parameter::floatRequired : FalsePython Name : known_molecule_tanimoto_field Maximum Number of Filtering Cubes Maximum number of cubes to use for filtering. Increasing this value can improved the runtime in cases where a large number of known molecules are supplied. This value can only be set above the default value of 500 if the number of molecules passed to ‘Filtering: 2D Similarity To Known Molecules -> Known Molecules’ time the setting of ‘Options->Keep This Fraction’ is greater than 10000.Type : integerRequired : FalseDefault : 500Range : 1 to 5000Python Name : maximum_number_of_filtering_cubes
Stereo Enumeration
Enantiomer Title Field This string field will be added to the created collection and contains the title of the input molecule appended by and index number to identify the enantiomer. If unspecified the field will not be created.Type : field_parameter::stringRequired : FalseDefault : Enantiomer TitlePython Name : enantiomer_title_field
Conformer Generation Settings
Use GPU Omega If this value is set to true this floe with use the GPU version of Omega. The GPU version of Omega (i.e., with this paramter set to True) is typically ~40% more cost efficient and than CPU version (i.e., with this parameter set to False). However, the AWS spot instances GPU Omega requires have been in very high demand on AWS and running this floe in a high demand period with this flag set to true can result in very long run times and less cost efficiency.Type : booleanRequired : TrueDefault : FalseChoices :True, FalsePython Name : omega_switch Torsion Library Type Type of torsion library Omega will use. If ‘custom’ is selected then a torsion library must be supplied to the ‘Conformer Generation Settings -> Torsion Library’ parameter.Type : stringRequired : FalseDefault : OriginalChoices :Original, Guba, CustomPython Name : torsion_library_type Torsion Library Optional torsion library for Omega. (see https://docs.eyesopen.com/toolkits/python/omegatk/OEConfGenClasses/OETorLib.html ). These torsion rules will be added to the selected torsion library. Select ‘Custom’ for ‘Torsion Library Type’ if you want to replace rather than add rules.Type : file_inRequired : FalsePython Name : torlib_in GPU Omega Input Shard Size This parameter controls how many molecule must be processed within the Orion 12h limit when Use GPU Omega is On. With lower values the conformer generation will not be as cost efficient. In general there is no need to adjust this parameter unless instructed to do so by OpenEye Support.Type : integerRequired : TrueDefault : 10000Min Value : 1000Python Name : gpu_omega_input_shard_size CPU Omega Input Shard Size This parameter controls how many molecule must be processed within the Orion 12h limit when Use GPU Omega is Off. With lower values the conformer generation will not be as cost efficient. In general there is no need to adjust this parameter unless instructed to do so by OpenEye Support.Type : integerRequired : TrueDefault : 5000Min Value : 500Python Name : cpu_omega_input_shard_size
Format Specific Settings
These options only affect the reading of specific file types (csv, tsv and smiles).
Additional CSV Extension Additional file extensions that will be recognized as comma separated valuesfiles. Do not include the ‘.’ in the extensions. Gzip and Bzip2 variants will also automatically be supported.If a built in extension is specified this format specification willoverride it. The primary purpose of this parameter is to enable specifying formats of files within archives (e.g., tar or zip) which cannot easily be renamed.Type : stringRequired : FalseAccepts Multiple ValuesPython Name : additional_csv_extension Additional TSV Extension Additional file extensions that will be recognized as tab separated valuesfiles. Do not include the ‘.’ in the extensions. Gzip and Bzip2 variants will also automatically be supported.If a built in extension is specified this format specification willoverride it. The primary purpose of this parameter is to enable specifying formats of files within archives (e.g., tar or zip) which cannot easily be renamed.Type : stringRequired : FalseAccepts Multiple ValuesPython Name : additional_tsv_extension Additional SMILES Extension Additional file extensions that will be recognized as SMILESfiles. Do not include the ‘.’ in the extensions. Gzip and Bzip2 variants will also automatically be supported.If a built in extension is specified this format specification willoverride it. The primary purpose of this parameter is to enable specifying formats of files within archives (e.g., tar or zip) which cannot easily be renamed.Type : stringRequired : FalseAccepts Multiple ValuesPython Name : additional_smiles_extension Mol Title Field When reading tab or comma separated files this parameter specifies the column that should be used as the molecules title. When reading tab or comma separated files either this parameter of must be set or ‘Options->Allow Empty Titles’ must be set to ‘On’ (not recommended the molecules will have no titles). This parameter is ignored if the file being read is not a tab or comma separated file.Type : stringRequired : FalsePython Name : sv_title_field Molecule Field Name for TSV/CSV This parameter specifies the name field the molecule will be stored in. If no value is specified for this parameter the name will the the column header name from the original CSV/TSV file.Type : stringRequired : FalseDefault : MoleculePython Name : molecule_field_name_for_tsvcsv
GPU Hardware
Parameters control the AWS instance type the GPU Omega cubes will use.
GPU Omega Instance Type This parameters control the AWS instance type the GPU Omega Cube will use. If specified the AWS instances specified must have at least 16 CPUs per GPU. There is in general no reason to adjust this unless instructed by OpenEye support.Type : stringRequired : FalsePython Name : gpu_omega_instance_type
Hardware
Disk Space Disk space in MB for the Cube reading the input file(s). The default value should be sufficient, but if you have a single huge file you may need to increase this value.Type : decimalRequired : FalseDefault : 102400Range : 128.0 to 8589934592Python Name : read_disk_space
Input Fields
These parameters specify the fields on the input datasets and/or collections these floes read data from. Note that parameters identifying a molecule field are special. If left empty the floe will read the molecule from the primary (i.e., default) molecule field on the input record. The primary molecule of a dataset can be identified in the UI by looking for star on its field badge.
Known Molecule Field Field on the known molecules dataset holding the known molecules. If unspecified the default Primary molecule on the record will be used.Type : field_parameter::molRequired : FalsePython Name : known_molecule_field Input Dataset Molecule Field Field on the input dataset(s) containing the field with molecules to prepare. If unspecified the primary molecule field will be used.Type : field_parameter::molRequired : FalsePython Name : input_dataset_molecule_field