[gmx-developers] md.c: do_force()

Berk Hess hessb at mpip-mainz.mpg.de
Thu Mar 27 16:28:00 CET 2008


Mitchell Stanton-Cook wrote:

> Hi,
>
> I have been modifying orires.c to allow for continuation of time 
> averaging runs.
>
> In the current state, no time averaging data is stored and the 
> restraint energy is reset when starting from a checkpoint.
>
> In order to accomplish this task I have need to store- Dtav, xref, and 
> exp_min_t_tau at checkpoints and re-initialise them .

I don't think you need xref, since it is stored in the tpr file and 
never changes.

>
> Unfortunately I am having a problem as the coordinates get shifted on 
> a re-run. I have tracked down what I believe is the offending code  to 
> here (from L617 md.c - gmx331):

I don't see how the shifting affects the state of the orientation 
restraints.

>
> else {
>      /* The coordinates (x) are shifted (to get whole molecules) in 
> do_force
>       * This is parallellized as well, and does communication too.
>       * Check comments in sim_util.c
>       */
>            do_force(log,cr,mcr,inputrec,nsb,step,&mynrnb,top,grps,
>           state->box,state->x,f,buf,mdatoms,ener,fcd,bVerbose && 
> !PAR(cr),
>           state->lambda,graph,
>           TRUE,bNS,FALSE,TRUE,fr,mu_tot,FALSE,t,fp_field,edyn);
>    }
>
> My question is -
>
> Would there be any severe consequences of re-initialising the the 
> coordinates to the checkpoint time values after calling this routine?

In 4.0 we are considering writing checkpoint files.
These could then be read directly by mdrun, so also things such as 
distance restraint
and orientation restraint data can be more easily stored and read.

Berk.




More information about the gromacs.org_gmx-developers mailing list