ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/tengDissertation/Methodology.tex
Revision: 2804
Committed: Tue Jun 6 19:47:27 2006 UTC (18 years, 1 month ago) by tim
Content type: application/x-tex
File size: 53077 byte(s)
Log Message:
add langevin paper into chapter 2

File Contents

# User Rev Content
1 tim 2685 \chapter{\label{chapt:methodology}METHODOLOGY}
2    
3     \section{\label{methodSection:rigidBodyIntegrators}Integrators for Rigid Body Motion in Molecular Dynamics}
4    
5 tim 2729 In order to mimic the experiments, which are usually performed under
6     constant temperature and/or pressure, extended Hamiltonian system
7 tim 2739 methods have been developed to generate statistical ensembles, such
8 tim 2729 as canonical ensemble and isobaric-isothermal ensemble \textit{etc}.
9     In addition to the standard ensemble, specific ensembles have been
10     developed to account for the anisotropy between the lateral and
11     normal directions of membranes. The $NPAT$ ensemble, in which the
12     normal pressure and the lateral surface area of the membrane are
13     kept constant, and the $NP\gamma T$ ensemble, in which the normal
14     pressure and the lateral surface tension are kept constant were
15     proposed to address this issue.
16 tim 2685
17 tim 2729 Integration schemes for rotational motion of the rigid molecules in
18     microcanonical ensemble have been extensively studied in the last
19     two decades. Matubayasi and Nakahara developed a time-reversible
20     integrator for rigid bodies in quaternion representation. Although
21     it is not symplectic, this integrator still demonstrates a better
22     long-time energy conservation than traditional methods because of
23     the time-reversible nature. Extending Trotter-Suzuki to general
24     system with a flat phase space, Miller and his colleagues devised an
25     novel symplectic, time-reversible and volume-preserving integrator
26     in quaternion representation, which was shown to be superior to the
27     time-reversible integrator of Matubayasi and Nakahara. However, all
28     of the integrators in quaternion representation suffer from the
29     computational penalty of constructing a rotation matrix from
30     quaternions to evolve coordinates and velocities at every time step.
31     An alternative integration scheme utilizing rotation matrix directly
32     proposed by Dullweber, Leimkuhler and McLachlan (DLM) also preserved
33     the same structural properties of the Hamiltonian flow. In this
34     section, the integration scheme of DLM method will be reviewed and
35     extended to other ensembles.
36 tim 2685
37 tim 2729 \subsection{\label{methodSection:DLM}Integrating the Equations of Motion: the
38     DLM method}
39    
40     The DLM method uses a Trotter factorization of the orientational
41     propagator. This has three effects:
42     \begin{enumerate}
43     \item the integrator is area-preserving in phase space (i.e. it is
44     {\it symplectic}),
45     \item the integrator is time-{\it reversible}, making it suitable for Hybrid
46     Monte Carlo applications, and
47     \item the error for a single time step is of order $\mathcal{O}\left(h^4\right)$
48     for timesteps of length $h$.
49     \end{enumerate}
50    
51     The integration of the equations of motion is carried out in a
52     velocity-Verlet style 2-part algorithm, where $h= \delta t$:
53    
54     {\tt moveA:}
55     \begin{align*}
56     {\bf v}\left(t + h / 2\right) &\leftarrow {\bf v}(t)
57     + \frac{h}{2} \left( {\bf f}(t) / m \right), \\
58     %
59     {\bf r}(t + h) &\leftarrow {\bf r}(t)
60     + h {\bf v}\left(t + h / 2 \right), \\
61     %
62     {\bf j}\left(t + h / 2 \right) &\leftarrow {\bf j}(t)
63     + \frac{h}{2} {\bf \tau}^b(t), \\
64     %
65     \mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left( h {\bf j}
66     (t + h / 2) \cdot \overleftrightarrow{\mathsf{I}}^{-1} \right).
67     \end{align*}
68    
69     In this context, the $\mathrm{rotate}$ function is the reversible
70     product of the three body-fixed rotations,
71     \begin{equation}
72     \mathrm{rotate}({\bf a}) = \mathsf{G}_x(a_x / 2) \cdot
73     \mathsf{G}_y(a_y / 2) \cdot \mathsf{G}_z(a_z) \cdot \mathsf{G}_y(a_y
74     / 2) \cdot \mathsf{G}_x(a_x /2),
75     \end{equation}
76     where each rotational propagator, $\mathsf{G}_\alpha(\theta)$,
77     rotates both the rotation matrix ($\mathsf{A}$) and the body-fixed
78     angular momentum (${\bf j}$) by an angle $\theta$ around body-fixed
79     axis $\alpha$,
80     \begin{equation}
81     \mathsf{G}_\alpha( \theta ) = \left\{
82     \begin{array}{lcl}
83     \mathsf{A}(t) & \leftarrow & \mathsf{A}(0) \cdot \mathsf{R}_\alpha(\theta)^T, \\
84     {\bf j}(t) & \leftarrow & \mathsf{R}_\alpha(\theta) \cdot {\bf
85     j}(0).
86     \end{array}
87     \right.
88     \end{equation}
89     $\mathsf{R}_\alpha$ is a quadratic approximation to the single-axis
90     rotation matrix. For example, in the small-angle limit, the
91     rotation matrix around the body-fixed x-axis can be approximated as
92     \begin{equation}
93     \mathsf{R}_x(\theta) \approx \left(
94     \begin{array}{ccc}
95     1 & 0 & 0 \\
96     0 & \frac{1-\theta^2 / 4}{1 + \theta^2 / 4} & -\frac{\theta}{1+
97     \theta^2 / 4} \\
98     0 & \frac{\theta}{1+ \theta^2 / 4} & \frac{1-\theta^2 / 4}{1 +
99     \theta^2 / 4}
100     \end{array}
101     \right).
102     \end{equation}
103     All other rotations follow in a straightforward manner.
104    
105     After the first part of the propagation, the forces and body-fixed
106     torques are calculated at the new positions and orientations
107    
108     {\tt doForces:}
109     \begin{align*}
110     {\bf f}(t + h) &\leftarrow
111     - \left(\frac{\partial V}{\partial {\bf r}}\right)_{{\bf r}(t + h)}, \\
112     %
113     {\bf \tau}^{s}(t + h) &\leftarrow {\bf u}(t + h)
114     \times \frac{\partial V}{\partial {\bf u}}, \\
115     %
116     {\bf \tau}^{b}(t + h) &\leftarrow \mathsf{A}(t + h)
117     \cdot {\bf \tau}^s(t + h).
118     \end{align*}
119    
120     {\sc oopse} automatically updates ${\bf u}$ when the rotation matrix
121     $\mathsf{A}$ is calculated in {\tt moveA}. Once the forces and
122     torques have been obtained at the new time step, the velocities can
123     be advanced to the same time value.
124    
125     {\tt moveB:}
126     \begin{align*}
127     {\bf v}\left(t + h \right) &\leftarrow {\bf v}\left(t + h / 2
128     \right)
129     + \frac{h}{2} \left( {\bf f}(t + h) / m \right), \\
130     %
131     {\bf j}\left(t + h \right) &\leftarrow {\bf j}\left(t + h / 2
132     \right)
133     + \frac{h}{2} {\bf \tau}^b(t + h) .
134     \end{align*}
135    
136     The matrix rotations used in the DLM method end up being more costly
137     computationally than the simpler arithmetic quaternion propagation.
138     With the same time step, a 1000-molecule water simulation shows an
139     average 7\% increase in computation time using the DLM method in
140     place of quaternions. This cost is more than justified when
141     comparing the energy conservation of the two methods as illustrated
142     in Fig.~\ref{timestep}.
143    
144     \begin{figure}
145     \centering
146     \includegraphics[width=\linewidth]{timeStep.eps}
147     \caption[Energy conservation for quaternion versus DLM
148     dynamics]{Energy conservation using quaternion based integration
149     versus the method proposed by Dullweber \emph{et al.} with
150     increasing time step. For each time step, the dotted line is total
151     energy using the DLM integrator, and the solid line comes from the
152     quaternion integrator. The larger time step plots are shifted up
153 tim 2801 from the true energy baseline for clarity.}
154     \label{methodFig:timestep}
155 tim 2729 \end{figure}
156    
157 tim 2801 In Fig.~\ref{methodFig:timestep}, the resulting energy drift at
158     various time steps for both the DLM and quaternion integration
159     schemes is compared. All of the 1000 molecule water simulations
160     started with the same configuration, and the only difference was the
161     method for handling rotational motion. At time steps of 0.1 and 0.5
162     fs, both methods for propagating molecule rotation conserve energy
163     fairly well, with the quaternion method showing a slight energy
164     drift over time in the 0.5 fs time step simulation. At time steps of
165     1 and 2 fs, the energy conservation benefits of the DLM method are
166     clearly demonstrated. Thus, while maintaining the same degree of
167     energy conservation, one can take considerably longer time steps,
168     leading to an overall reduction in computation time.
169 tim 2729
170     \subsection{\label{methodSection:NVT}Nos\'{e}-Hoover Thermostatting}
171    
172 tim 2801 The Nos\'e-Hoover equations of motion are given by\cite{Hoover1985}
173 tim 2729 \begin{eqnarray}
174     \dot{{\bf r}} & = & {\bf v}, \\
175     \dot{{\bf v}} & = & \frac{{\bf f}}{m} - \chi {\bf v} ,\\
176     \dot{\mathsf{A}} & = & \mathsf{A} \cdot
177     \mbox{ skew}\left(\overleftrightarrow{\mathsf{I}}^{-1} \cdot {\bf j}\right), \\
178     \dot{{\bf j}} & = & {\bf j} \times \left(
179     \overleftrightarrow{\mathsf{I}}^{-1} \cdot {\bf j} \right) - \mbox{
180     rot}\left(\mathsf{A}^{T} \cdot \frac{\partial V}{\partial
181     \mathsf{A}} \right) - \chi {\bf j}. \label{eq:nosehoovereom}
182     \end{eqnarray}
183    
184     $\chi$ is an ``extra'' variable included in the extended system, and
185     it is propagated using the first order equation of motion
186     \begin{equation}
187     \dot{\chi} = \frac{1}{\tau_{T}^2} \left(
188     \frac{T}{T_{\mathrm{target}}} - 1 \right). \label{eq:nosehooverext}
189     \end{equation}
190    
191     The instantaneous temperature $T$ is proportional to the total
192     kinetic energy (both translational and orientational) and is given
193     by
194     \begin{equation}
195     T = \frac{2 K}{f k_B}
196     \end{equation}
197     Here, $f$ is the total number of degrees of freedom in the system,
198     \begin{equation}
199     f = 3 N + 3 N_{\mathrm{orient}} - N_{\mathrm{constraints}},
200     \end{equation}
201     and $K$ is the total kinetic energy,
202     \begin{equation}
203     K = \sum_{i=1}^{N} \frac{1}{2} m_i {\bf v}_i^T \cdot {\bf v}_i +
204     \sum_{i=1}^{N_{\mathrm{orient}}} \frac{1}{2} {\bf j}_i^T \cdot
205     \overleftrightarrow{\mathsf{I}}_i^{-1} \cdot {\bf j}_i.
206     \end{equation}
207    
208     In eq.(\ref{eq:nosehooverext}), $\tau_T$ is the time constant for
209     relaxation of the temperature to the target value. To set values
210     for $\tau_T$ or $T_{\mathrm{target}}$ in a simulation, one would use
211     the {\tt tauThermostat} and {\tt targetTemperature} keywords in the
212     {\tt .bass} file. The units for {\tt tauThermostat} are fs, and the
213     units for the {\tt targetTemperature} are degrees K. The
214     integration of the equations of motion is carried out in a
215     velocity-Verlet style 2 part algorithm:
216    
217     {\tt moveA:}
218     \begin{align*}
219     T(t) &\leftarrow \left\{{\bf v}(t)\right\}, \left\{{\bf j}(t)\right\} ,\\
220     %
221     {\bf v}\left(t + h / 2\right) &\leftarrow {\bf v}(t)
222     + \frac{h}{2} \left( \frac{{\bf f}(t)}{m} - {\bf v}(t)
223     \chi(t)\right), \\
224     %
225     {\bf r}(t + h) &\leftarrow {\bf r}(t)
226     + h {\bf v}\left(t + h / 2 \right) ,\\
227     %
228     {\bf j}\left(t + h / 2 \right) &\leftarrow {\bf j}(t)
229     + \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t)
230     \chi(t) \right) ,\\
231     %
232     \mathsf{A}(t + h) &\leftarrow \mathrm{rotate}
233     \left(h * {\bf j}(t + h / 2)
234     \overleftrightarrow{\mathsf{I}}^{-1} \right) ,\\
235     %
236     \chi\left(t + h / 2 \right) &\leftarrow \chi(t)
237     + \frac{h}{2 \tau_T^2} \left( \frac{T(t)}
238     {T_{\mathrm{target}}} - 1 \right) .
239     \end{align*}
240    
241     Here $\mathrm{rotate}(h * {\bf j}
242     \overleftrightarrow{\mathsf{I}}^{-1})$ is the same symplectic
243     Trotter factorization of the three rotation operations that was
244     discussed in the section on the DLM integrator. Note that this
245     operation modifies both the rotation matrix $\mathsf{A}$ and the
246     angular momentum ${\bf j}$. {\tt moveA} propagates velocities by a
247     half time step, and positional degrees of freedom by a full time
248     step. The new positions (and orientations) are then used to
249     calculate a new set of forces and torques in exactly the same way
250     they are calculated in the {\tt doForces} portion of the DLM
251     integrator.
252    
253     Once the forces and torques have been obtained at the new time step,
254     the temperature, velocities, and the extended system variable can be
255     advanced to the same time value.
256    
257     {\tt moveB:}
258     \begin{align*}
259     T(t + h) &\leftarrow \left\{{\bf v}(t + h)\right\},
260     \left\{{\bf j}(t + h)\right\}, \\
261     %
262     \chi\left(t + h \right) &\leftarrow \chi\left(t + h /
263     2 \right) + \frac{h}{2 \tau_T^2} \left( \frac{T(t+h)}
264     {T_{\mathrm{target}}} - 1 \right), \\
265     %
266     {\bf v}\left(t + h \right) &\leftarrow {\bf v}\left(t
267     + h / 2 \right) + \frac{h}{2} \left(
268     \frac{{\bf f}(t + h)}{m} - {\bf v}(t + h)
269     \chi(t h)\right) ,\\
270     %
271     {\bf j}\left(t + h \right) &\leftarrow {\bf j}\left(t
272     + h / 2 \right) + \frac{h}{2}
273     \left( {\bf \tau}^b(t + h) - {\bf j}(t + h)
274     \chi(t + h) \right) .
275     \end{align*}
276    
277     Since ${\bf v}(t + h)$ and ${\bf j}(t + h)$ are required to
278     caclculate $T(t + h)$ as well as $\chi(t + h)$, they indirectly
279     depend on their own values at time $t + h$. {\tt moveB} is
280     therefore done in an iterative fashion until $\chi(t + h)$ becomes
281     self-consistent. The relative tolerance for the self-consistency
282     check defaults to a value of $\mbox{10}^{-6}$, but {\sc oopse} will
283     terminate the iteration after 4 loops even if the consistency check
284     has not been satisfied.
285    
286     The Nos\'e-Hoover algorithm is known to conserve a Hamiltonian for
287     the extended system that is, to within a constant, identical to the
288 tim 2801 Helmholtz free energy,\cite{Melchionna1993}
289 tim 2729 \begin{equation}
290     H_{\mathrm{NVT}} = V + K + f k_B T_{\mathrm{target}} \left(
291     \frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime)
292     dt^\prime \right).
293     \end{equation}
294     Poor choices of $h$ or $\tau_T$ can result in non-conservation of
295     $H_{\mathrm{NVT}}$, so the conserved quantity is maintained in the
296     last column of the {\tt .stat} file to allow checks on the quality
297     of the integration.
298    
299     \subsection{\label{methodSection:NPTi}Constant-pressure integration with
300     isotropic box deformations (NPTi)}
301    
302     To carry out isobaric-isothermal ensemble calculations {\sc oopse}
303     implements the Melchionna modifications to the
304 tim 2801 Nos\'e-Hoover-Andersen equations of motion,\cite{Melchionna1993}
305 tim 2729
306     \begin{eqnarray}
307     \dot{{\bf r}} & = & {\bf v} + \eta \left( {\bf r} - {\bf R}_0 \right), \\
308     \dot{{\bf v}} & = & \frac{{\bf f}}{m} - (\eta + \chi) {\bf v}, \\
309     \dot{\mathsf{A}} & = & \mathsf{A} \cdot
310     \mbox{ skew}\left(\overleftrightarrow{I}^{-1} \cdot {\bf j}\right),\\
311     \dot{{\bf j}} & = & {\bf j} \times \left(
312     \overleftrightarrow{I}^{-1} \cdot {\bf j} \right) - \mbox{
313     rot}\left(\mathsf{A}^{T} \cdot \frac{\partial
314     V}{\partial \mathsf{A}} \right) - \chi {\bf j}, \\
315     \dot{\chi} & = & \frac{1}{\tau_{T}^2} \left(
316     \frac{T}{T_{\mathrm{target}}} - 1 \right) ,\\
317     \dot{\eta} & = & \frac{1}{\tau_{B}^2 f k_B T_{\mathrm{target}}} V
318     \left( P -
319     P_{\mathrm{target}} \right), \\
320     \dot{\mathcal{V}} & = & 3 \mathcal{V} \eta . \label{eq:melchionna1}
321     \end{eqnarray}
322    
323     $\chi$ and $\eta$ are the ``extra'' degrees of freedom in the
324     extended system. $\chi$ is a thermostat, and it has the same
325     function as it does in the Nos\'e-Hoover NVT integrator. $\eta$ is
326     a barostat which controls changes to the volume of the simulation
327     box. ${\bf R}_0$ is the location of the center of mass for the
328     entire system, and $\mathcal{V}$ is the volume of the simulation
329     box. At any time, the volume can be calculated from the determinant
330     of the matrix which describes the box shape:
331     \begin{equation}
332     \mathcal{V} = \det(\mathsf{H}).
333     \end{equation}
334    
335     The NPTi integrator requires an instantaneous pressure. This
336     quantity is calculated via the pressure tensor,
337     \begin{equation}
338     \overleftrightarrow{\mathsf{P}}(t) = \frac{1}{\mathcal{V}(t)} \left(
339     \sum_{i=1}^{N} m_i {\bf v}_i(t) \otimes {\bf v}_i(t) \right) +
340     \overleftrightarrow{\mathsf{W}}(t).
341     \end{equation}
342     The kinetic contribution to the pressure tensor utilizes the {\it
343     outer} product of the velocities denoted by the $\otimes$ symbol.
344     The stress tensor is calculated from another outer product of the
345     inter-atomic separation vectors (${\bf r}_{ij} = {\bf r}_j - {\bf
346     r}_i$) with the forces between the same two atoms,
347     \begin{equation}
348     \overleftrightarrow{\mathsf{W}}(t) = \sum_{i} \sum_{j>i} {\bf
349     r}_{ij}(t) \otimes {\bf f}_{ij}(t).
350     \end{equation}
351     The instantaneous pressure is then simply obtained from the trace of
352     the Pressure tensor,
353     \begin{equation}
354     P(t) = \frac{1}{3} \mathrm{Tr} \left(
355     \overleftrightarrow{\mathsf{P}}(t). \right)
356     \end{equation}
357    
358     In eq.(\ref{eq:melchionna1}), $\tau_B$ is the time constant for
359     relaxation of the pressure to the target value. To set values for
360     $\tau_B$ or $P_{\mathrm{target}}$ in a simulation, one would use the
361     {\tt tauBarostat} and {\tt targetPressure} keywords in the {\tt
362     .bass} file. The units for {\tt tauBarostat} are fs, and the units
363     for the {\tt targetPressure} are atmospheres. Like in the NVT
364     integrator, the integration of the equations of motion is carried
365     out in a velocity-Verlet style 2 part algorithm:
366    
367     {\tt moveA:}
368     \begin{align*}
369     T(t) &\leftarrow \left\{{\bf v}(t)\right\}, \left\{{\bf j}(t)\right\} ,\\
370     %
371     P(t) &\leftarrow \left\{{\bf r}(t)\right\}, \left\{{\bf v}(t)\right\} ,\\
372     %
373     {\bf v}\left(t + h / 2\right) &\leftarrow {\bf v}(t)
374     + \frac{h}{2} \left( \frac{{\bf f}(t)}{m} - {\bf v}(t)
375     \left(\chi(t) + \eta(t) \right) \right), \\
376     %
377     {\bf j}\left(t + h / 2 \right) &\leftarrow {\bf j}(t)
378     + \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t)
379     \chi(t) \right), \\
380     %
381     \mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left(h *
382     {\bf j}(t + h / 2) \overleftrightarrow{\mathsf{I}}^{-1}
383     \right) ,\\
384     %
385     \chi\left(t + h / 2 \right) &\leftarrow \chi(t) +
386     \frac{h}{2 \tau_T^2} \left( \frac{T(t)}{T_{\mathrm{target}}} - 1
387     \right) ,\\
388     %
389     \eta(t + h / 2) &\leftarrow \eta(t) + \frac{h
390     \mathcal{V}(t)}{2 N k_B T(t) \tau_B^2} \left( P(t)
391     - P_{\mathrm{target}} \right), \\
392     %
393     {\bf r}(t + h) &\leftarrow {\bf r}(t) + h
394     \left\{ {\bf v}\left(t + h / 2 \right)
395     + \eta(t + h / 2)\left[ {\bf r}(t + h)
396     - {\bf R}_0 \right] \right\} ,\\
397     %
398     \mathsf{H}(t + h) &\leftarrow e^{-h \eta(t + h / 2)}
399     \mathsf{H}(t).
400     \end{align*}
401    
402     Most of these equations are identical to their counterparts in the
403     NVT integrator, but the propagation of positions to time $t + h$
404     depends on the positions at the same time. {\sc oopse} carries out
405     this step iteratively (with a limit of 5 passes through the
406     iterative loop). Also, the simulation box $\mathsf{H}$ is scaled
407     uniformly for one full time step by an exponential factor that
408     depends on the value of $\eta$ at time $t + h / 2$. Reshaping the
409     box uniformly also scales the volume of the box by
410     \begin{equation}
411     \mathcal{V}(t + h) \leftarrow e^{ - 3 h \eta(t + h /2)}.
412     \mathcal{V}(t)
413     \end{equation}
414    
415     The {\tt doForces} step for the NPTi integrator is exactly the same
416     as in both the DLM and NVT integrators. Once the forces and torques
417     have been obtained at the new time step, the velocities can be
418     advanced to the same time value.
419    
420     {\tt moveB:}
421     \begin{align*}
422     T(t + h) &\leftarrow \left\{{\bf v}(t + h)\right\},
423     \left\{{\bf j}(t + h)\right\} ,\\
424     %
425     P(t + h) &\leftarrow \left\{{\bf r}(t + h)\right\},
426     \left\{{\bf v}(t + h)\right\}, \\
427     %
428     \chi\left(t + h \right) &\leftarrow \chi\left(t + h /
429     2 \right) + \frac{h}{2 \tau_T^2} \left( \frac{T(t+h)}
430     {T_{\mathrm{target}}} - 1 \right), \\
431     %
432     \eta(t + h) &\leftarrow \eta(t + h / 2) +
433     \frac{h \mathcal{V}(t + h)}{2 N k_B T(t + h)
434     \tau_B^2} \left( P(t + h) - P_{\mathrm{target}} \right), \\
435     %
436     {\bf v}\left(t + h \right) &\leftarrow {\bf v}\left(t
437     + h / 2 \right) + \frac{h}{2} \left(
438     \frac{{\bf f}(t + h)}{m} - {\bf v}(t + h)
439     (\chi(t + h) + \eta(t + h)) \right) ,\\
440     %
441     {\bf j}\left(t + h \right) &\leftarrow {\bf j}\left(t
442     + h / 2 \right) + \frac{h}{2} \left( {\bf
443     \tau}^b(t + h) - {\bf j}(t + h)
444     \chi(t + h) \right) .
445     \end{align*}
446    
447     Once again, since ${\bf v}(t + h)$ and ${\bf j}(t + h)$ are required
448     to caclculate $T(t + h)$, $P(t + h)$, $\chi(t + h)$, and $\eta(t +
449     h)$, they indirectly depend on their own values at time $t + h$.
450     {\tt moveB} is therefore done in an iterative fashion until $\chi(t
451     + h)$ and $\eta(t + h)$ become self-consistent. The relative
452     tolerance for the self-consistency check defaults to a value of
453     $\mbox{10}^{-6}$, but {\sc oopse} will terminate the iteration after
454     4 loops even if the consistency check has not been satisfied.
455    
456     The Melchionna modification of the Nos\'e-Hoover-Andersen algorithm
457     is known to conserve a Hamiltonian for the extended system that is,
458     to within a constant, identical to the Gibbs free energy,
459     \begin{equation}
460     H_{\mathrm{NPTi}} = V + K + f k_B T_{\mathrm{target}} \left(
461     \frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime)
462     dt^\prime \right) + P_{\mathrm{target}} \mathcal{V}(t).
463     \end{equation}
464     Poor choices of $\delta t$, $\tau_T$, or $\tau_B$ can result in
465     non-conservation of $H_{\mathrm{NPTi}}$, so the conserved quantity
466     is maintained in the last column of the {\tt .stat} file to allow
467     checks on the quality of the integration. It is also known that
468     this algorithm samples the equilibrium distribution for the enthalpy
469     (including contributions for the thermostat and barostat),
470     \begin{equation}
471     H_{\mathrm{NPTi}} = V + K + \frac{f k_B T_{\mathrm{target}}}{2}
472     \left( \chi^2 \tau_T^2 + \eta^2 \tau_B^2 \right) +
473     P_{\mathrm{target}} \mathcal{V}(t).
474     \end{equation}
475    
476     Bond constraints are applied at the end of both the {\tt moveA} and
477     {\tt moveB} portions of the algorithm. Details on the constraint
478     algorithms are given in section \ref{oopseSec:rattle}.
479    
480     \subsection{\label{methodSection:NPTf}Constant-pressure integration with a
481     flexible box (NPTf)}
482    
483     There is a relatively simple generalization of the
484     Nos\'e-Hoover-Andersen method to include changes in the simulation
485     box {\it shape} as well as in the volume of the box. This method
486     utilizes the full $3 \times 3$ pressure tensor and introduces a
487     tensor of extended variables ($\overleftrightarrow{\eta}$) to
488     control changes to the box shape. The equations of motion for this
489     method are
490     \begin{eqnarray}
491     \dot{{\bf r}} & = & {\bf v} + \overleftrightarrow{\eta} \cdot \left( {\bf r} - {\bf R}_0 \right), \\
492     \dot{{\bf v}} & = & \frac{{\bf f}}{m} - (\overleftrightarrow{\eta} +
493     \chi \cdot \mathsf{1}) {\bf v}, \\
494     \dot{\mathsf{A}} & = & \mathsf{A} \cdot
495     \mbox{ skew}\left(\overleftrightarrow{I}^{-1} \cdot {\bf j}\right) ,\\
496     \dot{{\bf j}} & = & {\bf j} \times \left(
497     \overleftrightarrow{I}^{-1} \cdot {\bf j} \right) - \mbox{
498     rot}\left(\mathsf{A}^{T} \cdot \frac{\partial
499     V}{\partial \mathsf{A}} \right) - \chi {\bf j} ,\\
500     \dot{\chi} & = & \frac{1}{\tau_{T}^2} \left(
501     \frac{T}{T_{\mathrm{target}}} - 1 \right) ,\\
502     \dot{\overleftrightarrow{\eta}} & = & \frac{1}{\tau_{B}^2 f k_B
503     T_{\mathrm{target}}} V \left( \overleftrightarrow{\mathsf{P}} - P_{\mathrm{target}}\mathsf{1} \right) ,\\
504     \dot{\mathsf{H}} & = & \overleftrightarrow{\eta} \cdot \mathsf{H} .
505     \label{eq:melchionna2}
506     \end{eqnarray}
507    
508     Here, $\mathsf{1}$ is the unit matrix and
509     $\overleftrightarrow{\mathsf{P}}$ is the pressure tensor. Again,
510     the volume, $\mathcal{V} = \det \mathsf{H}$.
511    
512     The propagation of the equations of motion is nearly identical to
513     the NPTi integration:
514    
515     {\tt moveA:}
516     \begin{align*}
517     T(t) &\leftarrow \left\{{\bf v}(t)\right\}, \left\{{\bf j}(t)\right\} ,\\
518     %
519     \overleftrightarrow{\mathsf{P}}(t) &\leftarrow \left\{{\bf
520     r}(t)\right\},
521     \left\{{\bf v}(t)\right\} ,\\
522     %
523     {\bf v}\left(t + h / 2\right) &\leftarrow {\bf v}(t)
524     + \frac{h}{2} \left( \frac{{\bf f}(t)}{m} -
525     \left(\chi(t)\mathsf{1} + \overleftrightarrow{\eta}(t) \right) \cdot
526     {\bf v}(t) \right), \\
527     %
528     {\bf j}\left(t + h / 2 \right) &\leftarrow {\bf j}(t)
529     + \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t)
530     \chi(t) \right), \\
531     %
532     \mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left(h *
533     {\bf j}(t + h / 2) \overleftrightarrow{\mathsf{I}}^{-1}
534     \right), \\
535     %
536     \chi\left(t + h / 2 \right) &\leftarrow \chi(t) +
537     \frac{h}{2 \tau_T^2} \left( \frac{T(t)}{T_{\mathrm{target}}}
538     - 1 \right), \\
539     %
540     \overleftrightarrow{\eta}(t + h / 2) &\leftarrow
541     \overleftrightarrow{\eta}(t) + \frac{h \mathcal{V}(t)}{2 N k_B
542     T(t) \tau_B^2} \left( \overleftrightarrow{\mathsf{P}}(t)
543     - P_{\mathrm{target}}\mathsf{1} \right), \\
544     %
545     {\bf r}(t + h) &\leftarrow {\bf r}(t) + h \left\{ {\bf v}
546     \left(t + h / 2 \right) + \overleftrightarrow{\eta}(t +
547     h / 2) \cdot \left[ {\bf r}(t + h)
548     - {\bf R}_0 \right] \right\}, \\
549     %
550     \mathsf{H}(t + h) &\leftarrow \mathsf{H}(t) \cdot e^{-h
551     \overleftrightarrow{\eta}(t + h / 2)} .
552     \end{align*}
553     {\sc oopse} uses a power series expansion truncated at second order
554     for the exponential operation which scales the simulation box.
555    
556     The {\tt moveB} portion of the algorithm is largely unchanged from
557     the NPTi integrator:
558    
559     {\tt moveB:}
560     \begin{align*}
561     T(t + h) &\leftarrow \left\{{\bf v}(t + h)\right\},
562     \left\{{\bf j}(t + h)\right\}, \\
563     %
564     \overleftrightarrow{\mathsf{P}}(t + h) &\leftarrow \left\{{\bf r}
565     (t + h)\right\}, \left\{{\bf v}(t
566     + h)\right\}, \left\{{\bf f}(t + h)\right\} ,\\
567     %
568     \chi\left(t + h \right) &\leftarrow \chi\left(t + h /
569     2 \right) + \frac{h}{2 \tau_T^2} \left( \frac{T(t+
570     h)}{T_{\mathrm{target}}} - 1 \right), \\
571     %
572     \overleftrightarrow{\eta}(t + h) &\leftarrow
573     \overleftrightarrow{\eta}(t + h / 2) +
574     \frac{h \mathcal{V}(t + h)}{2 N k_B T(t + h)
575     \tau_B^2} \left( \overleftrightarrow{P}(t + h)
576     - P_{\mathrm{target}}\mathsf{1} \right) ,\\
577     %
578     {\bf v}\left(t + h \right) &\leftarrow {\bf v}\left(t
579     + h / 2 \right) + \frac{h}{2} \left(
580     \frac{{\bf f}(t + h)}{m} -
581     (\chi(t + h)\mathsf{1} + \overleftrightarrow{\eta}(t
582     + h)) \right) \cdot {\bf v}(t + h), \\
583     %
584     {\bf j}\left(t + h \right) &\leftarrow {\bf j}\left(t
585     + h / 2 \right) + \frac{h}{2} \left( {\bf \tau}^b(t
586     + h) - {\bf j}(t + h) \chi(t + h) \right) .
587     \end{align*}
588    
589     The iterative schemes for both {\tt moveA} and {\tt moveB} are
590     identical to those described for the NPTi integrator.
591    
592     The NPTf integrator is known to conserve the following Hamiltonian:
593     \begin{equation}
594     H_{\mathrm{NPTf}} = V + K + f k_B T_{\mathrm{target}} \left(
595     \frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime)
596     dt^\prime \right) + P_{\mathrm{target}} \mathcal{V}(t) + \frac{f k_B
597     T_{\mathrm{target}}}{2}
598     \mathrm{Tr}\left[\overleftrightarrow{\eta}(t)\right]^2 \tau_B^2.
599     \end{equation}
600    
601     This integrator must be used with care, particularly in liquid
602     simulations. Liquids have very small restoring forces in the
603     off-diagonal directions, and the simulation box can very quickly
604     form elongated and sheared geometries which become smaller than the
605     electrostatic or Lennard-Jones cutoff radii. The NPTf integrator
606     finds most use in simulating crystals or liquid crystals which
607     assume non-orthorhombic geometries.
608    
609 tim 2739 \subsection{\label{methodSection:otherSpecialEnsembles}Other Special Ensembles}
610 tim 2729
611 tim 2776 \subsubsection{\label{methodSection:NPAT}NPAT Ensemble}
612 tim 2729
613 tim 2739 A comprehensive understanding of structure¨Cfunction relations of
614     biological membrane system ultimately relies on structure and
615     dynamics of lipid bilayer, which are strongly affected by the
616     interfacial interaction between lipid molecules and surrounding
617     media. One quantity to describe the interfacial interaction is so
618     called the average surface area per lipid. Constat area and constant
619     lateral pressure simulation can be achieved by extending the
620     standard NPT ensemble with a different pressure control strategy
621 tim 2798
622 tim 2729 \begin{equation}
623 tim 2799 \dot {\overleftrightarrow{\eta}} _{\alpha \beta}=\left\{\begin{array}{ll}
624 tim 2798 \frac{{V(P_{\alpha \beta } - P_{{\rm{target}}} )}}{{\tau_{\rm{B}}^{\rm{2}} fk_B T_{{\rm{target}}} }}
625 tim 2799 & \mbox{if $ \alpha = \beta = z$}\\
626 tim 2798 0 & \mbox{otherwise}\\
627     \end{array}
628     \right.
629 tim 2729 \end{equation}
630 tim 2798
631 tim 2739 Note that the iterative schemes for NPAT are identical to those
632     described for the NPTi integrator.
633 tim 2729
634 tim 2776 \subsubsection{\label{methodSection:NPrT}NP$\gamma$T Ensemble}
635 tim 2729
636 tim 2739 Theoretically, the surface tension $\gamma$ of a stress free
637     membrane system should be zero since its surface free energy $G$ is
638     minimum with respect to surface area $A$
639     \[
640     \gamma = \frac{{\partial G}}{{\partial A}}.
641     \]
642     However, a surface tension of zero is not appropriate for relatively
643     small patches of membrane. In order to eliminate the edge effect of
644 tim 2776 the membrane simulation, a special ensemble, NP$\gamma$T, is
645     proposed to maintain the lateral surface tension and normal
646     pressure. The equation of motion for cell size control tensor,
647 tim 2778 $\eta$, in $NP\gamma T$ is
648 tim 2729 \begin{equation}
649 tim 2799 \dot {\overleftrightarrow{\eta}} _{\alpha \beta}=\left\{\begin{array}{ll}
650 tim 2798 - A_{xy} (\gamma _\alpha - \gamma _{{\rm{target}}} ) & \mbox{$\alpha = \beta = x$ or $\alpha = \beta = y$}\\
651     \frac{{V(P_{\alpha \beta } - P_{{\rm{target}}} )}}{{\tau _{\rm{B}}^{\rm{2}} fk_B T_{{\rm{target}}}}} & \mbox{$\alpha = \beta = z$} \\
652     0 & \mbox{$\alpha \ne \beta$} \\
653 tim 2799 \end{array}
654 tim 2798 \right.
655 tim 2729 \end{equation}
656 tim 2739 where $ \gamma _{{\rm{target}}}$ is the external surface tension and
657     the instantaneous surface tensor $\gamma _\alpha$ is given by
658 tim 2729 \begin{equation}
659 tim 2800 \gamma _\alpha = - h_z( \overleftrightarrow{P} _{\alpha \alpha }
660     - P_{{\rm{target}}} )
661 tim 2739 \label{methodEquation:instantaneousSurfaceTensor}
662 tim 2729 \end{equation}
663    
664 tim 2739 There is one additional extended system integrator (NPTxyz), in
665     which each attempt to preserve the target pressure along the box
666     walls perpendicular to that particular axis. The lengths of the box
667     axes are allowed to fluctuate independently, but the angle between
668     the box axes does not change. It should be noted that the NPTxyz
669     integrator is a special case of $NP\gamma T$ if the surface tension
670     $\gamma$ is set to zero.
671 tim 2729
672 tim 2804 \section{\label{methodSection:zcons}Z-Constraint Method}
673 tim 2776
674 tim 2804 Based on the fluctuation-dissipation theorem, a force
675     auto-correlation method was developed by Roux and Karplus to
676     investigate the dynamics of ions inside ion channels\cite{Roux1991}.
677     The time-dependent friction coefficient can be calculated from the
678     deviation of the instantaneous force from its mean force.
679     \begin{equation}
680     \xi(z,t)=\langle\delta F(z,t)\delta F(z,0)\rangle/k_{B}T,
681     \end{equation}
682     where%
683     \begin{equation}
684     \delta F(z,t)=F(z,t)-\langle F(z,t)\rangle.
685     \end{equation}
686 tim 2776
687 tim 2804 If the time-dependent friction decays rapidly, the static friction
688     coefficient can be approximated by
689     \begin{equation}
690     \xi_{\text{static}}(z)=\int_{0}^{\infty}\langle\delta F(z,t)\delta
691     F(z,0)\rangle dt.
692     \end{equation}
693     Allowing diffusion constant to then be calculated through the
694     Einstein relation:\cite{Marrink1994}
695     \begin{equation}
696     D(z)=\frac{k_{B}T}{\xi_{\text{static}}(z)}=\frac{(k_{B}T)^{2}}{\int_{0}^{\infty
697     }\langle\delta F(z,t)\delta F(z,0)\rangle dt}.%
698     \end{equation}
699 tim 2776
700 tim 2804 The Z-Constraint method, which fixes the z coordinates of the
701     molecules with respect to the center of the mass of the system, has
702     been a method suggested to obtain the forces required for the force
703     auto-correlation calculation.\cite{Marrink1994} However, simply
704     resetting the coordinate will move the center of the mass of the
705     whole system. To avoid this problem, we reset the forces of
706     z-constrained molecules as well as subtract the total constraint
707     forces from the rest of the system after the force calculation at
708     each time step instead of resetting the coordinate.
709    
710     After the force calculation, define $G_\alpha$ as
711     \begin{equation}
712     G_{\alpha} = \sum_i F_{\alpha i}, \label{oopseEq:zc1}
713     \end{equation}
714     where $F_{\alpha i}$ is the force in the z direction of atom $i$ in
715     z-constrained molecule $\alpha$. The forces of the z constrained
716     molecule are then set to:
717     \begin{equation}
718     F_{\alpha i} = F_{\alpha i} -
719     \frac{m_{\alpha i} G_{\alpha}}{\sum_i m_{\alpha i}}.
720     \end{equation}
721     Here, $m_{\alpha i}$ is the mass of atom $i$ in the z-constrained
722     molecule. Having rescaled the forces, the velocities must also be
723     rescaled to subtract out any center of mass velocity in the z
724     direction.
725     \begin{equation}
726     v_{\alpha i} = v_{\alpha i} -
727     \frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}},
728     \end{equation}
729     where $v_{\alpha i}$ is the velocity of atom $i$ in the z direction.
730     Lastly, all of the accumulated z constrained forces must be
731     subtracted from the system to keep the system center of mass from
732     drifting.
733     \begin{equation}
734     F_{\beta i} = F_{\beta i} - \frac{m_{\beta i} \sum_{\alpha}
735     G_{\alpha}}
736     {\sum_{\beta}\sum_i m_{\beta i}},
737     \end{equation}
738     where $\beta$ are all of the unconstrained molecules in the system.
739     Similarly, the velocities of the unconstrained molecules must also
740     be scaled.
741     \begin{equation}
742     v_{\beta i} = v_{\beta i} + \sum_{\alpha}
743     \frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}}.
744     \end{equation}
745    
746     At the very beginning of the simulation, the molecules may not be at
747     their constrained positions. To move a z-constrained molecule to its
748     specified position, a simple harmonic potential is used
749     \begin{equation}
750     U(t)=\frac{1}{2}k_{\text{Harmonic}}(z(t)-z_{\text{cons}})^{2},%
751     \end{equation}
752     where $k_{\text{Harmonic}}$ is the harmonic force constant, $z(t)$
753     is the current $z$ coordinate of the center of mass of the
754     constrained molecule, and $z_{\text{cons}}$ is the constrained
755     position. The harmonic force operating on the z-constrained molecule
756     at time $t$ can be calculated by
757     \begin{equation}
758     F_{z_{\text{Harmonic}}}(t)=-\frac{\partial U(t)}{\partial z(t)}=
759     -k_{\text{Harmonic}}(z(t)-z_{\text{cons}}).
760     \end{equation}
761    
762    
763 tim 2685 \section{\label{methodSection:langevin}Integrators for Langevin Dynamics of Rigid Bodies}
764    
765 tim 2804 %\subsection{\label{methodSection:temperature}Temperature Control}
766 tim 2685
767 tim 2804 %\subsection{\label{methodSection:pressureControl}Pressure Control}
768 tim 2729
769 tim 2804 %\section{\label{methodSection:hydrodynamics}Hydrodynamics}
770 tim 2729
771 tim 2804 %applications of langevin dynamics
772     As an excellent alternative to newtonian dynamics, Langevin
773     dynamics, which mimics a simple heat bath with stochastic and
774     dissipative forces, has been applied in a variety of studies. The
775     stochastic treatment of the solvent enables us to carry out
776     substantially longer time simulation. Implicit solvent Langevin
777     dynamics simulation of met-enkephalin not only outperforms explicit
778     solvent simulation on computation efficiency, but also agrees very
779     well with explicit solvent simulation on dynamics
780     properties\cite{Shen2002}. Recently, applying Langevin dynamics with
781     UNRES model, Liow and his coworkers suggest that protein folding
782     pathways can be possibly exploited within a reasonable amount of
783     time\cite{Liwo2005}. The stochastic nature of the Langevin dynamics
784     also enhances the sampling of the system and increases the
785     probability of crossing energy barrier\cite{Banerjee2004, Cui2003}.
786     Combining Langevin dynamics with Kramers's theory, Klimov and
787     Thirumalai identified the free-energy barrier by studying the
788     viscosity dependence of the protein folding rates\cite{Klimov1997}.
789     In order to account for solvent induced interactions missing from
790     implicit solvent model, Kaya incorporated desolvation free energy
791     barrier into implicit coarse-grained solvent model in protein
792     folding/unfolding study and discovered a higher free energy barrier
793     between the native and denatured states. Because of its stability
794     against noise, Langevin dynamics is very suitable for studying
795     remagnetization processes in various
796     systems\cite{Garcia-Palacios1998,Berkov2002,Denisov2003}. For
797     instance, the oscillation power spectrum of nanoparticles from
798     Langevin dynamics simulation has the same peak frequencies for
799     different wave vectors,which recovers the property of magnetic
800     excitations in small finite structures\cite{Berkov2005a}. In an
801     attempt to reduce the computational cost of simulation, multiple
802     time stepping (MTS) methods have been introduced and have been of
803     great interest to macromolecule and protein
804     community\cite{Tuckerman1992}. Relying on the observation that
805     forces between distant atoms generally demonstrate slower
806     fluctuations than forces between close atoms, MTS method are
807     generally implemented by evaluating the slowly fluctuating forces
808     less frequently than the fast ones. Unfortunately, nonlinear
809     instability resulting from increasing timestep in MTS simulation
810     have became a critical obstruction preventing the long time
811     simulation. Due to the coupling to the heat bath, Langevin dynamics
812     has been shown to be able to damp out the resonance artifact more
813     efficiently\cite{Sandu1999}.
814 tim 2729
815 tim 2804 %review rigid body dynamics
816     Rigid bodies are frequently involved in the modeling of different
817     areas, from engineering, physics, to chemistry. For example,
818     missiles and vehicle are usually modeled by rigid bodies. The
819     movement of the objects in 3D gaming engine or other physics
820     simulator is governed by the rigid body dynamics. In molecular
821     simulation, rigid body is used to simplify the model in
822     protein-protein docking study\cite{Gray2003}.
823    
824     It is very important to develop stable and efficient methods to
825     integrate the equations of motion of orientational degrees of
826     freedom. Euler angles are the nature choice to describe the
827     rotational degrees of freedom. However, due to its singularity, the
828     numerical integration of corresponding equations of motion is very
829     inefficient and inaccurate. Although an alternative integrator using
830     different sets of Euler angles can overcome this
831     difficulty\cite{Ryckaert1977, Andersen1983}, the computational
832     penalty and the lost of angular momentum conservation still remain.
833     In 1977, a singularity free representation utilizing quaternions was
834     developed by Evans\cite{Evans1977}. Unfortunately, this approach
835     suffer from the nonseparable Hamiltonian resulted from quaternion
836     representation, which prevents the symplectic algorithm to be
837     utilized. Another different approach is to apply holonomic
838     constraints to the atoms belonging to the rigid
839     body\cite{Barojas1973}. Each atom moves independently under the
840     normal forces deriving from potential energy and constraint forces
841     which are used to guarantee the rigidness. However, due to their
842     iterative nature, SHAKE and Rattle algorithm converge very slowly
843     when the number of constraint increases.
844    
845     The break through in geometric literature suggests that, in order to
846     develop a long-term integration scheme, one should preserve the
847     geometric structure of the flow. Matubayasi and Nakahara developed a
848     time-reversible integrator for rigid bodies in quaternion
849     representation. Although it is not symplectic, this integrator still
850     demonstrates a better long-time energy conservation than traditional
851     methods because of the time-reversible nature. Extending
852     Trotter-Suzuki to general system with a flat phase space, Miller and
853     his colleagues devised an novel symplectic, time-reversible and
854     volume-preserving integrator in quaternion representation. However,
855     all of the integrators in quaternion representation suffer from the
856     computational penalty of constructing a rotation matrix from
857     quaternions to evolve coordinates and velocities at every time step.
858     An alternative integration scheme utilizing rotation matrix directly
859     is RSHAKE\cite{Kol1997}, in which a conjugate momentum to rotation
860     matrix is introduced to re-formulate the Hamiltonian's equation and
861     the Hamiltonian is evolved in a constraint manifold by iteratively
862     satisfying the orthogonality constraint. However, RSHAKE is
863     inefficient because of the iterative procedure. An extremely
864     efficient integration scheme in rotation matrix representation,
865     which also preserves the same structural properties of the
866     Hamiltonian flow as Miller's integrator, is proposed by Dullweber,
867     Leimkuhler and McLachlan (DLM)\cite{Dullweber1997}.
868    
869     %review langevin/browninan dynamics for arbitrarily shaped rigid body
870     Combining Langevin or Brownian dynamics with rigid body dynamics,
871     one can study the slow processes in biomolecular systems. Modeling
872     the DNA as a chain of rigid spheres beads, which subject to harmonic
873     potentials as well as excluded volume potentials, Mielke and his
874     coworkers discover rapid superhelical stress generations from the
875     stochastic simulation of twin supercoiling DNA with response to
876     induced torques\cite{Mielke2004}. Membrane fusion is another key
877     biological process which controls a variety of physiological
878     functions, such as release of neurotransmitters \textit{etc}. A
879     typical fusion event happens on the time scale of millisecond, which
880     is impracticable to study using all atomistic model with newtonian
881     mechanics. With the help of coarse-grained rigid body model and
882     stochastic dynamics, the fusion pathways were exploited by many
883     researchers\cite{Noguchi2001,Noguchi2002,Shillcock2005}. Due to the
884     difficulty of numerical integration of anisotropy rotation, most of
885     the rigid body models are simply modeled by sphere, cylinder,
886     ellipsoid or other regular shapes in stochastic simulations. In an
887     effort to account for the diffusion anisotropy of the arbitrary
888     particles, Fernandes and de la Torre improved the original Brownian
889     dynamics simulation algorithm\cite{Ermak1978,Allison1991} by
890     incorporating a generalized $6\times6$ diffusion tensor and
891     introducing a simple rotation evolution scheme consisting of three
892     consecutive rotations\cite{Fernandes2002}. Unfortunately, unexpected
893     error and bias are introduced into the system due to the arbitrary
894     order of applying the noncommuting rotation
895     operators\cite{Beard2003}. Based on the observation the momentum
896     relaxation time is much less than the time step, one may ignore the
897     inertia in Brownian dynamics. However, assumption of the zero
898     average acceleration is not always true for cooperative motion which
899     is common in protein motion. An inertial Brownian dynamics (IBD) was
900     proposed to address this issue by adding an inertial correction
901     term\cite{Beard2001}. As a complement to IBD which has a lower bound
902     in time step because of the inertial relaxation time, long-time-step
903     inertial dynamics (LTID) can be used to investigate the inertial
904     behavior of the polymer segments in low friction
905     regime\cite{Beard2001}. LTID can also deal with the rotational
906     dynamics for nonskew bodies without translation-rotation coupling by
907     separating the translation and rotation motion and taking advantage
908     of the analytical solution of hydrodynamics properties. However,
909     typical nonskew bodies like cylinder and ellipsoid are inadequate to
910     represent most complex macromolecule assemblies. These intricate
911     molecules have been represented by a set of beads and their
912     hydrodynamics properties can be calculated using variant
913     hydrodynamic interaction tensors.
914    
915     The goal of the present work is to develop a Langevin dynamics
916     algorithm for arbitrary rigid particles by integrating the accurate
917     estimation of friction tensor from hydrodynamics theory into the
918     sophisticated rigid body dynamics.
919    
920    
921     \subsection{Friction Tensor}
922    
923     For an arbitrary rigid body moves in a fluid, it may experience
924     friction force $f_r$ or friction torque $\tau _r$ along the opposite
925     direction of the velocity $v$ or angular velocity $\omega$ at
926     arbitrary origin $P$,
927     \begin{equation}
928     \left( \begin{array}{l}
929     f_r \\
930     \tau _r \\
931     \end{array} \right) = - \left( {\begin{array}{*{20}c}
932     {\Xi _{P,t} } & {\Xi _{P,c}^T } \\
933     {\Xi _{P,c} } & {\Xi _{P,r} } \\
934     \end{array}} \right)\left( \begin{array}{l}
935     \nu \\
936     \omega \\
937     \end{array} \right)
938     \end{equation}
939     where $\Xi _{P,t}t$ is the translation friction tensor, $\Xi _{P,r}$
940     is the rotational friction tensor and $\Xi _{P,c}$ is the
941     translation-rotation coupling tensor. The procedure of calculating
942     friction tensor using hydrodynamic tensor and comparison between
943     bead model and shell model were elaborated by Carrasco \textit{et
944     al}\cite{Carrasco1999}. An important property of the friction tensor
945     is that the translational friction tensor is independent of origin
946     while the rotational and coupling are sensitive to the choice of the
947     origin \cite{Brenner1967}, which can be described by
948     \begin{equation}
949     \begin{array}{c}
950     \Xi _{P,t} = \Xi _{O,t} = \Xi _t \\
951     \Xi _{P,c} = \Xi _{O,c} - r_{OP} \times \Xi _t \\
952     \Xi _{P,r} = \Xi _{O,r} - r_{OP} \times \Xi _t \times r_{OP} + \Xi _{O,c} \times r_{OP} - r_{OP} \times \Xi _{O,c}^T \\
953     \end{array}
954     \end{equation}
955     Where $O$ is another origin and $r_{OP}$ is the vector joining $O$
956     and $P$. It is also worthy of mention that both of translational and
957     rotational frictional tensors are always symmetric. In contrast,
958     coupling tensor is only symmetric at center of reaction:
959     \begin{equation}
960     \Xi _{R,c} = \Xi _{R,c}^T
961     \end{equation}
962     The proper location for applying friction force is the center of
963     reaction, at which the trace of rotational resistance tensor reaches
964     minimum.
965    
966     \subsection{Rigid body dynamics}
967    
968     The Hamiltonian of rigid body can be separated in terms of potential
969     energy $V(r,A)$ and kinetic energy $T(p,\pi)$,
970     \[
971     H = V(r,A) + T(v,\pi )
972     \]
973     A second-order symplectic method is now obtained by the composition
974     of the flow maps,
975     \[
976     \varphi _{\Delta t} = \varphi _{\Delta t/2,V} \circ \varphi
977     _{\Delta t,T} \circ \varphi _{\Delta t/2,V}.
978     \]
979     Moreover, $\varphi _{\Delta t/2,V}$ can be divided into two
980     sub-flows which corresponding to force and torque respectively,
981     \[
982     \varphi _{\Delta t/2,V} = \varphi _{\Delta t/2,F} \circ \varphi
983     _{\Delta t/2,\tau }.
984     \]
985     Since the associated operators of $\varphi _{\Delta t/2,F} $ and
986     $\circ \varphi _{\Delta t/2,\tau }$ are commuted, the composition
987     order inside $\varphi _{\Delta t/2,V}$ does not matter.
988    
989     Furthermore, kinetic potential can be separated to translational
990     kinetic term, $T^t (p)$, and rotational kinetic term, $T^r (\pi )$,
991     \begin{equation}
992     T(p,\pi ) =T^t (p) + T^r (\pi ).
993     \end{equation}
994     where $ T^t (p) = \frac{1}{2}v^T m v $ and $T^r (\pi )$ is defined
995     by \ref{introEquation:rotationalKineticRB}. Therefore, the
996     corresponding flow maps are given by
997     \[
998     \varphi _{\Delta t,T} = \varphi _{\Delta t,T^t } \circ \varphi
999     _{\Delta t,T^r }.
1000     \]
1001     The free rigid body is an example of Lie-Poisson system with
1002     Hamiltonian function
1003     \begin{equation}
1004     T^r (\pi ) = T_1 ^r (\pi _1 ) + T_2^r (\pi _2 ) + T_3^r (\pi _3 )
1005     \label{introEquation:rotationalKineticRB}
1006     \end{equation}
1007     where $T_i^r (\pi _i ) = \frac{{\pi _i ^2 }}{{2I_i }}$ and
1008     Lie-Poisson structure matrix,
1009     \begin{equation}
1010     J(\pi ) = \left( {\begin{array}{*{20}c}
1011     0 & {\pi _3 } & { - \pi _2 } \\
1012     { - \pi _3 } & 0 & {\pi _1 } \\
1013     {\pi _2 } & { - \pi _1 } & 0 \\
1014     \end{array}} \right)
1015     \end{equation}
1016     Thus, the dynamics of free rigid body is governed by
1017     \begin{equation}
1018     \frac{d}{{dt}}\pi = J(\pi )\nabla _\pi T^r (\pi )
1019     \end{equation}
1020     One may notice that each $T_i^r$ in Equation
1021     \ref{introEquation:rotationalKineticRB} can be solved exactly. For
1022     instance, the equations of motion due to $T_1^r$ are given by
1023     \begin{equation}
1024     \frac{d}{{dt}}\pi = R_1 \pi ,\frac{d}{{dt}}A = AR_1
1025     \label{introEqaution:RBMotionSingleTerm}
1026     \end{equation}
1027     where
1028     \[ R_1 = \left( {\begin{array}{*{20}c}
1029     0 & 0 & 0 \\
1030     0 & 0 & {\pi _1 } \\
1031     0 & { - \pi _1 } & 0 \\
1032     \end{array}} \right).
1033     \]
1034     The solutions of Equation \ref{introEqaution:RBMotionSingleTerm} is
1035     \[
1036     \pi (\Delta t) = e^{\Delta tR_1 } \pi (0),A(\Delta t) =
1037     A(0)e^{\Delta tR_1 }
1038     \]
1039     with
1040     \[
1041     e^{\Delta tR_1 } = \left( {\begin{array}{*{20}c}
1042     0 & 0 & 0 \\
1043     0 & {\cos \theta _1 } & {\sin \theta _1 } \\
1044     0 & { - \sin \theta _1 } & {\cos \theta _1 } \\
1045     \end{array}} \right),\theta _1 = \frac{{\pi _1 }}{{I_1 }}\Delta t.
1046     \]
1047     To reduce the cost of computing expensive functions in $e^{\Delta
1048     tR_1 }$, we can use Cayley transformation,
1049     \[
1050     e^{\Delta tR_1 } \approx (1 - \Delta tR_1 )^{ - 1} (1 + \Delta tR_1
1051     )
1052     \]
1053     The flow maps for $T_2^r$ and $T_3^r$ can be found in the same
1054     manner.
1055    
1056     In order to construct a second-order symplectic method, we split the
1057     angular kinetic Hamiltonian function into five terms
1058     \[
1059     T^r (\pi ) = \frac{1}{2}T_1 ^r (\pi _1 ) + \frac{1}{2}T_2^r (\pi _2
1060     ) + T_3^r (\pi _3 ) + \frac{1}{2}T_2^r (\pi _2 ) + \frac{1}{2}T_1 ^r
1061     (\pi _1 )
1062     \].
1063     Concatenating flows corresponding to these five terms, we can obtain
1064     the flow map for free rigid body,
1065     \[
1066     \varphi _{\Delta t,T^r } = \varphi _{\Delta t/2,\pi _1 } \circ
1067     \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t,\pi _3 }
1068     \circ \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t/2,\pi
1069     _1 }.
1070     \]
1071    
1072     The equations of motion corresponding to potential energy and
1073     kinetic energy are listed in the below table,
1074     \begin{center}
1075     \begin{tabular}{|l|l|}
1076     \hline
1077     % after \\: \hline or \cline{col1-col2} \cline{col3-col4} ...
1078     Potential & Kinetic \\
1079     $\frac{{dq}}{{dt}} = \frac{p}{m}$ & $\frac{d}{{dt}}q = p$ \\
1080     $\frac{d}{{dt}}p = - \frac{{\partial V}}{{\partial q}}$ & $ \frac{d}{{dt}}p = 0$ \\
1081     $\frac{d}{{dt}}Q = 0$ & $ \frac{d}{{dt}}Q = Qskew(I^{ - 1} j)$ \\
1082     $ \frac{d}{{dt}}\pi = \sum\limits_i {\left( {Q^T F_i (r,Q)} \right) \times X_i }$ & $\frac{d}{{dt}}\pi = \pi \times I^{ - 1} \pi$\\
1083     \hline
1084     \end{tabular}
1085     \end{center}
1086    
1087     Finally, we obtain the overall symplectic flow maps for free moving
1088     rigid body
1089     \begin{align*}
1090     \varphi _{\Delta t} = &\varphi _{\Delta t/2,F} \circ \varphi _{\Delta t/2,\tau } \circ \\
1091     &\varphi _{\Delta t,T^t } \circ \varphi _{\Delta t/2,\pi _1 } \circ \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t,\pi _3 } \circ \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t/2,\pi _1 } \circ \\
1092     &\varphi _{\Delta t/2,\tau } \circ \varphi _{\Delta t/2,F} .\\
1093     \label{introEquation:overallRBFlowMaps}
1094     \end{align*}
1095    
1096     \subsection{Langevin dynamics for rigid particles of arbitrary shape}
1097    
1098     Consider a Langevin equation of motions in generalized coordinates
1099     \begin{equation}
1100     M_i \dot V_i (t) = F_{s,i} (t) + F_{f,i(t)} + F_{r,i} (t)
1101     \label{LDGeneralizedForm}
1102     \end{equation}
1103     where $M_i$ is a $6\times6$ generalized diagonal mass (include mass
1104     and moment of inertial) matrix and $V_i$ is a generalized velocity,
1105     $V_i = V_i(v_i,\omega _i)$. The right side of Eq.
1106     (\ref{LDGeneralizedForm}) consists of three generalized forces in
1107     lab-fixed frame, systematic force $F_{s,i}$, dissipative force
1108     $F_{f,i}$ and stochastic force $F_{r,i}$. While the evolution of the
1109     system in Newtownian mechanics typically refers to lab-fixed frame,
1110     it is also convenient to handle the rotation of rigid body in
1111     body-fixed frame. Thus the friction and random forces are calculated
1112     in body-fixed frame and converted back to lab-fixed frame by:
1113     \[
1114     \begin{array}{l}
1115     F_{f,i}^l (t) = A^T F_{f,i}^b (t), \\
1116     F_{r,i}^l (t) = A^T F_{r,i}^b (t) \\
1117     \end{array}.
1118     \]
1119     Here, the body-fixed friction force $F_{r,i}^b$ is proportional to
1120     the body-fixed velocity at center of resistance $v_{R,i}^b$ and
1121     angular velocity $\omega _i$,
1122     \begin{equation}
1123     F_{r,i}^b (t) = \left( \begin{array}{l}
1124     f_{r,i}^b (t) \\
1125     \tau _{r,i}^b (t) \\
1126     \end{array} \right) = - \left( {\begin{array}{*{20}c}
1127     {\Xi _{R,t} } & {\Xi _{R,c}^T } \\
1128     {\Xi _{R,c} } & {\Xi _{R,r} } \\
1129     \end{array}} \right)\left( \begin{array}{l}
1130     v_{R,i}^b (t) \\
1131     \omega _i (t) \\
1132     \end{array} \right),
1133     \end{equation}
1134     while the random force $F_{r,i}^l$ is a Gaussian stochastic variable
1135     with zero mean and variance
1136     \begin{equation}
1137     \left\langle {F_{r,i}^l (t)(F_{r,i}^l (t'))^T } \right\rangle =
1138     \left\langle {F_{r,i}^b (t)(F_{r,i}^b (t'))^T } \right\rangle =
1139     2k_B T\Xi _R \delta (t - t').
1140     \end{equation}
1141     The equation of motion for $v_i$ can be written as
1142     \begin{equation}
1143     m\dot v_i (t) = f_{t,i} (t) = f_{s,i} (t) + f_{f,i}^l (t) +
1144     f_{r,i}^l (t)
1145     \end{equation}
1146     Since the frictional force is applied at the center of resistance
1147     which generally does not coincide with the center of mass, an extra
1148     torque is exerted at the center of mass. Thus, the net body-fixed
1149     frictional torque at the center of mass, $\tau _{n,i}^b (t)$, is
1150     given by
1151     \begin{equation}
1152     \tau _{r,i}^b = \tau _{r,i}^b +r_{MR} \times f_{r,i}^b
1153     \end{equation}
1154     where $r_{MR}$ is the vector from the center of mass to the center
1155     of the resistance. Instead of integrating angular velocity in
1156     lab-fixed frame, we consider the equation of motion of angular
1157     momentum in body-fixed frame
1158     \begin{equation}
1159     \dot \pi _i (t) = \tau _{t,i} (t) = \tau _{s,i} (t) + \tau _{f,i}^b
1160     (t) + \tau _{r,i}^b(t)
1161     \end{equation}
1162    
1163     Embedding the friction terms into force and torque, one can
1164     integrate the langevin equations of motion for rigid body of
1165     arbitrary shape in a velocity-Verlet style 2-part algorithm, where
1166     $h= \delta t$:
1167    
1168     {\tt part one:}
1169     \begin{align*}
1170     v_i (t + h/2) &\leftarrow v_i (t) + \frac{{hf_{t,i}^l (t)}}{{2m_i }} \\
1171     \pi _i (t + h/2) &\leftarrow \pi _i (t) + \frac{{h\tau _{t,i}^b (t)}}{2} \\
1172     r_i (t + h) &\leftarrow r_i (t) + hv_i (t + h/2) \\
1173     A_i (t + h) &\leftarrow rotate\left( {h\pi _i (t + h/2)I^{ - 1} } \right) \\
1174     \end{align*}
1175     In this context, the $\mathrm{rotate}$ function is the reversible
1176     product of five consecutive body-fixed rotations,
1177     \begin{equation}
1178     \mathrm{rotate}({\bf a}) = \mathsf{G}_x(a_x / 2) \cdot
1179     \mathsf{G}_y(a_y / 2) \cdot \mathsf{G}_z(a_z) \cdot \mathsf{G}_y(a_y
1180     / 2) \cdot \mathsf{G}_x(a_x /2),
1181     \end{equation}
1182     where each rotational propagator, $\mathsf{G}_\alpha(\theta)$,
1183     rotates both the rotation matrix ($\mathsf{A}$) and the body-fixed
1184     angular momentum ($\pi$) by an angle $\theta$ around body-fixed axis
1185     $\alpha$,
1186     \begin{equation}
1187     \mathsf{G}_\alpha( \theta ) = \left\{
1188     \begin{array}{lcl}
1189     \mathsf{A}(t) & \leftarrow & \mathsf{A}(0) \cdot \mathsf{R}_\alpha(\theta)^T, \\
1190     {\bf j}(t) & \leftarrow & \mathsf{R}_\alpha(\theta) \cdot {\bf
1191     j}(0).
1192     \end{array}
1193     \right.
1194     \end{equation}
1195     $\mathsf{R}_\alpha$ is a quadratic approximation to the single-axis
1196     rotation matrix. For example, in the small-angle limit, the
1197     rotation matrix around the body-fixed x-axis can be approximated as
1198     \begin{equation}
1199     \mathsf{R}_x(\theta) \approx \left(
1200     \begin{array}{ccc}
1201     1 & 0 & 0 \\
1202     0 & \frac{1-\theta^2 / 4}{1 + \theta^2 / 4} & -\frac{\theta}{1+
1203     \theta^2 / 4} \\
1204     0 & \frac{\theta}{1+ \theta^2 / 4} & \frac{1-\theta^2 / 4}{1 +
1205     \theta^2 / 4}
1206     \end{array}
1207     \right).
1208     \end{equation}
1209     All other rotations follow in a straightforward manner.
1210    
1211     After the first part of the propagation, the friction and random
1212     forces are generated at the center of resistance in body-fixed frame
1213     and converted back into lab-fixed frame
1214     \[
1215     f_{t,i}^l (t + h) = - \left( {\frac{{\partial V}}{{\partial r_i }}}
1216     \right)_{r_i (t + h)} + A_i^T (t + h)[F_{f,i}^b (t + h) + F_{r,i}^b
1217     (t + h)],
1218     \]
1219     while the system torque in lab-fixed frame is transformed into
1220     body-fixed frame,
1221     \[
1222     \tau _{t,i}^b (t + h) = A\tau _{s,i}^l (t) + \tau _{n,i}^b (t) +
1223     \tau _{r,i}^b (t).
1224     \]
1225     Once the forces and torques have been obtained at the new time step,
1226     the velocities can be advanced to the same time value.
1227    
1228     {\tt part two:}
1229     \begin{align*}
1230     v_i (t) &\leftarrow v_i (t + h/2) + \frac{{hf_{t,i}^l (t + h)}}{{2m_i }} \\
1231     \pi _i (t) &\leftarrow \pi _i (t + h/2) + \frac{{h\tau _{t,i}^b (t + h)}}{2} \\
1232     \end{align*}
1233    
1234     \subsection{Results and discussion}