[gmx-users] REST2 swapping/exchange implementation in GROMACS

shivangi nangia shivangi.nangia at gmail.com
Tue Aug 30 22:23:22 CEST 2016


Hello gmx-users,

Thanks for the reply Mark.

I was going through the tutorial:
http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin/gmx-tutorials/free_energy/03_workflow.html,
for setting up free energy calculations routine to apply REST2 for my
system.

I am studying folding of a small peptide on a lipid surface and I am
generating replicas through various lambdas.
Since I am just scaling the potential via a dual topology file and as such
the temperature of the system stays at say 300 K defining fep_lambdas = 0
0.1 0.2 ....... in a single .mdp will not work.

However, I can set up various single lambda value (fep_lambdas) in separate
directories.

*************************************************************************************************************************************************************************************************
The tutorial says the following:

------------------------------
free_energy = yes Indicates that we are doing a free energy calculation,
and that interpolation between the A and B states of the chosen molecule
(defined below) will occur.
------------------------------
init_lambda_state = 0 In previous GROMACS versions, the "init_lambda"
keyword specified a single value of λ directly. As of version 5.0, λ is now
a vector that allows for transformation of bonded and nonbonded
interactions. With the init_lambda_state keyword, we specify an index
(starting from zero) of the vector to be utilized in the simulation (more
on this later).
------------------------------
delta_lambda = 0 The value of λ can be incremented by some amount per
timestep (i.e., δλ/δt) in a technique called "slow growth." This method can
have significant errors associated with it, and thus we will make no
time-dependent changes to our λ values.
------------------------------
fep_lambdas = (nothing) You will note that this keyword is not specified.
In previous GROMACS versions, the use of init_lambda and foreign_lambda
controlled the value of λi and the additional values of λ for which energy
differences would be evaluated for configurations at λi. This is no longer
the case. One can explicitly set values of λ in the fep_lambdas keyword,
but instead we allow the calc_lambda_neighbors keyword (see below) to
automatically determine these additional values.
------------------------------
calc_lambda_neighbors = 1 The number of neighboring windows for which
energy differences are computed with respect to λi. For instance, if
init_lambda_state is set to 10, then energy differences with respect to λ
states 9 and 11 are computed during the run with calc_lambda_neighbors = 1.
------------------------------
vdw_lambdas = ... An array of λ values for the transformation of van der
Waals interactions.
------------------------------
coul_lambdas = ... An array of λ values for the transformation of Coulombic
(electrostatic) interactions.
------------------------------
bonded_lambdas = ... An array of λ values for the transformation of bonded
interactions.

************************************************************************************************************************************************************************************


*FEP part of my  nvtlambda0.mdp for lambda=0 and init_lambda_state 0 (
complete .mdp attached)*

; Free energy control stuff

free_energy              = yes

init_lambda_state     = 0

delta_lambda            = 0

fep_lambda              = 0

calc_lambda_neighbors    = 1        ; only immediate neighboring windows

; Vectors of lambda specified here

vdw_lambdas              = 0.00

coul_lambdas             = 0.00

bonded_lambdas         = 0.00

;not transforming any  restrained interactions

restraint_lambdas        = 0.00

; Masses are not changing (particle identities are the same at lambda = 0
and lambda = 1)

mass_lambdas             = 0.00

; Not doing simulated temperting here

temperature_lambdas      = 0.00

; Options for the decoupling

;sc-alpha                 = 0.5

;sc-coul                  = no       ; linear interpolation of Coulomb
(none in this case)

;sc-power                 = 1.0

;sc-sigma                 = 0.3

couple-moltype           = PROA  ; name of moleculetype to decouple

couple-lambda0           = vdw-q    ; all interactions

couple-lambda1           = vdw-q   ; all interactions

couple-intramol          = yes

nstdhdl                  = 10

;output files

dhdl-derivatives = yes

dhdl-print-energy = potential
*I have the following questions:*

a) So if I have 10 replicas/lambda values those will correspond to
init_lambda_state?

b) Now, for lambda value say 0.1, *the init_lambda_state = 1* and
fep_lambda=0.1, vdw_lambdas  = 0.1, coul_lambdas = 0.1, bonded_lambdas = 0.1
For lambda value say 0.2, the *init_lambda_state = 2* and fep_lambda=0.2,
vdw_lambdas  = 0.2 , coul_lambdas = 0.2, bonded_lambdas = 0.2  ........and
so on ..........

c) I do not require to incorporate soft-core interactions because for my
system, particles are not growing out of anything/disappearing at any
lambda value. Am I correct in my thinking?

Kindly guide.

Many thanks in advance,
sxn


On Tue, Aug 23, 2016 at 6:59 PM, Mark Abraham <mark.j.abraham at gmail.com>
wrote:

> Hi,
>
> Just as with temperature REM, at the intervals you choose, the simulation
> will stop and adjacent replicas will do a Metropolis check for whether
> their configurations are representative of the conditions in the other
> simulations. The principle is independent of what varies across replicas.
>
> Mark
>
> On Wed, Aug 24, 2016 at 12:54 AM shivangi nangia <
> shivangi.nangia at gmail.com>
> wrote:
>
> > Dear Mark,
> >
> > Sorry about posting in the wrong mailing list.
> >
> > I understand that when implementing REST2 in GROMACS I am generating
> > replicas through various lambdas.
> > These replicas will run at same temperature say at 300 K and will only
> have
> > an "effective temperature".
> >
> > [a-The lambdas will vary from 0 (low T) to 1 (High T),
> > b- the charges, epsilon values and k values are scaled in a dual topology
> > file]
> >
> > What I was confused about is will/how there be an "exchange" in these
> > replicas?
> >
> > kindly advice.
> >
> >
> > Many thanks in advance,
> > sxn
> >
> >
> > On Tue, Aug 23, 2016 at 6:01 PM, Mark Abraham <mark.j.abraham at gmail.com>
> > wrote:
> >
> > > Hi,
> > >
> > > Please do not post questions about how to use GROMACS to the
> > gmx-developers
> > > mailing list, which is for questions about how to write code related to
> > > GROMACS.
> > >
> > > On Tue, Aug 23, 2016 at 8:29 PM shivangi nangia <
> > shivangi.nangia at gmail.com
> > > >
> > > wrote:
> > >
> > > > Hello,
> > > >
> > > > I have a question regarding implementing REST2 in GROMACS as
> suggested
> > > in:
> > > > (
> > > > On easy implementation of a variant of the replica exchange with
> solute
> > > > tempering in GROMACS, J Comput Chem. 32, 1228-1234, 2010).
> > > >
> > >
> > > There's a rather full explanation of what is going on in that paper. I
> > > trust you've read and understood it.
> > >
> > >
> > > > How does the gromacs machinery know how to carry out the
> > > exchange/swapping?
> > > >
> > >
> > > The Hamiltonian (ie lambda) differs between replicas.
> > >
> > >
> > > > the -replex probably will generate copies of the system at higher
> > > > temperature which I do not want.
> > > >
> > >
> > > You're assuming replica exchange means temperature REM, which is not
> what
> > > that paper is talking about.
> > >
> > > Mark
> > >
> > >
> > > > Kindly reply.
> > > >
> > > > Thanks in advance.
> > > >
> > > > sxn
> > > > --
> > > > Gromacs Users mailing list
> > > >
> > > > * Please search the archive at
> > > > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> > > > posting!
> > > >
> > > > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> > > >
> > > > * For (un)subscribe requests visit
> > > > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users
> or
> > > > send a mail to gmx-users-request at gromacs.org.
> > > >
> > > --
> > > Gromacs Users mailing list
> > >
> > > * Please search the archive at http://www.gromacs.org/
> > > Support/Mailing_Lists/GMX-Users_List before posting!
> > >
> > > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> > >
> > > * For (un)subscribe requests visit
> > > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> > > send a mail to gmx-users-request at gromacs.org.
> > >
> > --
> > Gromacs Users mailing list
> >
> > * Please search the archive at
> > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> > posting!
> >
> > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >
> > * For (un)subscribe requests visit
> > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> > send a mail to gmx-users-request at gromacs.org.
> >
> --
> Gromacs Users mailing list
>
> * Please search the archive at http://www.gromacs.org/
> Support/Mailing_Lists/GMX-Users_List before posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>


More information about the gromacs.org_gmx-users mailing list