diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index ebf182eb..40056fa4 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -11,7 +11,7 @@ Even better, you can submit a Pull Request with a patch.
## Feature requests
We highly appreciate your contributions, and would like to help you crafting the changes and making contributions to the community.
-If you would like to implement a new feature, please **submit a feature requesting issue with a proposal for your work first**.
+If you would like to implement a new feature, please **submit a feature requesting issue with a proposal for your work first**.
This help fitting your ideas and work with the development road map well, coordinating our efforts, and avoiding duplication of work.
## Submitting a Pull Request
@@ -35,7 +35,7 @@ This help fitting your ideas and work with the development road map well, coordi
```
5. On GitHub, create a pull request (PR) from your bug-fix branch targeting `dptech-corp/Uni-Dock`.
-
+
6. After your pull request is merged, you can safely delete your branch and sync the changes from the main (upstream) repository:
- Delete the remote branch on GitHub either [through the GitHub web UI](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request#deleting-a-branch-used-for-a-pull-request) or your local shell as follows:
diff --git a/README.md b/README.md
index 2cd25fe1..6a701127 100644
--- a/README.md
+++ b/README.md
@@ -3,28 +3,26 @@
[![DeepModeling](https://img.shields.io/badge/DeepModeling-Incubating_Project-blue)](https://github.com/deepmodeling)
-## Introduction
**Uni-Dock** is a GPU-accelerated molecular docking program developed by DP Technology.
It supports various scoring functions including vina, vinardo, and ad4. Uni-Dock achieves more than 1000-fold speed-up on V100 GPU with high-accuracy compared with the AutoDock Vina running in single CPU core.
The [paper](https://pubs.acs.org/doi/10.1021/acs.jctc.2c01145) has been accepted by JCTC (doi: 10.1021/acs.jctc.2c01145).
-![Runtime performance of Uni-Dock on different GPUs in three modes](./unidock/assets/gpu_speeds.png)
+**Uni-Dock** joins the DeepModeling community, a community devoted of AI for science, as an incubating level project. [Learn more about DeepModeling](https://github.com/deepmodeling/community)
-Check this [subfolder](./unidock/) for instructions on installing Uni-Dock.
+![Runtime performance of Uni-Dock on different GPUs in three modes](./unidock/assets/gpu_speeds.png)
-**Uni-Dock** joins the DeepModeling community, a community devoted of AI for science, as an incubating level project. To learn more about the DeepModeling community, see the [introduction of community](https://github.com/deepmodeling/community).
-## UniDockTools
+Please check [`unidock` folder](./unidock/) for installing instructions, source codes, and usage.
-**UniDockTools** is a python package developed to handle the inputs and outputs of Uni-Dock.
-In the future, UniDockTools will support more input formats and scoring functions. We hope it could be an easy-to-use virtual screening workflow for all users.
+**Uni-Dock Tools** is a Python package developed to handle the inputs and outputs of Uni-Dock.
+It is committed to support more input formats and scoring functions. We hope it could be an easy-to-use virtual screening workflow for users with diversed backgrounds.
-Check this [subfolder](./unidock_tools/) for more details.
+Please check [`unidock_tools` folder](./unidock_tools/) for installing instructions, source codes, and usage.
## Changelog
- 2023-08-21: Upload source codes of Uni-Dock.
-- 2023-08-14: Add unidock_tools to support SDF format input for vina and vinardo scoring functions.
+- 2023-08-14: Add Uni-Dock Tools to support SDF format input for vina and vinardo scoring functions.
## Citation
@@ -34,18 +32,3 @@ Yu, Y., Cai, C., Wang, J., Bo, Z., Zhu, Z., & Zheng, H. (2023).
Uni-Dock: GPU-Accelerated Docking Enables Ultralarge Virtual Screening.
Journal of Chemical Theory and Computation.
https://doi.org/10.1021/acs.jctc.2c01145
-
-Tang, S., Chen, R., Lin, M., Lin, Q., Zhu, Y., Ding, J., ... & Wu, J. (2022).
-Accelerating autodock vina with gpus. Molecules, 27(9), 3041.
-DOI 10.3390/molecules27093041
-
-J. Eberhardt, D. Santos-Martins, A. F. Tillack, and S. Forli
-AutoDock Vina 1.2.0: New Docking Methods, Expanded Force
-Field, and Python Bindings, J. Chem. Inf. Model. (2021)
-DOI 10.1021/acs.jcim.1c00203
-
-O. Trott, A. J. Olson,
-AutoDock Vina: improving the speed and accuracy of docking
-with a new scoring function, efficient optimization and
-multithreading, J. Comp. Chem. (2010)
-DOI 10.1002/jcc.21334
diff --git a/unidock/README.md b/unidock/README.md
index 558ea57a..438469f3 100644
--- a/unidock/README.md
+++ b/unidock/README.md
@@ -7,20 +7,6 @@ The [paper](https://pubs.acs.org/doi/10.1021/acs.jctc.2c01145) has been accepted
![Runtime performance of Uni-Dock on different GPUs in three modes](assets/gpu_speeds.png)
-## Changelog
-
-- 2023-08-14: Add `unidock_tools` to support SDF format input for vina and vinardo scoring functions.
-
-## License
-
-This project is licensed under the terms of the GNU Lesser General Public License v3.0. See [LICENSE](./LICENSE) for details.
-
-Developed by [DP Technology](https://dp.tech/en), [Hermite®](https://dp.tech/en/product/hermite) is a new-generation drug computing design platform which integrates artificial intelligence, physical modeling and high-performance computing to provide a one-stop computing solution for preclinical drug research and development. It integrates the features of Uni-Dock, along with virtual screening workflow for an efficient drug discovery process.
-
-Uni-Dock is now available on the new-generation drug computing design platform [Hermite®](https://dp.tech/en/product/hermite) for ultralarge virtual screening.
-
-For further cooperations on developing Uni-Dock and trying out Hermite®, please contact us at .
-
## Installation
Uni-Dock officially supports NVIDIA GPUs with [compute capability](https://en.wikipedia.org/wiki/CUDA#GPUs_supported) >= 7.0 on Linux platform.
@@ -57,7 +43,7 @@ The performance is not guaranteed on legacy GPU models. To build Uni-Dock with a
# Otherwise, prepend the building directory to your `PATH` environment variable.
```
-code foramt
+To format codes if changes are made:
```shell
cd ./build/
@@ -195,9 +181,33 @@ python run_dock.py
If you want to use search mode presets, specify the parameter `search_mode` in `config.json` and delete `nt` and `ns` in `config.json`.
-## Bug Report
+## Contributing
+
+We warmly welcome contributions from the open source community. Your bug reports, feature requests, and pull requests helps Uni-Dock improve.
+
+Please submit bug reports and feature requests to the Github [issue tracker](https://github.com/dptech-corp/Uni-Dock/issues/new/choose).
-Please report bugs to [Issues](https://github.com/dptech-corp/Uni-Dock/issues) page.
+If you would like to improve the codes, please refer to the [contributing guide](../.github/CONTRIBUTING.md) for details.
+
+## Changelog
+
+Major changes are documented. For the detailed changes, please refer to the commit history.
+
+### v1.1
+
+- Optimize 1:1 ligand docking.
+- Optimize Monte-Carlo simulation speed.
+- Generate compute kernels for various ligands sizes.
+
+## License
+
+This project is licensed under the terms of the GNU Lesser General Public License v3.0. See [LICENSE](./LICENSE) for details.
+
+Developed by [DP Technology](https://dp.tech/en), [Hermite®](https://dp.tech/en/product/hermite) is a new-generation drug computing design platform which integrates artificial intelligence, physical modeling and high-performance computing to provide a one-stop computing solution for preclinical drug research and development. It integrates the features of Uni-Dock, along with virtual screening workflow for an efficient drug discovery process.
+
+Uni-Dock is now available on the new-generation drug computing design platform [Hermite®](https://dp.tech/en/product/hermite) for ultralarge virtual screening.
+
+For further cooperations on developing Uni-Dock and trying out Hermite®, please contact us at .
## Ackowledgement
diff --git a/unidock_tools/README.md b/unidock_tools/README.md
index 22d0302f..da15a80d 100644
--- a/unidock_tools/README.md
+++ b/unidock_tools/README.md
@@ -13,7 +13,7 @@ Main features are:
## Dependency
-- Uni-Dock
+- [Uni-Dock](../unidock/README.md#installation)
- Python >= 3.6
- RDKit
- networkx
@@ -92,4 +92,4 @@ See [MCDock Usage](./MCDOCK.md#usage)
# License
-This project is licensed under the terms of Apache license 2.0. See [LICENSE](./LICENSE) for additional details.
+This project is licensed under the terms of Apache license 2.0. See [LICENSE](./LICENSE) for additional details.
\ No newline at end of file
diff --git a/unidock_tools/tests/applications/test_ligprep.py b/unidock_tools/tests/applications/test_ligprep.py
index fba62f12..08d42eba 100644
--- a/unidock_tools/tests/applications/test_ligprep.py
+++ b/unidock_tools/tests/applications/test_ligprep.py
@@ -12,7 +12,7 @@ def input_ligand():
def test_ligprep_app_ligand_file(input_ligand):
results_dir = "prepared_ligands"
- cmd = f"unidocktools ligprep -l {input_ligand} -sd {results_dir}"
+ cmd = f"unidocktools ligandprep -l {input_ligand} -sd {results_dir}"
print(cmd)
resp = subprocess.run(cmd, shell=True, capture_output=True, encoding="utf-8")
print(resp.stdout)
@@ -25,7 +25,7 @@ def test_ligprep_app_ligand_index(input_ligand):
with open(index_file, "w") as f:
f.write(input_ligand)
results_dir = "prepared_ligands"
- cmd = f"unidocktools ligprep -i {index_file} -sd {results_dir}"
+ cmd = f"unidocktools ligandprep -i {index_file} -sd {results_dir}"
print(cmd)
resp = subprocess.run(cmd, shell=True, capture_output=True, encoding="utf-8")
print(resp.stdout)
diff --git a/unidock_tools/tests/applications/test_pdb2pdbqt.py b/unidock_tools/tests/applications/test_proprep.py
similarity index 75%
rename from unidock_tools/tests/applications/test_pdb2pdbqt.py
rename to unidock_tools/tests/applications/test_proprep.py
index 8bf9982e..66977be5 100644
--- a/unidock_tools/tests/applications/test_pdb2pdbqt.py
+++ b/unidock_tools/tests/applications/test_proprep.py
@@ -11,9 +11,9 @@ def pdb_file():
def test_pdb2pdbqt_app(pdb_file):
pdbqt_file = "protein.pdbqt"
- cmd = f"unidocktools pdb2pdbqt -r {pdb_file} -o {pdbqt_file}"
+ cmd = f"unidocktools proteinprep -r {pdb_file} -o {pdbqt_file}"
print(cmd)
resp = subprocess.run(cmd, shell=True, capture_output=True, encoding="utf-8")
print(resp.stdout)
- assert resp.returncode==0, f"run pdb2pdbqt app err:\n{resp.stderr}"
+ assert resp.returncode==0, f"run proteinprep app err:\n{resp.stderr}"
Path(pdbqt_file).unlink(missing_ok=True)
\ No newline at end of file
diff --git a/unidock_tools/tests/applications/test_unidock.py b/unidock_tools/tests/applications/test_unidock.py
index b8fd44c2..9f49f1fb 100644
--- a/unidock_tools/tests/applications/test_unidock.py
+++ b/unidock_tools/tests/applications/test_unidock.py
@@ -33,7 +33,7 @@ def read_scores(sdf_file, score_name):
def test_unidock_pipeline_default(receptor, ligand, pocket):
results_dir = "unidock_results"
- cmd = f"unidocktools unidock -r {receptor} -l {ligand} -sd {results_dir} \
+ cmd = f"unidocktools unidock_pipeline -r {receptor} -l {ligand} -sd {results_dir} \
-cx {pocket[0]} -cy {pocket[1]} -cz {pocket[2]} -sx {pocket[3]} -sy {pocket[4]} -sz {pocket[5]} \
-sf vina -nm 1"
print(cmd)
@@ -55,7 +55,7 @@ def test_unidock_pipeline_ligand_index(receptor, ligand, pocket):
with open(index_file, "w") as f:
f.write(str(ligand))
results_dir = "unidock_results_input_index"
- cmd = f"unidocktools unidock -r {receptor} -i {index_file} -sd {results_dir} \
+ cmd = f"unidocktools unidock_pipeline -r {receptor} -i {index_file} -sd {results_dir} \
-cx {pocket[0]} -cy {pocket[1]} -cz {pocket[2]} -sx {pocket[3]} -sy {pocket[4]} -sz {pocket[5]} \
-sf vina -nm 1"
print(cmd)
@@ -95,7 +95,7 @@ def test_unidock_pipeline_ligand_index(receptor, ligand, pocket):
def test_unidock_pipeline_multi_pose(receptor, ligand, pocket):
results_dir = "unidock_results_multi_pose"
- cmd = f"unidocktools unidock -r {receptor} -l {ligand} -sd {results_dir} \
+ cmd = f"unidocktools unidock_pipeline -r {receptor} -l {ligand} -sd {results_dir} \
-cx {pocket[0]} -cy {pocket[1]} -cz {pocket[2]} -sx {pocket[3]} -sy {pocket[4]} -sz {pocket[5]} \
-sf vina -nm 4"
print(cmd)