16 |
|
|
17 |
|
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 |
19 |
> |
two decades. Matubayasi developed a time-reversible integrator for |
20 |
> |
rigid bodies in quaternion representation. Although it is not |
21 |
> |
symplectic, this integrator still demonstrates a better long-time |
22 |
> |
energy conservation than traditional methods because of the |
23 |
> |
time-reversible nature. Extending Trotter-Suzuki to general system |
24 |
> |
with a flat phase space, Miller and his colleagues devised an novel |
25 |
> |
symplectic, time-reversible and volume-preserving integrator in |
26 |
> |
quaternion representation, which was shown to be superior to the |
27 |
> |
Matubayasi's time-reversible integrator. However, all of the |
28 |
> |
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 |
117 |
|
\cdot {\bf \tau}^s(t + h). |
118 |
|
\end{align*} |
119 |
|
|
120 |
< |
{\sc oopse} automatically updates ${\bf u}$ when the rotation matrix |
120 |
> |
${\bf u}$ will be automatically updated 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. |
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}. |
142 |
> |
in Fig.~\ref{methodFig:timestep}. |
143 |
|
|
144 |
|
\begin{figure} |
145 |
|
\centering |
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: |
209 |
> |
relaxation of the temperature to the target value. The integration |
210 |
> |
of the equations of motion is carried out in a velocity-Verlet style |
211 |
> |
2 part algorithm: |
212 |
|
|
213 |
|
{\tt moveA:} |
214 |
|
\begin{align*} |
274 |
|
caclculate $T(t + h)$ as well as $\chi(t + h)$, they indirectly |
275 |
|
depend on their own values at time $t + h$. {\tt moveB} is |
276 |
|
therefore done in an iterative fashion until $\chi(t + h)$ becomes |
277 |
< |
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. |
277 |
> |
self-consistent. |
278 |
|
|
279 |
|
The Nos\'e-Hoover algorithm is known to conserve a Hamiltonian for |
280 |
|
the extended system that is, to within a constant, identical to the |
292 |
|
\subsection{\label{methodSection:NPTi}Constant-pressure integration with |
293 |
|
isotropic box deformations (NPTi)} |
294 |
|
|
295 |
< |
To carry out isobaric-isothermal ensemble calculations {\sc oopse} |
296 |
< |
implements the Melchionna modifications to the |
297 |
< |
Nos\'e-Hoover-Andersen equations of motion,\cite{Melchionna1993} |
295 |
> |
Isobaric-isothermal ensemble integrator is implemented using the |
296 |
> |
Melchionna modifications to the Nos\'e-Hoover-Andersen equations of |
297 |
> |
motion,\cite{Melchionna1993} |
298 |
|
|
299 |
|
\begin{eqnarray} |
300 |
|
\dot{{\bf r}} & = & {\bf v} + \eta \left( {\bf r} - {\bf R}_0 \right), \\ |
349 |
|
\end{equation} |
350 |
|
|
351 |
|
In eq.(\ref{eq:melchionna1}), $\tau_B$ is the time constant for |
352 |
< |
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 |
352 |
> |
relaxation of the pressure to the target value. Like in the NVT |
353 |
|
integrator, the integration of the equations of motion is carried |
354 |
|
out in a velocity-Verlet style 2 part algorithm: |
355 |
|
|
390 |
|
|
391 |
|
Most of these equations are identical to their counterparts in the |
392 |
|
NVT integrator, but the propagation of positions to time $t + h$ |
393 |
< |
depends on the positions at the same time. {\sc oopse} carries out |
394 |
< |
this step iteratively (with a limit of 5 passes through the |
395 |
< |
iterative loop). Also, the simulation box $\mathsf{H}$ is scaled |
396 |
< |
uniformly for one full time step by an exponential factor that |
397 |
< |
depends on the value of $\eta$ at time $t + h / 2$. Reshaping the |
409 |
< |
box uniformly also scales the volume of the box by |
393 |
> |
depends on the positions at the same time. The simulation box |
394 |
> |
$\mathsf{H}$ is scaled uniformly for one full time step by an |
395 |
> |
exponential factor that depends on the value of $\eta$ at time $t + |
396 |
> |
h / 2$. Reshaping the box uniformly also scales the volume of the |
397 |
> |
box by |
398 |
|
\begin{equation} |
399 |
|
\mathcal{V}(t + h) \leftarrow e^{ - 3 h \eta(t + h /2)}. |
400 |
|
\mathcal{V}(t) |
436 |
|
to caclculate $T(t + h)$, $P(t + h)$, $\chi(t + h)$, and $\eta(t + |
437 |
|
h)$, they indirectly depend on their own values at time $t + h$. |
438 |
|
{\tt moveB} is therefore done in an iterative fashion until $\chi(t |
439 |
< |
+ 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. |
439 |
> |
+ h)$ and $\eta(t + h)$ become self-consistent. |
440 |
|
|
441 |
|
The Melchionna modification of the Nos\'e-Hoover-Andersen algorithm |
442 |
|
is known to conserve a Hamiltonian for the extended system that is, |
458 |
|
P_{\mathrm{target}} \mathcal{V}(t). |
459 |
|
\end{equation} |
460 |
|
|
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 |
– |
|
461 |
|
\subsection{\label{methodSection:NPTf}Constant-pressure integration with a |
462 |
|
flexible box (NPTf)} |
463 |
|
|
531 |
|
\mathsf{H}(t + h) &\leftarrow \mathsf{H}(t) \cdot e^{-h |
532 |
|
\overleftrightarrow{\eta}(t + h / 2)} . |
533 |
|
\end{align*} |
534 |
< |
{\sc oopse} uses a power series expansion truncated at second order |
535 |
< |
for the exponential operation which scales the simulation box. |
534 |
> |
Here, a power series expansion truncated at second order for the |
535 |
> |
exponential operation is used to scale the simulation box. |
536 |
|
|
537 |
|
The {\tt moveB} portion of the algorithm is largely unchanged from |
538 |
|
the NPTi integrator: |
571 |
|
identical to those described for the NPTi integrator. |
572 |
|
|
573 |
|
The NPTf integrator is known to conserve the following Hamiltonian: |
574 |
< |
\begin{equation} |
575 |
< |
H_{\mathrm{NPTf}} = V + K + f k_B T_{\mathrm{target}} \left( |
574 |
> |
\begin{eqnarray*} |
575 |
> |
H_{\mathrm{NPTf}} & = & V + K + f k_B T_{\mathrm{target}} \left( |
576 |
|
\frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime) |
577 |
< |
dt^\prime \right) + P_{\mathrm{target}} \mathcal{V}(t) + \frac{f k_B |
577 |
> |
dt^\prime \right) \\ |
578 |
> |
& & + P_{\mathrm{target}} \mathcal{V}(t) + \frac{f k_B |
579 |
|
T_{\mathrm{target}}}{2} |
580 |
|
\mathrm{Tr}\left[\overleftrightarrow{\eta}(t)\right]^2 \tau_B^2. |
581 |
< |
\end{equation} |
581 |
> |
\end{eqnarray*} |
582 |
|
|
583 |
|
This integrator must be used with care, particularly in liquid |
584 |
|
simulations. Liquids have very small restoring forces in the |
588 |
|
finds most use in simulating crystals or liquid crystals which |
589 |
|
assume non-orthorhombic geometries. |
590 |
|
|
591 |
< |
\subsection{\label{methodSection:otherSpecialEnsembles}Other Special Ensembles} |
591 |
> |
\subsection{\label{methodSection:NPAT}NPAT Ensemble} |
592 |
|
|
611 |
– |
\subsubsection{\label{methodSection:NPAT}NPAT Ensemble} |
612 |
– |
|
593 |
|
A comprehensive understanding of structure¨Cfunction relations of |
594 |
|
biological membrane system ultimately relies on structure and |
595 |
|
dynamics of lipid bilayer, which are strongly affected by the |
611 |
|
Note that the iterative schemes for NPAT are identical to those |
612 |
|
described for the NPTi integrator. |
613 |
|
|
614 |
< |
\subsubsection{\label{methodSection:NPrT}NP$\gamma$T Ensemble} |
614 |
> |
\subsection{\label{methodSection:NPrT}NP$\gamma$T |
615 |
> |
Ensemble} |
616 |
|
|
617 |
|
Theoretically, the surface tension $\gamma$ of a stress free |
618 |
|
membrane system should be zero since its surface free energy $G$ is |
650 |
|
integrator is a special case of $NP\gamma T$ if the surface tension |
651 |
|
$\gamma$ is set to zero. |
652 |
|
|
653 |
< |
%\section{\label{methodSection:constraintMethod}Constraint Method} |
653 |
> |
\section{\label{methodSection:zcons}Z-Constraint Method} |
654 |
|
|
655 |
< |
%\subsection{\label{methodSection:bondConstraint}Bond Constraint for Rigid Body} |
656 |
< |
|
657 |
< |
%\subsection{\label{methodSection:zcons}Z-constraint Method} |
655 |
> |
Based on the fluctuation-dissipation theorem, a force |
656 |
> |
auto-correlation method was developed by Roux and Karplus to |
657 |
> |
investigate the dynamics of ions inside ion channels\cite{Roux1991}. |
658 |
> |
The time-dependent friction coefficient can be calculated from the |
659 |
> |
deviation of the instantaneous force from its mean force. |
660 |
> |
\begin{equation} |
661 |
> |
\xi(z,t)=\langle\delta F(z,t)\delta F(z,0)\rangle/k_{B}T, |
662 |
> |
\end{equation} |
663 |
> |
where% |
664 |
> |
\begin{equation} |
665 |
> |
\delta F(z,t)=F(z,t)-\langle F(z,t)\rangle. |
666 |
> |
\end{equation} |
667 |
|
|
668 |
< |
\section{\label{methodSection:langevin}Integrators for Langevin Dynamics of Rigid Bodies} |
668 |
> |
If the time-dependent friction decays rapidly, the static friction |
669 |
> |
coefficient can be approximated by |
670 |
> |
\begin{equation} |
671 |
> |
\xi_{\text{static}}(z)=\int_{0}^{\infty}\langle\delta F(z,t)\delta |
672 |
> |
F(z,0)\rangle dt. |
673 |
> |
\end{equation} |
674 |
> |
Allowing diffusion constant to then be calculated through the |
675 |
> |
Einstein relation:\cite{Marrink1994} |
676 |
> |
\begin{equation} |
677 |
> |
D(z)=\frac{k_{B}T}{\xi_{\text{static}}(z)}=\frac{(k_{B}T)^{2}}{\int_{0}^{\infty |
678 |
> |
}\langle\delta F(z,t)\delta F(z,0)\rangle dt}.% |
679 |
> |
\end{equation} |
680 |
|
|
681 |
< |
\subsection{\label{methodSection:temperature}Temperature Control} |
681 |
> |
The Z-Constraint method, which fixes the z coordinates of the |
682 |
> |
molecules with respect to the center of the mass of the system, has |
683 |
> |
been a method suggested to obtain the forces required for the force |
684 |
> |
auto-correlation calculation.\cite{Marrink1994} However, simply |
685 |
> |
resetting the coordinate will move the center of the mass of the |
686 |
> |
whole system. To avoid this problem, we reset the forces of |
687 |
> |
z-constrained molecules as well as subtract the total constraint |
688 |
> |
forces from the rest of the system after the force calculation at |
689 |
> |
each time step instead of resetting the coordinate. |
690 |
|
|
691 |
< |
\subsection{\label{methodSection:pressureControl}Pressure Control} |
691 |
> |
After the force calculation, define $G_\alpha$ as |
692 |
> |
\begin{equation} |
693 |
> |
G_{\alpha} = \sum_i F_{\alpha i}, \label{oopseEq:zc1} |
694 |
> |
\end{equation} |
695 |
> |
where $F_{\alpha i}$ is the force in the z direction of atom $i$ in |
696 |
> |
z-constrained molecule $\alpha$. The forces of the z constrained |
697 |
> |
molecule are then set to: |
698 |
> |
\begin{equation} |
699 |
> |
F_{\alpha i} = F_{\alpha i} - |
700 |
> |
\frac{m_{\alpha i} G_{\alpha}}{\sum_i m_{\alpha i}}. |
701 |
> |
\end{equation} |
702 |
> |
Here, $m_{\alpha i}$ is the mass of atom $i$ in the z-constrained |
703 |
> |
molecule. Having rescaled the forces, the velocities must also be |
704 |
> |
rescaled to subtract out any center of mass velocity in the z |
705 |
> |
direction. |
706 |
> |
\begin{equation} |
707 |
> |
v_{\alpha i} = v_{\alpha i} - |
708 |
> |
\frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}}, |
709 |
> |
\end{equation} |
710 |
> |
where $v_{\alpha i}$ is the velocity of atom $i$ in the z direction. |
711 |
> |
Lastly, all of the accumulated z constrained forces must be |
712 |
> |
subtracted from the system to keep the system center of mass from |
713 |
> |
drifting. |
714 |
> |
\begin{equation} |
715 |
> |
F_{\beta i} = F_{\beta i} - \frac{m_{\beta i} \sum_{\alpha} |
716 |
> |
G_{\alpha}} |
717 |
> |
{\sum_{\beta}\sum_i m_{\beta i}}, |
718 |
> |
\end{equation} |
719 |
> |
where $\beta$ are all of the unconstrained molecules in the system. |
720 |
> |
Similarly, the velocities of the unconstrained molecules must also |
721 |
> |
be scaled. |
722 |
> |
\begin{equation} |
723 |
> |
v_{\beta i} = v_{\beta i} + \sum_{\alpha} |
724 |
> |
\frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}}. |
725 |
> |
\end{equation} |
726 |
|
|
727 |
< |
\section{\label{methodSection:hydrodynamics}Hydrodynamics} |
728 |
< |
|
729 |
< |
%\section{\label{methodSection:coarseGrained}Coarse-Grained Modeling} |
730 |
< |
|
731 |
< |
%\section{\label{methodSection:moleculeScale}Molecular-Scale Modeling} |
727 |
> |
At the very beginning of the simulation, the molecules may not be at |
728 |
> |
their constrained positions. To move a z-constrained molecule to its |
729 |
> |
specified position, a simple harmonic potential is used |
730 |
> |
\begin{equation} |
731 |
> |
U(t)=\frac{1}{2}k_{\text{Harmonic}}(z(t)-z_{\text{cons}})^{2},% |
732 |
> |
\end{equation} |
733 |
> |
where $k_{\text{Harmonic}}$ is the harmonic force constant, $z(t)$ |
734 |
> |
is the current $z$ coordinate of the center of mass of the |
735 |
> |
constrained molecule, and $z_{\text{cons}}$ is the constrained |
736 |
> |
position. The harmonic force operating on the z-constrained molecule |
737 |
> |
at time $t$ can be calculated by |
738 |
> |
\begin{equation} |
739 |
> |
F_{z_{\text{Harmonic}}}(t)=-\frac{\partial U(t)}{\partial z(t)}= |
740 |
> |
-k_{\text{Harmonic}}(z(t)-z_{\text{cons}}). |
741 |
> |
\end{equation} |