Modal¶
Modalsolver class, inherited fromBaseSolverExtracts the
M,KandCmatrices from theFortranlibrary for the beam. Depending on the choice of modal projection, these may or may not be transformed to a state-space form to compute the eigenvalues and mode shapes of the structure.The settings that this solver accepts are given by a dictionary, with the following key-value pairs:
Name Type Description Default print_infoboolWrite status to screen TruefolderstrOutput folder ./outputrigid_body_modesboolWrite modes with rigid body mode shapes Falseuse_undamped_modesboolProject the modes onto undamped mode shapes TrueNumLambdaintNumber of modes to retain 20keep_linear_matricesboolSave M, C and K matrices to output dictionary Truewrite_modes_vtkboolWrite Paraview files with mode shapes Trueprint_matricesboolWrite M, C and K matrices to file Falsewrite_datboolWrite mode shapes, frequencies and damping to file Truecontinuous_eigenvaluesboolUse continuous time eigenvalues FalsedtfloatTime step to compute discrete time eigenvalues 0delta_curvedfloatThreshold for linear expressions in rotation formulas 0.01plot_eigenvaluesboolPlot to screen root locus diagram Falsemax_rotation_degfloatScale mode shape to have specified maximum rotation 15.0max_displacementfloatScale mode shape to have specified maximum displacement 0.15use_custom_timestepintIf > -1, it will use that time step geometry for calculating the modes -1rigid_modes_cgboolModify the ridid body modes such that they are defined wrt to the CG FalseReturns the rigid body modes defined with respect to the centre of gravity
The transformation from the modes defined at the FoR A origin, \(\boldsymbol{\Phi}\), to the modes defined using the centre of gravity as a reference is
\[\boldsymbol{\Phi}_{rr,CG}|_{TRA} = \boldsymbol{\Phi}_{RR}|_{TRA} + \tilde{\mathbf{r}}_{CG} \boldsymbol{\Phi}_{RR}|_{ROT}\]\[\boldsymbol{\Phi}_{rr,CG}|_{ROT} = \boldsymbol{\Phi}_{RR}|_{ROT}\]Returns: Transformed eigenvectors Return type: (np.array)
Extracts the eigenvalues and eigenvectors of the clamped structure.
If
use_undamped_modes == Truethen the free vibration modes of the clamped structure are found solving:\[\mathbf{M\,\ddot{\eta}} + \mathbf{K\,\eta} = 0\]that flows down to solving the non-trivial solutions to:
\[(-\omega_n^2\,\mathbf{M} + \mathbf{K})\mathbf{\Phi} = 0\]On the other hand, if the damped modes are chosen because the system has damping, the free vibration modes are found solving the equation of motion of the form:
\[\mathbf{M\,\ddot{\eta}} + \mathbf{C\,\dot{\eta}} + \mathbf{K\,\eta} = 0\]which can be written in state space form, with the state vector \(\mathbf{x} = [\eta^T,\,\dot{\eta}^T]^T\) as
\[\begin{split}\mathbf{\dot{x}} = \begin{bmatrix} 0 & \mathbf{I} \\ -\mathbf{M^{-1}K} & -\mathbf{M^{-1}C} \end{bmatrix} \mathbf{x}\end{split}\]and therefore the mode shapes and frequencies correspond to the solution of the eigenvalue problem
\[\mathbf{A\,\Phi} = \mathbf{\Lambda\,\Phi}.\]From the eigenvalues, the following system characteristics are provided:
- Natural Frequency: \(\omega_n = |\lambda|\)
- Damped natural frequency: \(\omega_d = \text{Im}(\lambda) = \omega_n \sqrt{1-\zeta^2}\)
- Damping ratio: \(\zeta = -\frac{\text{Re}(\lambda)}{\omega_n}\)
In addition to the above, the modal output dictionary includes the following:
M: Tangent mass matrixC: Tangent damping matrixK: Tangent stiffness matrixCcut: Modal damping matrix \(\mathbf{C}_m = \mathbf{\Phi}^T\mathbf{C}\mathbf{\Phi}\)Kin_damp: Forces gain matrix (when damped): \(K_{in} = \mathbf{\Phi}_L^T \mathbf{M}^{-1}\)eigenvectors: Right eigenvectorseigenvectors_left: Left eigenvectors given when the system is damped
Returns: updated data object with modal analysis as part of the last structural time step. Return type: PreSharpy