The object-oriented programming is widely used in different fields of finite element analysis (FEA). The commonly used object-oriented codes were almost written by C++. Due to the inability to automatically manage memory and the lack of gigantic standard library and a third-party library for C++, building matrix classes are needed and a strong programming ability for program developers is also necessary. The conventional FEM method still has many disadvantages such as poor accuracy, hard stiffness matrix, mesh dependence and lack of upper bound solution. The smoothed FEM (S-FEM) method proposed by Liu et al. can efficiently overcome these disadvantages and is therefore widely used in FEA. In this work, the elastic-plastic CS-FEM method is extended and implemented using Python programming based on the framework proposed [H. Li and Y. Xiao, Implementation and numerical simulation on object-oriented elastic-plastic finite element method based on Python, J. Syst. Simul. 36(5) (2024) 1107–1117] The resulting object-oriented elastic-plastic CS-FEM framework is then applied to FEA of elastic-plastic mechanics problems. The correctness of the resulting framework and the high computational accuracy and good mesh adaptability of CS-FEM models have been verified by comparing the corresponding results with an analytical solution or ABAQUS results. The object-oriented elastic-plastic CS-FEM framework provides a more efficient and adaptable approach to FEA, and can also overcome many limitations of the conventional FEM method and C++ programming. The use of Python and the CS-FEM method offers improved computational accuracy, mesh adaptability and development efficiency, and this will make it a valuable tool for solving practical problems in mechanics and engineering.
Read full abstract