Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 0.4.0 Update #6

Open
wants to merge 19 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
include CODE_OF_CONDUCT.md
include LICENSE
include MANIFEST.in
include versioneer.py

graft qmrebind
global-exclude *.py[cod] __pycache__ *.so
include qmrebind/_version.py
35 changes: 20 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ qmrebind
[![codecov](https://codecov.io/gh/anandojha/qmrebind/branch/main/graph/badge.svg)](https://codecov.io/gh/anandojha/qmrebind/branch/main)

Quantum Mechanical - Molecular Mechanical reparameterization at the
receptor-ligand Binding site (qmrebind) implemented in Simulation Enabled Estimation of
Kinetic Rates (SEEKR) multiscale software package
receptor-ligand Binding site (qmrebind) implemented in Simulation Enabled
Estimation of Kinetic Rates (SEEKR) multiscale software package

Detailed installation and usage instructions can be found at
https://qmrebind.readthedocs.io/en/latest/index.html.
Expand All @@ -17,31 +17,31 @@ Make sure to install these packages before running qmrebind:
* ORCA
* SEEKR2 (optional)

One is likely to want to create a unique conda environment for qmrebind
One is likely to want to create a unique Mamba environment for qmrebind
calculations:

```bash
conda create --name QMMM python=3.8
mamba create --name QMMM
```

Section IA: Installing ORCA
### Installing ORCA
**********************
Follow the instructions on this page: https://qmrebind.readthedocs.io/en/latest

Alternatively, visit the official site for instructions to install ORCA:
https://www.orcasoftware.de/tutorials_orca/first_steps/install.html

Section II: Installing SEEKR2 (optional)
### Installing SEEKR2 (optional)
**********************
Use the instructions on this page to install SEEKR2, if desired:
https://seekr2.readthedocs.io/en/latest/installation.html

## Installation and Setup Instructions :

* Activate the previously created conda environment:
* Activate the previously created Mamba environment:
```bash
conda activate QMMM # activate the conda environment
conda install -c conda-forge ambertools biopandas pandas matplotlib parmed regex openmm
mamba activate QMMM # activate the mamba environment
mamba install ambertools biopandas pandas matplotlib parmed regex openmm
pip install PyPDF2
```
* Clone the *qmrebind* repository :
Expand All @@ -54,8 +54,8 @@ Linux machine (Installation in the home directory is recommended) :

```bash
cd qmrebind
python setup.py install
python setup.py test # optional
python -m pip install .
pytest # optional
```
Detailed documentation can be found at
https://qmrebind.readthedocs.io/en/latest/installation.html.
Expand All @@ -66,9 +66,10 @@ Input PDB file Requirements.

qmrebind accepts the PDB input file with the following requirements:

* PDB file typically should have the box vector information.
* PDB file typically should have the box vector information (In a CRYST1 line).

* Ligand and the receptor must be assigned a residue name, with the ligand following the receptor.
* Ligand and the receptor must be assigned a residue name, with the ligand
following the receptor.

## Authors and Contributors
The following people have contributed directly to the coding and validation
Expand All @@ -85,11 +86,15 @@ this project by providing feedback, bug reports, or other comments.

If you use qmrebind, please cite the following paper:

* ADD PAPER HERE
* Ojha AA, Votapka LW, Amaro RE. QMrebind: incorporating quantum mechanical
force field reparameterization at the ligand binding site for improved
drug-target kinetics through milestoning simulations. Chem Sci.
2023 Oct 24;14(45):13159-13175. doi: 10.1039/d3sc04195f.
PMID: 38023523; PMCID: PMC10664576.

### Copyright

Copyright (c) 2022, Anupam Anand Ojha
Copyright (c) 2023, Anupam Anand Ojha


#### Acknowledgements
Expand Down
5 changes: 3 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
author = 'Anupam Anand Ojha'

# The short X.Y version
version = ''
version = '0.4.0'
# The full version, including alpha/beta/rc tags
release = ''
release = '0.4.0'


# -- General configuration ---------------------------------------------------
Expand All @@ -50,6 +50,7 @@
'sphinx.ext.napoleon',
'sphinx.ext.intersphinx',
'sphinx.ext.extlinks',
'sphinx_rtd_theme',
]

autosummary_generate = True
Expand Down
3 changes: 2 additions & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ Cite QMrebind

If you wish to cite QMrebind, please cite the following paper:

* Citation not yet available
* Ojha AA, Votapka LW, Amaro RE. QMrebind: incorporating quantum mechanical force field reparameterization at the ligand binding site for improved drug-target kinetics through milestoning simulations. Chem Sci. 2023 Oct 24;14(45):13159-13175. doi: 10.1039/d3sc04195f. PMID: 38023523; PMCID: PMC10664576.


Getting Involved
================
Expand Down
58 changes: 45 additions & 13 deletions docs/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -70,23 +70,37 @@ These are separate downloaded tar files.
5. Extract all three parts and copy all the contents into the folder named
"orca".

6. Move the entire content to the home folder.
.. code-block:: bash

tar -xf orca_5_0_3_linux_x86-64_openmpi411_part1.tar.xz
tar -xf orca_5_0_3_linux_x86-64_openmpi411_part2.tar.xz
tar -xf orca_5_0_3_linux_x86-64_openmpi411_part3.tar.xz
mv orca_5_0_3_linux_x86-64_openmpi411_part1/* .
mv orca_5_0_3_linux_x86-64_openmpi411_part2/* .
mv orca_5_0_3_linux_x86-64_openmpi411_part3/* .


7. To assign the path variable and source it, open the bashrc file
6. To assign the path variable and source it, open the bashrc file
(vi ~/.bashrc) and add the following lines:

.. code-block:: bash

export PATH="$HOME/orca:$PATH"
export LD_LIBRARY_PATH="$HOME/orca:$LD_LIBRARY_PATH"

8. Source the bashrc file:
7. Source the bashrc file:

.. code-block:: bash

source ~/.bashrc

The correct environment probably deactivated:

.. code-block:: bash

9. Run ORCA using the following command by typing "orca" in the terminal.
conda activate QMMM

8. Run ORCA using the following command by typing "orca" in the terminal.
The expected outcome for a successful installation will be similar to the
following:

Expand All @@ -105,10 +119,15 @@ Install OpenMPI
https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.1.tar.bz2
(It *must* be this version)

3. Extract the file and rename the folder as "openmpi". Move this folder to
the home directory.
3. Extract the file and rename the folder as "openmpi". Enter this directory.

.. code-block::

tar -xzf openmpi-4.1.1.tar.gz
mv openmpi-4.1.1 $HOME/openmpi
cd $HOME/openmpi

4. Go to the openmpi folder in the home directory. Open the terminal and
4. Go into to the openmpi folder. Open the terminal and
execute the following command in the terminal:

.. code-block::
Expand All @@ -130,6 +149,12 @@ execute the following command in the terminal:

source ~/.bashrc

The correct environment probably deactivated:

.. code-block:: bash

conda activate QMMM

Install XTB
-----------

Expand All @@ -141,10 +166,16 @@ https://github.com/grimme-lab/xtb/releases/tag/v6.5.1
3. Download the xtb tar file, xtb-6.5.1-linux-x86_64.tar.xz, and extract the
file.

4. After extracting, the folder is named xtb-6.5.1-linux-x86_64.
.. code-block:: bash

tar -xf xtb-6.5.1-linux-x86_64.tar.xz

4. Copy the xtb executable to the
orca folder in HOME, and rename it as otool_xtb.

.. code-block:: bash

5. Go to the folder, get into xtb-6.5.1/bin, copy the xtb executable to the
orca folder in the home, and rename it as otool_xtb.
cp xtb-6.5.1/bin/xtb ~/orca/otool_xtb

Install QMrebind
----------------
Expand All @@ -153,7 +184,8 @@ Install QMrebind
.. code-block:: bash

conda activate QMMM # activate the conda environment
conda install -c conda-forge ambertools biopandas pandas matplotlib parmed regex openmm
conda install -c conda-forge ambertools
conda install -c conda-forge openmm
pip install PyPDF2

2. Clone the *qmrebind* repository :
Expand All @@ -168,6 +200,6 @@ Linux machine (Installation in the home directory is recommended) :
.. code-block:: bash

cd qmrebind
python setup.py install
python setup.py test # optional
python -m pip install .
pytest # optional

1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sphinx-rtd-theme
14 changes: 5 additions & 9 deletions docs/requirements.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,13 @@
name: docs
channels:
- conda-forge
- defaults
dependencies:
- python=3.8
- ambertools
- biopandas
- pandas
- matplotlib
- parmed
- regex
# Base depends
- python=3.12
- pip
- cython
- pip

- pip:
- sphinx-autoapi
- PyPDF2
- versioneer
9 changes: 5 additions & 4 deletions docs/tutorial1_hsp90.rst
Original file line number Diff line number Diff line change
Expand Up @@ -166,11 +166,12 @@ inhibitor itself has the resname BSM, so enter the following command:

.. code-block:: bash

python ~/qmrebind/qmrebind/run_qmrebind_amber.py hsp90_compound3.pdb hsp90_compound3.parm7 -L BSM -Q -1
python ~/qmrebind/qmrebind/run_qmrebind_amber.py hsp90_compound3.pdb hsp90_compound3.parm7 -L BSM -c 5.0 -m MP2 -b "cc-pVTZ" -n 4

Notice that we had to specify that the QM2 region has a charge of -1 using the
'-Q' argument. This is because of a deprotonated aspartate close to the
inhibitor in the crystal structure.
This specifies a QM2 region cutoff of 5.0 Angstroms (any residue with any atoms
within 5 Angstroms of any ligand atom will be added to the QM2 region). It also
specifies that the MP2 method will be used, and the cc-pVTZ basis set, and
4 CPU cores will be used to accelerate the calculation.

References
----------
Expand Down
31 changes: 17 additions & 14 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,22 @@ classifiers = [
]
requires-python = ">=3.8"
# Declare any run-time dependencies that should be installed with the package.
#dependencies = [
# "importlib-resources;python_version<'3.10'",
#]
dependencies = [
"pytest",
"numpy",
"scipy",
"matplotlib",
"parmed",
"nptyping",
"regex",
"pandas",
"biopandas",
]

# Update the urls once the hosting is set up.
#[project.urls]
#"Source" = "https://github.com/<username>/qmrebind/"
#"Documentation" = "https://qmrebind.readthedocs.io/"

[project.optional-dependencies]
test = [
"pytest>=6.1.2",
"pytest-runner"
]
[project.urls]
"Source" = "https://github.com/seekrcentral/qmrebind"
"Documentation" = "https://qmrebind.readthedocs.io"

[tool.setuptools]
# This subkey is a beta stage development and keys may change in the future, see https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html for more details
Expand Down Expand Up @@ -63,11 +65,12 @@ where = ["."]
# Ref https://setuptools.pypa.io/en/latest/userguide/datafiles.html#package-data
[tool.setuptools.package-data]
qmrebind = [
"py.typed"
"py.typed",
"*.dat"
]

[tool.versioningit]
default-version = "1+unknown"
default-version = "1.0.0"

[tool.versioningit.format]
distance = "{base_version}+{distance}.{vcs}{rev}"
Expand Down
4 changes: 3 additions & 1 deletion qmrebind/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,6 @@
Quantum Mechanical - Molecular Mechanical Re-parameterization of the
Receptor-Ligand Binding site implemented in Simulation Enabled Estimation of
Kinetic Rates (SEEKR)
"""
"""

__version__ = "{version}"
Loading
Loading