桁架有限元:一个用于结构符号数值分析和求解的工具箱

IF 3.9 2区 物理与天体物理 Q1 COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS Computer Physics Communications Pub Date : 2025-04-01 Epub Date: 2024-12-24 DOI:10.1016/j.cpc.2024.109476
Davide Stocco , Matteo Larcher , Matteo Tomasi, Enrico Bertolazzi
{"title":"桁架有限元:一个用于结构符号数值分析和求解的工具箱","authors":"Davide Stocco ,&nbsp;Matteo Larcher ,&nbsp;Matteo Tomasi,&nbsp;Enrico Bertolazzi","doi":"10.1016/j.cpc.2024.109476","DOIUrl":null,"url":null,"abstract":"<div><div>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 <span>TrussMe-Fem</span>, whose implementation is based on the direct stiffness method. <span>TrussMe-Fem</span> leverages <span>Maple</span>®'s symbolic computation and <span>Matlab</span>®'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 <span>TrussMe-Fem</span> toolbox optionally uses the <span>Lem</span> and <span>Last Maple</span>® packages, which are also available as open-source software.</div></div><div><h3>Program summary</h3><div><em>Program Title:</em> <span>TrussMe-Fem</span></div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/m59fyw5hs4.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/StoccoDavide/TrussMe-FEM</span><svg><path></path></svg></span> – Optional dependencies: <span>Lem</span> <span><span>https://github.com/StoccoDavide/LEM</span><svg><path></path></svg></span>, <span>Last</span> <span><span>https://github.com/StoccoDavide/LAST</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> BSD 3-clause.</div><div><em>Programming language:</em> <span>Maple</span>®, <span>Matlab</span>®.</div><div><em>Supplementary material:</em> Usage examples for the <span>TrussMe-Fem</span> toolbox, <span>Lem</span> and <span>Last Maple</span>® packages.</div><div><em>Nature of problem:</em> 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.</div><div><em>Solution method:</em> We combine the symbolic computation capabilities of <span>Maple</span>® with the numerical performance of <span>Matlab</span>® 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 <span>Matlab</span>® 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.</div><div><em>Additional comments including restrictions and unusual features:</em> 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.</div></div><div><h3>References</h3><div><ul><li><span>[1]</span><span><div>W. Zhou, Symbolic computation techniques for solving large expression problems from mathematics and engineering, Ph.D. thesis, University of Western Ontario, 2007.</div></span></li><li><span>[2]</span><span><div>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.</div></span></li><li><span>[3]</span><span><div>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.</div></span></li></ul></div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"309 ","pages":"Article 109476"},"PeriodicalIF":3.9000,"publicationDate":"2025-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"TrussMe-Fem: A toolbox for symbolic-numerical analysis and solution of structures\",\"authors\":\"Davide Stocco ,&nbsp;Matteo Larcher ,&nbsp;Matteo Tomasi,&nbsp;Enrico Bertolazzi\",\"doi\":\"10.1016/j.cpc.2024.109476\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>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 <span>TrussMe-Fem</span>, whose implementation is based on the direct stiffness method. <span>TrussMe-Fem</span> leverages <span>Maple</span>®'s symbolic computation and <span>Matlab</span>®'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 <span>TrussMe-Fem</span> toolbox optionally uses the <span>Lem</span> and <span>Last Maple</span>® packages, which are also available as open-source software.</div></div><div><h3>Program summary</h3><div><em>Program Title:</em> <span>TrussMe-Fem</span></div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/m59fyw5hs4.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/StoccoDavide/TrussMe-FEM</span><svg><path></path></svg></span> – Optional dependencies: <span>Lem</span> <span><span>https://github.com/StoccoDavide/LEM</span><svg><path></path></svg></span>, <span>Last</span> <span><span>https://github.com/StoccoDavide/LAST</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> BSD 3-clause.</div><div><em>Programming language:</em> <span>Maple</span>®, <span>Matlab</span>®.</div><div><em>Supplementary material:</em> Usage examples for the <span>TrussMe-Fem</span> toolbox, <span>Lem</span> and <span>Last Maple</span>® packages.</div><div><em>Nature of problem:</em> 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.</div><div><em>Solution method:</em> We combine the symbolic computation capabilities of <span>Maple</span>® with the numerical performance of <span>Matlab</span>® 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 <span>Matlab</span>® 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.</div><div><em>Additional comments including restrictions and unusual features:</em> 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.</div></div><div><h3>References</h3><div><ul><li><span>[1]</span><span><div>W. Zhou, Symbolic computation techniques for solving large expression problems from mathematics and engineering, Ph.D. thesis, University of Western Ontario, 2007.</div></span></li><li><span>[2]</span><span><div>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.</div></span></li><li><span>[3]</span><span><div>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.</div></span></li></ul></div></div>\",\"PeriodicalId\":285,\"journal\":{\"name\":\"Computer Physics Communications\",\"volume\":\"309 \",\"pages\":\"Article 109476\"},\"PeriodicalIF\":3.9000,\"publicationDate\":\"2025-04-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computer Physics Communications\",\"FirstCategoryId\":\"101\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0010465524003990\",\"RegionNum\":2,\"RegionCategory\":\"物理与天体物理\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"2024/12/24 0:00:00\",\"PubModel\":\"Epub\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465524003990","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"2024/12/24 0:00:00","PubModel":"Epub","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0

摘要

结构力学是理解结构如何响应外力和施加位移的关键。通常,结构的数值分析是使用直接刚度法进行的,这是有限元方法的一种实现。这种方法通常与大型方程组的数值解有关。然而,基础理论也可以方便地用于进行符号或混合符号-数值方式的结构分析。这种方法有助于减轻计算负担,因为获得的部分或全部符号解可以简化并用于生成精简代码以进行高效模拟。尽管如此,符号直接刚度方法对于模型简化也很有用,因为它允许推导可用于减少模拟时间的小尺度模型。尽管有上述优点,符号计算本质上携带复杂的操作。特别是,大型线性方程组的符号解很难计算,而且由于软件的能力,它可能并不总是可用的。本文介绍了一个基于直接刚度法的桁架有限元工具箱。truss - fem利用Maple®的符号计算和Matlab®的数值能力进行符号和混合符号-数值分析和结构解决方案。通过简化问题表达式,还可以高效地生成代码。通过引入具有大表达式层次表示的符号矩阵分解的新例程,解决了符号计算对求解大型线性系统所带来的挑战。为此,trustme - fem工具箱可选地使用Lem和Last Maple®软件包,它们也可以作为开源软件使用。程序摘要程序标题:trustme - femcpc库链接到程序文件:https://doi.org/10.17632/m59fyw5hs4.1Developer's存储库链接:https://github.com/StoccoDavide/TrussMe-FEM -可选依赖项:Lem https://github.com/StoccoDavide/LEM,最后的https://github.com/StoccoDavide/LASTLicensing条款:BSD 3-clause。编程语言:Maple®,Matlab®。补充材料:使用示例为truss - fem工具箱,Lem和Last Maple®软件包。问题性质:结构力学是力学的一个分支,研究结构在荷载和位移作用下的行为。通常,变形和内部反应的分析是使用有限元方法进行的。然而,简单的数值解并不总是适用于优化问题。随着符号计算技术的发展,对结构进行符号分析或符号-数值混合分析已成为可能。这种方法可以很容易地计算出解对优化参数的导数,从而提高优化过程的效率。尽管如此,可以通过简化问题的符号表达式来生成高效模拟的精简代码。求解方法:我们将Maple®的符号计算能力与Matlab®的数值性能相结合,开发了一个用于结构的符号或混合符号数值分析和求解的工具箱。该工具箱基于直接刚度方法,允许对结构进行建模、分析和求解。根据符号核的能力、可用的计算时间和问题的复杂性,可以用封闭或数值形式获得符号解。在这两种情况下,可以生成Matlab®类来有效地评估符号解决方案或数值解决问题。在代码生成过程中,模型输入和类内部数据被适当地映射到生成的代码。附加注释,包括限制和不寻常的特性:大矩阵的符号反转本质上是一个复杂的任务,由于表达式膨胀现象,可能并不总是执行。这种现象导致在计算过程中表达式的大小显著增加[1],并且需要大量的CPU时间来完成矩阵反演任务。因此,大型线性系统的符号解并不总是可用的。出于这个原因,工具箱采用符号矩阵分解技术[2]。然而,表达式膨胀现象[3]也可能减缓符号分解。在这种情况下,唯一可行的选择是求助于线性系统的数值解。周,数学与工程领域的符号计算方法,博士论文,西安大略大学,2007.[J]。卡莱特,周伟,杰弗瑞,M.B. Monagan,使用Maple的LargeExpressions包的线性代数,《Maple会议论文集》,2006,pp. 14-25。周,J. Carette, D.J. Jeffrey, M.B. Monagan,基于签名的大表达式管理的层次表示,《人工智能与符号计算:第8届国际学术会议》,北京,2006年9月20-22日,中国,2006,pp. 254-268。施普林格。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
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 summary

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.

References

  • [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.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Computer Physics Communications
Computer Physics Communications 物理-计算机:跨学科应用
CiteScore
12.10
自引率
3.20%
发文量
287
审稿时长
5.3 months
期刊介绍: The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper. Computer Programs in Physics (CPiP) These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged. Computational Physics Papers (CP) These are research papers in, but are not limited to, the following themes across computational physics and related disciplines. mathematical and numerical methods and algorithms; computational models including those associated with the design, control and analysis of experiments; and algebraic computation. Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.
期刊最新文献
Residual-based Chebyshev filtered subspace iteration for Hermitian eigenvalue problems tolerant to inexact matrix-vector products Numerical modeling of laser cooling in molecules: From simple diatomics to polyatomics and radioactive species Semi-empirical pseudopotential method for monolayer transition metal dichalcogenides An adaptive dual-mesh method for fast and accurate 3D modeling of flow and transport in unsaturated porous environment at watershed scale Resonances in the Gaussian potential
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1