[gmx-users] Re: Fast exchanges for REMD
Andreas Zink
zinkandi at googlemail.com
Wed Sep 26 17:22:55 CEST 2012
Dear all,
I could finally demux my REMD trajectories with high EAF. They look
fine, but I'm not 100% sure about it.
Unfortunately, there seems to be a "bug" in mdrun. As you migh know, the
log files contain the exchange attempts like:
> Replica exchange at step 2000 time 4
> Repl ex 0 1 2 3 x 4 5
> Repl pr .00 1.0
However, the time value (4 in this example) is limited to 6 digits. It's
not really a bug because I think GROMACS recommends EAFs of max. 1/ps.
But if you exchange every 0.5 ps (EAF= 2/ps) you can run the simulation
for max. 99999 ps only. Otherwise your log will simply chop the time
after the decimal point, e.g.
> Replica exchange at step ... time 99999.5
> ...
>
> Replica exchange at step ... time 100000
> ...
>
> Replica exchange at step ... time 100000
> ...
>
> Replica exchange at step ... time 100001
> ...
I have written a Perl script which fixes the time values, based on the given number of steps and stepsize. Additionally the demux.pl script was changed because it also chops after 6 digits. I simply changed:
> printf(NDX "%-20g",$t);
in the "pr_order" and "pr_revorder" subroutines to:
> printf(NDX "%-20.2f",$t);
and it works just fine.
Like I said the trajectories look fine, but I'm not really sure if it's actually correct that way. I would be happy if anyone would like to discuss this :)
Cheers,
Andi
Am 24.09.2012 08:49, schrieb Andreas Zink:
> Dear all,
>
> I've done some REMD simulations using a quite high exchange attempt
> frequency (10 attempts per ps) as proposed by Sindhikara et al.
> ("Exchange Often and Properly in Replica Exchange Molecular
> Dynamics",J. Chem. Theory Comput. 2010, 6, 2804–2808 ).
> Unfortunately, I have now recognized that the demux perl script cannot
> account for an EAF which is higher than the saving frequency in the
> trajectory.
>
> Comments from demux.pl:
> # If your exchange was every N ps and you saved every M ps you can
> make for
> # the missing frames by setting extra to (N/M - 1). If N/M is not
> integer,
> # you're out of luck and you will not be able to demux your
> trajectories at all.
>
> In my case exchanges every 0.1 ps and saved every 5 ps
>
> Changing the demux.pl script, so that it writes the
> "replica_index.xvg" with a higher precision (time in ps) should be no
> problem. However, my question is: will this work together with trjcat?
> Does trjcat search for the timeframe given in the first column of
> "replica_index.xvg", or does it links each line to one saved
> timeframe? If so, could I just delete the additional lines in
> "replica_index.xvg"?
>
> I would be really happy if someone could help me with this!
> Thanks!
>
> Andi
>
More information about the gromacs.org_gmx-users
mailing list