Metadynamics Simulations
This section highlights how metadynamics jobs may be set up through an MSJ, and run through Multisim. For further customization, metadynamics calculations may also be set up through the use of the enhanced sampling plugin, which is also supported through Multisim. See the related section for details on the plugin and its associated scripting language, as well as the sample metadynamics pot files for examples of custom metadynamics workflows.
For an overview of metadynamics, see Metadynamics Panel.
- Overview
- Examples
Parameters for Metadynamics
meta
The meta block is used to set up a metadynamics simulation. The block must include a definition of the collective variables (CVs), the Gaussian potential, the time range over which they are added, and the interval between addition. The metadynamics output file and the log file must also be defined. The parameters for this block are listed in Table 1.
|
Parameter |
Description |
|
|
Height of the repulsive Gaussian potential, in kcal/mol. |
|
|
Time in ps at which the Gaussian potentials are first added. Default: zero time. |
|
|
Time in ps at which the Gaussian potentials are last added. Default: simulation time. |
|
|
Interval in ps at which the Gaussian potentials are subsequently added. A smaller interval means that Gaussians are added more frequently. |
|
|
Name of the metadynamics output file. This file contains the Gaussian widths and height at each step, and is used to calculate the free energy. |
|
|
Name of the metadynamics log file. Default: |
|
cv |
Map that defines the collective variables—see cv. |
An example is given below.
meta = {
cv = {cv-map}
cv_name = $JOBNAME.cvseq
first = 0.0
height = 0.03
interval = 1.2
name = kernels.kerseq
}
Multisim also supports well-tempered metadynamics, through the meta.kTemp keyword, which specifies the value of kT. For more information on well-tempered metadynamics, see its sample pot file.
cv
The cv parameter defines the collective variables in a metadynamics simulation. Each variable is defined in a map that includes the type, the atom groups that are included in the collective variable, and the RMS width of the repulsive Gaussian potential. Atom groups are either a single atom or the center of mass of a list of atoms. For some variables, a wall (upper bound) or a floor (lower bound) can be placed at specified values of the variable, which prevents the system from moving too far in either direction defined by the collective variable. The parameters that can be used to define a collective variable are summarized in Table 2.The available collective variables are summarized in Table 3. Distance variables are in angstroms, angles are in degrees.
|
Parameter |
Description |
|
|
Collective variable type. See Table 3 for a list of allowed types. |
|
|
Atom groups that define the group of a collective variable. The group can be a single atom or the center of mass of a list of atoms. The number of groups is given in Table 3 for each variable type. |
|
|
RMS width of the repulsive Gaussian potential. |
|
|
Upper bound on the value of the collective variable. The system is prevented from making a step beyond this value. |
|
|
Lower bound on the value of the collective variable. The system is prevented from making a step beyond this value. |
|
|
Range of values of the collective variable to be used in the analysis, defined as a list with a lower and an upper value. |
|
type |
Description |
Default Width |
Wall |
Floor |
Atom Groups |
|
|
Distance |
0.05 Å |
yes |
yes |
2 |
|
|
Angle |
2.5° |
yes |
yes |
3 |
|
|
Dihedral |
5.0° |
no |
no |
4 |
|
|
Radius of gyration |
0.1 Å |
no |
no |
1 |
|
|
Mass-weighted radius of gyration |
0.1 Å |
no |
no |
1 |
|
|
RMSD from aligned starting structure |
0.1 Å |
no |
no |
1 |
|
|
Symmetry aware RMSD |
0.1 Å |
no |
no |
1 |
|
|
Distance along the z axis |
0.05 Å |
yes |
yes |
1 |
|
|
Absolute distance along the z axis |
0.1 Å |
yes |
yes |
1 |
|
|
WHIM1 - first principal moment [35] |
0.5 Å2 |
no |
no |
1 |
|
|
WHIM2 - second principal moment [35] |
0.25 Å2 |
no |
no |
1 |
For the analysis, the range of coordinate values can be defined, with the range parameter. This is useful if the interesting phenomena occur at the end of the range, e.g. at 180° for a dihedral angle. An example with two CVs is as follows:
cv = [ { type = dist
atom = [1 3]
width = 0.4
wall = 10.0
{ type = angle
atom = [1 3 5 6]
width = 0.4
range = [0 360] } ]
To define a collective variable in terms of the center of mass of a set of atoms, you can provide an ASL expression inside the atom list to define each atom site, e.g.
atom = [ "at.n 12-17" "at.n 19-21" ] type = "dist"
You can also use ASL to define the center of mass in a meta block in the .msj file. For more information on ASL, see Atom Specification Language.
Sample Metadynamics MSJ
simulate {
cfg_file = "config.cfg"
jobname = "$MAINJOBNAME"
dir = "."
compress = ""
meta = {
cv = [
{atom = ["mol.n 2 and not a.e H"]
type = "rgyr"
width = 0.15
}
{atom = ["(res.num 124 and protein) and not a.e H" "mol.num 2 and not a.e H"]
type = "dist"
width = 0.05
}
]
cv_name = "$JOBNAME$[_replica$REPLICA$].cvseq"
first = 0.0
height = 0.03
interval = 0.03
name = "$JOBNAME$[_replica$REPLICA$].kerseq"
}
checkpt.write_last_step = yes
}