CHARMM c42b2 eds.doc



File: Eds -=- Node: Top
Up: (commands.doc) -=- Next: Syntax

                 
                 Enveloping Distribution Sampling Method                                

     Method development by Christ and van Gunsteren
     Implemented in CHARMM by Tim Miller, Gerhard Koenig, and Bernard R. Brooks

If you use this code, please cite the following works:

for EDS--

Christ CD, van Gunsteren WF. J. Chem. Phys. 126: 184110 (2007).

Christ CD, van Gunsteren WF. J. Comp. Chem. 30: 1664-1679 (2009).

Riniker S, Christ CD, Hansen N, Mark AE, Nair PC, van Gunsteren WF.
   J. Chem. Phys. 135: 24105 (2011).

Koenig G, Miller BT, Boresch S, Wu XW, Briiks BR. J. Chem. Theory
   Comput. 8: 3650-3662 (2012).

for MSCALE--

Woodcock HL, Miller BT, Hodoscek M, Okur A, Larkin JD, Ponder JW,
   Brooks BR. J. Chem. Theory Comput., 2011, Vol 7, 1208-1219.

* Menu:
* Syntax::              Syntax of the EDS dynamics command
* Examples::            EDS usage examples
* Notes::               Usage notes and hints



File: Eds -=- Node: Syntax
Up: Top -=- Previous: Top -=- Next: Examples


EDS allows the calculation of free energy differences between multiple end
states from a single molecular dynamics simulation of a reference state
R. The reference state is designed to contain the important parts of phase
space for all end states, thus improving the convergence of one step free
energy calculations. 

EDS is designed to work with the MSCALE command in CHARMM (see mscale.doc for
further information). The TERM key words in the EDS command must refer to 
previously defined MSCALE subsystems. The various MSCALE subsystems represent
end points for the EDS free energy calculation. The free energy differences
 must be calculated from the individual energies of the subsystems and the 
total EDS energy. These can be stored conveniently in an ASCII formatted file 
if the UPEN argument to MSCALE is used.

To run EDS, the MSCALE subsystems should be set up, followed by the EDS and
DYNAmics commands. An example is given below.

[Syntax ]

EDS [ DYNO ] TEMP <real> NEDS <int> eds-term-spec

eds-term-spec ::= TERM <string> <float> ... TERM <string> <float>

The meaning of the key words is as follows:

   DYNO                  - Use dynamic offset calculation. Rather than using
                           absolute energies and offsets as defined in the
                           EDS equation, an alternate, but identical, formula
                           is used that uses differences between subsystem
                           energies. This allows greater numerical stability
                           of algorithm and help prevents floating point
                           underflows or overflows.

   TEMP <real>           - The temperature at which the EDS simulation is
                           being run. Currently, constant temperature dynamics
                           should be used with EDS. Future enhancements will
                           allow for NVE ensembles to be used.

   NEDS <int>            - The number of EDS end points that will be used. This
                           should correspond to the number of MSCALE subsystems.

   TERM <string> <float> - One "TERM" keyword must be given for each end point.
                           The <string> is the name of the MSCALE subsystem
                           corresponding to that end point, and the <float> is
                           the EDS free energy offset to be used for that
                           end point (refer to the EDS equation in the reference
                           for more details).




File: Eds -=- Node: Examples
Up: Top -=- Previous: Syntax -=- Next: Notes


                        Examples

The following shows how to set up an EDS calculation with two endpoints:

! first set up both subsystems using MSCALE, the subsystem energies and
! the EDS energy will be stored in the file named energies.dat.

open unit 50 write form name energies.dat

mscale nsubs 2 upen 50

subs one coef 1.0 prog "./charmm" -
     outp "subsys/s1.out" inpu "subsys/s1.inp" -
     nproc 1 sele all end

subs two coef 1.0 prog "./charmm" -
     outp "subsys/s2.out" inpu "subsys/s2.inp" -
     nproc 1 sele all end

end

! now use the EDS command to turn on EDS. In this case, the 
! first end point will have an energy offset of 1, and the 
! second has an energy offset of 2 (adjust as needed for
! your system).
eds temp 300. neds 2 term one 1.0 term two 2.0

! now run dynamics for stastics collection and sampling.
dyna leap langevin strt -
  timestep 0.001 nstep 10000 nprint 100 - 
  iseed 314159 314159 314159 314159 -
  iasors 1 iasvel 1 iscvel 0 -
  firstt 300. finalt 300. tbath 300. tstruct 300. -
  echeck 500.



File: Eds -=- Node: Notes
Up: Top -=- Previous: Examples -=- Next: Top


If the energy differences between the end states are large, the end
states with low energies will be sampled preferentially. In extreme
cases, only one end state might be sampled during an EDS simulation. To
avoid that problem, adequate energy offset parameters have to be chosen
in the TERM command. In an ideal setting, the energy offsets should be
good estimates of free energy difference between the corresponding end
state and the EDS reference state. For optimal performance, the
parameters should be updated periodically. A parameter update scheme for
EDS can be found in J. Chem. Phys. 135, 024105 (2011).

In order to avoid numerical instabilities of EDS, the fluctuations of
the potential energies in each subsystem should be minimized. This can
be achieved by calculating the energy contributions of the common
environment in the main script, while calculating the contributions of
the mutation sites in the subsystems.

NIH Helix/Biowulf Systems
charmm.org Homepage

CHARMM Documentation / Rick_Venable@nih.gov