DOCK 3.8: Difference between revisions

From DISI
Jump to navigation Jump to search
m (→‎Start here: use github)
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
DOCK 3.8 has been the primary version of DOCK 3 since January 2021.
DOCK 3.8 has been the primary version of DOCK 3 since January 2021.


DOCK 3.8 is organized into a number of smaller repositories, each with a specialized purpose.
DOCK 3.8 is now organized into a number of smaller repositories, each with a specialized purpose.


  * dock3            : the Fortran source code
  * dock3            : the fortran source code  
  * pydock3          : Python scripts and executables to run docking, blastermaster, and parameter optimization
  * pydock3          : the scripts and executables to run docking & parameter optimization
  * ligdock3        : ligand building scripts used by ZINC-22
  * ligdock3        : the ligand building scripts used by ZINC-22.
  * SUBDOCK          : scripts for submitting docking workloads to SLURM, SGE, GNU Parallel, or other job platforms
  * SUBDOCK          : scripts for submitting docking workloads to SLURM/SGE/Native
  * docktop          : scripts for extracting top results from docking campaigns
  * docktop          : scripts for extracting top results from docking campaigns
  * zinc22-3d-submit : scripts for submitting ligand building workloads to SLURM or SGE
  * zinc22-3d-submit : scripts for submitting ligand building workloads to SLURM/SGE
  * DOCK            : legacy repository, still being used and updated for now
  * DOCK            : legacy repository, still being used & updated (for now)


DOCK 3.8 has been extensively reorganized from DOCK 3.7.
DOCK 3.8 has been extensively reorganized from DOCK 3.7.


== Start here ==
How to get DOCK 3.8. Use the DOCK license server dock.compbio.ucsf.edu. If you are a developer, fork the relevant repo.


Most users do not need to compile DOCK from source. A standard DOCK 3.8 installation is usually a pre-built release downloaded from the DOCK license server. Installing DOCK usually means:
[[How to install DOCK 3.8]]


# obtain access through the DOCK license server
[[SUBDOCK_DOCK3.8|How to dock in DOCK3.8]]
# download the DOCK 3.8 release
# unpack the release
# set the required environment variables
# install pydock3 with a compatible Python version
# run the included tests
 
Use the DOCK license server to obtain the software:
 
https://github.com/docking-org/dock3-release
 
If you are a developer modifying DOCK source code, fork the relevant repository and see the developer/compile instructions below.
 
== Main documentation ==
 
* [[How to install DOCK 3.8]] — start here for installation
* [[SUBDOCK_DOCK3.8|How to dock in DOCK3.8]] — submit docking jobs with SUBDOCK
* [[Docking Analysis in DOCK3.8]] — analyze docking results
* [[DOCK_3.8:How_to_install_pydock3|Installing pydock3]] — install the Python tools
* [[Dockopt_(pydock3_script)|Running pydock3/dockopt]] — automatic parameter optimization
* [[Blastermaster_(pydock3_script)|Running pydock3/blastermaster]] — generate grid files for docking
* [[Building_The_3D_Pipeline_ZINC22|How to build libraries for DOCK 3.8]] — ligand/library building
* [[Programming DOCK 3.8]] — developer information
* [[How_to_compile_DOCK|How to compile DOCK 3.8]] — developer-only source compilation
 
To run DOCK/LSD in AWS, follow the AWS tutorial starting with [[AWS:Set up account]].
 
== Which path should I follow? ==
 
=== Most users ===
 
Use the pre-built DOCK 3.8 release from the license server. You should not need to compile DOCK.


Expected basic workflow:
[[Docking Analysis in DOCK3.8]]


tar -xzf dock-[version].tgz
[[DOCK_3.8:How_to_install_pydock3|Installing pydock3]]
export DOCK_INSTALL_PATH=/absolute/path/to/DOCK3.8


Many older scripts and tutorials also expect:
[[Dockopt_(pydock3_script)|Running pydock3/dockopt (new blastermaster script- automatic optimization!)]]


export DOCKBASE=/absolute/path/to/DOCK3.8/legacy3
[[Blastermaster_(pydock3_script)|Running pydock3/blastermaster (classic blastermaster script - generate grid files)]]


Then install pydock3 using Python >=3.8.1 and <3.11. Python 3.10 is recommended.
How to run DOCK/LSD in AWS, follow our tutorial, starting with setting up an AWS account. [[AWS:Set up account]]


=== BKS / cluster users ===
[[Building_The_3D_Pipeline_ZINC22| How to build libraries for DOCK 3.8]]
Please note that you only need to build libraries if you do not want to use ZINC-22, and if you do not want to use the free 3D molecule building service in TLDR.docking.org.


If DOCK is already installed as a module on your cluster, load the module and check the environment variables instead of downloading or compiling DOCK yourself.
[[Programming DOCK 3.8]]
DOCK 3.8.5 is the current production version of DOCK 3, as of Sept 1, 2022.
If you wish to help develop DOCK 3.8, please write to us.


module load dock
[[How_to_compile_DOCK| How to compile DOCK 3.8]]
echo $DOCK_INSTALL_PATH
echo $DOCKBASE


If these variables are not set, ask your cluster administrator or see [[How to install DOCK 3.8]].
== Availability ==
DOCK 3.8 is installed on our cluster and on Wynton. It is available on AWS and OCI as a docker container. The software has never been easier to install (low bar!).  It should be runnable on any modern HPC platform. We recommend using an OS were python 3.8 or later is installed by default, however, you should be able to install python 3.8 or later on older equipment.  


=== Developers ===
== C7 Usage ==
DOCK 3.8 is available on [[Cluster 7]] through the dock module.


Only compile DOCK from source if you are developing DOCK or making a new release. Normal users should not need the NVIDIA HPC SDK, Docker build environment, PGI/NVHPC compiler setup, or source compilation workflow.
For a C7 smoke test of the installed DOCK 3.8 setup, see [[DOCK_3.8_testing_on_C7]].


See [[How_to_compile_DOCK|How to compile DOCK 3.8]].
For C7-specific SUBDOCK notes, see [[SUBDOCK_on_C7]].
 
== Requirements ==
 
The DOCK 3.8 release expects:
 
* GLIBC >= 2.17
* Python >= 3.8.1 and < 3.11 for pydock3
* One supported job platform for running jobs at scale:
** SLURM
** SGE
** GNU Parallel
 
Python 3.10 is a safe choice for pydock3. Newer Python versions, such as Python 3.13, may not work with pydock3.
 
== Availability ==
 
DOCK 3.8 is installed on the BKS cluster and on Wynton. It is also available on AWS and OCI as a Docker/container image.
 
The software should be runnable on modern HPC platforms. We recommend using an operating system where a compatible Python version is available by default, or creating a separate Python environment with Python 3.10.


== General Use ==
== General Use ==
Mechanically, docking has the following steps.
* prepare gridfiles (dockfiles)
* select database subset to run
* move all files to the target platform
* run docking at scale
* merge the results (top_poses.py)
* move results back to your server.
* process the results (interaction fingerprint, strain filter, clustering, manual review)
* final re-extract of top poses for hit picking party.
* archive the results.


Mechanically, docking has the following steps:
== Step by Step instructions ==  
 
During development, this was the script we used to explain how to dock:
# prepare grid files / dockfiles for the target
[[How to dock in DOCK3.8]]
# select the database subset to run
# move all required files to the target platform
# run docking at scale, often using SUBDOCK
# merge the results, for example with top_poses.py
# move results back to your server
# process the results, such as interaction fingerprints, strain filters, clustering, and manual review
# re-extract final top poses for hit picking
# archive the results
 
== Testing your installation ==
 
After installation, run the included tests before starting a real docking campaign.
 
=== Test DOCK / SUBDOCK ===
 
Choose one job platform:
 
export USE_SLURM=true
 
or
 
export USE_SGE=true
 
or
 
export USE_PARALLEL=true
 
Then run:
 
cd ${DOCK_INSTALL_PATH}/test/docking
./test_subdock.sh
 
If the test works, you should see an output directory containing numbered result folders, one for each test ligand package. Each result folder should contain an OUTDOCK file and a test.mol2.gz.0 pose file.
 
If the test fails, check the logs directory for stdout/stderr from the submitted jobs.
 
=== Test pydock3 / blastermaster ===
 
Activate the pydock3 Python environment first. Then run:
 
cd ${DOCK_INSTALL_PATH}/test/pydock
pydock3 blastermaster - new
cd blastermaster_job
pydock3 blastermaster - run
 
If this works, the job should produce dockfiles and visualization directories.
 
== Step by step docking instructions ==
 
For a full docking workflow, see:
 
[[SUBDOCK_DOCK3.8|How to dock in DOCK3.8]]
 
== Notes on building libraries ==
 
You only need to build libraries if you do not want to use ZINC-22 and do not want to use the free 3D molecule building service in TLDR.docking.org.
 
For library building, see:
 
[[Building_The_3D_Pipeline_ZINC22|How to build libraries for DOCK 3.8]]
 
== Developer notes ==
 
DOCK 3.8.5 is the current production version of DOCK 3, as of Sept 1, 2022. If you wish to help develop DOCK 3.8, please write to us.


[[Category:DOCK 3.8]]
[[Category:DOCK 3.8]]

Latest revision as of 21:14, 22 June 2026

DOCK 3.8 has been the primary version of DOCK 3 since January 2021.

DOCK 3.8 is now organized into a number of smaller repositories, each with a specialized purpose.

* dock3            : the fortran source code 
* pydock3          : the scripts and executables to run docking & parameter optimization
* ligdock3         : the ligand building scripts used by ZINC-22. 
* SUBDOCK          : scripts for submitting docking workloads to SLURM/SGE/Native
* docktop          : scripts for extracting top results from docking campaigns
* zinc22-3d-submit : scripts for submitting ligand building workloads to SLURM/SGE
* DOCK             : legacy repository, still being used & updated (for now)

DOCK 3.8 has been extensively reorganized from DOCK 3.7.

How to get DOCK 3.8. Use the DOCK license server dock.compbio.ucsf.edu. If you are a developer, fork the relevant repo.

How to install DOCK 3.8

How to dock in DOCK3.8

Docking Analysis in DOCK3.8

Installing pydock3

Running pydock3/dockopt (new blastermaster script- automatic optimization!)

Running pydock3/blastermaster (classic blastermaster script - generate grid files)

How to run DOCK/LSD in AWS, follow our tutorial, starting with setting up an AWS account. AWS:Set up account

How to build libraries for DOCK 3.8 Please note that you only need to build libraries if you do not want to use ZINC-22, and if you do not want to use the free 3D molecule building service in TLDR.docking.org.

Programming DOCK 3.8 DOCK 3.8.5 is the current production version of DOCK 3, as of Sept 1, 2022. If you wish to help develop DOCK 3.8, please write to us.

How to compile DOCK 3.8

Availability

DOCK 3.8 is installed on our cluster and on Wynton. It is available on AWS and OCI as a docker container. The software has never been easier to install (low bar!). It should be runnable on any modern HPC platform. We recommend using an OS were python 3.8 or later is installed by default, however, you should be able to install python 3.8 or later on older equipment.

C7 Usage

DOCK 3.8 is available on Cluster 7 through the dock module.

For a C7 smoke test of the installed DOCK 3.8 setup, see DOCK_3.8_testing_on_C7.

For C7-specific SUBDOCK notes, see SUBDOCK_on_C7.

General Use

Mechanically, docking has the following steps.

  • prepare gridfiles (dockfiles)
  • select database subset to run
  • move all files to the target platform
  • run docking at scale
  • merge the results (top_poses.py)
  • move results back to your server.
  • process the results (interaction fingerprint, strain filter, clustering, manual review)
  • final re-extract of top poses for hit picking party.
  • archive the results.

Step by Step instructions

During development, this was the script we used to explain how to dock: How to dock in DOCK3.8