Designing an object-oriented architecture for the finite element simulation of structural elements




Oleksii Hniezdovskyi, Oleksii Kudin, Yuriy Belokon, Dmytro Kruglyak, Sergii Ilin
This paper reports the development of an architecture and software implementation of the library of classes for the finite-element analysis of problems in the theory of elasticity with an open-source code. The practical necessity of such systems is due to the fact that in modern equipment there are new types of materials whose structural elements’ calculation has certain features. As a result, it is necessary to update the relevant scientific software or even devise a new one. A flexible software architecture is designed to reduce the time and complexity of such updates. Existing implementations of the method of finite elements with open source have been analyzed: it was revealed that there are no systems aimed at the most flexible and user-friendly architecture. The system of abstract classes proposed in the current work corresponds to known SOLID principles of object-oriented design and makes it possible to scale the already developed analysis program for new tasks in an easy and understandable way. To test the quality of the developed system from the point of view of software engineering, the maintainability index and cyclomatic complexity code metrics were used. The values of these metrics for the modules of the PyFEM system core vary in the following ranges: from 1 to 18 for the maintainability index, and from 22 to 100 for cyclomatic complexity. PyFEM testing was performed on the task of determining the stressed-strained state of the turbine rotor blade. Due to the ease of implementation, it was possible to build a set of effective and intuitive classes that make it possible to solve numerically the static and dynamic problems in the theory of elasticity. The developed class library can be used in the development of both universal and specialized software designed to analyze multiphysics problems.

FULL PAPER

How to cite paper:
Hniezdovskyi, O., Kudin, O., Belokon, Y., Kruglyak, D., & Ilin, S. (2022). Designing an object-oriented architecture for the finite element simulation of structural elements. Eastern-European Journal of Enterprise Technologies, 6(2 (120), 78–84. https://doi.org/10.15587/1729-4061.2022.268018




AI SOFTWARE TOOLS+IN+INDUSTRY