Skip to content

Module: gridtools

Description Usage
tools for manipulating functions that are stored on grids
Authors: Gareth Tribello used in 31 tutorialsused in 90 eggs

Details

The tools in this module were initially implemented to provide a way for estimate the free energy surface as a function of a small number of variables from a biased or unbiased simulation. If the simulation is unbiased we can estimate the free energy surface, , as a function of a coordinate, , as:

where is Boltzmann's constant, is the temperature and is a probability density function that we can estimate from a molecular dynamics simulation by computing a histogram. Functionality for this procedure for implementing free energy surfaces is thus provided here through the HISTOGRAM and CONVERT_TO_FES commands.

The work described in the papers cited below demonstrates that the process of calculating a histogram using kernel density esimation is used in a range of different methods. The development of the techniques described in those papers thus informed the development of this module. In particular, we recognised that it is useful to have an implementation of kernel density estimation that can:

  • take in multiple identical indisinguishable instances of a quantity that might be monitored and compute an instaneous distribution.
  • take in a vector of weights to be used for the heights of these indisinguishable instances of the quantity of interest.

With these modifcations we can then use the same functionality that we use for constructing the histogram for constructing an estimate for an instaneous phase field that provides a continuous representation of the value of an order parameter as a function of position. In other words, even if you intially find the combinations of KDE and ACCUMULATE actions that are used in the shortcut for HISTOGRAM confusing, we hope that they will begin to make sense once you read the papers cited below and start exploring some of the more complicated functionalities thare are provided within this module.

Actions

The following actions are part of this module

Name Description Tags
CONVERT_TO_FES Convert a histogram to a free energy surface. GRIDANALYSIS
DUMPCUBE Output a three dimensional grid using the Gaussian cube file format. GRIDANALYSIS
DUMPGRID Output the function on the grid to a file with the PLUMED grid format. GRIDANALYSIS
EVALUATE_FUNCTION_FROM_GRID Calculate the function stored on the input grid at an arbitrary point GRIDANALYSIS
FIND_GRID_MAXIMUM Find the point with the highest value of the function on the grid GRIDANALYSIS
FIND_GRID_MINIMUM Find the point with the lowest value of the function on the grid GRIDANALYSIS
GET_VOLUME_ELEMENT Get the volume element from the input grid GRIDANALYSIS
GRADIENT Calculate the gradient of an input grid MCOLVAR
HISTOGRAM Accumulate the average probability density along a few CVs from a trajectory. GRIDCALC
INTEGRATE_GRID Calculate the numerical integral of the function stored on the grid GRIDCALC
INTERPOLATE_GRID Interpolate a smooth function stored on a grid onto a grid with a smaller grid spacing. GRIDANALYSIS
KDE Create a histogram from the input scalar/vector/matrix using KDE ANALYSIS
KL_ENTROPY Calculate the KL entropy of a distribution ANALYSIS
MARGINAL Compute a marginal from the input multi-dimensional function GRIDANALYSIS
MULTICOLVARDENS Evaluate the average value of a multicolvar on a grid. GRIDCALC
PAIRENTROPIES Calculate the KL entropy from the RDF around each of the atoms MCOLVAR
PAIRENTROPY Calculate the KL Entropy from the radial distribution function MCOLVAR
RDF Calculate the radial distribution function ANALYSIS
REFERENCE_GRID Setup a constant grid by either reading values from a file or definining a function in input GRIDCALC
SPHERICAL_KDE Create a histogram from the input scalar/vector/matrix using SPHERICAL_KDE ANALYSIS

References

More information about this module is available in the following articles: