Re: [AMBER] calculating average number of water in the binding site:

From: Skanda Sastry via AMBER <amber.ambermd.org>
Date: Sat, 16 Dec 2023 12:00:36 -0800

Hello Kankana,

I was working on a similar problem recently.

One thing you can do is a GIST simulation. Essentially, you fully restrain
the solute/macromolecule and do 10-20 ns of conventional MD, then the post
processing method considers the full system as a group of voxels (small
cubes that allow us to grid and organize 3-D space) and computes a bunch of
statistics about solvent molecules in each voxel (e.g. number of solvent
molecules, rotational entropy, translational entropy, and others). You
could run GIST and look at voxels near the binding site - this would give
you the total number of water molecules that visited the binding site
voxels as well as information about their entropy (more entropy = closer to
bulk solvent, less entropy = solvent molecule movement is restricted, maybe
associating with the protein). Refer to amber manual pages 738-745 and
this cpptraj
GIST entry <https://amberhub.chpc.utah.edu/gist/> for more information.

If you want frame-by-frame counts, and not just average over the whole
simulation, another approach would be to directly compute the number of
water molecules in a voxel of interest frame-by-frame. I wrote a pytraj
function to do this recently, and you can use it by cloning the latest
commit of the pytraj repo <https://github.com/Amber-MD/pytraj> and
installing from source code. Here
<https://github.com/Amber-MD/pytraj/pull/1643> is the pull request that
details the function I wrote. After loading the correct version of pytraj
you could write a script like I've written below. The third line counts the
number of water oxygen atoms in a voxel centered at coordinates (25.00,
25.00, 25.00) for a voxel of length/width/height 10.0 Angstroms. It returns
a list of lists, with each list at index *j *corresponding to the number of
water oxygen atoms in the voxel at frame *j* in the trajectory.

import pytraj as pt
traj = pt.load("traj.nc", "parm.top")
pop = pt.count_in_voxel(traj, ":WAT.O", (25.00, 25.00, 25.00), 10)

Hope this helps! Apologies if the email was a bit long-winded, please reach
out if you have questions.

Regards,
Skanda





On Sat, Dec 16, 2023 at 3:35 AM Kankana Bhattacharjee via AMBER <
amber.ambermd.org> wrote:

> Dear AMBER users,
>
> I would like to compute the average number of water molecules in the
> binding site. How can I do that job ?
>
> Your suggestions would be appreciated.
>
> Thanks & Regards
> Kankana Bhattacharjee
> Ph.D. Scholar
> Department of Chemistry
> Ashoka University
> Sonipat, Haryana
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Sat Dec 16 2023 - 12:30:02 PST
Custom Search