[gmx-users] selected forces
ahassana at chemistry.ohio-state.edu
Thu Sep 9 17:50:48 CEST 2010
Dear Gromacs Users,
I've read through various posts on a related issue but am hoping that
someone will have some ideas on this or at least point me in the right
direction. I am also hoping that some discussion on this will help develop
some routines that would allow users to approach this problem as a black
The system I intend to simulate consists of a polymer surrounded by water,
lets call them as energygroups Protein and SOL. At each time step during a
molecular dynamics simulation, I need (or would like to) have access to
the force on each solvent atom exerted only by the protein atoms and not
the other solvent atoms. For now lets assume that the protein is
uncharged and so only interacts with the solvent via LJ interactions.
I've been ploughing through the code and have gotten to the following:
1) do_force(f) has a force vector array f that is invoked in md.c
2) do_force(f) in sim_util.c calls do_force_lowlevel(f) to determine the
bonded and non-bonded interactions.
3) do_force_lowlevel(f) in force.f calls do_nonbonded(f) which I assume
will determine the LJ interactions for all particles.
4) do_nonbonded(f) in nonbonded.c seems to have different kernel routines
for water and other atoms (as the manual states, forces on water molecules
are determined with special kernel loops)
5) do_nonbonded(f) calls a specific nonbonded kernel function and this is
where its getting a bit tricky. Any help would be appreciated. I'd like to
access the solvent atoms and sum up the forces coming from just the
protein/polymer and not the other solvent atoms.
Unfortunately doing a mdrun -rerun zeroing out different parts of the
hamiltonian is not possible for me because I need the 'selected forces' on
the fly and not at the end of the simulation.
Any ideas/pointers/help would be greatly appreciated.
Thanks in advance.
More information about the gromacs.org_gmx-users