EDS
This is part of the eds module
It is only available if you configure PLUMED with ./configure –enable-modules=eds . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list.

Add a linear bias on a set of observables.

This force is the same as the linear part of the bias in RESTRAINT, but this bias has the ability to compute the prefactors adaptively using the scheme of White and Voth [114] in order to match target observable values for a set of CVs. Further updates to the algorithm are described in [51] and you can read a review on the method and its applications here: [2].

You can see a tutorial on EDS specifically for biasing coordination number at Andrew White's webpage.

The addition to the potential is of the form

\[ \sum_i \frac{\alpha_i}{s_i} x_i \]

where for CV \(x_i\), a coupling constant \({\alpha}_i\) is determined adaptively or set by the user to match a target value for \(x_i\). \(s_i\) is a scale parameter, which by default is set to the target value. It may also be set separately.

Warning
It is not possible to set the target value of the observable to zero with the default value of \(s_i\) as this will cause a divide-by-zero error. Instead, set \(s_i=1\) or modify the CV so the desired target value is no longer zero.

Notice that a similar method is available as MAXENT, although with different features and using a different optimization algorithm.

Virial

The bias forces modify the virial and this can change your simulation density if the bias is used in an NPT simulation. One way to avoid changing the virial contribution from the bias is to add the keyword VIRIAL=1.0, which changes how the bias is computed to minimize its contribution to the virial. This can also lead to smaller magnitude biases that are more robust if transferred to other systems. VIRIAL=1.0 can be a reasonable starting point and increasing the value changes the balance between matching the set-points and minimizing the virial. See [2] for details on the equations. Since the coupling constants are unique with a single CV, VIRIAL is not applicable with a single CV. When used with multiple CVs, the CVs should be correlated which is almost always the case.

Weighting

EDS computes means and variances as part of its algorithm. If you are also using a biasing method like metadynamics, you may wish to remove the effect of this bias in your EDS computations so that EDS works on the canonical values (reweighted to be unbiased). For example, you may be using metadynamics to bias a dihedral angle to enhance sampling and be using EDS to set the average distance between two particular atoms. Specifically:

Click on the labels of the actions for more information on what each action computes
tested on master
# set-up metadynamics
t: TORSION 
ATOMS
the four atoms involved in the torsional angle
=1,2,3,4 md: METAD
ARG
compulsory keyword the labels of the scalars on which the bias will act
=d
SIGMA
compulsory keyword the widths of the Gaussian hills
=0.2
HEIGHT
the heights of the Gaussian hills.
=0.3
PACE
compulsory keyword the frequency for hill addition
=500
TEMP
the system temperature - this is only needed if you are doing well-tempered metadynamics
=300 # compute bias weights bias: REWEIGHT_METAD
TEMP
the system temperature.
=300 # now do EDS on distance while removing effect of metadynamics d: DISTANCE
ATOMS
the pair of atom that we are calculating the distance between.
=4,7 eds: EDS
ARG
compulsory keyword the labels of the scalars on which the bias will act
=d
CENTER
The desired centers (equilibrium values) which will be sought during the adaptive linear biasing.
=3.0
PERIOD
Steps over which to adjust bias for adaptive or ramping
=100
TEMP
The system temperature.
=300
LOGWEIGHTS
Add weights to use for computing statistics.
=bias

This is an approximation though because EDS uses a finite samples while running to get means/variances. At the end of a run, you should ensure this approach worked and indeed your reweighted CV matches the target value.

Examples

The following input for a harmonic oscillator of two beads will adaptively find a linear bias to change the mean and variance to the target values. The PRINT line shows how to access the value of the coupling constants.

Click on the labels of the actions for more information on what each action computes
tested on master