Antw: [gmx-developers] NMR refinement

Emanuel Peter Emanuel.Peter at
Sun Jan 13 06:22:03 CET 2013

Hi Santhosh,

I do not know actually much about these so-called RDC restraints. At least nothing.

But I have an idea, how it could work.

Could one write a small subroutine, which you put into the loop of runner.c
and transform this RDC restraint into a set of distance restraints ? 3 well defined
disres might be enough.

If this was possible, than simply try to update the number of distance restraints,
with these new RDC transformed distance restraints.

You could try to connect this with the frequency of the neighbourlist update.

I have to note, that this is simply an idea and maybe someone else knows it
much better than me. 



>>> santhu kumar <mesanthu at> 13.01.13 4.27 Uhr >>>
Hello all,

I am trying to reproduce an NMR refinement protocol detailed in EROS, "Recognition Dynamics Up to Microseconds Revealed from an RDC-Derived Ubiquitin Ensemble in Solution". 
 The method talks about 2 types of ensemble restraints :
1). NOE restraints as distance restraints and the NOE violation is computed as a average value over 8 conformations which are simultaneously refined. (This could be achieved with -multi and distance restraint).
 2). RDC restraint : compute the RDC from the ensemble of 8 conformation and the experimental value. And add the restraint for the corresponding atomic pair. Or briefly a force addition to the atomic pair involved, eg : N and HN.  

NOE distance restraints are straight forward in Gromacs as the code itself has provisions for it. But the RDC's are a bit complex and I did not find a code/mail which implemented it.  I would like to know your view about the way to proceed. 

1). Should I change the code itself? Write a custom code which would be called before every integration step and adds a force vector to the existing force vector? What would be ideal location for this code? Though I found a few mails regarding these, those seem to be very specific to the application. (I might be wrong too). Since -multi would be always be there as a running option, any pointers on how would that affect the implementation. 

2). Is there any way, I could write a tabulated force file in which I would provide only the force (Fx, Fy, Fz) for every atom, which could be directly added to the existing force vector. That way, I could write a script which would run the gromacs mdrun for one step and read the file to update the forces and repeat for certain number of steps. I am thinking of python wrappers of gromacs for the scripting. (This could slow down the system considerably but my simulations would not be too long, at this point this is not a concern). 

I looked a solution from the mailing list but could not find one. 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gromacs.org_gmx-developers mailing list