570 |
|
\dot x = J(x)\nabla _x H \label{introEquation:poissonHamiltonian} |
571 |
|
\end{equation} |
572 |
|
The most obvious change being that matrix $J$ now depends on $x$. |
573 |
– |
The free rigid body is an example of Poisson system (actually a |
574 |
– |
Lie-Poisson system) with Hamiltonian function of angular kinetic |
575 |
– |
energy. |
576 |
– |
\begin{equation} |
577 |
– |
J(\pi ) = \left( {\begin{array}{*{20}c} |
578 |
– |
0 & {\pi _3 } & { - \pi _2 } \\ |
579 |
– |
{ - \pi _3 } & 0 & {\pi _1 } \\ |
580 |
– |
{\pi _2 } & { - \pi _1 } & 0 \\ |
581 |
– |
\end{array}} \right) |
582 |
– |
\end{equation} |
583 |
– |
|
584 |
– |
\begin{equation} |
585 |
– |
H = \frac{1}{2}\left( {\frac{{\pi _1^2 }}{{I_1 }} + \frac{{\pi _2^2 |
586 |
– |
}}{{I_2 }} + \frac{{\pi _3^2 }}{{I_3 }}} \right) |
587 |
– |
\end{equation} |
573 |
|
|
574 |
|
\subsection{\label{introSection:exactFlow}Exact Flow} |
575 |
|
|
935 |
|
However, both of these methods are iterative and inefficient. In |
936 |
|
this section, we will present a symplectic Lie-Poisson integrator |
937 |
|
for rigid body developed by Dullweber and his |
938 |
< |
coworkers\cite{Dullweber1997}. |
954 |
< |
|
955 |
< |
\subsection{\label{introSection:lieAlgebra}Lie Algebra} |
938 |
> |
coworkers\cite{Dullweber1997} in depth. |
939 |
|
|
940 |
|
\subsection{\label{introSection:constrainedHamiltonianRB}Constrained Hamiltonian for Rigid Body} |
941 |
< |
|
941 |
> |
The motion of the rigid body is Hamiltonian with the Hamiltonian |
942 |
> |
function |
943 |
|
\begin{equation} |
944 |
|
H = \frac{1}{2}(p^T m^{ - 1} p) + \frac{1}{2}tr(PJ^{ - 1} P) + |
945 |
|
V(q,Q) + \frac{1}{2}tr[(QQ^T - 1)\Lambda ]. |
1011 |
|
\[ |
1012 |
|
V(q,Q) = V(Q X_0 + q). |
1013 |
|
\] |
1014 |
< |
Hence, |
1014 |
> |
Hence, the force and torque are given by |
1015 |
|
\[ |
1016 |
< |
\nabla _q V(q,Q) = F(q,Q) = \sum\limits_i {F_i (q,Q)} |
1016 |
> |
\nabla _q V(q,Q) = F(q,Q) = \sum\limits_i {F_i (q,Q)}, |
1017 |
|
\] |
1018 |
< |
|
1018 |
> |
and |
1019 |
|
\[ |
1020 |
|
\nabla _Q V(q,Q) = F(q,Q)X_i^t |
1021 |
|
\] |
1022 |
+ |
respectively. |
1023 |
|
|
1024 |
|
As a common choice to describe the rotation dynamics of the rigid |
1025 |
|
body, angular momentum on body frame $\Pi = Q^t P$ is introduced to |
1065 |
|
(\Lambda - \Lambda ^T ) . \label{introEquation:skewMatrixPI} |
1066 |
|
\end{equation} |
1067 |
|
Since $\Lambda$ is symmetric, the last term of Equation |
1068 |
< |
\ref{introEquation:skewMatrixPI}, which implies the Lagrange |
1069 |
< |
multiplier $\Lambda$ is ignored in the integration. |
1068 |
> |
\ref{introEquation:skewMatrixPI} is zero, which implies the Lagrange |
1069 |
> |
multiplier $\Lambda$ is absent from the equations of motion. This |
1070 |
> |
unique property eliminate the requirement of iterations which can |
1071 |
> |
not be avoided in other methods\cite{}. |
1072 |
|
|
1073 |
< |
Hence, applying hat-map isomorphism, we obtain the equation of |
1074 |
< |
motion for angular momentum on body frame |
1075 |
< |
\[ |
1076 |
< |
\dot \pi = \pi \times I^{ - 1} \pi + Q^T \sum\limits_i {F_i (r,Q) |
1077 |
< |
\times X_i } |
1078 |
< |
\] |
1073 |
> |
Applying hat-map isomorphism, we obtain the equation of motion for |
1074 |
> |
angular momentum on body frame |
1075 |
> |
\begin{equation} |
1076 |
> |
\dot \pi = \pi \times I^{ - 1} \pi + \sum\limits_i {\left( {Q^T |
1077 |
> |
F_i (r,Q)} \right) \times X_i }. |
1078 |
> |
\label{introEquation:bodyAngularMotion} |
1079 |
> |
\end{equation} |
1080 |
|
In the same manner, the equation of motion for rotation matrix is |
1081 |
|
given by |
1082 |
|
\[ |
1083 |
< |
\dot Q = Qskew(M^{ - 1} \pi ) |
1083 |
> |
\dot Q = Qskew(I^{ - 1} \pi ) |
1084 |
|
\] |
1085 |
|
|
1086 |
< |
The free rigid body equation is an example of a non-canonical |
1087 |
< |
Hamiltonian system. |
1086 |
> |
\subsection{\label{introSection:SymplecticFreeRB}Symplectic |
1087 |
> |
Lie-Poisson Integrator for Free Rigid Body} |
1088 |
|
|
1089 |
< |
\subsection{\label{introSection:symplecticDiscretizationRB}Symplectic Integration of Euler Equations} |
1089 |
> |
If there is not external forces exerted on the rigid body, the only |
1090 |
> |
contribution to the rotational is from the kinetic potential (the |
1091 |
> |
first term of \ref{ introEquation:bodyAngularMotion}). The free |
1092 |
> |
rigid body is an example of Lie-Poisson system with Hamiltonian |
1093 |
> |
function |
1094 |
> |
\begin{equation} |
1095 |
> |
T^r (\pi ) = T_1 ^r (\pi _1 ) + T_2^r (\pi _2 ) + T_3^r (\pi _3 ) |
1096 |
> |
\label{introEquation:rotationalKineticRB} |
1097 |
> |
\end{equation} |
1098 |
> |
where $T_i^r (\pi _i ) = \frac{{\pi _i ^2 }}{{2I_i }}$ and |
1099 |
> |
Lie-Poisson structure matrix, |
1100 |
> |
\begin{equation} |
1101 |
> |
J(\pi ) = \left( {\begin{array}{*{20}c} |
1102 |
> |
0 & {\pi _3 } & { - \pi _2 } \\ |
1103 |
> |
{ - \pi _3 } & 0 & {\pi _1 } \\ |
1104 |
> |
{\pi _2 } & { - \pi _1 } & 0 \\ |
1105 |
> |
\end{array}} \right) |
1106 |
> |
\end{equation} |
1107 |
> |
Thus, the dynamics of free rigid body is governed by |
1108 |
> |
\begin{equation} |
1109 |
> |
\frac{d}{{dt}}\pi = J(\pi )\nabla _\pi T^r (\pi ) |
1110 |
> |
\end{equation} |
1111 |
|
|
1112 |
< |
\[ |
1113 |
< |
\varphi _{\Delta t} = \varphi _{\Delta t/2,V} \circ \varphi |
1114 |
< |
_{\Delta t,T} \circ \varphi _{\Delta t/2,V} |
1112 |
> |
One may notice that each $T_i^r$ in Equation |
1113 |
> |
\ref{introEquation:rotationalKineticRB} can be solved exactly. For |
1114 |
> |
instance, the equations of motion due to $T_1^r$ are given by |
1115 |
> |
\begin{equation} |
1116 |
> |
\frac{d}{{dt}}\pi = R_1 \pi ,\frac{d}{{dt}}Q = QR_1 |
1117 |
> |
\label{introEqaution:RBMotionSingleTerm} |
1118 |
> |
\end{equation} |
1119 |
> |
where |
1120 |
> |
\[ R_1 = \left( {\begin{array}{*{20}c} |
1121 |
> |
0 & 0 & 0 \\ |
1122 |
> |
0 & 0 & {\pi _1 } \\ |
1123 |
> |
0 & { - \pi _1 } & 0 \\ |
1124 |
> |
\end{array}} \right). |
1125 |
|
\] |
1126 |
< |
|
1126 |
> |
The solutions of Equation \ref{introEqaution:RBMotionSingleTerm} is |
1127 |
|
\[ |
1128 |
< |
\varphi _{\Delta t,T} = \varphi _{\Delta t,R} \circ \varphi |
1129 |
< |
_{\Delta t,\pi } |
1128 |
> |
\pi (\Delta t) = e^{\Delta tR_1 } \pi (0),Q(\Delta t) = |
1129 |
> |
Q(0)e^{\Delta tR_1 } |
1130 |
|
\] |
1131 |
< |
|
1131 |
> |
with |
1132 |
|
\[ |
1133 |
< |
\varphi _{\Delta t,\pi } = \varphi _{\Delta t/2,\pi _1 } \circ |
1134 |
< |
\varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t,\pi _3 } |
1135 |
< |
\circ \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t/2,\pi |
1136 |
< |
_1 } |
1133 |
> |
e^{\Delta tR_1 } = \left( {\begin{array}{*{20}c} |
1134 |
> |
0 & 0 & 0 \\ |
1135 |
> |
0 & {\cos \theta _1 } & {\sin \theta _1 } \\ |
1136 |
> |
0 & { - \sin \theta _1 } & {\cos \theta _1 } \\ |
1137 |
> |
\end{array}} \right),\theta _1 = \frac{{\pi _1 }}{{I_1 }}\Delta t. |
1138 |
|
\] |
1139 |
+ |
To reduce the cost of computing expensive functions in e^{\Delta |
1140 |
+ |
tR_1 }, we can use Cayley transformation, |
1141 |
+ |
\[ |
1142 |
+ |
e^{\Delta tR_1 } \approx (1 - \Delta tR_1 )^{ - 1} (1 + \Delta tR_1 |
1143 |
+ |
) |
1144 |
+ |
\] |
1145 |
|
|
1146 |
+ |
The flow maps for $T_2^r$ and $T_2^r$ can be found in the same |
1147 |
+ |
manner. |
1148 |
+ |
|
1149 |
+ |
In order to construct a second-order symplectic method, we split the |
1150 |
+ |
angular kinetic Hamiltonian function can into five terms |
1151 |
|
\[ |
1152 |
< |
\varphi _{\Delta t/2,V} = \varphi _{\Delta t/2,F} \circ \varphi |
1153 |
< |
_{\Delta t/2,\tau } |
1152 |
> |
T^r (\pi ) = \frac{1}{2}T_1 ^r (\pi _1 ) + \frac{1}{2}T_2^r (\pi _2 |
1153 |
> |
) + T_3^r (\pi _3 ) + \frac{1}{2}T_2^r (\pi _2 ) + \frac{1}{2}T_1 ^r |
1154 |
> |
(\pi _1 ) |
1155 |
> |
\]. |
1156 |
> |
Concatenating flows corresponding to these five terms, we can obtain |
1157 |
> |
an symplectic integrator, |
1158 |
> |
\[ |
1159 |
> |
\varphi _{\Delta t,T^r } = \varphi _{\Delta t/2,\pi _1 } \circ |
1160 |
> |
\varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t,\pi _3 } |
1161 |
> |
\circ \varphi _{\Delta t/2,\pi _2 } \circ \varphi _{\Delta t/2,\pi |
1162 |
> |
_1 }. |
1163 |
|
\] |
1164 |
|
|
1165 |
+ |
The non-canonical Lie-Poisson bracket ${F, G}$ of two function |
1166 |
+ |
$F(\pi )$ and $G(\pi )$ is defined by |
1167 |
+ |
\[ |
1168 |
+ |
\{ F,G\} (\pi ) = [\nabla _\pi F(\pi )]^T J(\pi )\nabla _\pi G(\pi |
1169 |
+ |
) |
1170 |
+ |
\] |
1171 |
+ |
If the Poisson bracket of a function $F$ with an arbitrary smooth |
1172 |
+ |
function $G$ is zero, $F$ is a \emph{Casimir}, which is the |
1173 |
+ |
conserved quantity in Poisson system. We can easily verify that the |
1174 |
+ |
norm of the angular momentum, $\parallel \pi |
1175 |
+ |
\parallel$, is a \emph{Casimir}. Let$ F(\pi ) = S(\frac{{\parallel |
1176 |
+ |
\pi \parallel ^2 }}{2})$ for an arbitrary function $ S:R \to R$ , |
1177 |
+ |
then by the chain rule |
1178 |
+ |
\[ |
1179 |
+ |
\nabla _\pi F(\pi ) = S'(\frac{{\parallel \pi \parallel ^2 |
1180 |
+ |
}}{2})\pi |
1181 |
+ |
\] |
1182 |
+ |
Thus $ [\nabla _\pi F(\pi )]^T J(\pi ) = - S'(\frac{{\parallel \pi |
1183 |
+ |
\parallel ^2 }}{2})\pi \times \pi = 0 $. This explicit |
1184 |
+ |
Lie-Poisson integrator is found to be extremely efficient and stable |
1185 |
+ |
which can be explained by the fact the small angle approximation is |
1186 |
+ |
used and the norm of the angular momentum is conserved. |
1187 |
|
|
1188 |
+ |
\subsection{\label{introSection:RBHamiltonianSplitting} Hamiltonian |
1189 |
+ |
Splitting for Rigid Body} |
1190 |
+ |
|
1191 |
+ |
The Hamiltonian of rigid body can be separated in terms of kinetic |
1192 |
+ |
energy and potential energy, |
1193 |
+ |
\[ |
1194 |
+ |
H = T(p,\pi ) + V(q,Q) |
1195 |
+ |
\] |
1196 |
+ |
The equations of motion corresponding to potential energy and |
1197 |
+ |
kinetic energy are listed in the below table, |
1198 |
+ |
\begin{center} |
1199 |
+ |
\begin{tabular}{|l|l|} |
1200 |
+ |
\hline |
1201 |
+ |
% after \\: \hline or \cline{col1-col2} \cline{col3-col4} ... |
1202 |
+ |
Potential & Kinetic \\ |
1203 |
+ |
$\frac{{dq}}{{dt}} = \frac{p}{m}$ & $\frac{d}{{dt}}q = p$ \\ |
1204 |
+ |
$\frac{d}{{dt}}p = - \frac{{\partial V}}{{\partial q}}$ & $ \frac{d}{{dt}}p = 0$ \\ |
1205 |
+ |
$\frac{d}{{dt}}Q = 0$ & $ \frac{d}{{dt}}Q = Qskew(I^{ - 1} j)$ \\ |
1206 |
+ |
$ \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$\\ |
1207 |
+ |
\hline |
1208 |
+ |
\end{tabular} |
1209 |
+ |
\end{center} |
1210 |
+ |
A second-order symplectic method is now obtained by the composition |
1211 |
+ |
of the flow maps, |
1212 |
+ |
\[ |
1213 |
+ |
\varphi _{\Delta t} = \varphi _{\Delta t/2,V} \circ \varphi |
1214 |
+ |
_{\Delta t,T} \circ \varphi _{\Delta t/2,V}. |
1215 |
+ |
\] |
1216 |
+ |
Moreover, \varphi _{\Delta t/2,V} can be divided into two sub-flows |
1217 |
+ |
which corresponding to force and torque respectively, |
1218 |
+ |
\[ |
1219 |
+ |
\varphi _{\Delta t/2,V} = \varphi _{\Delta t/2,F} \circ \varphi |
1220 |
+ |
_{\Delta t/2,\tau }. |
1221 |
+ |
\] |
1222 |
+ |
Since the associated operators of $\varphi _{\Delta t/2,F} $ and |
1223 |
+ |
$\circ \varphi _{\Delta t/2,\tau }$ are commuted, the composition |
1224 |
+ |
order inside \varphi _{\Delta t/2,V} does not matter. |
1225 |
+ |
|
1226 |
+ |
Furthermore, kinetic potential can be separated to translational |
1227 |
+ |
kinetic term, $T^t (p)$, and rotational kinetic term, $T^r (\pi )$, |
1228 |
+ |
\begin{equation} |
1229 |
+ |
T(p,\pi ) =T^t (p) + T^r (\pi ). |
1230 |
+ |
\end{equation} |
1231 |
+ |
where $ T^t (p) = \frac{1}{2}p^T m^{ - 1} p $ and $T^r (\pi )$ is |
1232 |
+ |
defined by \ref{introEquation:rotationalKineticRB}. Therefore, the |
1233 |
+ |
corresponding flow maps are given by |
1234 |
+ |
\[ |
1235 |
+ |
\varphi _{\Delta t,T} = \varphi _{\Delta t,T^t } \circ \varphi |
1236 |
+ |
_{\Delta t,T^r }. |
1237 |
+ |
\] |
1238 |
+ |
Finally, we obtain the overall symplectic flow maps for free moving |
1239 |
+ |
rigid body |
1240 |
+ |
\begin{equation} |
1241 |
+ |
\begin{array}{c} |
1242 |
+ |
\varphi _{\Delta t} = \varphi _{\Delta t/2,F} \circ \varphi _{\Delta t/2,\tau } \\ |
1243 |
+ |
\circ \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 } \\ |
1244 |
+ |
\circ \varphi _{\Delta t/2,\tau } \circ \varphi _{\Delta t/2,F} .\\ |
1245 |
+ |
\end{array} |
1246 |
+ |
\label{introEquation:overallRBFlowMaps} |
1247 |
+ |
\end{equation} |
1248 |
+ |
|
1249 |
|
\section{\label{introSection:langevinDynamics}Langevin Dynamics} |
1250 |
|
|
1251 |
|
\subsection{\label{introSection:LDIntroduction}Introduction and application of Langevin Dynamics} |