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

Uniform target distribution (static).

Using this keyword you can define a uniform target distribution which is a product of one-dimensional distributions $$p_{k}(s_{k})$$ that are uniform over a given interval $$[a_{k},b_{k}]$$

$p_{k}(s_{k}) = \left \{\begin{array}{ll} \frac{1}{(b_{k}-a_{k})} & \mathrm{if} \ a_{k} \leq s_{k} \leq b_{k} \\ &\\ 0 & \mathrm{otherwise} \end{array}\right .$

The overall distribution is then given as

$p(\mathbf{s}) = \prod^{d}_{k} p_{k}(s_{k}) = \left\{\begin{array}{ll} \prod^{d}_{k} \frac{1}{(b_{k}-a_{k})} & \mathrm{if} \ a_{k} \leq s_{k} \leq b_{k} \ \mathrm{for\ all}\ k \\ \\ 0 & \mathrm{otherwise} \end{array}\right.$

The distribution is thus uniform inside a rectangular for two arguments and a cube for a three arguments.

The limits of the intervals $$a_{k}$$ and $$b_{k}$$ are given with the MINIMA and MAXIMA keywords, respectively. If one or both of these keywords are missing the code should automatically detect the limits.

It is also possible to use one-dimensional distributions that go smoothly to zero at the boundaries. This is done by employing a function with Gaussian switching functions at the boundaries $$a_{k}$$ and $$b_{k}$$

$f_{k}(s_{k}) = \begin{cases} \exp\left(-\frac{(s_{k}-a_{k})^2}{2 \sigma^2_{a,k}}\right) & \mathrm{if}\, s_{k} < a_{k} \\ \\ 1 & \mathrm{if}\, a_{k} \leq s_{k} \leq b_{k} \\ \\ \exp\left(-\frac{(s_{k}-b_{k})^2}{2 \sigma^2_{b,k}}\right) & \mathrm{if}\, s_{k} > b_{k} \end{cases}$

where the standard deviation parameters $$\sigma_{a,k}$$ and $$\sigma_{b,k}$$ determine how quickly the switching functions goes to zero. The overall distribution is then normalized

$p(\mathbf{s}) = \prod^{d}_{k} p_{k}(s_{k}) = \prod^{d}_{k} \frac{f(s_{k})}{\int d s_{k} \, f(s_{k})}$

To use this option you need to provide the standard deviation parameters $$\sigma_{a,k}$$ and $$\sigma_{b,k}$$ by using the SIGMA_MINIMA and SIGMA_MAXIMA keywords, respectively. Giving a value of 0.0 means that the boundary is sharp, which is the default behavior.

Examples

If one or both of the MINIMA or MAXIMA keywords are missing the code should automatically detect the limits not given. Therefore, if we consider a target distribution that is defined over an interval from 0.0 to 10.0 for the first argument and from 0.2 to 1.0 for the second argument are the following example

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM


is equivalent to this one

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM ...
MINIMAThe minimum of the intervals where the target distribution is taken as uniform. =0.0,0.2
MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =10.0,1.0

...


and this one

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =10.0,1.0


and also this one

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM MINIMAThe minimum of the intervals where the target distribution is taken as uniform. =0.0,0,2


We can also define a target distribution that goes smoothly to zero at the boundaries of the uniform distribution. In the following we consider an interval of 0 to 10 for the target distribution. The following input would result in a target distribution that would be uniform from 2 to 7 and then smoothly go to zero from 2 to 0 and from 7 to 10.

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM ...
MINIMAThe minimum of the intervals where the target distribution is taken as uniform. =2.0
MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =+7.0
SIGMA_MINIMAThe standard deviation parameters of the Gaussian switching functions for the minima
of the intervals. =0.5
SIGMA_MAXIMAThe standard deviation parameters of the Gaussian switching functions for the maximum
of the intervals. =1.0

...


It is also possible to employ a smooth switching function for just one of the boundaries as shown here where the target distribution would be uniform from 0 to 7 and then smoothly go to zero from 7 to 10.

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM ...
MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =+7.0
SIGMA_MAXIMAThe standard deviation parameters of the Gaussian switching functions for the maximum
of the intervals. =1.0

...


Furthermore, it is possible to employ a sharp boundary by using

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM ...
MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =+7.0
SIGMA_MAXIMAThe standard deviation parameters of the Gaussian switching functions for the maximum
of the intervals. =0.0

...


or

Click on the labels of the actions for more information on what each action computes td: TD_UNIFORM MAXIMAThe maximum of the intervals where the target distribution is taken as uniform. =+7.0

Glossary of keywords and components
Options
 MINIMA The minimum of the intervals where the target distribution is taken as uniform. You should give one value for each argument. MAXIMA The maximum of the intervals where the target distribution is taken as uniform. You should give one value for each argument. SIGMA_MINIMA The standard deviation parameters of the Gaussian switching functions for the minima of the intervals. You should give one value for each argument. Value of 0.0 means that switch is done without a smooth switching function, this is the default behavior. SIGMA_MAXIMA The standard deviation parameters of the Gaussian switching functions for the maximum of the intervals. You should give one value for each argument. Value of 0.0 means that switch is done without a smooth switching function, this is the default behavior.