# Parallel Direct Solution of Flexible Multibody Systems Based on Block Gaussian Elimination
## 2 Flexible Multibody Formulation with the Craig-Bampton Method
### Flexible Body Formulation with the Craig-Bampton Method
#### 2.2.3 Flexible Body Formulation Under Floating Frame of Reference  
The orthogonal modes \(\mathbf{\Phi}_{i}\) and the elastic coordinates \(\mathbf{q}_{i}\) describe the elastic vibration of the flexible body \(i\), while the floating frame of reference (FFR) [2] can describe its overall spatial displacement and finite rotation. Figure 1 shows the coordinates of flexible body \(i\) in the FFR. G represents the global coordinate frame, and B\({}_{i}\) presents the body coordinate frame (also the FFR) of flexible body \(i\). \(\mathbf{x}_{i}=[\mathbf{x}_{i};\mathbf{y}_{i};\mathbf{z}_{i}]\) presents the position (column) vector from G to B\({}_{i}\) expressed in G, and \(\mathbf{\alpha}_{i}=[\mathbf{\alpha}_{i};\beta_{i};\gamma_{i}]\) presents the rotation parameters from G to B\({}_{i}\). \(\mathbf{s}_{i,p}\) represents the original position of a node \(p\) in B\({}_{i}\), and \(\mathbf{u}_{i,p}^{\dagger}\) is the translational displacement of node \(p\) due to flexible deformation. Let \(\mathbf{A}_{i}=\mathbf{A}_{i}(\mathbf{\alpha}_{i})\) be the transformation matrix from frame B\({}_{i}\) to G, and let \(\mathbf{\Phi}_{i,p}\) be the components of the model matrix \(\mathbf{\Phi}_{i}\) at node \(p\). After rigid motion and flexible deformation, the global position of node \(p\) on flexible body \(i\) is then expressed as  
\[\mathbf{r}_{i,p}=\mathbf{x}_{i}+\mathbf{A}_{i}(\mathbf{s}_{i,p}+\mathbf{u}_{i,p}^{\dagger}), \tag{30}\]  
wherein translational displacement \(\mathbf{u}_{i,p}^{\dagger}\) can be expressed with the modal coordinates \(\mathbf{q}_{i}\) and \(\mathbf{\Phi}_{i,p}^{\dagger}\) (i.e., the translational component of the modal matrix \(\mathbf{\Phi}_{i,p}\)) as  
\[\mathbf{u}_{i,p}^{\dagger}=\mathbf{\Phi}_{i,p}^{\dagger}\mathbf{q}_{i}. \tag{31}\]  
By differentiating the displacement (30) with respect to time, the global velocity of node \(p\) is obtained as  
\[\mathbf{v}_{i,p}=\dot{\mathbf{x}}_{i}+\mathbf{A}_{i}(\dot{\mathbf{s}}_{i,p}+\dot{\mathbf{u}}_{i,p} )+\dot{\mathbf{A}}_{i}(\mathbf{s}_{i,p}+\mathbf{u}_{i,p}). \tag{32}\]  
wherein \(\dot{\Box}\) is the time derivative of \(\Box\), i.e., \(\dot{\Box}=(\mathrm{d}\Box)/(\mathrm{d}t)\). Since \(\mathbf{s}_{i,p}\) and \(\mathbf{\Phi}_{i,p}^{\dagger}\) are constant, we have  
\[\dot{\mathbf{s}}_{i,p}=\mathbf{0},\ \ \dot{\mathbf{u}}_{i,p}=\mathrm{d}(\mathbf{\Phi}_{i,p}^{ \dagger}\mathbf{q}_{i})/\mathrm{d}t=\mathbf{\Phi}_{i,p}^{\dagger}\dot{\mathbf{q}}_{i}. \tag{33}\]  
Since the component \(\dot{\mathbf{A}}_{i}(\mathbf{s}_{i,p}+\mathbf{u}_{i,p})\) is caused by rotation of FFR B\({}_{i}\) with the vector \((\mathbf{s}_{i,p}+\mathbf{u}_{i,p})\) on it, we utilize the finite rotation theory to obtain  
\[\dot{\mathbf{A}}_{i}(\mathbf{s}_{i,p}+\mathbf{u}_{i,p})=\mathbf{A}_{i}\big{[}\mathbf{\omega}_{i} \times(\mathbf{s}_{i,p}+\mathbf{u}_{i,p})\big{]}=\mathbf{A}_{i}\big{[}-(\mathbf{s}_{i,p}+\mathbf{u }_{i,p})\times\mathbf{\omega}_{i}\big{]}=-\mathbf{A}_{i}(\dot{\mathbf{s}}_{i,p}+\ddot{\mathbf{u }}_{i,p})\mathbf{\omega}_{i}, \tag{34}\]  
wherein \(\mathbf{\omega}_{i}\) represents the local (expressed in B\({}_{i}\)) angular velocity of the frame B\({}_{i}\), \"\(\times\)\" represents the vector cross-product operation, and \(\dot{\mathbf{s}}_{i,p}\) projects the vector cross product into a matrix formulation with \(\mathbf{s}_{i,p}\times\mathbf{\omega}_{i}=\dot{\mathbf{s}}_{i,p}\mathbf{\omega}_{i}\) by defining  
\[\ddot{\mathbf{s}}_{i,p}= \begin{bmatrix}\widetilde{\mathbf{s}_{i,p,1}}\\ \widetilde{\mathbf{s}_{i,p,2}}\\ \widetilde{\mathbf{s}_{i,p,3}}\\ \widetilde{\mathbf{s}_{i,p,2}}\\ \widetilde{\mathbf{s}_{i,p,3}}\end{bmatrix} \triangleq \begin{bmatrix}0&-\widetilde{ \mathbf{s}_{i,p,3}}&\widetilde{\mathbf{s}_{i,p,2}}\\ \widetilde{\mathbf{s}_{i,p,3}}&0&-\widetilde{\mathbf{s}_{i,p,1}}\\ \widetilde{\mathbf{s}_{i,p,2}}&\widetilde{\mathbf{s}_{i,p,1}}&0\end{bmatrix} ,\ddot{\mathbf{u }}_{i,p}= \begin{bmatrix}\widetilde{\mathbf{u}_{i,p,1}}\\ \widetilde{\mathbf{u}_{i,p,2}}\\ \widetilde{\mathbf{u}_{i,p,3}}\end{bmatrix} \triangleq