EXTENDED_LAGRANGIAN

Add extended Lagrangian.

This action can be used to create fictitious collective variables coupled to the real ones. Given \(x_i\) the \(i\)th argument of this bias potential, potential and kinetic contributions are added to the energy of the system as

\[ V=\sum_i \frac{k_i}{2} (x_i-s_i)^2 + \sum_i \frac{\dot{s}_i^2}{2m_i} \]

.

The resulting potential is thus similar to a RESTRAINT, but the restraint center moved with time following Hamiltonian dynamics with mass \(m_i\).

This bias potential accepts thus vectorial keywords (one element per argument) to define the coupling constant (KAPPA) and a relaxation time \(tau\) (TAU). The mass is them computed as \(m=k(\frac{\tau}{2\pi})^2\).

Notice that this action creates several components. The ones named XX_fict are the fictitious coordinates. It is possible to add further forces on them by means of other bias potential, e.g. to obtain an indirect METAD as in [56] . Also notice that the velocities of the fictitious coordinates are reported (XX_vfict). However, printed velocities are the ones at the previous step.

It is also possible to provide a non-zero friction (one value per component). This is then used to implement a Langevin thermostat, so as to implement TAMD/dAFED method [71] [1] . Notice that here a massive Langevin thermostat is used, whereas usually TAMD employs an overamped Langevin dynamics and dAFED a Gaussian thermostat.

Warning
The bias potential is reported in the component bias. Notice that this bias potential, although formally compatible with replica exchange framework, probably does not work as expected in that case. Indeed, since fictitious coordinates are not swapped upon exchange, acceptace can be expected to be extremely low unless (by chance) two neighboring replicas have the fictitious variables located properly in space.
RESTART is not properly supported by this action. Indeed, at every start the position of the fictitious variable is reset to the value of the real variable, and its velocity is set to zero. This is not expected to introduce big errors, but certainly is introducing a small inconsistency between a single long run and many shorter runs.
Examples

The following input tells plumed to perform a metadynamics with an extended Lagrangian on two torsional angles.

Click on the labels of the actions for more information on what each action computes
tested on master
phi: TORSION 
ATOMS
the four atoms involved in the torsional angle
=5,7,9,15 psi: TORSION
ATOMS
the four atoms involved in the torsional angle
=7,9,15,17 ex: EXTENDED_LAGRANGIAN
ARG
the input for this action is the scalar output from one or more other actions.
=phi,psi
KAPPA
compulsory keyword specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
=20,20.0
TAU
compulsory keyword specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
=0.1,0.1

The following input tells plumed to perform a TAMD (or dAFED) calculation on two torsional angles, keeping the two variables at a fictitious temperature of 3000K with a Langevin thermostat with friction 10

Click on the labels of the actions for more information on what each action computes
tested on master
phi: TORSION 
ATOMS
the four atoms involved in the torsional angle
=5,7,9,15 psi: TORSION
ATOMS
the four atoms involved in the torsional angle
=7,9,15,17 ex: EXTENDED_LAGRANGIAN
ARG
the input for this action is the scalar output from one or more other actions.
=phi,psi
KAPPA
compulsory keyword specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
=20,20.0
TAU
compulsory keyword specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
=0.1,0.1
FRICTION
compulsory keyword ( default=0.0 ) add a friction to the variable
=10,10
TEMP
the system temperature - needed when FRICTION is present.
=3000 # monitor the two variables
Glossary of keywords and components
Description of components

By default this Action calculates the following quantities. These quantities can be referenced elsewhere in the input by using this Action's label followed by a dot and the name of the quantity required from the list below.

Quantity Description
bias the instantaneous value of the bias potential
_fict one or multiple instances of this quantity can be referenced elsewhere in the input file. These quantities will named with the arguments of the bias followed by the character string _tilde. It is possible to add forces on these variable.
_vfict one or multiple instances of this quantity can be referenced elsewhere in the input file. These quantities will named with the arguments of the bias followed by the character string _tilde. It is NOT possible to add forces on these variable.
Compulsory keywords
KAPPA specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
TAU specifies that the restraint is harmonic and what the values of the force constants on each of the variables are
FRICTION ( default=0.0 ) add a friction to the variable
Options
NUMERICAL_DERIVATIVES

( default=off ) calculate the derivatives for these quantities numerically

ARG the input for this action is the scalar output from one or more other actions. The particular scalars that you will use are referenced using the label of the action. If the label appears on its own then it is assumed that the Action calculates a single scalar value. The value of this scalar is thus used as the input to this new action. If * or *.* appears the scalars calculated by all the proceeding actions in the input file are taken. Some actions have multi-component outputs and each component of the output has a specific label. For example a DISTANCE action labelled dist may have three components x, y and z. To take just the x component you should use dist.x, if you wish to take all three components then use dist.*.More information on the referencing of Actions can be found in the section of the manual on the PLUMED Getting Started. Scalar values can also be referenced using POSIX regular expressions as detailed in the section on Regular Expressions. To use this feature you you must compile PLUMED with the appropriate flag.. You can use multiple instances of this keyword i.e. ARG1, ARG2, ARG3...
TEMP the system temperature - needed when FRICTION is present. If not provided will be taken from MD code (if available)