| 2 |
|
|
| 3 |
|
\section{\label{methodSection:rigidBodyIntegrators}Integrators for Rigid Body Motion in Molecular Dynamics} |
| 4 |
|
|
| 5 |
< |
In order to mimic the experiments, which are usually performed under |
| 5 |
> |
In order to mimic experiments which are usually performed under |
| 6 |
|
constant temperature and/or pressure, extended Hamiltonian system |
| 7 |
|
methods have been developed to generate statistical ensembles, such |
| 8 |
< |
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. |
| 8 |
> |
as the canonical and isobaric-isothermal ensembles. In addition to |
| 9 |
> |
the standard ensemble, specific ensembles have been developed to |
| 10 |
> |
account for the anisotropy between the lateral and normal directions |
| 11 |
> |
of membranes. The $NPAT$ ensemble, in which the normal pressure and |
| 12 |
> |
the lateral surface area of the membrane are kept constant, and the |
| 13 |
> |
$NP\gamma T$ ensemble, in which the normal pressure and the lateral |
| 14 |
> |
surface tension are kept constant were proposed to address the |
| 15 |
> |
issues. |
| 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 |
| 17 |
> |
Integration schemes for the rotational motion of the rigid molecules |
| 18 |
> |
in the microcanonical ensemble have been extensively studied over |
| 19 |
> |
the last two decades. Matubayasi developed a |
| 20 |
> |
time-reversible integrator for rigid bodies in quaternion |
| 21 |
> |
representation\cite{Matubayasi1999}. Although it is not symplectic, this integrator still |
| 22 |
> |
demonstrates a better long-time energy conservation than Euler angle |
| 23 |
> |
methods because of the time-reversible nature. Extending the |
| 24 |
> |
Trotter-Suzuki factorization to general system with a flat phase |
| 25 |
> |
space, Miller\cite{Miller2002} and his colleagues devised a novel |
| 26 |
> |
symplectic, time-reversible and volume-preserving integrator in the |
| 27 |
> |
quaternion representation, which was shown to be superior to the |
| 28 |
> |
Matubayasi's time-reversible integrator. However, all of the |
| 29 |
> |
integrators in the quaternion representation suffer from the |
| 30 |
|
computational penalty of constructing a rotation matrix from |
| 31 |
|
quaternions to evolve coordinates and velocities at every time step. |
| 32 |
< |
An alternative integration scheme utilizing rotation matrix directly |
| 33 |
< |
proposed by Dullweber, Leimkuhler and McLachlan (DLM) also preserved |
| 34 |
< |
the same structural properties of the Hamiltonian flow. In this |
| 35 |
< |
section, the integration scheme of DLM method will be reviewed and |
| 36 |
< |
extended to other ensembles. |
| 32 |
> |
An alternative integration scheme utilizing the rotation matrix |
| 33 |
> |
directly proposed by Dullweber, Leimkuhler and McLachlan (DLM) also |
| 34 |
> |
preserved the same structural properties of the Hamiltonian |
| 35 |
> |
propagator\cite{Dullweber1997}. In this section, the integration |
| 36 |
> |
scheme of DLM method will be reviewed and extended to other |
| 37 |
> |
ensembles. |
| 38 |
|
|
| 39 |
|
\subsection{\label{methodSection:DLM}Integrating the Equations of Motion: the |
| 40 |
|
DLM method} |
| 49 |
|
\item the error for a single time step is of order $\mathcal{O}\left(h^4\right)$ |
| 50 |
|
for timesteps of length $h$. |
| 51 |
|
\end{enumerate} |
| 50 |
– |
|
| 52 |
|
The integration of the equations of motion is carried out in a |
| 53 |
|
velocity-Verlet style 2-part algorithm, where $h= \delta t$: |
| 54 |
|
|
| 63 |
|
{\bf j}\left(t + h / 2 \right) &\leftarrow {\bf j}(t) |
| 64 |
|
+ \frac{h}{2} {\bf \tau}^b(t), \\ |
| 65 |
|
% |
| 66 |
< |
\mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left( h {\bf j} |
| 66 |
> |
\mathsf{Q}(t + h) &\leftarrow \mathrm{rotate}\left( h {\bf j} |
| 67 |
|
(t + h / 2) \cdot \overleftrightarrow{\mathsf{I}}^{-1} \right). |
| 68 |
|
\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} |
| 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 |
| 77 |
> |
rotates both the rotation matrix $\mathsf{Q}$ 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, \\ |
| 83 |
> |
\mathsf{Q}(t) & \leftarrow & \mathsf{Q}(0) \cdot \mathsf{R}_\alpha(\theta)^T, \\ |
| 84 |
|
{\bf j}(t) & \leftarrow & \mathsf{R}_\alpha(\theta) \cdot {\bf |
| 85 |
|
j}(0). |
| 86 |
|
\end{array} |
| 100 |
|
\end{array} |
| 101 |
|
\right). |
| 102 |
|
\end{equation} |
| 103 |
< |
All other rotations follow in a straightforward manner. |
| 103 |
> |
All other rotations follow in a straightforward manner. After the |
| 104 |
> |
first part of the propagation, the forces and body-fixed torques are |
| 105 |
> |
calculated at the new positions and orientations |
| 106 |
|
|
| 105 |
– |
After the first part of the propagation, the forces and body-fixed |
| 106 |
– |
torques are calculated at the new positions and orientations |
| 107 |
– |
|
| 107 |
|
{\tt doForces:} |
| 108 |
|
\begin{align*} |
| 109 |
|
{\bf f}(t + h) &\leftarrow |
| 110 |
|
- \left(\frac{\partial V}{\partial {\bf r}}\right)_{{\bf r}(t + h)}, \\ |
| 111 |
|
% |
| 112 |
|
{\bf \tau}^{s}(t + h) &\leftarrow {\bf u}(t + h) |
| 113 |
< |
\times \frac{\partial V}{\partial {\bf u}}, \\ |
| 113 |
> |
\times (\frac{\partial V}{\partial {\bf u}})_{u(t+h)}, \\ |
| 114 |
|
% |
| 115 |
< |
{\bf \tau}^{b}(t + h) &\leftarrow \mathsf{A}(t + h) |
| 115 |
> |
{\bf \tau}^{b}(t + h) &\leftarrow \mathsf{Q}(t + h) |
| 116 |
|
\cdot {\bf \tau}^s(t + h). |
| 117 |
|
\end{align*} |
| 118 |
< |
|
| 119 |
< |
{\sc oopse} automatically updates ${\bf u}$ when the rotation matrix |
| 121 |
< |
$\mathsf{A}$ is calculated in {\tt moveA}. Once the forces and |
| 118 |
> |
${\bf u}$ is automatically updated when the rotation matrix |
| 119 |
> |
$\mathsf{Q}$ is calculated in {\tt moveA}. Once the forces and |
| 120 |
|
torques have been obtained at the new time step, the velocities can |
| 121 |
|
be advanced to the same time value. |
| 122 |
|
|
| 130 |
|
\right) |
| 131 |
|
+ \frac{h}{2} {\bf \tau}^b(t + h) . |
| 132 |
|
\end{align*} |
| 135 |
– |
|
| 133 |
|
The matrix rotations used in the DLM method end up being more costly |
| 134 |
|
computationally than the simpler arithmetic quaternion propagation. |
| 135 |
|
With the same time step, a 1000-molecule water simulation shows an |
| 136 |
|
average 7\% increase in computation time using the DLM method in |
| 137 |
|
place of quaternions. This cost is more than justified when |
| 138 |
|
comparing the energy conservation of the two methods as illustrated |
| 139 |
< |
in Fig.~\ref{timestep}. |
| 139 |
> |
in Fig.~\ref{methodFig:timestep} where the resulting energy drift at |
| 140 |
> |
various time steps for both the DLM and quaternion integration |
| 141 |
> |
schemes is compared. All of the 1000 molecule water simulations |
| 142 |
> |
started with the same configuration, and the only difference was the |
| 143 |
> |
method for handling rotational motion. At time steps of 0.1 and 0.5 |
| 144 |
> |
fs, both methods for propagating molecule rotation conserve energy |
| 145 |
> |
fairly well, with the quaternion method showing a slight energy |
| 146 |
> |
drift over time in the 0.5 fs time step simulation. At time steps of |
| 147 |
> |
1 and 2 fs, the energy conservation benefits of the DLM method are |
| 148 |
> |
clearly demonstrated. Thus, while maintaining the same degree of |
| 149 |
> |
energy conservation, one can take considerably longer time steps, |
| 150 |
> |
leading to an overall reduction in computation time. |
| 151 |
|
|
| 152 |
|
\begin{figure} |
| 153 |
|
\centering |
| 158 |
|
increasing time step. For each time step, the dotted line is total |
| 159 |
|
energy using the DLM integrator, and the solid line comes from the |
| 160 |
|
quaternion integrator. The larger time step plots are shifted up |
| 161 |
< |
from the true energy baseline for clarity.} \label{timestep} |
| 161 |
> |
from the true energy baseline for clarity.} |
| 162 |
> |
\label{methodFig:timestep} |
| 163 |
|
\end{figure} |
| 164 |
|
|
| 156 |
– |
In Fig.~\ref{timestep}, the resulting energy drift at various time |
| 157 |
– |
steps for both the DLM and quaternion integration schemes is |
| 158 |
– |
compared. All of the 1000 molecule water simulations started with |
| 159 |
– |
the same configuration, and the only difference was the method for |
| 160 |
– |
handling rotational motion. At time steps of 0.1 and 0.5 fs, both |
| 161 |
– |
methods for propagating molecule rotation conserve energy fairly |
| 162 |
– |
well, with the quaternion method showing a slight energy drift over |
| 163 |
– |
time in the 0.5 fs time step simulation. At time steps of 1 and 2 |
| 164 |
– |
fs, the energy conservation benefits of the DLM method are clearly |
| 165 |
– |
demonstrated. Thus, while maintaining the same degree of energy |
| 166 |
– |
conservation, one can take considerably longer time steps, leading |
| 167 |
– |
to an overall reduction in computation time. |
| 168 |
– |
|
| 165 |
|
\subsection{\label{methodSection:NVT}Nos\'{e}-Hoover Thermostatting} |
| 166 |
|
|
| 167 |
< |
The Nos\'e-Hoover equations of motion are given by\cite{Hoover85} |
| 167 |
> |
The Nos\'e-Hoover equations of motion are given by\cite{Hoover1985} |
| 168 |
|
\begin{eqnarray} |
| 169 |
|
\dot{{\bf r}} & = & {\bf v}, \\ |
| 170 |
|
\dot{{\bf v}} & = & \frac{{\bf f}}{m} - \chi {\bf v} ,\\ |
| 171 |
< |
\dot{\mathsf{A}} & = & \mathsf{A} \cdot |
| 171 |
> |
\dot{\mathsf{Q}} & = & \mathsf{Q} \cdot |
| 172 |
|
\mbox{ skew}\left(\overleftrightarrow{\mathsf{I}}^{-1} \cdot {\bf j}\right), \\ |
| 173 |
|
\dot{{\bf j}} & = & {\bf j} \times \left( |
| 174 |
|
\overleftrightarrow{\mathsf{I}}^{-1} \cdot {\bf j} \right) - \mbox{ |
| 175 |
< |
rot}\left(\mathsf{A}^{T} \cdot \frac{\partial V}{\partial |
| 176 |
< |
\mathsf{A}} \right) - \chi {\bf j}. \label{eq:nosehoovereom} |
| 175 |
> |
rot}\left(\mathsf{Q}^{T} \cdot \frac{\partial V}{\partial |
| 176 |
> |
\mathsf{Q}} \right) - \chi {\bf j}. \label{eq:nosehoovereom} |
| 177 |
|
\end{eqnarray} |
| 182 |
– |
|
| 178 |
|
$\chi$ is an ``extra'' variable included in the extended system, and |
| 179 |
|
it is propagated using the first order equation of motion |
| 180 |
|
\begin{equation} |
| 181 |
|
\dot{\chi} = \frac{1}{\tau_{T}^2} \left( |
| 182 |
|
\frac{T}{T_{\mathrm{target}}} - 1 \right). \label{eq:nosehooverext} |
| 183 |
|
\end{equation} |
| 184 |
< |
|
| 185 |
< |
The instantaneous temperature $T$ is proportional to the total |
| 186 |
< |
kinetic energy (both translational and orientational) and is given |
| 192 |
< |
by |
| 184 |
> |
where $\tau_T$ is the time constant for relaxation of the |
| 185 |
> |
temperature to the target value, and the instantaneous temperature |
| 186 |
> |
$T$ is given by |
| 187 |
|
\begin{equation} |
| 188 |
< |
T = \frac{2 K}{f k_B} |
| 188 |
> |
T = \frac{2 K}{f k_B}. |
| 189 |
|
\end{equation} |
| 190 |
|
Here, $f$ is the total number of degrees of freedom in the system, |
| 191 |
|
\begin{equation} |
| 192 |
|
f = 3 N + 3 N_{\mathrm{orient}} - N_{\mathrm{constraints}}, |
| 193 |
|
\end{equation} |
| 194 |
< |
and $K$ is the total kinetic energy, |
| 195 |
< |
\begin{equation} |
| 196 |
< |
K = \sum_{i=1}^{N} \frac{1}{2} m_i {\bf v}_i^T \cdot {\bf v}_i + |
| 203 |
< |
\sum_{i=1}^{N_{\mathrm{orient}}} \frac{1}{2} {\bf j}_i^T \cdot |
| 204 |
< |
\overleftrightarrow{\mathsf{I}}_i^{-1} \cdot {\bf j}_i. |
| 205 |
< |
\end{equation} |
| 194 |
> |
where $N_{\mathrm{orient}}$ is the number of molecules with |
| 195 |
> |
orientational degrees of freedom. The integration of the equations of motion |
| 196 |
> |
is carried out in a velocity-Verlet style 2 part algorithm: |
| 197 |
|
|
| 207 |
– |
In eq.(\ref{eq:nosehooverext}), $\tau_T$ is the time constant for |
| 208 |
– |
relaxation of the temperature to the target value. To set values |
| 209 |
– |
for $\tau_T$ or $T_{\mathrm{target}}$ in a simulation, one would use |
| 210 |
– |
the {\tt tauThermostat} and {\tt targetTemperature} keywords in the |
| 211 |
– |
{\tt .bass} file. The units for {\tt tauThermostat} are fs, and the |
| 212 |
– |
units for the {\tt targetTemperature} are degrees K. The |
| 213 |
– |
integration of the equations of motion is carried out in a |
| 214 |
– |
velocity-Verlet style 2 part algorithm: |
| 215 |
– |
|
| 198 |
|
{\tt moveA:} |
| 199 |
|
\begin{align*} |
| 200 |
|
T(t) &\leftarrow \left\{{\bf v}(t)\right\}, \left\{{\bf j}(t)\right\} ,\\ |
| 210 |
|
+ \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t) |
| 211 |
|
\chi(t) \right) ,\\ |
| 212 |
|
% |
| 213 |
< |
\mathsf{A}(t + h) &\leftarrow \mathrm{rotate} |
| 213 |
> |
\mathsf{Q}(t + h) &\leftarrow \mathrm{rotate} |
| 214 |
|
\left(h * {\bf j}(t + h / 2) |
| 215 |
|
\overleftrightarrow{\mathsf{I}}^{-1} \right) ,\\ |
| 216 |
|
% |
| 218 |
|
+ \frac{h}{2 \tau_T^2} \left( \frac{T(t)} |
| 219 |
|
{T_{\mathrm{target}}} - 1 \right) . |
| 220 |
|
\end{align*} |
| 239 |
– |
|
| 221 |
|
Here $\mathrm{rotate}(h * {\bf j} |
| 222 |
< |
\overleftrightarrow{\mathsf{I}}^{-1})$ is the same symplectic |
| 223 |
< |
Trotter factorization of the three rotation operations that was |
| 224 |
< |
discussed in the section on the DLM integrator. Note that this |
| 225 |
< |
operation modifies both the rotation matrix $\mathsf{A}$ and the |
| 226 |
< |
angular momentum ${\bf j}$. {\tt moveA} propagates velocities by a |
| 227 |
< |
half time step, and positional degrees of freedom by a full time |
| 228 |
< |
step. The new positions (and orientations) are then used to |
| 229 |
< |
calculate a new set of forces and torques in exactly the same way |
| 230 |
< |
they are calculated in the {\tt doForces} portion of the DLM |
| 231 |
< |
integrator. |
| 232 |
< |
|
| 252 |
< |
Once the forces and torques have been obtained at the new time step, |
| 253 |
< |
the temperature, velocities, and the extended system variable can be |
| 222 |
> |
\overleftrightarrow{\mathsf{I}}^{-1})$ is the same symplectic Strang |
| 223 |
> |
factorization of the three rotation operations that was discussed in |
| 224 |
> |
the section on the DLM integrator. Note that this operation |
| 225 |
> |
modifies both the rotation matrix $\mathsf{Q}$ and the angular |
| 226 |
> |
momentum ${\bf j}$. {\tt moveA} propagates velocities by a half |
| 227 |
> |
time step, and positional degrees of freedom by a full time step. |
| 228 |
> |
The new positions (and orientations) are then used to calculate a |
| 229 |
> |
new set of forces and torques in exactly the same way they are |
| 230 |
> |
calculated in the {\tt doForces} portion of the DLM integrator. Once |
| 231 |
> |
the forces and torques have been obtained at the new time step, the |
| 232 |
> |
temperature, velocities, and the extended system variable can be |
| 233 |
|
advanced to the same time value. |
| 234 |
|
|
| 235 |
|
{\tt moveB:} |
| 251 |
|
\left( {\bf \tau}^b(t + h) - {\bf j}(t + h) |
| 252 |
|
\chi(t + h) \right) . |
| 253 |
|
\end{align*} |
| 275 |
– |
|
| 254 |
|
Since ${\bf v}(t + h)$ and ${\bf j}(t + h)$ are required to |
| 255 |
|
caclculate $T(t + h)$ as well as $\chi(t + h)$, they indirectly |
| 256 |
|
depend on their own values at time $t + h$. {\tt moveB} is |
| 257 |
|
therefore done in an iterative fashion until $\chi(t + h)$ becomes |
| 258 |
< |
self-consistent. The relative tolerance for the self-consistency |
| 259 |
< |
check defaults to a value of $\mbox{10}^{-6}$, but {\sc oopse} will |
| 260 |
< |
terminate the iteration after 4 loops even if the consistency check |
| 283 |
< |
has not been satisfied. |
| 284 |
< |
|
| 285 |
< |
The Nos\'e-Hoover algorithm is known to conserve a Hamiltonian for |
| 286 |
< |
the extended system that is, to within a constant, identical to the |
| 287 |
< |
Helmholtz free energy,\cite{melchionna93} |
| 258 |
> |
self-consistent. The Nos\'e-Hoover algorithm is known to conserve a |
| 259 |
> |
Hamiltonian for the extended system that is, to within a constant, |
| 260 |
> |
identical to the Helmholtz free energy,\cite{Melchionna1993} |
| 261 |
|
\begin{equation} |
| 262 |
|
H_{\mathrm{NVT}} = V + K + f k_B T_{\mathrm{target}} \left( |
| 263 |
|
\frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime) |
| 264 |
|
dt^\prime \right). |
| 265 |
|
\end{equation} |
| 266 |
|
Poor choices of $h$ or $\tau_T$ can result in non-conservation of |
| 267 |
< |
$H_{\mathrm{NVT}}$, so the conserved quantity is maintained in the |
| 268 |
< |
last column of the {\tt .stat} file to allow checks on the quality |
| 296 |
< |
of the integration. |
| 267 |
> |
$H_{\mathrm{NVT}}$, so the conserved quantity should be checked |
| 268 |
> |
periodically to verify the quality of the integration. |
| 269 |
|
|
| 298 |
– |
Bond constraints are applied at the end of both the {\tt moveA} and |
| 299 |
– |
{\tt moveB} portions of the algorithm. Details on the constraint |
| 300 |
– |
algorithms are given in section \ref{oopseSec:rattle}. |
| 301 |
– |
|
| 270 |
|
\subsection{\label{methodSection:NPTi}Constant-pressure integration with |
| 271 |
< |
isotropic box deformations (NPTi)} |
| 271 |
> |
isotropic box (NPTi)} |
| 272 |
|
|
| 273 |
< |
To carry out isobaric-isothermal ensemble calculations {\sc oopse} |
| 274 |
< |
implements the Melchionna modifications to the |
| 275 |
< |
Nos\'e-Hoover-Andersen equations of motion,\cite{melchionna93} |
| 308 |
< |
|
| 273 |
> |
We can used an isobaric-isothermal ensemble integrator which is |
| 274 |
> |
implemented using the Melchionna modifications to the |
| 275 |
> |
Nos\'e-Hoover-Andersen equations of motion\cite{Melchionna1993} |
| 276 |
|
\begin{eqnarray} |
| 277 |
|
\dot{{\bf r}} & = & {\bf v} + \eta \left( {\bf r} - {\bf R}_0 \right), \\ |
| 278 |
|
\dot{{\bf v}} & = & \frac{{\bf f}}{m} - (\eta + \chi) {\bf v}, \\ |
| 279 |
< |
\dot{\mathsf{A}} & = & \mathsf{A} \cdot |
| 279 |
> |
\dot{\mathsf{Q}} & = & \mathsf{Q} \cdot |
| 280 |
|
\mbox{ skew}\left(\overleftrightarrow{I}^{-1} \cdot {\bf j}\right),\\ |
| 281 |
|
\dot{{\bf j}} & = & {\bf j} \times \left( |
| 282 |
|
\overleftrightarrow{I}^{-1} \cdot {\bf j} \right) - \mbox{ |
| 283 |
< |
rot}\left(\mathsf{A}^{T} \cdot \frac{\partial |
| 284 |
< |
V}{\partial \mathsf{A}} \right) - \chi {\bf j}, \\ |
| 283 |
> |
rot}\left(\mathsf{Q}^{T} \cdot \frac{\partial |
| 284 |
> |
V}{\partial \mathsf{Q}} \right) - \chi {\bf j}, \\ |
| 285 |
|
\dot{\chi} & = & \frac{1}{\tau_{T}^2} \left( |
| 286 |
|
\frac{T}{T_{\mathrm{target}}} - 1 \right) ,\\ |
| 287 |
|
\dot{\eta} & = & \frac{1}{\tau_{B}^2 f k_B T_{\mathrm{target}}} V |
| 289 |
|
P_{\mathrm{target}} \right), \\ |
| 290 |
|
\dot{\mathcal{V}} & = & 3 \mathcal{V} \eta . \label{eq:melchionna1} |
| 291 |
|
\end{eqnarray} |
| 325 |
– |
|
| 292 |
|
$\chi$ and $\eta$ are the ``extra'' degrees of freedom in the |
| 293 |
|
extended system. $\chi$ is a thermostat, and it has the same |
| 294 |
|
function as it does in the Nos\'e-Hoover NVT integrator. $\eta$ is |
| 321 |
|
the Pressure tensor, |
| 322 |
|
\begin{equation} |
| 323 |
|
P(t) = \frac{1}{3} \mathrm{Tr} \left( |
| 324 |
< |
\overleftrightarrow{\mathsf{P}}(t). \right) |
| 324 |
> |
\overleftrightarrow{\mathsf{P}}(t) \right) . |
| 325 |
|
\end{equation} |
| 326 |
< |
|
| 327 |
< |
In eq.(\ref{eq:melchionna1}), $\tau_B$ is the time constant for |
| 362 |
< |
relaxation of the pressure to the target value. To set values for |
| 363 |
< |
$\tau_B$ or $P_{\mathrm{target}}$ in a simulation, one would use the |
| 364 |
< |
{\tt tauBarostat} and {\tt targetPressure} keywords in the {\tt |
| 365 |
< |
.bass} file. The units for {\tt tauBarostat} are fs, and the units |
| 366 |
< |
for the {\tt targetPressure} are atmospheres. Like in the NVT |
| 326 |
> |
In Eq.~\ref{eq:melchionna1}, $\tau_B$ is the time constant for |
| 327 |
> |
relaxation of the pressure to the target value. Like in the NVT |
| 328 |
|
integrator, the integration of the equations of motion is carried |
| 329 |
|
out in a velocity-Verlet style 2 part algorithm: |
| 330 |
|
|
| 342 |
|
+ \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t) |
| 343 |
|
\chi(t) \right), \\ |
| 344 |
|
% |
| 345 |
< |
\mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left(h * |
| 345 |
> |
\mathsf{Q}(t + h) &\leftarrow \mathrm{rotate}\left(h * |
| 346 |
|
{\bf j}(t + h / 2) \overleftrightarrow{\mathsf{I}}^{-1} |
| 347 |
|
\right) ,\\ |
| 348 |
|
% |
| 362 |
|
\mathsf{H}(t + h) &\leftarrow e^{-h \eta(t + h / 2)} |
| 363 |
|
\mathsf{H}(t). |
| 364 |
|
\end{align*} |
| 404 |
– |
|
| 365 |
|
Most of these equations are identical to their counterparts in the |
| 366 |
|
NVT integrator, but the propagation of positions to time $t + h$ |
| 367 |
< |
depends on the positions at the same time. {\sc oopse} carries out |
| 368 |
< |
this step iteratively (with a limit of 5 passes through the |
| 369 |
< |
iterative loop). Also, the simulation box $\mathsf{H}$ is scaled |
| 370 |
< |
uniformly for one full time step by an exponential factor that |
| 371 |
< |
depends on the value of $\eta$ at time $t + h / 2$. Reshaping the |
| 412 |
< |
box uniformly also scales the volume of the box by |
| 367 |
> |
depends on the positions at the same time. The simulation box |
| 368 |
> |
$\mathsf{H}$ is scaled uniformly for one full time step by an |
| 369 |
> |
exponential factor that depends on the value of $\eta$ at time $t + |
| 370 |
> |
h / 2$. Reshaping the box uniformly also scales the volume of the |
| 371 |
> |
box by |
| 372 |
|
\begin{equation} |
| 373 |
|
\mathcal{V}(t + h) \leftarrow e^{ - 3 h \eta(t + h /2)}. |
| 374 |
|
\mathcal{V}(t) |
| 375 |
|
\end{equation} |
| 417 |
– |
|
| 376 |
|
The {\tt doForces} step for the NPTi integrator is exactly the same |
| 377 |
|
as in both the DLM and NVT integrators. Once the forces and torques |
| 378 |
|
have been obtained at the new time step, the velocities can be |
| 404 |
|
\tau}^b(t + h) - {\bf j}(t + h) |
| 405 |
|
\chi(t + h) \right) . |
| 406 |
|
\end{align*} |
| 449 |
– |
|
| 407 |
|
Once again, since ${\bf v}(t + h)$ and ${\bf j}(t + h)$ are required |
| 408 |
|
to caclculate $T(t + h)$, $P(t + h)$, $\chi(t + h)$, and $\eta(t + |
| 409 |
|
h)$, they indirectly depend on their own values at time $t + h$. |
| 410 |
|
{\tt moveB} is therefore done in an iterative fashion until $\chi(t |
| 411 |
< |
+ h)$ and $\eta(t + h)$ become self-consistent. The relative |
| 455 |
< |
tolerance for the self-consistency check defaults to a value of |
| 456 |
< |
$\mbox{10}^{-6}$, but {\sc oopse} will terminate the iteration after |
| 457 |
< |
4 loops even if the consistency check has not been satisfied. |
| 411 |
> |
+ h)$ and $\eta(t + h)$ become self-consistent. |
| 412 |
|
|
| 413 |
|
The Melchionna modification of the Nos\'e-Hoover-Andersen algorithm |
| 414 |
|
is known to conserve a Hamiltonian for the extended system that is, |
| 418 |
|
\frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime) |
| 419 |
|
dt^\prime \right) + P_{\mathrm{target}} \mathcal{V}(t). |
| 420 |
|
\end{equation} |
| 421 |
< |
Poor choices of $\delta t$, $\tau_T$, or $\tau_B$ can result in |
| 422 |
< |
non-conservation of $H_{\mathrm{NPTi}}$, so the conserved quantity |
| 423 |
< |
is maintained in the last column of the {\tt .stat} file to allow |
| 470 |
< |
checks on the quality of the integration. It is also known that |
| 471 |
< |
this algorithm samples the equilibrium distribution for the enthalpy |
| 472 |
< |
(including contributions for the thermostat and barostat), |
| 421 |
> |
It is also known that this algorithm samples the equilibrium |
| 422 |
> |
distribution for the enthalpy (including contributions for the |
| 423 |
> |
thermostat and barostat), |
| 424 |
|
\begin{equation} |
| 425 |
|
H_{\mathrm{NPTi}} = V + K + \frac{f k_B T_{\mathrm{target}}}{2} |
| 426 |
|
\left( \chi^2 \tau_T^2 + \eta^2 \tau_B^2 \right) + |
| 427 |
|
P_{\mathrm{target}} \mathcal{V}(t). |
| 428 |
|
\end{equation} |
| 429 |
|
|
| 479 |
– |
Bond constraints are applied at the end of both the {\tt moveA} and |
| 480 |
– |
{\tt moveB} portions of the algorithm. Details on the constraint |
| 481 |
– |
algorithms are given in section \ref{oopseSec:rattle}. |
| 482 |
– |
|
| 430 |
|
\subsection{\label{methodSection:NPTf}Constant-pressure integration with a |
| 431 |
|
flexible box (NPTf)} |
| 432 |
|
|
| 441 |
|
\dot{{\bf r}} & = & {\bf v} + \overleftrightarrow{\eta} \cdot \left( {\bf r} - {\bf R}_0 \right), \\ |
| 442 |
|
\dot{{\bf v}} & = & \frac{{\bf f}}{m} - (\overleftrightarrow{\eta} + |
| 443 |
|
\chi \cdot \mathsf{1}) {\bf v}, \\ |
| 444 |
< |
\dot{\mathsf{A}} & = & \mathsf{A} \cdot |
| 444 |
> |
\dot{\mathsf{Q}} & = & \mathsf{Q} \cdot |
| 445 |
|
\mbox{ skew}\left(\overleftrightarrow{I}^{-1} \cdot {\bf j}\right) ,\\ |
| 446 |
|
\dot{{\bf j}} & = & {\bf j} \times \left( |
| 447 |
|
\overleftrightarrow{I}^{-1} \cdot {\bf j} \right) - \mbox{ |
| 448 |
< |
rot}\left(\mathsf{A}^{T} \cdot \frac{\partial |
| 449 |
< |
V}{\partial \mathsf{A}} \right) - \chi {\bf j} ,\\ |
| 448 |
> |
rot}\left(\mathsf{Q}^{T} \cdot \frac{\partial |
| 449 |
> |
V}{\partial \mathsf{Q}} \right) - \chi {\bf j} ,\\ |
| 450 |
|
\dot{\chi} & = & \frac{1}{\tau_{T}^2} \left( |
| 451 |
|
\frac{T}{T_{\mathrm{target}}} - 1 \right) ,\\ |
| 452 |
|
\dot{\overleftrightarrow{\eta}} & = & \frac{1}{\tau_{B}^2 f k_B |
| 479 |
|
+ \frac{h}{2} \left( {\bf \tau}^b(t) - {\bf j}(t) |
| 480 |
|
\chi(t) \right), \\ |
| 481 |
|
% |
| 482 |
< |
\mathsf{A}(t + h) &\leftarrow \mathrm{rotate}\left(h * |
| 482 |
> |
\mathsf{Q}(t + h) &\leftarrow \mathrm{rotate}\left(h * |
| 483 |
|
{\bf j}(t + h / 2) \overleftrightarrow{\mathsf{I}}^{-1} |
| 484 |
|
\right), \\ |
| 485 |
|
% |
| 500 |
|
\mathsf{H}(t + h) &\leftarrow \mathsf{H}(t) \cdot e^{-h |
| 501 |
|
\overleftrightarrow{\eta}(t + h / 2)} . |
| 502 |
|
\end{align*} |
| 503 |
< |
{\sc oopse} uses a power series expansion truncated at second order |
| 504 |
< |
for the exponential operation which scales the simulation box. |
| 503 |
> |
Here, a power series expansion truncated at second order for the |
| 504 |
> |
exponential operation is used to scale the simulation box. The {\tt |
| 505 |
> |
moveB} portion of the algorithm is largely unchanged from the NPTi |
| 506 |
> |
integrator: |
| 507 |
|
|
| 559 |
– |
The {\tt moveB} portion of the algorithm is largely unchanged from |
| 560 |
– |
the NPTi integrator: |
| 561 |
– |
|
| 508 |
|
{\tt moveB:} |
| 509 |
|
\begin{align*} |
| 510 |
|
T(t + h) &\leftarrow \left\{{\bf v}(t + h)\right\}, |
| 534 |
|
+ h / 2 \right) + \frac{h}{2} \left( {\bf \tau}^b(t |
| 535 |
|
+ h) - {\bf j}(t + h) \chi(t + h) \right) . |
| 536 |
|
\end{align*} |
| 591 |
– |
|
| 537 |
|
The iterative schemes for both {\tt moveA} and {\tt moveB} are |
| 538 |
< |
identical to those described for the NPTi integrator. |
| 539 |
< |
|
| 540 |
< |
The NPTf integrator is known to conserve the following Hamiltonian: |
| 541 |
< |
\begin{equation} |
| 597 |
< |
H_{\mathrm{NPTf}} = V + K + f k_B T_{\mathrm{target}} \left( |
| 538 |
> |
identical to those described for the NPTi integrator. The NPTf |
| 539 |
> |
integrator is known to conserve the following Hamiltonian: |
| 540 |
> |
\begin{eqnarray*} |
| 541 |
> |
H_{\mathrm{NPTf}} & = & V + K + f k_B T_{\mathrm{target}} \left( |
| 542 |
|
\frac{\tau_{T}^2 \chi^2(t)}{2} + \int_{0}^{t} \chi(t^\prime) |
| 543 |
< |
dt^\prime \right) + P_{\mathrm{target}} \mathcal{V}(t) + \frac{f k_B |
| 543 |
> |
dt^\prime \right) \\ |
| 544 |
> |
& & + P_{\mathrm{target}} \mathcal{V}(t) + \frac{f k_B |
| 545 |
|
T_{\mathrm{target}}}{2} |
| 546 |
|
\mathrm{Tr}\left[\overleftrightarrow{\eta}(t)\right]^2 \tau_B^2. |
| 547 |
< |
\end{equation} |
| 603 |
< |
|
| 547 |
> |
\end{eqnarray*} |
| 548 |
|
This integrator must be used with care, particularly in liquid |
| 549 |
|
simulations. Liquids have very small restoring forces in the |
| 550 |
|
off-diagonal directions, and the simulation box can very quickly |
| 553 |
|
finds most use in simulating crystals or liquid crystals which |
| 554 |
|
assume non-orthorhombic geometries. |
| 555 |
|
|
| 556 |
< |
\subsection{\label{methodSection:otherSpecialEnsembles}Other Special Ensembles} |
| 556 |
> |
\subsection{\label{methodSection:NPAT}NPAT Ensemble} |
| 557 |
|
|
| 558 |
< |
\subsubsection{\label{methodSection:NPAT}NPAT Ensemble} |
| 558 |
> |
A comprehensive understanding of relations between structures and |
| 559 |
> |
functions in biological membrane system ultimately relies on |
| 560 |
> |
structure and dynamics of lipid bilayers, which are strongly |
| 561 |
> |
affected by the interfacial interaction between lipid molecules and |
| 562 |
> |
surrounding media. One quantity used to describe the interfacial |
| 563 |
> |
interaction is the average surface area per lipid. |
| 564 |
> |
Constant area and constant lateral pressure simulations can be |
| 565 |
> |
achieved by extending the standard NPT ensemble with a different |
| 566 |
> |
pressure control strategy |
| 567 |
|
|
| 616 |
– |
A comprehensive understanding of structure¨Cfunction relations of |
| 617 |
– |
biological membrane system ultimately relies on structure and |
| 618 |
– |
dynamics of lipid bilayer, which are strongly affected by the |
| 619 |
– |
interfacial interaction between lipid molecules and surrounding |
| 620 |
– |
media. One quantity to describe the interfacial interaction is so |
| 621 |
– |
called the average surface area per lipid. Constat area and constant |
| 622 |
– |
lateral pressure simulation can be achieved by extending the |
| 623 |
– |
standard NPT ensemble with a different pressure control strategy |
| 624 |
– |
|
| 568 |
|
\begin{equation} |
| 569 |
< |
\.{\overleftrightarrow{{\eta _{\alpha \beta}}}}=\left\{\begin{array}{ll} |
| 569 |
> |
\dot {\overleftrightarrow{\eta}} _{\alpha \beta}=\left\{\begin{array}{ll} |
| 570 |
|
\frac{{V(P_{\alpha \beta } - P_{{\rm{target}}} )}}{{\tau_{\rm{B}}^{\rm{2}} fk_B T_{{\rm{target}}} }} |
| 571 |
< |
& \mbox{if \[ \alpha = \beta = z)$}\\ |
| 571 |
> |
& \mbox{if $ \alpha = \beta = z$}\\ |
| 572 |
|
0 & \mbox{otherwise}\\ |
| 573 |
|
\end{array} |
| 574 |
|
\right. |
| 577 |
|
Note that the iterative schemes for NPAT are identical to those |
| 578 |
|
described for the NPTi integrator. |
| 579 |
|
|
| 580 |
< |
\subsubsection{\label{methodSection:NPrT}NP$\gamma$T Ensemble} |
| 580 |
> |
\subsection{\label{methodSection:NPrT}NP$\gamma$T |
| 581 |
> |
Ensemble} |
| 582 |
|
|
| 583 |
|
Theoretically, the surface tension $\gamma$ of a stress free |
| 584 |
|
membrane system should be zero since its surface free energy $G$ is |
| 585 |
< |
minimum with respect to surface area $A$ |
| 586 |
< |
\[ |
| 587 |
< |
\gamma = \frac{{\partial G}}{{\partial A}}. |
| 588 |
< |
\] |
| 589 |
< |
However, a surface tension of zero is not appropriate for relatively |
| 590 |
< |
small patches of membrane. In order to eliminate the edge effect of |
| 591 |
< |
the membrane simulation, a special ensemble, NP$\gamma$T, is |
| 648 |
< |
proposed to maintain the lateral surface tension and normal |
| 649 |
< |
pressure. The equation of motion for cell size control tensor, |
| 650 |
< |
$\eta$, in $NP\gamma T$ is |
| 585 |
> |
minimum with respect to surface area $A$, $\gamma = \frac{{\partial |
| 586 |
> |
G}}{{\partial A}}.$ However, a surface tension of zero is not |
| 587 |
> |
appropriate for relatively small patches of membrane. In order to |
| 588 |
> |
eliminate the edge effect of membrane simulations, a special |
| 589 |
> |
ensemble, NP$\gamma$T, has been proposed to maintain the lateral |
| 590 |
> |
surface tension and normal pressure. The equation of motion for the |
| 591 |
> |
cell size control tensor, $\eta$, in $NP\gamma T$ is |
| 592 |
|
\begin{equation} |
| 593 |
< |
\.{\overleftrightarrow{{\eta _{\alpha \beta}}}}=\left\{\begin{array}{ll} |
| 593 |
> |
\dot {\overleftrightarrow{\eta}} _{\alpha \beta}=\left\{\begin{array}{ll} |
| 594 |
|
- A_{xy} (\gamma _\alpha - \gamma _{{\rm{target}}} ) & \mbox{$\alpha = \beta = x$ or $\alpha = \beta = y$}\\ |
| 595 |
|
\frac{{V(P_{\alpha \beta } - P_{{\rm{target}}} )}}{{\tau _{\rm{B}}^{\rm{2}} fk_B T_{{\rm{target}}}}} & \mbox{$\alpha = \beta = z$} \\ |
| 596 |
|
0 & \mbox{$\alpha \ne \beta$} \\ |
| 597 |
+ |
\end{array} |
| 598 |
|
\right. |
| 599 |
|
\end{equation} |
| 600 |
|
where $ \gamma _{{\rm{target}}}$ is the external surface tension and |
| 601 |
|
the instantaneous surface tensor $\gamma _\alpha$ is given by |
| 602 |
|
\begin{equation} |
| 603 |
< |
\gamma _\alpha = - h_z |
| 604 |
< |
(\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\leftrightarrow$}} |
| 663 |
< |
\over P} _{\alpha \alpha } - P_{{\rm{target}}} ) |
| 603 |
> |
\gamma _\alpha = - h_z( \overleftrightarrow{P} _{\alpha \alpha } |
| 604 |
> |
- P_{{\rm{target}}} ) |
| 605 |
|
\label{methodEquation:instantaneousSurfaceTensor} |
| 606 |
|
\end{equation} |
| 666 |
– |
|
| 607 |
|
There is one additional extended system integrator (NPTxyz), in |
| 608 |
|
which each attempt to preserve the target pressure along the box |
| 609 |
|
walls perpendicular to that particular axis. The lengths of the box |
| 610 |
|
axes are allowed to fluctuate independently, but the angle between |
| 611 |
|
the box axes does not change. It should be noted that the NPTxyz |
| 612 |
|
integrator is a special case of $NP\gamma T$ if the surface tension |
| 613 |
< |
$\gamma$ is set to zero. |
| 613 |
> |
$\gamma$ is set to zero, and if $x$ and $y$ can move independently. |
| 614 |
|
|
| 615 |
< |
%\section{\label{methodSection:constraintMethod}Constraint Method} |
| 615 |
> |
\section{\label{methodSection:zcons}The Z-Constraint Method} |
| 616 |
|
|
| 617 |
< |
%\subsection{\label{methodSection:bondConstraint}Bond Constraint for Rigid Body} |
| 618 |
< |
|
| 619 |
< |
%\subsection{\label{methodSection:zcons}Z-constraint Method} |
| 620 |
< |
|
| 621 |
< |
\section{\label{methodSection:langevin}Integrators for Langevin Dynamics of Rigid Bodies} |
| 622 |
< |
|
| 623 |
< |
\subsection{\label{methodSection:temperature}Temperature Control} |
| 624 |
< |
|
| 625 |
< |
\subsection{\label{methodSection:pressureControl}Pressure Control} |
| 626 |
< |
|
| 627 |
< |
\section{\label{methodSection:hydrodynamics}Hydrodynamics} |
| 628 |
< |
|
| 629 |
< |
%\section{\label{methodSection:coarseGrained}Coarse-Grained Modeling} |
| 630 |
< |
|
| 631 |
< |
%\section{\label{methodSection:moleculeScale}Molecular-Scale Modeling} |
| 617 |
> |
Based on the fluctuation-dissipation theorem, a force |
| 618 |
> |
auto-correlation method was developed by Roux and Karplus to |
| 619 |
> |
investigate the dynamics of ions inside ion channels\cite{Roux1991}. |
| 620 |
> |
The time-dependent friction coefficient can be calculated from the |
| 621 |
> |
deviation of the instantaneous force from its mean force. |
| 622 |
> |
\begin{equation} |
| 623 |
> |
\xi(z,t)=\langle\delta F(z,t)\delta F(z,0)\rangle/k_{B}T, |
| 624 |
> |
\end{equation} |
| 625 |
> |
where% |
| 626 |
> |
\begin{equation} |
| 627 |
> |
\delta F(z,t)=F(z,t)-\langle F(z,t)\rangle. |
| 628 |
> |
\end{equation} |
| 629 |
> |
If the time-dependent friction decays rapidly, the static friction |
| 630 |
> |
coefficient can be approximated by |
| 631 |
> |
\begin{equation} |
| 632 |
> |
\xi_{\text{static}}(z)=\int_{0}^{\infty}\langle\delta F(z,t)\delta |
| 633 |
> |
F(z,0)\rangle dt. |
| 634 |
> |
\end{equation} |
| 635 |
> |
Allowing diffusion constant to then be calculated through the |
| 636 |
> |
Einstein relation:\cite{Marrink1994} |
| 637 |
> |
\begin{equation} |
| 638 |
> |
D(z)=\frac{k_{B}T}{\xi_{\text{static}}(z)}=\frac{(k_{B}T)^{2}}{\int_{0}^{\infty |
| 639 |
> |
}\langle\delta F(z,t)\delta F(z,0)\rangle dt}.% |
| 640 |
> |
\end{equation} |
| 641 |
> |
The Z-Constraint method, which fixes the z coordinates of the |
| 642 |
> |
molecules with respect to the center of the mass of the system, has |
| 643 |
> |
been a method suggested to obtain the forces required for the force |
| 644 |
> |
auto-correlation calculation.\cite{Marrink1994} However, simply |
| 645 |
> |
resetting the coordinate will move the center of the mass of the |
| 646 |
> |
whole system. To avoid this problem, we reset the forces of |
| 647 |
> |
z-constrained molecules as well as subtract the total constraint |
| 648 |
> |
forces from the rest of the system after the force calculation at |
| 649 |
> |
each time step instead of resetting the coordinate. After the force |
| 650 |
> |
calculation, we define $G_\alpha$ as |
| 651 |
> |
\begin{equation} |
| 652 |
> |
G_{\alpha} = \sum_i F_{\alpha i}, \label{oopseEq:zc1} |
| 653 |
> |
\end{equation} |
| 654 |
> |
where $F_{\alpha i}$ is the force in the z direction of atom $i$ in |
| 655 |
> |
z-constrained molecule $\alpha$. The forces of the z constrained |
| 656 |
> |
molecule are then set to: |
| 657 |
> |
\begin{equation} |
| 658 |
> |
F_{\alpha i} = F_{\alpha i} - |
| 659 |
> |
\frac{m_{\alpha i} G_{\alpha}}{\sum_i m_{\alpha i}}. |
| 660 |
> |
\end{equation} |
| 661 |
> |
Here, $m_{\alpha i}$ is the mass of atom $i$ in the z-constrained |
| 662 |
> |
molecule. Having rescaled the forces, the velocities must also be |
| 663 |
> |
rescaled to subtract out any center of mass velocity in the z |
| 664 |
> |
direction. |
| 665 |
> |
\begin{equation} |
| 666 |
> |
v_{\alpha i} = v_{\alpha i} - |
| 667 |
> |
\frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}}, |
| 668 |
> |
\end{equation} |
| 669 |
> |
where $v_{\alpha i}$ is the velocity of atom $i$ in the z direction. |
| 670 |
> |
Lastly, all of the accumulated z constrained forces must be |
| 671 |
> |
subtracted from the system to keep the system center of mass from |
| 672 |
> |
drifting. |
| 673 |
> |
\begin{equation} |
| 674 |
> |
F_{\beta i} = F_{\beta i} - \frac{m_{\beta i} \sum_{\alpha} |
| 675 |
> |
G_{\alpha}} |
| 676 |
> |
{\sum_{\beta}\sum_i m_{\beta i}}, |
| 677 |
> |
\end{equation} |
| 678 |
> |
where $\beta$ are all of the unconstrained molecules in the system. |
| 679 |
> |
Similarly, the velocities of the unconstrained molecules must also |
| 680 |
> |
be scaled. |
| 681 |
> |
\begin{equation} |
| 682 |
> |
v_{\beta i} = v_{\beta i} + \sum_{\alpha} |
| 683 |
> |
\frac{\sum_i m_{\alpha i} v_{\alpha i}}{\sum_i m_{\alpha i}}. |
| 684 |
> |
\end{equation} |
| 685 |
> |
At the very beginning of the simulation, the molecules may not be at |
| 686 |
> |
their constrained positions. To move a z-constrained molecule to its |
| 687 |
> |
specified position, a simple harmonic potential is used |
| 688 |
> |
\begin{equation} |
| 689 |
> |
U(t)=\frac{1}{2}k_{\text{Harmonic}}(z(t)-z_{\text{cons}})^{2},% |
| 690 |
> |
\end{equation} |
| 691 |
> |
where $k_{\text{Harmonic}}$ is the harmonic force constant, $z(t)$ |
| 692 |
> |
is the current $z$ coordinate of the center of mass of the |
| 693 |
> |
constrained molecule, and $z_{\text{cons}}$ is the constrained |
| 694 |
> |
position. The harmonic force operating on the z-constrained molecule |
| 695 |
> |
at time $t$ can be calculated by |
| 696 |
> |
\begin{equation} |
| 697 |
> |
F_{z_{\text{Harmonic}}}(t)=-\frac{\partial U(t)}{\partial z(t)}= |
| 698 |
> |
-k_{\text{Harmonic}}(z(t)-z_{\text{cons}}). |
| 699 |
> |
\end{equation} |