Ucsfdock
ucsfdock is a Python package wrapping the DOCK program that provides tools to help standardize and automate the computational methods employed in molecular docking.
Programs:
- blastermaster: generate a specific docking configuration for a given receptor and ligand
- dockmaster: evaluate many different docking configurations in parallel using a specified job scheduler (e.g. Slurm)
A docking configuration is a unique set of DOCK parameter files and INDOCK parameter values.
Installation
- TODO
Instructions
blastermaster
blastermaster allows the generation of a specific docking configuration for a given receptor and ligand.
Invoking blastermaster commands below will produce a log file called blastermaster.log in your current working directory.
blastermaster configure
First you need to create the directory for your blastermaster job. To do so, simply type
blastermaster configure
By default, the job directory is named blastermaster_job. To specify a different name, type
blastermaster configure <JOB_DIR_NAME>
The job directory contains two sub-directories:
- working: input files, intermediate blaster files, sub-directories for individual blastermaster subroutines
- dockfiles: output files (DOCK parameter files & INDOCK)
If your current working directory contains any of the following files
- rec.pdb
- xtal-lig.pdb
- rec.crg.pdb
- reduce_wwPDB_het_dict.txt
- filt.params
- radii
- amb.crg.oxt
- vdw.siz
- delphi.def
- vdw.parms.amb.mindock
- prot.table.ambcrg.ambH
then they will be automatically copied into the working directory within the created job directory. This feature is intended to simplify the process of configuring the blastermaster job. If you would like to use files not present in your current working directory, copy them into your job's working directory, e.g.:
cp <FILE_PATH> <JOB_DIR_NAME>/working/
Finally, configure the blastermaster_config.yaml file in the job directory to your specifications. The parameters in this file govern the behavior of blastermaster.
blastermaster run
Once your job has been configured to your liking, navigate to the the job directory and run blastermaster:
cd <JOB_DIR_NAME> blastermaster run
This will execute the many blastermaster subroutines in sequence. The state of the program will be printed to standard output as it runs.
dockmaster
dockmaster allows the evaluation of many different docking configurations in parallel using a specified job scheduler (e.g. Slurm).
The name "dockmaster", aside from being an uncreative rehash of the name "blastermaster", derives from the notion of a literal dockmaster, i.e., the person in charge of a dock who manages freight logistics and bosses around numerous dockworkers. In this analogy, a single dockworker corresponds to the processing of a single docking configuration.
Invoking dockmaster commands will produce a log file called dockmaster.log in your current working directory.
dockmaster configure
First you need to create the directory for your blastermaster job. To do so, simply type
dockmaster configure
By default, the job directory is named dockmaster_job. To specify a different name, type
dockmaster configure <JOB_DIR_NAME>
The job directory contains two sub-directories:
- working: input files, intermediate blaster files, sub-directories for individual blastermaster subroutines
- retro_docking: individual retro docking jobs for each docking configuration
The key difference between the working directories of blastermaster and dockmaster is that the working directory of dockmaster may contain multiple variants of the blaster files (prefixed by a number, e.g. "1_box"). These variant files are used to create the different docking configurations specified by the multi-valued entries of dockmaster_config.yaml. They are created efficiently, such that the same variant used in multiple docking configurations is not created more than once.
If your current working directory contains any of the following files, then they will be automatically copied into the working directory within the created job directory.
- rec.pdb
- xtal-lig.pdb
- rec.crg.pdb
- reduce_wwPDB_het_dict.txt
- filt.params
- radii
- amb.crg.oxt
- vdw.siz
- delphi.def
- vdw.parms.amb.mindock
- prot.table.ambcrg.ambH
This feature is intended to simplify the process of configuring the dockmaster job. If you would like to use files not present in your current working directory, copy them into your job's working directory, e.g.:
cp <FILE_PATH> <JOB_DIR_NAME>/working/
Finally, configure the dockmaster_config.yaml file in the job directory to your specifications. The parameters in this file govern the behavior of dockmaster.
dockmaster run
Once your job has been configured to your liking, navigate to the the job directory and run dockmaster:
cd <JOB_DIR_NAME> dockmaster run <JOB_SCHEDULER_NAME>
where <JOB_SCHEDULER_NAME> is one of:
- sge
- slurm
This will execute the many dockmaster subroutines in sequence. The state of the program will be printed to standard output as it runs.