Constrained molecular dynamics

From VASP Wiki
Revision as of 12:05, 13 March 2019 by Karsai (talk | contribs)

Constrained molecular dynamics is performed using the SHAKE algorithm.[1]. In this algorithm, the Lagrangian for the system Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://www.vasp.at/wiki/restbase/vasp.at/v1/":): {\mathcal {L}} is extended as follows:

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://www.vasp.at/wiki/restbase/vasp.at/v1/":): {\mathcal {L}}^{*}({\mathbf {q,{\dot {q}}}})={\mathcal {L}}({\mathbf {q,{\dot {q}}}})+\sum _{{i=1}}^{{r}}\lambda _{i}\sigma _{i}(q),

where the summation is over r geometric constraints, is the Lagrangian for the extended system, and λi is a Lagrange multiplier associated with a geometric constraint σi:

with ξi(q) being a geometric parameter and ξi is the value of ξi(q) fixed during the simulation.

In the SHAKE algorithm, the Lagrange multipliers λi are determined in the iterative procedure:

  1. Perform a standard MD step (leap-frog algorithm):
  2. Use the new positions q(tt) to compute Lagrange multipliers for all constraints:
  3. Update the velocities and positions by adding a contribution due to restoring forces (proportional to λk):
    Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://www.vasp.at/wiki/restbase/vasp.at/v1/":): v_{i}^{{t+{\Delta }t/2}}=v_{i}^{{t-{\Delta }t/2}}+\left(a_{i}^{{t}}-\sum _{k}{\frac {{\lambda }_{k}}{m_{i}}}\bigtriangledown _{i}{\sigma }_{k}(q^{{t}})\right){\Delta }t
    Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://www.vasp.at/wiki/restbase/vasp.at/v1/":): q_{i}^{{t+{\Delta }t}}=q_{i}^{{t}}+v_{i}^{{t+{\Delta }t/2}}{\Delta }t
  4. repeat steps 2-4 until either |σi(q)| are smaller than a predefined tolerance (determined by SHAKETOL), or the number of iterations exceeds SHAKEMAXITER.

References