Subject of Research. The paper presents a software building method for the tasks of deformable solid mechanics. This software should guarantee high accuracy and speed of calculations, as well as simple preparation of the initial data and data processing even for an inexperienced user. The software was developed using the open source GMSH mesh generator application programming interface (API) and the Eigen mathematical library. Method. The developed software consists of three modules: GMSH_API, InputFile, FEMSolver and a database. The GMSH_API module, which prepares the finite element model, was written using the GMSH mesh generator API. The InputFile module describes methods for interacting with a previously created database, that provides quick and easy preparation of the input file needed to start the calculation. Numerical calculation by the finite element method is implemented in the FEMSolver module. The Eigen mathematical library was actively used for its implementation, and it can build sparse matrices that do not store zero elements in memory. This possibility obviates the need for additional transformations of the global stiffness matrix used in the finite element method. Main Results. The Kirsch task was solved as an example in a plane-stressed setting: a distributed tensile load was applied to the upper edge of a steel plate, with a round hole in the center, the lower edge of the plate was rigidly fixed. After calculating and obtaining the von Mises stress distribution field in the plate, we observe an error of 1.72% relative to the analytical solution. Such error value is considered low, therefore, the developed software not only facilitates the preparation of data for calculation, but also guarantees high accuracy of the obtained results. Practical Relevance. Commercial software for solving the problems of deformable solid mechanics, such as ANSYS Mechanical APDL, Abaqus, etc., is very expensive. Free software is primarily focused on researchers and, as a rule, is difficult for learning by an ordinary user-engineer, and the compromise version of the PDE Toolbox for MATHLAB is applicable only for tasks in a two-dimensional area and only supports a linear triangular finite element. However, the application of GMSH API and the Eigen library provides for creation of an easy-to-use but powerful tool for solving the problems of deformable solid mechanics.
Read full abstract