Authors: Davide Stocco | Martin Larcher | Matteo Tomasi | Enrico Bertolazzi
Source: Computer Physics Communications (article, 2024-12-24)
Field: Materials Science — Materials Chemistry

TrussMe-Fem: A toolbox for symbolic-numerical analysis and solution of structures Structural mechanics is pivotal in comprehending how structures respond to external forces and imposed displacements. Typically, the analysis of structures is performed numerically using the direct stiffness method, which is an implementation of the finite element method. This method is commonly associated with the numerical solution of large systems of equations. However, the underlying theory can also be conveniently used to perform the analysis of structures either symbolically or in a hybrid symbolic-numerical fashion. This approach is useful to mitigate the computational burden as the obtained partial or full symbolic solution can be simplified and used to generate lean code for efficient simulations. Nonetheless, the symbolic direct stiffness method is also useful for model reduction purposes, as it allows the derivation of small-scale models that can be used for diminishing simulation time. Despite the mentioned advantages, symbolic computation carries intrinsically complex operations. In particular, the symbolic solution of large linear systems of equations is hard to compute, and it may not always be available due to software capabilities. This paper introduces a toolbox named TrussMe-Fem , whose implementation is based on the direct stiffness method. TrussMe-Fem leverages Maple ®'s symbolic computation and Matlab ®'s numerical capabilities for symbolic and hybrid symbolic-numerical analyses and solutions of structures. Efficient code generation is also possible by exploiting the simplification of the problem's expressions. The challenges posed by symbolic computation on the solution of large linear systems are addressed by introducing novel routines for the symbolic matrix factorization with the hierarchical representation of large expressions. For this purpose, the TrussMe-Fem toolbox optionally uses the Lem and Last Maple ® packages, which are also available as open-source software. Program Title: TrussMe-Fem CPC Library link to program files: https://doi.org/10.17632/m59fyw5hs4.1 Developer's repository link: https://github.com/StoccoDavide/TrussMe-FEM – Optional dependencies: Lem https://github.com/StoccoDavide/LEM , Last https://github.com/StoccoDavide/LAST Licensing provisions: BSD 3-clause. Programming language: Maple ®, Matlab ®. Supplementary material: Usage examples for the TrussMe-Fem toolbox, Lem and Last Maple ® packages. Nature of problem: Structural mechanics is a branch of mechanics that studies the behavior of structures subjected to loads and displacements. Typically, the analysis of the deformations and internal reactions is performed numerically using the finite element method. The plain numerical solution, however, is not always suitable for optimization problems. With the recent advances in symbolic computation, it is possible to perform the analysis of structures either symbolically or in a hybrid symbolic-numerical fashion. This approach is useful for enhancing the optimization process, as the derivatives of the solution with respect to the optimization parameters can be easily calculated. Nonetheless, lean code for efficient simulations can be generated by exploiting the simplification of the problem's symbolic expressions. Solution method: We combine the symbolic computation capabilities of Maple ® with the numerical performance of Matlab ® to develop a toolbox for the symbolic or hybrid symbolic-numerical analysis and solution of structures. The toolbox is based on the direct stiffness method and allows for modeling, analyzing, and solving structures. Depending on the symbolic kernel capability, available computation time, and problem complexity, the symbolic solution can be obtained in closed or numerical form. In both cases, a Matlab ® class can be generated to efficiently evaluate the symbolic solution or to numerically solve the problem. During the code generation, model inputs and class internal data are appropriately mapped to the generated code. Additional comments including restrictions and unusual features: The symbolic inversion of large matrices is an intrinsically complex task that may not always be carried out due to the expression swell phenomenon. Such a phenomenon causes the size of the expressions to significantly increase during the computation [1] and large CPU times are required to complete the matrix inversion tasks. As a consequence, the symbolic solution of large linear systems is not always available. For this reason, the toolbox resorts to symbolic matrix factorization techniques [2]. However, the symbolic decomposition may also be slowed down by the expression swell phenomenon [3]. In this case, the only viable option is to resort to the numerical solution of the linear system. [1] W. Zhou, Symbolic computation techniques for solving large expression problems from mathematics and engineering, Ph.D. thesis, University of Western Ontario, 2007. [2] J. Carette, W. Zhou, D. J. Jeffrey, M.B. Monagan, Linear algebra using Maple's LargeExpressions package, in: Proceedings of Maple Conference, 2006, pp. 14–25. [3] W. Zhou, J. Carette, D.J. Jeffrey, M.B. Monagan, Hierarchical representations with signatures for large expression management, in: Artificial Intelligence and Symbolic Computation: 8th International Conference, AISC 2006 Beijing, China, September 20-22, 2006 Proceedings 8, 2006, pp. 254–268. Springer. Toolbox ; Finite element method ; Computer science ; Symbolic data analysis ; Numerical analysis ; Algebra over a field ; Applied mathematics ; Computational science ; Mathematics ; Theoretical computer science ; Mathematical analysis ; Programming language ; Structural engineering ; Pure mathematics ; Engineering High-Velocity Impact and Material Behavior ; Fiber-reinforced polymer composites ; Dynamics and Control of Mechanical Systems