CERMICS, École des Ponts–ParisTech, 6 et 8 avenue Blaise Pascal, Cité Descartes – Champs-sur-Marne, F-77455 France.
Inria Centre de Recherche Paris Rocquencourt, 2 rue Simone Iff, F-75589 Paris, France
Metastability is one of the major encountered obstacle when performing long molecular dynamics simulations, and many methods were developed to address this challenge. The “Parallel Replica”(ParRep) dynamics is known for allowing to
simulate very long trajectories of metastable Langevin dynamics in the materials science community, but it relies on assumptions that can hardly be transposed to the world of biochemical simulations. The later developed “Generalized ParRep”
variant solves those issues, but it was not applied to significant systems of interest so far.
In this article, we present the program gen.parRep, the first publicly available implementation of the Generalized Parallel Replica method (BSD 3-Clause license), targeting frequently encountered metastable biochemical systems, such
as conformational equilibria or dissociation of protein–ligand complexes. It will be shown that the resulting C++ implementation exhibits a strong linear scalability, providing up to 70% of the maximum possible speedup on several hundreds of
Molecular dynamics (MD) simulations are nowadays of a common use for simulating large and complex biological or chemical systems : the continuous increase of the available computing power, together with the development of stable and accurate deterministic or stochastic sampling strategies, made possible the emergence of computer based, in silico drug design strategies [2–4]. However, a commonly encountered obstacle while performing MD simulation is the timescale separation between the fastest conformational changes — usually vibrations occurring at the femtoseconds (fs) level — and the slowest one, occurring from the nanosecond (ns) to second (or more) timescale; one may use various coarse grained [5, 6] approaches in order to reach such large simulation time, however this usually implies to sacrifice the accurate description of fast processes, such as non-bonded donor–acceptor interactions, playing a key role in biological interactions [7, 8]. The existence of metastable regions in the configurational space, separated by high potential energy or entropy barriers, is the main origin of this timescale separation, and the simulation time required for observing a transition from such a region to another one can quickly become intractable by the use of direct numerical simulation.
A large amount of methods were developed to address the challenge of metastability in MD simulations. When it is assumed that both the starting and the ending metastable regions (let us denote them as and ) are known, one can consider that most of the methods fall within one of the two following categories: local search methods start from an initial guess path connecting and , and will optimize it until convergence to an optimal path — for example characterized by a minimal potential or free energy profile — and one can cite the nudged elastic band method , the string method , the max flux approach  or the transition path sampling method  (which is actually a path sampling method starting from the initial guess, but not an optimization method); the second category consists in global search methods where the ensemble of all the possible paths between and is sampled without any initial guess, and it includes adaptive multilevel splitting methods [13–16], transition interface sampling , forward flux sampling  or milestoning techniques [19–23].
A. F. Voter and coworkers also proposed another class of methods, the Accelerated Dynamics methods [24–28]: the Parallel Replica (ParRep) method (and the derived parSplice algorithm) [29–31], the hyperdynamics method [32, 33], and the temperature accelerated dynamics method . They all have in common to be derived from the Transition State theory and kinetic Monte Carlo models, and the aim of these algorithms is to efficiently generate a succession of jump processes between metastable regions, modeled as discrete states.
The ParRep method was later formalized , and it was shown that the notion of quasi-stationary distribution (QSD) [36, 37] is the mathematical foundation at its heart: this revealed one of the possible weaknesses of the algorithm, where it is assumed that the (user defined) time required for converging to the QSD is the same for all the metastable regions. While this assumption may be reasonable for materials science, this cannot be transposed to the chemical configurational space, where the large variety of possible interactions and steric exclusions usually results in a rough energy landscape, characterized by both an extremely large number of energy minima, and the presence of super basins of attraction (usually referred to as “funnels”). The Generalized Parallel Replica (Gen. ParRep )  method addresses this issue by estimating during the simulation if convergence to the QSD is obtained; however, while this can possibly extend the range of application of ParRep to any biochemical system which can be studied via MD, no implementation has been designed and released so far.
This article describes the first publicly available Gen. ParRep based MD simulation software, specially targeting metastable biochemical systems; after a description of the methods in Section 2, the novelty
of the software implementation is detailed in Section 3; two study cases are later investigated in Section 4, the conformational equilibrium of the alanine
dipeptide (subsection 4.1), and the dissociation of the protein–ligand complex FKBP–DMSO (subsection 4.2). It will be shown in both cases that the
Gen. ParRep algorithm can be used for accurately sampling the average state-to-state transition time; furthermore evidences that the software exhibits a strong linear scaling will be reported, as it will be shown that when running over hundreds of
CPUs one gets speedups of up to 70 % of the maximum possible linear value.
Let us consider a stochastic process ( representing the phase space), where and denote the positions and momenta of the particles at time . The stochastic dynamics of can be described by the Langevin equation:
where is the inverse temperature, is the mass matrix, is a function associating to a given configuration a potential energy , is the damping parameter (representing a friction term), and a -dimensional Brownian motion.
In the following we will refer to this stochastic dynamics of , evolving within the phase space , as the Langevin dynamics.
The Langevin dynamics on the -dimensional potential energy surface is likely to consist in a succession of “entry then exit” events from wells (or groups of wells) progressively discovered by the process , and one can expect that the time spent within a well before it hops to another one will be far more large that the discretization time step : it is therefore necessary to design an alternative approach to the computationally expansive direct simulation in order to address this problem of metastability.
Let us introduce the ensemble of metastable states . These are typically defined in terms of positions
only (and not velocities). In the original ParRep algorithm [29, 31], these states are defined as the basin of attraction of the local minima of for the gradient descent : this leads to a partition of the state space. One
important output of the mathematical analysis performed in Ref.  is that (i) the metastable states can be defined arbitrarily, the only prerequisite being that for most of the visits in one of those, the exit time will be much larger than the
convergence time to the local equilibrium within the state (the so-called Quasi Stationary Distribution), and (ii) the algorithm can be applied even if these metastable states do not define a partition of the state space: in this work we propose to
define them as disjoint subsets, using collective variables or reaction coordinates [39, 40], modeled a priori in order to correspond to a few given metastable conformations of the molecular system of interest; the topological
definition of the states will be discussed for each system of interest in the Section 4.
Let be a given state: we define
to be the first exit time from (for a given initial condition ), and
to be the corresponding exit configuration (first hitting point on the boundary ): the goal of the various Parallel Replica (ParRep) [29, 31, 38] based methods (but also of other accelerated dynamics methods) is to sample efficiently the values from the unknown exit distribution associated to each state .
Recent mathematical analyses showed  that the quasi-stationary distribution (QSD) [36, 37] is an essential ingredient of the above mentioned accelerated dynamics methods. Let be a probability measure with support in : is a QSD if and only if, for any and :
where indicates that the initial condition is distributed according to . This means that is a QSD if, for all , when is distributed according to , the law of conditionally to the fact that remains in the state is still .
The QSD satisfies the following properties which will be of critical importance (see Refs. [35, 38] for detailed proofs):
1. Existence and uniqueness of : the QSD is the unique long time limit (t) distribution of , conditioned to starting and staying in up to time ;
2. if is distributed according to the QSD , then the first sampled exit time is independent of the first sampled exit configuration ;
3. if is distributed according to the QSD , sampled values of the first exit time are exponentially distributed: , where .
Having introduced the concepts of states and QSD, it is now possible to detail the Generalized Parallel Replica  (Gen. ParRep ) method. In the following, it is assumed that different metastable states are defined, either by partitioning the whole configuration space, or by defining disjoint subsets of , and denotes any member of . It is also assumed that at least CPU cores are available in order to propagate simultaneously replicas of the system in parallel.
As stated above, the aim of accelerated dynamics methods is to quickly sample values of (respectively the first exit time from a metastable and the first hitting point on the boundary ): in the case of ParRep methods, detailed information about how the process evolves within
each state is discarded, and in return exit events can be generated times faster (a linear speedup is achieved), which is of particular interest when considering computations
performed on High Performance Computing (HPC) machines, where thousands of CPUs can be used at once by a single simulation.
In the following, let be the simulation clock, corresponding to the physical time (i.e. a multiple of the time step ), and let be the configuration of the system at time (where indicates the reference walker, the first replica). The method is implemented as a three steps procedure, repeated as the process diffuses from one state to another, until a total simulation time is reached (see Figure 1 for a diagram representation):
1. Transient propagation: if the set is not a partition of the whole configuration space, it might be that is outside of any known state: therefore the process has to be propagated for a time until it reaches a metastable state (note that is expected to be much smaller than the typical exit times from the states in , at least if the states definition encompass accurately the metastable domains). After this step, the simulation time is updated as .
2. Convergence step: a Fleming-Viot (F-V) particle process is launched to estimate the convergence time to the QSD. If the reference walker leaves before the convergence time to the QSD, one goes back to step 1. If not, one proceeds to the Parallel dynamics step.
3. Parallel dynamics step : the replica are propagated independently in parallel, until one exits the state . The corresponding exit time is calculated (more details below) and is saved together with the exit configuration ; then the program proceeds to a new Transient propagation.
In the following the Convergence step and Parallel dynamics step will be detailed.
The Fleming-Viot (F-V) process [41, 42] is a branching and interacting particle process, used for simulating the law of the random variable conditioned to . As a consequence, an estimate of — the F-V convergence time — can be obtained by assessing the convergence to a stationary state of the F-V process, and when this convergence is observed, one obtains samples (approximately) distributed according to the QSD. For a detailed description with illustrations, we refer to the dedicated section from Ref. .
Let us first consider i.i.d. initial conditions (); the procedure summarizes as follows: a reference walker (namely the replica numbered ) explores driven by the Langevin Equation (1): at the same time the other replicas (the F-V workers) perform the following tasks:
1. the F-V workers evolve independently according to Equation (1) within , each of them regularly collecting the instant values of several observables; until one of them, e.g. , exits;
2. the process that exits is discarded, and replaced by a copy of one of the other F-V workers (survivors), randomly drawn with uniform probability among the survivors: this is called a F-V branching;
3. Let once again the survivors and the newly branched processes evolve and collect values, going back to (1.), until convergence is reached for each observable.
However, if at any moment the reference walker leaves before the F-V process has converged (convergence will be defined below using the G-R diagnostic), all
the F-V walkers replicas are killed, and a new Convergence step will be initiated from a new state (after Transient propagation if required).
The observables are properties of interest which are expected to characterize the convergence to equilibrium of the F-V particle process within each state : they can have a physical meaning (e.g. based on the potential , or the momenta ), or either be any type of distance/topological measure (for instance derived from
the collective variables used for designing the set ).
The convergence of the observables is assessed using the Gelman-Rubin (G-R) statistics [43, 44]: let be some observable, and let
be the average of an observable along each trajectory () and the average of the observable along all trajectories : the statistic of interest for observable is defined as:
Note that , and as the F-V workers’ trajectories explore , converges to as goes to infinity.
The time required for the F-V particle process to converge is denoted and defined by:
i.e. it is the time required for obtaining a ratio less than for each of the observable (where is a user defined stopping criterion) if the reference walker has not left the state .
After a successful Convergence step, the simulation clock is updated as follows:
and one proceeds to the Parallel dynamics step; in case the reference walker left before convergence at time , the simulation clock time is updated as follows:
where is the amount of simulation time the reference walker spent within before an exit event was observed, and one proceeds to a new Transient propagation step.
Note that because of the small value of the timestep , usually chosen between and (in the later case a set of holonomic constraints is applied to chemical bonds involving hydrogens atoms in order to allow for the larger values to be used), one does not expects to observe large fluctuations of the observables between two consecutive times and : it therefore makes sense to accumulate the values of the observables less frequently, let us say with period , satisfying .
Likewise, the test to check whether an exit from occurred is only performed with period , with typically .
The i.i.d. samples obtained after the Convergence step are used as initial conditions; then the replicas are propagated under Equation (1).
Let be the simulation time spent in the Parallel dynamic step, until the first exit event is observed; let be a simulation time interval (multiple of ) at which one tests if an exit event occurred, and let counts how many times this test was performed before an exit event occurred; finally let
be the index of the first replica for which an exit event occurred: then it was shown  that the exit time can be sampled as:
The simulation clock is updated as:
A new Transient propagation can therefore be initiated, using as new initial condition the newfound exit point .
The Gen. ParRep algorithms differs from the original ParRep algorithm (as described in Refs. [29, 30]) on several points:
• The original ParRep algorithm has always been described as operating on a partitioned configuration space, usually defining states as local minima of the potential energy function, thus implying regular gradient descent on . This makes the state identification simple and unambiguous for systems characterized by a smooth potential energy landscape where minima are separated by high energy barriers; however biochemical systems are usually characterized by rough and funneled energy landscapes, where conformation changes usually involve numerous transitions over local minima separated by low energy barrier.
• The original ParRep implementations usually require the user to define two parameters, the decorrelation time and the dephasing time . The decorrelation time is used to assess the convergence to the QSD for the reference walker: if it stays in a state for a time it is assumed to be distributed according to the QSD. Likewise, the dephasing time is used to sample the QSD before the Parallel dynamics step starts: in the so-called dephasing step, each of the replica is propagated within the state , and its end point is kept as a sample of the QSD if it stayed within the state for a time . Once again, this approach appears hardly compatible with biochemical systems, as it is impossible to define ubiquitous values of and appropriate for all the possible local minima and all initial conditions within the states.
Those two limitations are addressed by the implementation of the Gen. ParRep algorithm described in this article: while permitted, partition of the configuration space is not enforced, and the user has total control on how to define the states; this allows for instance to merge multiple local minima together in order to define a metastable state accurately englobing a funnel of the PES.
Furthermore the use of the F-V particle process during the Convergence step releases the user from providing a priori estimates of the time required for converging to the QSD, as is estimated on the fly based on the convergence of the observables, the only requirements being to provide meaningful observables and a tolerance level.
In the following section 4 we will present results obtained with our current implementation of the Generalized ParRep algorithm: it consists in a newly written C++ program, gen.parRep, available free of charge (see https://gitlab.inria.fr/parallel-replica/gen.parRep) and released under an open-source BSD 3-clause licensing. We aimed at providing an easy to use, versatile and performance oriented implementation, focusing on the study of metastability encountered when studying chemical and biochemical systems. Note that while the original ParRep method is also implemented and available in our new software, we will not present any result for it, as we focus on the novelty of Gen. ParRep .
In the following paragraphs, the critical requirements for developing such a code are detailed, together with details on the technical solutions adopted in order to address them.
The replica-based approach of the ParRep algorithms naturally suggests that the parallelization is achieved by using a distributed computing approach: an obvious choice nowadays is to use the Message Passing Interface (MPI)  standardized protocol, for which various high performance computing (HPC) implementations are available [47, 48].
Each of the replica corresponds to a MPI task: each task will use CPU cores, usually being at least and at most all the cores available on a given machine (a MPI node). Therefore each computing node will execute or more replicas, each performing the dynamics on cores.
Regularly, messages of arbitrary size are exchanged between the replicas, which can be classified in two categories:
• point-to-point communications involve two replicas and are usually inexpensive as long as the amount of data sent remains relatively small: one example is the branching and cloning operation of the F-V algorithm, where an exiting F-V worker will copy the configurations plus the history of all the observables from another F-V worker.
• collective communications involve the full ensemble of the replicas and are likely to be time consuming, and are therefore used with care: they include barriers for keeping the replicas synchronized and broadcasting operations where a replica sends its configuration to the others (for example to be used as an initial condition for the next F-V iteration).
Furthermore, communications can either be blocking or non-blocking, the later allowing the developer to interleave communications and computations in order to hide latency. To provide an efficient
Gen. ParRep implementation, the use of barriers and collective communications have been reduced to the minimum possible, and non-blocking variants of those were used whenever possible.
One requires an efficient Molecular Dynamics (MD) engine, capable of performing the dynamics of Equation (1): the minimal requirement is to have access to one code block which, when executed, will realize one or more discretization steps of size , and which internally takes care of the evaluation of the potential and its gradient (usually analytically calculated). A read and write access to the internal configuration of each replica is also required for performing the exchanges.
In order to study large systems, one also expects: full support of commonly used force-fields, availability of modern optimizations such as the Particle Mesh Ewald , Reaction Field [50, 51], or Cell-Linked Lists [52–55] methods, for an efficient evaluation of non-bonded interactions. As mentioned in the previous paragraph one can decide to provide CPU cores to each of the replica, therefore a shared memory parallelization capability for the MD engine is encouraged.
For the current implementation it was decided to use the OpenMM 7 library;  OpenMM is a high performance, free of charge and open source toolkit for performing molecular simulations, which can be used either as a software library on
which to build a program, or directly as an application (via python scripting): the later is used for preparing the molecular systems before simulation, accepting force-field and configuration files from various origins (CHARMM , AMBER ,
GROMACS ,NAMD ,...), while the library mode provides a direct and simplified access to the MD engine from within the C++ application.
While technical aspects as parallelization and efficiency of the MD engine are important, the Generalized ParRep critically relies on an efficient definition of the set of states . As stated in subsection 2.2 this implementation focuses on applications where the states are a priori defined using either atomic coordinates or more elaborated collective variables: it is thus necessary to provide a way to define the states online, e.g. using a scripting language interfaced with the core C++ methods in order to have access to atomics properties.
It was decided to use the Lua  language: it is a fast, lightweight, easy to learn, embeddable and dynamically typed scripting language. The user input required for running the ParRep algorithms is written to an input Lua file, together with all the code and variables for (i) defining the states, (ii) checking if an exit event is observed, and (iii) monitor the G-R statistics. The Sol2  library (embedded within the C++ program’s source code) takes care of parsing the input file at initialization, and it dynamically maps the user-defined code to C++ functions. The core code is therefore state agnostic as it never exactly knows how a state has been defined: indeed the whole implementation will only call the following: (i) a function returning a true/false boolean value indicating if (always true in case of a partitioned configuration space, possibly false otherwise); (ii) another function returning a true/false boolean value indicating if where is the last visited state, being called every time it is required to check if an exit event occurred; (iii) and a few functions (one per user defined observable) monitoring the G-R observables returning a real value to be accumulated and used in Equations (2), (3), and (4). Figure 2 exemplifies the Lua code checking if an exit event has occurred.
For further increased performance it is possible to use the LuaJIT implementation  where the Lua code is compiled to machine code during parsing: this allows performance close to what would be obtained by defining the states based on compiled code
Finally, the Lua layer can act as an intermediate proxy between the C++ Gen. ParRep code and any other external library, providing the possibility to define states and observables using external software pieces: one can for example imagine to
use tools such as Colvars  or PLUMED , providing access to an extensive ready to use collection of collective variables definitions.
As previously mentioned in subsection 2.4 it is not necessary to check at each integration of if (parallel step) or (F-V step) as one expects that the exit time is much larger than .
And likewise, while it is important to regularly gather the value of the G-R observables in order to obtain convergence of Equation (3), it is expected that they will not differ that much between time and : hence it is interesting to choose .
While the values should be fine tuned for each system, based on our experience we ended up with the following rule of thumb: one can take to be to times the value of , and to be to times . This should be adjusted depending on: (i) the amount of calculations involved in the process of defining the state and the G-R observables in the input script, and (ii) the size of the system; for a large solvated protein, if the states and observables only involve distance measures on a few atoms, then the time required for performing the dynamics will be comparatively much larger and relatively small values of and can be selected; however, if it involves tracking the length of several dozens of hydrogen distances, or counting native contacts, a wise approach would be to choose and .
Furthermore, it should be emphasized that while Equation (5) is mathematically valid for any values of (in the sense that it indeed samples the exit time of the sub-sampled
Markov chain ), if is taken too large, one may miss an exit event if the process re-enters the
same state during the time interval ; however one may argue that such cases may denote a
poor definition of the states, and that for states exhibiting strong metastability this should not be an issue.
Now that both the algorithm and the software implementation of the Generalized ParRep (in the following denoted as “Gen. ParRep ”) have been extensively discussed, let us consider two applications: the first validates the implementation and consists in a study of the conformational equilibrium of alanine dipeptide (subsection 4.1), while the second investigates the dissociation of the FKBP–DMSO protein–ligand complex (subsection 4.2).
In the following, when reporting estimated values of the average exit time from a metastable state we will consider the sample average over samples as
Furthermore the confidence interval for those (close to) exponentially distributed samples is:
where is the value of the quantile function of the distribution with degrees of freedom at level ; in the following we chose and therefore report the confidence interval.
The blocked alanine dipeptide (Ac-Ala-N-H-Me) has been used as a validation system for computational studies of conformational equilibria, and energy landscape reconstruction and analysis [64–71]. The dipeptide contains several notable structural features, including the two dihedral angles, NH- and CO-groups capable of H-bond formation, and a methyl group attached to the atom. One suitable way to visualize the conformations and the transitions between them is to draw an energy surface as a Ramachandran plot : when studied in vacuo the following two metastable states are clearly identified: (i) for , and (ii) for .
In the following we estimate the mean first passage time between the two metastable states, using the Gen. ParRep algorithm;
accuracy of the method is compared to one long serial Langevin dynamics, as the low complexity of this system allows direct numerical simulation of numerous transition events; finally the influence of some of the Gen. ParRep parameters is also
The initial configuration of the dipeptide is , i.e. within the most populated area
of the state (see the yellow mark on Figure 3 together with a representation of the corresponding conformation). The OpenMM system was configured as follows: the CHARMM 22 all-atoms for proteins and lipids force-field including CMAP
corrections [73, 74] was used; dynamics was performed using a Langevin integrator (time-step of , friction of ), thermostated at a temperature of ; the non-bonded interactions were evaluated using a non-periodic cutoff scheme up to a distance of
; and bonds involving hydrogens are constrained to a value of of their original distance.
The procedure for defining the states may have to be adapted for each force-field and in the following we assume the use of the aforementioned CHARMM22 FF. Figure 3 is a Ramachandran plot based free energy surface built from preliminary serial Langevin MD simulation: it illustrates how the ParRep states were a priori defined.
One can see that in the upper left quarter of the plot two close stable conformations indeed coexist, separated by a low energetic barrier of to kcal/mol, which is only a few times the product : hence it was decided to combine those two minima together, as they do not constitute alone a valid metastable target for applying the ParRep method (Refs. [65, 69, 71] indeed suggest that the transition between those two wells is of , and , respectively). Therefore the conformational equilibrium of the dipeptide is modeled using a two states definition:
1. The ParRep state corresponds to the well for which and , i.e. the lower right quarter of Figure 3; it was decided to model this state using the following rectangular domain:
represented as a red rectangle in Figure 3.
2. The ParRep state consists in the set of all configurations not falling within the red rectangle: it is therefore the complement of the state .
Therefore this setup corresponds to a two states partition of the configuration space projected onto a Ramachandran plot.
Concerning the Fleming-Viot procedure, four Gelman-Rubin observables are considered for tracking the convergence to the QSD: the total potential energy , the kinetic energy , and the value of the and dihedral angles acting here as collective variables. The tolerance criterion
is fixed per simulation to a given value which is the same for each observable (the influence of is investigated below for a range of values). The value of (accumulation of observables) was set to (i.e. ) as the observables are not computationally expansive to calculate, and the test is performed at (i.e. ) during the Convergence step, but at during the Parallel dynamics step, which corresponds to
, in order to maximize the CPU time spent in the Langevin dynamics.
In the following the distribution of the Gen. ParRep sampled values are compared to results obtained when performing a long reference dynamics (denoted as reference MD in the following), consisting in a Langevin dynamics simulation of a total length of . As a result, events were sampled, and is obtained, while the confidence interval is (see Table 1 for a summary); in Ref.  the authors estimate to be of (no provided error estimate), in agreement with this value.
First, the possibility to obtain an accurate estimate of by generating a relatively small number of samples is investigated: the number of Gen. ParRep replicas was set to , and the number of samples of generated was for respective tolerance levels of (red, green and blue solid lines; less samples were collected for because of the higher computational effort required for lower tolerance values).
The convergence to the MD reference (black lines) can be visualized on Figure 4 where (solid lines) and the corresponding confidence interval (dashed lines) are given for the three ParRep samples, when considering only the subset of the first sampled values; the red line () quickly converges to the same distribution than the MD reference, while higher values of appear to converge to a different distribution underestimating (see also numerical values in Table 1): this suggests that convergence to the QSD is only obtained for a value of when studying the transition.
Now that a value of appears to be accurate enough, one can collect more samples in order to verify that the distribution of the exit times converges to the one obtained with the reference MD
simulation. In Figure 5, the distribution of samples generated for a level of and using is illustrated: this was done by building an empirical complementary cumulative distribution
function (in the following referred to as ) using the samples, and it provides an estimate of the probability that is higher than a given value (i.e. ), with by definition ). One can see from Figure 5 that the Gen. ParRep and MD distributions are in really good agreement for , where a quasi linear function (i.e. exponential law) is observed (we
ignore the area for , i.e. the low probability tail of the distribution corresponding
to large values of , where the MD simulation lacks samples for performing a meaningful
comparison). This observation is confirmed by looking at Figure 6: the convergence of Gen. ParRep samples to the MD reference is observed, both for the mean value and the confidence
interval, for increasing values of .
One last interesting quantity to collect is the average time necessary for the convergence of the observables ; as detailed in subsection 2.4, this corresponds to the value of (see Equation (4)). Figure 7 provides the histogram distribution of for two of the datasets from Figure 4, together with a Kernel Density Estimate smoothing [75, 76] (dashed lines). For a tolerance of one observes that and appears to follow a normal distribution; for it seems that the distribution is bimodal, with a major mode at and a minor mode at . While it is difficult to argue how the distribution of ideally looks like, one should remember that the is defined as the large funnel on the left () side of Figure 3, and that therefore it encompasses the whole range of the possible values, meaning that will be the slowest observable to converge; it is thus expected that the value of will be large for conservative tolerance levels (), and that depending on how the F-V workers randomly diffused on the surface, its distribution will be broad, possibly multimodal. Hence the dispersion for in Figure 7 appears coherent, while the homogeneous distribution for probably indicates that the F-V workers did not diffuse far enough from their starting point in : they are therefore still distant from what the QSD would be, and this explains why never converged to the result obtained by direct numerical simulation when .
Figure 7 emphasizes one of the main advantages of the Gen. ParRep algorithm versus the original method, i.e. the fact that is calculated on the fly, and thus adjusted to the initial condition within the
state, whereas the original algorithm required a fixed user defined value after which it was assumed that the QSD was reached: indeed, one can see that for (which seems necessary to be sufficiently close to the exact QSD), the distribution of is spread over an interval going from to ; it is therefore obvious that choosing a priori a decorrelation time of
would result in a bias as this value appears to be far below the time it
takes to reach the QSD for some initial conditions; and on the contrary choosing a decorrelation time of would ensure quasi-convergence to the QSD for most of the initial
conditions, but at the cost of an unnecessary long (and then costly) decorrelation step for some of the initial conditions.
The last point to discuss concerns the performance of the Gen. ParRep method and particularly the speedup compared with the reference serial Langevin dynamics.
In Table 2 benchmarking data is reported for the simulations from Figure 4; the fifth column reports the calculated effective speedup which is compared to the maximum possible speedup ; the sixth column reports the ratio between the effective speedup (see Table’s caption for methodology) and the maximum possible speedup (hence a value of would indicate a perfect linear speedup).
One can see that for a large tolerance of a value of is obtained, i.e. of the maximum possible value; and for a more conservative tolerance criterion of this falls to i.e. of N: this illustrates the cost of an accurate convergence step which, as seen in the previous section, is the key for obtaining accurate results.
Considering the reduced size of the system ( atoms) and the fact that during the F-V procedure the MD engine code is interrupted every for collecting the value of the G-R observables, this speedup is an
impressive result; although slightly higher values may be obtained by tunning further the values of and , there is probably little space for optimization for such a small test-case
system: therefore a more detailed performance analysis will be performed in the next subsection for the protein–ligand system.
Table 2: Benchmarking data for the three datasets from Figure 4 (, and ). Each replica runs on CPU cores. The wall-clock time (column ) is taken as the time elapsed from the beginning to end of the execution of the program, it includes both computations and communications time. The speed (ns/day, column ) is obtained by dividing the total simulation clock (column ) by the value of the wall-clock time (in days). The effective speedup (column ) corresponds to column divided by the performance of a serial MD reference (evaluated as ns/day by independent tests on the same architecture). The ratio between the effective and maximum possible speedup (by definition equal to ) is given as a percentage in column : a theoretical value of would correspond to the maximum possible speedup.
After validation of the Gen. ParRep algorithm on the alanine dipeptide, we would like to demonstrate its efficiency on a larger protein–ligand system: the aim is to sample the dissociation time between the bound and unbound states of the FKBP–DMSO complex (see Figure 8). The FKBP protein (also known as the FK506 binding protein) have a role in the folding of other proteins containing proline residues ; in the human body the FKBP12 protein binds to the tacrolimus molecule (and derivatives), an immunosuppressant drug used to reduce organ rejection after an organ transplant . Because of this important role, both experimental studies  and molecular dynamics simulations [80–82] were performed for evaluating the affinity of the FKBP protein to multiple ligands; these include the DMSO (Dimethyl-sulfoxide), a small molecule with anti-inflammatory, antioxidant and analgesic activities , and often used in topical treatments because of its membrane-penetrating ability, which enhances the diffusion of other substances through the skin .
The initial configuration was taken from the RCSB-PDB entry “1D7H”; the AmberTools17  software suite was used for setting up an implicit solvent input configuration (using the OBC  model II): first, parameters for the DMSO ligand were retrieved from the GAFF  force-field using the antechamber program; then parameters for the protein are taken from the ff14SB  force-field; dynamics was performed using a Langevin integrator (time-step of , friction of ), thermostated at a temperature of ; the non-bonded interactions were evaluated using a non-periodic cutoff scheme up to a distance of ; and bonds involving hydrogens are constrained to a value of of their original distance.
Before running ParRep simulations, the system was equilibrated for ns, with the DMSO’s center of mass being position-constrained within nm of its original crystallographic position (force constant of 50 kJ/mol/nm).
For defining the ParRep states, we used the following procedure, inspired from Refs. [80, 82]: a closer view at the ligand binding cavity (see Figure 9 (a)) reveals a dense packing with only little available space around the ligand, and one expects that the sulfur and oxygen atoms will interact favorably via non-bonded interactions with the surface of the protein; when observing in details the residues surrounding the DMSO (see Figure 9 (b) corresponding to the RCSB-PDB structure obtained from X-ray diffraction ), one can see favorable interaction of the O atom with residue ILE- and of the S atom with residue TRP-.
Hence we used for defining the Gen. ParRep metastable “bound state” (denoted by ) a criteria based on the distances d and d as illustrated in Figure 9 (b): d corresponds to the distance between ligand’s oxygen and the hydrogen amide of residue ILE-; and d corresponds to the distance between ligand’s sulfur and the center of mass of the carbons forming the ring of residue TRP-. The DMSO is considered to be in the state when any of d or d is less than nm, and the “unbound state” (denoted by ) is simply defined as configurations where both distances are nm.
One may wonder whether this distance threshold has a physical meaning: Figure 10 shows a histogram distribution of the two distances d and d, for a Langevin dynamics: it appears that the threshold of nm corresponds to rarely sampled configurations, far enough from the top of the two distributions ( and nm, respectively), while it also precedes higher probabilities at nm, corresponding to unbound states. This threshold therefore appears to approximately correspond to a boundary between the and states.
Concerning the Fleming-Viot procedure, once again observables were selected in order to track convergence to the QSD: the two first are the aforementioned
distances d and d; the third one is the distance between the center of mass of the DMSO and the
center of mass of the protein; the last one is the root mean square velocity of the DMSO ligand. The levels of were set to the same value for each of the observable, and this value will be the main
Gen. ParRep parameter to be discussed below. The value of was set to , and the test is performed with a period , both during the Convergence step and the Parallel
In the following we will compare the Gen. ParRep results to Ref. , where the authors performed long explicit water MD simulations using the CHARMM 27 force-field and where a value of is reported.
In Figure 11 the distribution of for tolerance values of is shown (details are available in Table 3): first, a moderate number of transition events () was generated for each level of , and a first estimate of was calculated: as the results for appeared to be far from the results obtained for more stringent tolerances, they were not further considered; then for the three remaining tolerance levels (), extended simulations were performed which permitted to obtain samples of , thus providing estimates of respectively , and with a confidence interval of approximately (see Table 3); the convergence of the corresponding simulations can be observed on Figure 12.
It should first be noted that levels of larger than have to be avoided for this system (and, from our experience, for any application in general) as they will systematically produce biased results: it is indeed not possible to generate initial conditions distributed according to the QSD by using such a loose tolerance criterion, especially when the definition of the state involves a large number of degrees of freedom.
For tolerance levels smaller or equal to 0.05, the confidence intervals mostly overlap, as one can see on Figure 12: for or (respectively the cyan and dark blue lines) the two estimated values of and are almost identical, for (the green line) the estimated value of is , a slightly higher value. A closer look at the upper and lower bounds of the confidence intervals shows a constant overlap — of decreasing width — around , which is the value of for or ( and ), therefore suggesting that, once again, strict tolerance criteria provide the most accurate estimate; this is confirmed by a qualitative (solid vs dashed lines) and quantitative (coefficient ) look at Figure 11, where one can see that the two lowest values of follow the more accurately the quasi-exponential distribution (however, one should remember that the distribution is not expected to be exactly exponential especially for small values of , as exit events of the reference walker happening before the end of the Convergence step are not guaranteed to be exponentially distributed as the QSD was not yet reached).
In the aforementioned Ref.  the estimate of is (no confidence interval provided): this can be considered to be in a reasonable agreement with our
value of obtained for and where the confidence interval is , considering that the force-field was different, and that the
current study uses an implicit solvent while the reference used explicit water molecules.
Because the FKBP–DMSO system is much more representative of a typical research application than the alanine dipeptide, it is of an utmost interest to provide an accurate estimate of the performances: for this, we provide in Table 4 benchmarking data (following the same methodology established for Table 2): the three datasets correspond to the samples for from Figure 11; the number of replica corresponds to the maximum speedup, while column reports the calculated effective speedup; the ratio given in column gives an idea of the efficiency of the implementation for studying a medium size protein–ligand system.
One can see that the effective speedup is close to (i.e. of the maximum ) for tolerances of and ; for the stricter tolerance level of the speedup falls to (i.e. of the maximum ) which illustrates the computational cost one has to pay for an increased accuracy. Once again the ability to obtain a speedup between and of the maximum possible denotes the parallel efficiency of the Gen. ParRep implementation on a production system, and is an extremely promising achievement towards future studies of larger biochemical systems.
The distribution of is illustrated in Figure 13 for all the considered levels of tolerance: all distributions appear to be multimodal, revealing that multiple sub-states are likely to be found within the surrounding cavity definition of the bound state (this was suggested in earlier studies such as Ref. ); for the larger levels of the multimodality is particularly visible with two well defined peaks, resulting in an average falling between the peaks, around ; however for low tolerance such as a broad distribution is observed, and the average goes to .
This emphasizes once again how difficult it would be to fix a priori a value for (as required by the original ParRep implementations), as this value would be inappropriate for some of the initial conditions; the ability of the Gen. ParRep algorithm to automatically determine a value of appropriate for the current initial condition therefore appears to be the major advantage of the method when investigating protein–ligand complexes’ dissociation.
Table 4: Benchmarking data for three of the datasets from Figure 11 and Table 3 (corresponding to , ): each replica used CPUs cores, and the equivalent speed of a reference Langevin dynamics on those same cores is ns/day; see Table 2 for the methodology.
|WT(s)||(ns)||Speed (ns/day)||Eff. speedup||(Eff./Max.)|
In this article, we detailed a new implementation of the Gen. ParRep algorithm, developed with the aim of facilitating the study of biochemical systems exhibiting strong metastability. After detailing the methods and the software implementation
in Sections 2 and 3, a validation (Section 4) with two systems of increasing complexity was discussed.
In subsection 4.1, it was shown that the Gen. ParRep method can accurately sample the transition time characterizing the conformational equilibrium of alanine dipeptide in
vacuum: for sufficiently small levels of tolerance (e.g. ), the estimation converges to what was obtained from a long reference Langevin dynamics (see
Table 1 for a summary, and Figures 3 to 7). Results also appeared to compare favorably to previously
published studies . Finally it was also shown that the implementation of the algorithm proves to be scalable as one can obtain of the maximum possible speedup (see Table 2).
The second application consisted in the study of the dissociation of the FKBP–DMSO complex (subsection 4.2), a protein–ligand system of larger size, much more representative of typical metastable
problems encountered in computational biology or chemistry. The goal was to obtain an accurate estimate of the average time required for observing a dissociation of the complex, with comparison to
previous computational studies [80–82]. It was shown (see Table 3 and the associated Figures 8 to 13) that a
simple definition of the bound and unbound states based on a two distances threshold can provide an accurate estimate of , once again when tolerance levels are used: a value of is found using the
Gen. ParRep method, the value of for appearing to be the most accurate, and this compares relatively well to Ref.  where a value of
was found using a different forcefield and an explicit solvent. The algorithm was also benchmarked for
the FKBP–DMSO system (see Table 4), and it was shown that one can maintain performances up to of the maximum possible speedup while using 560 CPU cores, which
definitely makes this new Gen. ParRep ready for production on large scale HPC machines.
From the two studies performed in this article it ought to be remembered that, beyond the accurate definition of the states , the choice of the tolerance level is the main parameter influencing the accuracy of the results: a
value of appears to be the most reasonable choice, confirming previous observations on smaller systems .
Furthermore, the algorithm provides an accurate estimate of the time required for approximating the QSD depending on the initial condition within
the state, and it was shown (see Figures 7 and 13) that is distributed over a large interval of time: in such a case the a priori choice of a
fixed value decorrelation time approximating (as it was done in the original ParRep implementations) is non-obvious, and the
use of the Gen. ParRep method is justified.
As an outlook, it has to be emphasized that there is still, of course, place for improvement of the software implementation: the authors would like to make the program compatible with other MD engines; tests are currently being performed where replicas are distributed over General-Purpose computing units (GPGPUs) in order to consider applications to larger systems; and preliminary simulations are being performed on a HPC Cloud Computing platform, on which a user could easily imagine using thousands of replicas.
The authors are also currently studying more advanced biochemical metastable problems, including larger protein–ligand systems in explicit water where the states consist in a set of disjoint cavities inside the protein.
• This work is supported by the European Research Council under the European Union’s Seventh Framework Program (FP/2007-2013)/ERC Grant Agreement number 614492.
• The authors acknowledge the “Maison de la Simulation” (and particularly Matthieu Haefele and Julien Derouillat) for helpful discussion and advices concerning the optimization of the software.
• This work was granted access to the HPC resources of the CINES under the GENCI allocations 2017-AP010710193, 2017-AP010710245 and 2017-A0030710275.
• FH acknowledges the Institute for Pure and Applied Mathematics (IPAM) at the University of California Los Angeles (UCLA) for participation to the long program “Complex High-Dimensional Energy Landscapes”, its organizers, participants, and particularly members of the “Accelerated dynamics and benchmarking” working group for discussion and remarks on this work.
 Adam Hospital, Josep Ramon Goñi, Modesto Orozco, and Josep L. Gelpi. Molecular dynamics simulations: advances and applications. AABC, 8:37–47, Nov 2015.
 Marco De Vivo, Matteo Masetti, Giovanni Bottegoni, and Andrea Cavalli. Role of Molecular Dynamics and Related Methods in Drug Discovery. J. Med. Chem., 59(9):4035–4061, May 2016.
 Valère Lounnas, Tina Ritschel, Jan Kelder, Ross McGuire, Robert P. Bywater, and Nicolas Foloppe. CURRENT PROGRESS IN STRUCTURE-BASED RATIONAL DRUG DESIGN MARKS A NEW MINDSET IN DRUG DISCOVERY. Computational and Structural Biotechnology Journal, 5(6):e201302011, February 2013.
 Gregory Sliwoski, Sandeepkumar Kothiwale, Jens Meiler, and Edward W. Lowe. Computational methods in drug discovery. Pharmacol. Rev., 66(1):334–395, 2014.
 Helgi I. Ingólfsson, Cesar A. Lopez, Jaakko J. Uusitalo, Djurre H. de Jong, Srinivasa M. Gopal, Xavier Periole, and Siewert J. Marrink. The power of coarse graining in biomolecular simulations. WIREs. Comput. Mol. Sci., 4(3):225–248, May 2014.
 Sebastian Kmiecik, Dominik Gront, Michal Kolinski, Lukasz Wieteska, Aleksandra Elzbieta Dawid, and Andrzej Kolinski. Coarse-Grained Protein Models and Their Applications. Chem. Rev., 116(14):7898–7936, Jul 2016.
 Bernd Kuhn, Peter Mohr, and Martin Stahl. Intramolecular Hydrogen Bonding in Medicinal Chemistry. J. Med. Chem., 53(6):2601–2611, Mar 2010.
 Caterina Bissantz, Bernd Kuhn, and Martin Stahl. A Medicinal Chemist’s Guide to Molecular Interactions. J. Med. Chem., 53(14):5061–5084, Jul 2010.
 Hannes Jónsson, Greg Mills, and Karsten W. Jacobsen. Nudged elastic band method for finding minimum energy paths of transitions, pages 385–404. WORLD SCIENTIFIC, 2011.
 Weinan E, Weiqing Ren, and Eric Vanden-Eijnden. String method for the study of rare events. Phys. Rev. B, 66(5):052301, Aug 2002.
 Ruijun Zhao, Juanfang Shen, and Robert D. Skeel. Maximum Flux Transition Paths of Conformational Change. J. Chem. Theory Comput., 6(8):2411–2423, Aug 2010.
 Christoph Dellago, Peter G. Bolhuis, and David Chandler. On the calculation of reaction rate constants in the transition path ensemble. J. Chem. Phys., 110(14):6617–6625, Apr 1999.
 Frédéric Cérou and Arnaud Guyader. Adaptive Multilevel Splitting for Rare Event Analysis. Stochastic Analysis and Applications, 25(2):417–443, Feb 2007.
 Frédéric Cérou, Arnaud Guyader, Tony Lelièvre, and David Pommier. A multiple replica approach to simulate reactive trajectories. J. Chem. Phys., 134(5):054108, Feb 2011.
 Charles-Edouard Bréhier, Tony Lelièvre, and Mathias Rousset. Analysis of adaptive multilevel splitting algorithms in an idealized case. ESAIM: PS, 19:361–394, 2015.
 Ivan Teo, Christopher G. Mayne, Klaus Schulten, and Tony Lelièvre. Adaptive Multilevel Splitting Method for Molecular Dynamics Calculation of Benzamidine-Trypsin Dissociation Time. J. Chem. Theory Comput., 12(6):2983–2989, Jun 2016.
 Titus S. van Erp and Peter G. Bolhuis. Elaborating transition interface sampling methods. J. Comput. Phys., 205(1):157–181, May 2005.
 Rosalind J. Allen, Chantal Valeriani, and Pieter Rein ten Wolde. Forward flux sampling for rare event simulations. J. Phys.: Condens. Matter, 21(46):463102, Oct 2009.
 Anton K. Faradjian and Ron Elber. Computing time scales from reaction coordinates by milestoning. J. Chem. Phys., 120(23):10880–10889, Jun 2004.
 Luca Maragliano, Eric Vanden-Eijnden, and Benoît Roux. Free Energy and Kinetics of Conformational Transitions from Voronoi Tessellated Milestoning with Restraining Potentials. J. Chem. Theory Comput., 5(10):2589–2594, Oct 2009.
 Christof Schütte, Frank Noé, Jianfeng Lu, Marco Sarich, and Eric Vanden-Eijnden. Markov state models based on milestoning. J. Chem. Phys., 134(20):204105, May 2011.
 Juan M. Bello-Rivas and Ron Elber. Simulations of thermodynamics and kinetics on rough energy landscapes with milestoning. J. Comput. Chem., 37(6):602–613, Mar 2016.
 David Aristoff, Juan M. Bello-Rivas, and Ron Elber. A Mathematical Framework for Exact Milestoning. Multiscale Modeling & Simulation, Mar 2016.
 Arthur F. Voter and Mads R. Sørensen. Accelerating Atomistic Simulations of Defect Dynamics: Hyperdynamics, Parallel Replica Dynamics, and Temperature-Accelerated Dynamics. MRS Online Proceedings Library Archive, 538, 1998.
 Danny Perez, Blas P. Uberuaga, Yunsic Shim, Jacques G. Amar, and Arthur F. Voter. Chapter 4 accelerated molecular dynamics methods: Introduction and recent developments. In Ralph A. Wheeler, editor, Annual Reports in Computational Chemistry, volume 5, pages 79 – 98. Elsevier, 2009.
 T. Lelièvre. Accelerated dynamics: Mathematical foundations and algorithmic improvements. Eur. Phys. J. Spec. Top., 224(12):2429–2444, Sep 2015.
 Tony Lelièvre and Gabriel Stoltz. Partial differential equations and stochastic methods in molecular dynamics. Acta Numerica, 25:681–880, 2016.
 Tony Lelièvre. Mathematical foundations of Accelerated Molecular Dynamics methods. arXiv, Jan 2018.
 Arthur F. Voter. Parallel replica method for dynamics of infrequent events. Phys. Rev. B, 57:R13985–R13988, Jun 1998.
 Oyeon Kum, Brad M. Dickson, Steven J. Stuart, Blas P. Uberuaga, and Arthur F. Voter. Parallel replica dynamics with a heterogeneous distribution of barriers: Application to n-hexadecane pyrolysis. J. Chem. Phys., 121(20):9808–9819, Nov 2004.
 Danny Perez, Ekin D. Cubuk, Amos Waterland, Efthimios Kaxiras, and Arthur F. Voter. Long-Time Dynamics through Parallel Trajectory Splicing. J. Chem. Theory Comput., 12(1):18–28, Jan 2016.
 Arthur F. Voter. A method for accelerating the molecular dynamics simulation of infrequent events. J. Chem. Phys., 106(11):4665–4677, Mar 1997.
 Arthur F. Voter. Hyperdynamics: Accelerated Molecular Dynamics of Infrequent Events. Phys. Rev. Lett., 78(20):3908–3911, May 1997.
 Mads R. So/rensen and Arthur F. Voter. Temperature-accelerated dynamics for simulation of infrequent events. J. Chem. Phys., 112(21):9599–9606, Jun 2000.
 Claude Le Bris, Tony Lelièvre, Mitchell Luskin, and Danny Perez. A mathematical formalization of the parallel replica dynamics. Monte Carlo Methods and Applications, 18(2):119–146, Jan 2012. arXiv: 1105.4636.
 P. A. Ferrari, H. Kesten, S. Martinez, and P. Picco. Existence of quasi-stationary distributions. a renewal dynamical approach. The Annals of Probability, 23(2):501–521, 1995.
 Erik A. van Doorn and Philip K. Pollett. Quasi-stationary distributions. Number 1945 in Memorandum / Department of Applied Mathematics. University of Twente, Department of Applied Mathematics, 6 2011.
 Andrew Binder, Tony Lelièvre, and Gideon Simpson. A generalized parallel replica dynamics. J. Comput. Phys., 284:595–616, Mar 2015. arXiv: 1404.6191.
 Giacomo Fiorin, Michael L. Klein, and Jérôme Hénin. Using collective variables to drive molecular dynamics simulations. Molecular Physics, 111(22-23, SI):3345–3362, Dec 1 2013.
 Gareth A. Tribello, Massimiliano Bonomi, Davide Branduardi, Carlo Camilloni, and Giovanni Bussi. Plumed 2: New feathers for an old bird. Computer Physics Communications, 185(2):604 – 613, 2014.
 WENDELL H. FLEMING and MICHEL VIOT. Some measure-valued markov processes in population genetics theory. Indiana University Mathematics Journal, 28(5):817–843, 1979.
 Amine Asselah, Pablo A. Ferrari, and Pablo Groisman. Quasistationary distributions and fleming-viot processes in finite spaces. Journal of Applied Probability, 48(2):322–332, 2011.
 Andrew Gelman and Donald B. Rubin. Inference from iterative simulation using multiple sequences. Statistical Science, 7(4):457–472, 1992.
 Stephen P. Brooks and Andrew Gelman. General methods for monitoring convergence of iterative simulations. Journal of Computational and Graphical Statistics, 7(4):434–455, 1998.
 David Aristoff, Tony Lelièvre, and Gideon Simpson. The Parallel Replica Method for Simulating Long Trajectories of Markov Chains. Appl. Math. Res. eXpress, 2014(2):332–352, Jan 2014.
 Mpi: A message-passing interface standard. Technical report, The MPI forum, Knoxville, TN, USA, 1994.
 Edgar Gabriel, Graham E. Fagg, George Bosilca, Thara Angskun, Jack J. Dongarra, Jeffrey M. Squyres, Vishal Sahay, Prabhanjan Kambadur, Brian Barrett, Andrew Lumsdaine, Ralph H. Castain, David J. Daniel, Richard L. Graham, and Timothy S. Woodall. Open MPI: Goals, concept, and design of a next generation MPI implementation. In Proceedings, 11th European PVM/MPI Users’ Group Meeting, pages 97–104, Budapest, Hungary, September 2004.
 William Gropp. Mpich2: A new start for mpi implementations. In Proceedings of the 9th European PVM/MPI Users’ Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface, page 7, London, UK, UK, 2002. Springer-Verlag.
 Tom Darden, Darrin York, and Lee Pedersen. Particle mesh Ewald: An Nlog(N) method for Ewald sums in large systems. J. Chem. Phys., 98(12):10089–10092, Jun 1993.
 Frederick S. Lee and Arieh Warshel. A local reaction field method for fast evaluation of long-range electrostatic interactions in molecular simulations. J. Chem. Phys., 97(5):3100–3107, Sep 1992.
 Ilario G. Tironi, René Sperb, Paul E. Smith, and Wilfred F. van Gunsteren. A generalized reaction field method for molecular dynamics simulations. J. Chem. Phys., 102(13):5451–5459, Apr 1995.
 William Mattson and Betsy M. Rice. Near-neighbor calculations using a modified cell-linked list method. Comput. Phys. Commun., 119(2):135–148, Jun 1999.
 Zhenhua Yao, Jian-Sheng Wang, Gui-Rong Liu, and Min Cheng. Improved neighbor list algorithm in molecular simulations using cell decomposition and data sorting method. Comput. Phys. Commun., 161(1):27–35, Aug 2004.
 Tim N. Heinz and Philippe H. Hünenberger. A fast pairlist-construction algorithm for molecular simulations under periodic boundary conditions. J. Comput. Chem., 25(12):1474–1486, Sep 2004.
 Pedro Gonnet. A simple algorithm to accelerate the computation of non-bonded interactions in cell-based molecular dynamics simulations. J. Comput. Chem., 28(2):570–573, Jan 2007.
 Peter Eastman, Jason Swails, John D. Chodera, Robert T. McGibbon, Yutong Zhao, Kyle A. Beauchamp, Lee-Ping Wang, Andrew C. Simmonett, Matthew P. Harrigan, Chaya D. Stern, Rafal P. Wiewiora, Bernard R. Brooks, and Vijay S. Pande. Openmm 7: Rapid development of high performance algorithms for molecular dynamics. PLOS Computational Biology, 13(7):1–17, 07 2017.
 B. R. Brooks, Iii C. L. Brooks, A. D. MacKerell, Jr., L. Nilsson, R. J. Petrella, B. Roux, Y. Won, G. Archontis, C. Bartels, S. Boresch, A. Caflisch, L. Caves, Q. Cui, A. R. Dinner, M. Feig, S. Fischer, J. Gao, M. Hodoscek, W. Im, K. Kuczera, T. Lazaridis, J. Ma, V. Ovchinnikov, E. Paci, R. W. Pastor, C. B. Post, J. Z. Pu, M. Schaefer, B. Tidor, R. M. Venable, H. L. Woodcock, X. Wu, W. Yang, D. M. York, and M. Karplus. CHARMM: The Biomolecular Simulation Program. J. Comput. Chem., 30(10):1545–1614, Jul 2009.
 D. A. Case, D. S. Cerutti, T. E. Cheatham, T. A. Darden, R. E. Duke, T. J. Giese, H. Gohlke, A. W. Goetz, D. Greene, N. Homeyer, S. Izadi, A. Kovalenko, T. S. Lee, S. LeGrand, P. Li, C. Lin, J. Liu, T. Luchko, R. Luo, D. Mermelstein, K. M. Merz, G. Monard, H. Nguyen, I. Omelyan, A. Onufriev, F. Pan, R. Qi, D. R. Roe, A. Roitberg, C. Sagui, C. L. Simmerling, W. M. Botello-Smith, J. Swails, R. C. Walker, J. Wang, R. M. Wolf, X. Wu, L. Xiao, D. M. York, and P. A. Kollman. Amber16 and ambertools17. Software, 2017. http://ambermd.org/.
 Mark James Abraham, Teemu Murtola, Roland Schulz, Szilárd Páll, Jeremy C. Smith, Berk Hess, and Erik Lindahl. GROMACS: High performance molecular simulations through multi-level parallelism from laptops to supercomputers. SoftwareX, 1-2:19–25, Sep 2015.
 James C. Phillips, Rosemary Braun, Wei Wang, James Gumbart, Emad Tajkhorshid, Elizabeth Villa, Christophe Chipot, Robert D. Skeel, Laxmikant Kalé, and Klaus Schulten. Scalable molecular dynamics with NAMD. J. Comput. Chem., 26(16):1781–1802, Dec 2005.
 Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes Filho. Lua—an extensible extension language. Software: Practice and Experience, 26(6):635–652, 1996.
 ThePhD. sol2: a c++ - lua api wrapper. Software, version 2.17.5, June 2017. https://github.com/ThePhD/sol2.
 Mike Pall. Luajit, a Just-In-Time Compiler (JIT) for the Lua programming language. Software, version 2.0.5, May 2017. http://luajit.org/.
 Joannis Apostolakis, Philippe Ferrara, and Amedeo Caflisch. Calculation of conformational transitions and barriers in solvated systems: Application to the alanine dipeptide in water. J. Chem. Phys., 110(4):2099–2108, Jan 1999.
 Hon M. Chun, Carlos E. Padilla, Donovan N. Chin, Masakatsu Watanabe, Valeri I. Karlov, Howard E. Alper, Keto Soosaar, Kim B. Blair, Oren M. Becker, Leo S. D. Caves, Robert Nagle, David N. Haney, and Barry L. Farmer. MBO(N)D: A multibody method for long-time molecular dynamics simulations. J. Comput. Chem., 21(3):159–184, Feb 2000.
 William C. Swope, Jed W. Pitera, Frank Suits, Mike Pitman, Maria Eleftheriou, Blake G. Fitch, Robert S. Germain, Aleksandr Rayshubski, T. J. C. Ward, Yuriy Zhestkov, and Ruhong Zhou. Describing Protein Folding Kinetics by Molecular Dynamics Simulations. 2. Example Applications to Alanine Dipeptide and a -Hairpin Peptide. J. Phys. Chem. B, 108(21):6582–6594, May 2004.
 Weiqing Ren, Eric Vanden-Eijnden, Paul Maragakis, and Weinan E. Transition pathways in complex systems: Application of the finite-temperature string method to the alanine dipeptide. J. Chem. Phys., 123(13):134109, Oct 2005.
 Hyunbum Jang and Thomas B. Woolf. Multiple pathways in conformational transitions of the alanine dipeptide: An application of dynamic importance sampling. J. Comput. Chem., 27(11):1136–1141, Aug 2006.
 Birgit Strodel and David J. Wales. Free energy surfaces from an extended harmonic superposition approach and kinetics for alanine dipeptide. Chem. Phys. Lett., 466(4):105–115, Dec 2008.
 Peter Thomas Vedell and Zhijun Wu. The solution of the boundary-value problems for the simulation of transition of protein conformation. International Journal of Numerical Analysis and Modeling, 10(4):920–942, 2013.
 Camilo Velez-Vega, Ernesto E. Borrero, and Fernando A. Escobedo. Kinetics and reaction coordinate for the isomerization of alanine dipeptide by a forward flux sampling protocol. J. Chem. Phys., 130(22):225101, Jun 2009.
 G. N. Ramachandran, C. Ramakrishnan, and V. Sasisekharan. Stereochemistry of polypeptide chain configurations. J. Mol. Biol., 7(1):95–99, Jul 1963.
 A. D. MacKerell, D. Bashford, M. Bellott, R. L. Dunbrack, J. D. Evanseck, M. J. Field, S. Fischer, J. Gao, H. Guo, S. Ha, D. Joseph-McCarthy, L. Kuchnir, K. Kuczera, F. T. K. Lau, C. Mattos, S. Michnick, T. Ngo, D. T. Nguyen, B. Prodhom, W. E. Reiher, B. Roux, M. Schlenkrich, J. C. Smith, R. Stote, J. Straub, M. Watanabe, J. Wiórkiewicz-Kuczera, D. Yin, and M. Karplus. All-atom empirical potential for molecular modeling and dynamics studies of proteins. The Journal of Physical Chemistry B, 102(18):3586–3616, 1998. PMID: 24889800.
 Alexander D. Mackerell, Michael Feig, and Charles L. Brooks. Extending the treatment of backbone energetics in protein force fields: Limitations of gas-phase quantum mechanics in reproducing protein conformational distributions in molecular dynamics simulations. Journal of Computational Chemistry, 25(11):1400–1415, 2004.
 Murray Rosenblatt. Remarks on Some Nonparametric Estimates of a Density Function. Annals of Mathematical Statistics, 27(3):832–837, Sep 1956.
 Emanuel Parzen. On Estimation of a Probability Density Function and Mode. Annals of Mathematical Statistics, 33(3):1065–1076, Sep 1962.
 John J. Siekierka, Shirley H. Y. Hung, Martin Poe, C. Shirley Lin, and Nolan H. Sigal. A cytosolic binding protein for the immunosuppressant FK506 has peptidyl-prolyl isomerase activity but is distinct from cyclophilin. Nature, 341(6244):755, Oct 1989.
 T. Wang, PK Donahoe, and AS Zervos. Specific interaction of type I receptors of the TGF-beta family with the immunophilin FKBP-12. Science, 265(5172):674–676, Jul 1994.
 Peter Burkhard, Paul Taylor, and Malcolm D. Walkinshaw. X-ray structures of small ligand-FKBP complexes provide an estimate for hydrophobic interaction energies1 1Edited by R. Huber. J. Mol. Biol., 295(4):953–962, Jan 2000.
 Danzhi Huang and Amedeo Caflisch. The Free Energy Landscape of Small Molecule Unbinding. PLoS Comput. Biol., 7(2):e1002002, Feb 2011.
 Danzhi Huang and Amedeo Caflisch. Small Molecule Binding to Proteins: Affinity and Binding/Unbinding Dynamics from Atomistic Simulations. ChemMedChem, 6(9):1578–1580, Sep 2011.
 Min Xu, Amedeo Caflisch, and Peter Hamm. Protein Structural Memory Influences Ligand Binding Mode(s) and Unbinding Rates. J. Chem. Theory Comput., 12(3):1393–1399, Mar 2016.
 G. Smith, A. L. Bertone, C. Kaeding, E. J. Simmons, and S. Apostoles. Anti-inflammatory effects of topically applied dimethyl sulfoxide gel on endotoxin-induced synovitis in horses. Am. J. Vet. Res., 59(9):1149–1152, Sep 1998.
 Z. Malik, G. Kostenich, L. Roitman, B. Ehrenberg, and A. Orenstein. Topical application of 5-aminolevulinic acid, DMSO and EDTA: protoporphyrin IX accumulation in skin and tumours of mice. J. Photochem. Photobiol., B, 28(3):213–218, Jun 1995.
 Alexey Onufriev, Donald Bashford, and David A. Case. Exploring protein native states and large-scale conformational changes with a modified generalized born model. Proteins: Structure, Function, and Bioinformatics, 55(2):383–394, 2004.
 Junmei Wang, Romain M. Wolf, James W. Caldwell, Peter A. Kollman, and David A. Case. Development and testing of a general amber force field. J. Comput. Chem., 25(9):1157–1174, Jul 2004.
 James A. Maier, Carmenza Martinez, Koushik Kasavajhala, Lauren Wickstrom, Kevin E. Hauser, and Carlos Simmerling. ff14SB: Improving the Accuracy of Protein Side Chain and Backbone Parameters from ff99SB. J. Chem. Theory Comput., 11(8):3696–3713, Aug 2015.