Review of Algorithms Used in Molecular Dynamics Simulations

Molecular Dynamics simulations are part of the study of chemical systems via the computational method. This review looks at algorithms used during this technique and examines how they work, and how they contribute to successful results using this critical method.


Introduction
Molecular Dynamics is a technique which simulates the movement of atoms in a system relative to each other and their environment [1]. Software is used to generate a coordinate file containing the location of each atom in 3D space. Classical Newtonian equations are applied in order to determine the energy, trajectory and speed of each atom [1]. In this way a molecule can be optimized into the lowest energy configuration.
These simulations rely on algorithms derived from numerical methodologies. This work discusses these algorithms, their relative efficiency and their practical application in commonly used software. The algorithmic process of NAMD, a free and open source program, will be investigated here in the most detail.
While the applications of these methods are limited to (relatively) simple calculations, numerical methods are able to achieve suitably accurate results within an acceptable timeframe.

Methods
NAMD (Nanoscale Molecular Dynamics, formerly Not Another Molecular Dynamics Program) is a popular open source program used for MD simulations. This software employs several algorithms in order to determine the lowest energy for the provided system.
Most of these algorithms are classical solutions for Nbody interaction problems. By using different methods to solve for specific interactions, the efficiency of the overall process can be increased. The two most well documented algorithms used by NAMD are the Verlet method and the Fast Multipole method, which are used to solve the kinematic equations for motion and the movement of charges through the system respectively [3].
As seen in Figure 1, the system is first decomposed into several rectangular regions [3]. A cluster of these regularly sized sections is assigned to each available processor. By ensuring that the size of each section is such that no section cuts off vital information, communication can be limited to sections adjacent to each other [3]. This design allows for easy scalability and dynamic allocation of resources.
Trajectories are then calculated for each particle, considering their interaction with their neighbours and the system around them. This process proceeds stepwise via the Verlet method, which solves the kinematic equations for the motion of an object [2]. The result of each step is compared via a central difference calculation. The process continues until a maximum number of steps is reached, or the energy of the system no longer decreases [1].
The Verlet method is able to run in O(n log(n)) in the best case [2]. Figure 2 demonstrates Stormer Verlet, which includes calculations for particle velocities [2], as written in python.
The movement of charge is calculated using the Fast Multipole Method, which again is a numerical method. A numerical approach is used to determine N-body interactions. Figure 3 shows how this is accomplished by recursively solving for the integrations of particles in successively smaller sections [4]. It also allows charges nearby to each other to considered as one source [3]. The Fast Multipole Method is able to operate as quickly as O(N) in the best case [4].

Conclusions
Optimizations to each method, which allow work to be distributed across the system, allow for flexibility and scalability. It is this flexibility which allows for the wide application of Molecular Dynamics simulations. A broad picture of how a system may appear in nature can be drawn. [Image retrieved from: http://www-personal.umich.edu/~hanliang/publications/FMM_Tutorial_Hanliang.pdf] Therefore, MD simulations are often a necessary stepallowing conclusions to be drawn about which more resource heavy methods can be applied.

REVIEW OPEN ACCESS
In future work, the efficacy of each method may be evaluated, compared, and contrasted to similar competing methods.