next up previous contents index
Next: Thermodynamic integration of free-energy Up: A brief overview of Previous: Metadynamics   Contents   Index

N.B. This document is no longer maintained, please visit our wiki.

Constrained molecular dynamics

Constrained molecular dynamics is performed using the SHAKE algorithm [81]. In this algorithm, the Lagrangian for the system $ {\cal{L}}$ is extended as follows:

$\displaystyle {\cal{L}}^{*}({\mathbf{q,\dot{q}}}) = {\cal{L}}({\mathbf{q,\dot{q}}}) + \sum_{i=1}^{r} \lambda_i \sigma_i(q),$ (6.20)

where the summation is over $ r$ geometric constraints, $ {\cal{L}}^{*}$ is the Lagrangian for the extended system, and $ \lambda_i$ is a Lagrange multiplier associated with a geometric constraint $ \sigma_i$:

$\displaystyle \sigma_i(q) = \big(\xi_i({q})-\xi_i \big)$ (6.21)

with $ \xi_i({q})$ being a geometric parameter and $ \xi_i$ is the value of $ \xi_i({q})$ fixed during the simulation. In the SHAKE algorithm, Lagrange multipliers $ \lambda_{i}$ are determined in the iterative procedure:
  1. perform a standard MD step (leap-frog algorithm):

    $\displaystyle v^{t+{\Delta}t/2}_i = v^{t-{\Delta}t/2}_i + \frac{a^{t}_i}{m_i} {\Delta}t$ (6.22)

    $\displaystyle q^{t+{\Delta}t}_i = q^{t}_i + v^{t+{\Delta}t/2}_i{\Delta}t$ (6.23)

  2. use the new positions $ q(t+\Delta t)$ to compute Lagrange multipliers for all constraints:

    $\displaystyle {\lambda}_k= \frac{1}{{\Delta}t^2} \frac{\sigma_k(q^{t+{\Delta}t}...
...gtriangledown_i{\sigma}_k(q^{t}) \bigtriangledown_i{\sigma}_k(q^{t+{\Delta}t})}$ (6.24)

  3. update the velocities and positions by adding a contribution due to restoring forces (proportional to $ \lambda_k$):

    $\displaystyle v^{t+{\Delta}t/2}_i = v^{t-{\Delta}t/2}_i + \left( a^{t}_i-\sum_k \frac{{\lambda}_k}{m_i} \bigtriangledown_i{\sigma}_k(q^{t}) \right ) {\Delta}t$ (6.25)

    $\displaystyle q^{t+{\Delta}t}_i = q^{t}_i + v^{t+{\Delta}t/2}_i{\Delta}t$ (6.26)

  4. repeat steps 2-4 until all $ \vert\sigma_i(q)\vert$ are smaller than a predefined tolerance.

N.B. Requests for support are to be addressed to: