Consider a box barge with length \(40 ~m\), breadth \(10 ~m\) and draft \(5 ~m\) carrying cement in an inland waterway with freshwater. Let its BCS origin be located at the intersection of section \(5 ~m\) aft of the center of gravity, waterline and centerline and its x-axis pointed towards the bow and z-axis pointed towards the keel. Let the metacentric height be \(\overline{GM} = 2 ~m\). Calculate the inertia matrix about the BCS if the inertia matrix about center of gravity is given by:
If \(r_G = [1, 2, 1]^T ~m\), calculate the moment of inertia about the center of gravity G.
Question 3
For the inertia matrix \(I_O\) specified in question 2, calculate the inertia matrix about the principal axes. Principal axes are the axes about which the inertia matrix is diagonal.
Hint: Determine the eigenvalues \((\lambda_1, \lambda_2, \lambda_3)\) and unit eigenvectors \((\vec{v}_1, \vec{v}_2, \vec{v}_3)\) of the inertia matrix. The matrix of eigenvectors defined as:
where \(\vec{\omega}_P\) is the angular velocity expressed in principal axes. It can be seen that the inertia matrix in the principal axes is given by:
\[\begin{align}
I_P = V^T I_O V = \Lambda
\end{align}\]
Question 4
Calculate the euler angles to transform from the BCS frame to the principal axes frame for the inertia matrix shown in question 2.
Solution 1
Consider a box barge with length \(40 ~m\), breadth \(10 ~m\) and draft \(5 ~m\) carrying cement in an inland waterway with freshwater. Let its BCS origin be located at the intersection of section \(5 ~m\) aft of the center of gravity, waterline and centerline and its x-axis pointed towards the bow and z-axis pointed towards the keel. Let the metacentric height be \(\overline{GM} = 2 ~m\). Calculate the inertia matrix about the BCS if the inertia matrix about center of gravity is given by:
import numpy as npdef Smat(v):return np.array([ [0, -v[2], v[1]], [v[2], 0, -v[0]], [-v[1], v[0], 0] ])L =40B =10T =5xG =5GM =2I_G = np.array([ [32, 0, 0], [0, 200, 0], [0, 0, 200]]) *1e6I_wp = L*B**2/12Disp = L*B*TBM = I_wp/DispKB = T/2KG = KB + BM - GMm = Disp *1000zG = T - KGrG = np.array([xG, 0, zG])print("The center of gravity is located at")print(f"x_G = {xG:.2f} m, y_G = {0.0:.2f} m, z_G = {zG:.2f} m\n")S = Smat(rG)I_O = I_G - m * (S @ S)print("The inertia matrix about O is given by:")print(f"{I_O[0, 0]:.3e}, {I_O[0, 1]:.3e}, {I_O[0, 2]:.3e}")print(f"{I_O[1, 0]:.3e}, {I_O[1, 1]:.3e}, {I_O[1, 2]:.3e}")print(f"{I_O[2, 0]:.3e}, {I_O[2, 1]:.3e}, {I_O[2, 2]:.3e}")
The center of gravity is located at
x_G = 5.00 m, y_G = 0.00 m, z_G = 4.33 m
The inertia matrix about O is given by:
6.956e+07, 0.000e+00, -4.333e+07
0.000e+00, 2.876e+08, 0.000e+00
-4.333e+07, 0.000e+00, 2.500e+08
Solution 2
Let a rigid body of mass \(2 ~kg\) have an inertia matrix about its BCS as shown below:
If \(r_G = [1, 2, 1]^T ~m\), calculate the moment of inertia about the center of gravity G.
Code
import numpy as npdef Smat(v):return np.array([ [0, -v[2], v[1]], [v[2], 0, -v[0]], [-v[1], v[0], 0] ])m =2rG = np.array([1, 2, 1])IO = np.array([ [20, 5, -5], [5, 25, 5], [-5, 5, 30]])S = Smat(rG)IG = IO + m * (S @ S)print("The inertia matrix about G is given by:")print(f"{IG[0, 0]:.2f}, {IG[0, 1]:.2f}, {IG[0, 2]:.2f}")print(f"{IG[1, 0]:.2f}, {IG[1, 1]:.2f}, {IG[1, 2]:.2f}")print(f"{IG[2, 0]:.2f}, {IG[2, 1]:.2f}, {IG[2, 2]:.2f}")
The inertia matrix about G is given by:
10.00, 9.00, -3.00
9.00, 21.00, 9.00
-3.00, 9.00, 20.00
Solution 3
For the inertia matrix \(I_O\) specified in question 2, calculate the inertia matrix about the principal axes. Principal axes are the axes about which the inertia matrix is diagonal.
Code
import numpy as npIO = np.array([ [20, 5, -5], [5, 25, 5], [-5, 5, 30]])EO, VO = np.linalg.eig(IO)EO_mat = np.diag(EO)print("Inertia matrix in the principal axes:")print(f"{EO_mat[0, 0]:.2f}, {EO_mat[0, 1]:.2f}, {EO_mat[0, 2]:.2f}")print(f"{EO_mat[1, 0]:.2f}, {EO_mat[1, 1]:.2f}, {EO_mat[1, 2]:.2f}")print(f"{EO_mat[2, 0]:.2f}, {EO_mat[2, 1]:.2f}, {EO_mat[2, 2]:.2f}")
Inertia matrix in the principal axes:
13.93, 0.00, 0.00
0.00, 27.70, 0.00
0.00, 0.00, 33.38
Solution 4
Calculate the euler angles to transform from the BCS frame to the principal axes frame for the inertia matrix shown in question 2.