Development of a finite element code in MATLAB for the free vibration analysis of truss structures including the effect of "pendulum-like" oscillations due to gravity - Ong, Shawn Baolun (Nanyang Technological University, 2024)
This Final Year Project (FYP) is on the development of a finite element code for the static and free vibration analysis of truss structures, with a specific focus on studying the effect of gravity on the natural frequencies. The code is developed in MATLAB for the computation of nodal displacements under point loads and gravitational loads, as well as natural frequencies and mode shapes. Theoretical concepts learnt in the previous years through courses such as solid mechanics and vibrations, and mathematical methods in engineering are put to practice during the project. The development of the code involves writing MATLAB functions to compute the element stiffness matrix and mass matrix, assembling them to get the global stiffness matrix, applying boundary conditions and solving the resulting system of finite element equations. For the static analysis, this system involves a set of linear simultaneous algebraic equations. For free vibration analysis, an eigenvalue problem needs to be solved. To validate the code, a series of test problems would be solved, and the results are compared with that of ANSYS. The results are also compared with analytical solutions where available. During the code development, several checks are carried out frequently to test the working of the code such as the sum of shape functions adding to unity. This code is then used for solving three typical practical problems, viz., 2-D roof structure and 3-D roof as well as truss tower structures. Finally, the code is modified to include gravitational effects in the free vibration analysis. From the expression for gravitational potential energy, a gravitational matrix is derived, and this matrix is added to the structural stiffness matrix during free vibration analysis. This resulting stiffness matrix is used for solving the eigenvalue problem. This modified code is useful in determining the natural frequency of “pendulum like” oscillations of truss structures. A few test problems have been solved to validate the code.