5 Basics of Molecular Modeling and Molecular Simulation
227
5.6.2.2 Numerical Integration of Newton’s Equations of Motion
Regarding calculating the integral of Newton’s Equations of Motion numerically,
the key consideration is accuracy and long-time stability, while computational cost
is negligible. Below we introduce several commonly used numerical integration
methods.
Verlet Algorithm
The Verlet algorithm is the basis for a set of algorithms. To implement this, we should
first do the Taylor expansion to the Newton’s Equations of Motion, so that
r(t + t) = r(t) + v(t))t +
f (t)
2m
t
2
+
t
3
3!
...
r +O((t
4
)
r(t − t) = r(t) − v(t))t +
f (t)
2m
t
2
−
t
3
3!
...
r +O((t
4
)
⇒ r(t + t) + r(t − t) = 2r(t) +
f (t)
m
t
2
+ O((t
4
)
⇒ r(t + t) ≈ 2r(t) − r(t − t) + at
2
(5.6.6)
The velocity can then be estimated by
v(t) =
r(t + t) − r(t − t)
2t
+ O
t
2
(5.6.7)
Velocity Verlet Algorithm
Another algorithm is called the velocity Verlet algorithm, which is of better accuracy
and stability compared to the Verlet algorithm, but cannot be used along with the
Nosé-Hoover thermostat. To do so, we can have
r(t + t) = r(t) + v(t)t +
f (t)
2m
t
2
= r(t) + v(t)t +
a
2
t
2
(5.6.8)
Then the velocity can be determined by
v(t + t) = v(t) +
f (t + t) − f (t)
2m
t = v(t) +
1
2
[a(t + t) + a(t)]t (5.6.9)
227
5.6.2.2 Numerical Integration of Newton’s Equations of Motion
Regarding calculating the integral of Newton’s Equations of Motion numerically,
the key consideration is accuracy and long-time stability, while computational cost
is negligible. Below we introduce several commonly used numerical integration
methods.
Verlet Algorithm
The Verlet algorithm is the basis for a set of algorithms. To implement this, we should
first do the Taylor expansion to the Newton’s Equations of Motion, so that
r(t + t) = r(t) + v(t))t +
f (t)
2m
t
2
+
t
3
3!
...
r +O((t
4
)
r(t − t) = r(t) − v(t))t +
f (t)
2m
t
2
−
t
3
3!
...
r +O((t
4
)
⇒ r(t + t) + r(t − t) = 2r(t) +
f (t)
m
t
2
+ O((t
4
)
⇒ r(t + t) ≈ 2r(t) − r(t − t) + at
2
(5.6.6)
The velocity can then be estimated by
v(t) =
r(t + t) − r(t − t)
2t
+ O
t
2
(5.6.7)
Velocity Verlet Algorithm
Another algorithm is called the velocity Verlet algorithm, which is of better accuracy
and stability compared to the Verlet algorithm, but cannot be used along with the
Nosé-Hoover thermostat. To do so, we can have
r(t + t) = r(t) + v(t)t +
f (t)
2m
t
2
= r(t) + v(t)t +
a
2
t
2
(5.6.8)
Then the velocity can be determined by
v(t + t) = v(t) +
f (t + t) − f (t)
2m
t = v(t) +
1
2
[a(t + t) + a(t)]t (5.6.9)
