当前位置: X-MOL 学术Comput. Phys. Commun. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
BESLE: Boundary element software for 3D linear elasticity
Computer Physics Communications ( IF 7.2 ) Pub Date : 2021-04-27 , DOI: 10.1016/j.cpc.2021.108009
Andres F. Galvis , Daniel M. Prada , Lucas S. Moura , Cecilia Zavaglia , Jamie M. Foster , Paulo Sollero , Luiz C. Wrobel

BESLE is the first available parallel open-source code to analyse the mechanical behaviour of heterogeneous materials using the boundary element method (BEM) in 3D and in both an elastostatic and elastodynamic setting. Unlike all the other codes that are presently available, the software presented here is capable of simulating both isotropic and anisotropic materials comprised of single or multiple domains. Furthermore, the user-interface has been designed to provide a convenient way for configuring simulations involving many complex material constituents. Results are described by the displacement and traction fields, also, the stress and strain tensors are available for post-processing. BESLE is largely implemented in Fortran-MPI, but some of the sub-packages are based on other languages such as C and C++, and as such a the software is best used on a multi-core architecture where the parallelisation can be fully exploited. The main features and functionality of BESLE are presented here, and the User's Guide, available from the repository listed below, gives further details and outlines how users can carry out bespoke simulations.

Program summary

Program Title: BESLE

CPC Library link to program files: https://doi.org/10.17632/vx4vg47hzg.1

Developer's repository link: https://github.com/Afgr1087/BESLE_v1.0.git

Licensing provisions: GPL-v3.0

Programming language: Fortran 90, C++/C

External libraries: LAPACK [1], BLAS [2], SCOTCH [3], ScaLAPACK [4], MUMPS [5], Voro++ [6], Triangle [7]

Nature of problem: The solution of 3D elasticity models of heterogeneous materials is often arduous owing to the complexity of the underlying system of partial differential equations. Some analyses that require intensive computation are solids under quasi-static, inertial, and high-rate loading (all of which are treated by BESLE).

Solution method: BESLE provides a strategy to configure and solve complex problems of 3D heterogeneous solids using the elastostatic and elastodynamic formulations of the boundary element method (BEM). Moreover, it provides flexible means create surface meshes, to impose both Neumann and Dirichlet boundary conditions, and comes with a material database for fast parameterisation. It allows large scale problems to be treated in a straightforward framework. The mechanical behaviour of isotropic and anisotropic bodies which can include several domains, each comprised of heterogeneous materials with a diverse range of constitutive properties and complex morphologies, is feasibly analysed.

Additional comments including restrictions and unusual features: Fortran is limited in the size of arrays that can be allocated. Thus, for very large problems the number of degrees of freedom in the discretised system can exceed that allowed in Fortran, even if the machine has a large amount of RAM. To avoid over-allocation we have added functionality to check whether BESLE, and it's underlying Fortran code, will be able to handle the requisite number of degrees of freedom in advance of a calculation being executed. In the event that this limitation will be approached, BESLE will return an error message advising that the number of entries required will exceed 70% of the limit imposed by Fortran.

References

[1]

LAPACK: http://www.netlib.org/lapack/.

[2]

BLAS: http://www.netlib.org/blas/.

[3]

SCOTCH: https://gforge.inria.fr/projects/scotch/.

[4]

ScaLAPACK: http://www.netlib.org/scalapack/.

[5]

MUMPS: http://mumps.enseeiht.fr/.

[6]

Voro++: http://math.lbl.gov/voro++/.

[7]

Triangle: https://www.cs.cmu.edu/~quake/triangle.html.



中文翻译:

BESLE:用于3D线性弹性的边界元软件

BESLE是第一个可用的并行开放源代码,使用边界元方法(BEM)在3D以及弹性静力学和弹性力学环境下分析异质材料的力学行为与目前可用的所有其他代码不同,此处提供的软件能够模拟各向同性由单个或多个畴组成的各向异性材料。此外,用户界面的设计旨在提供一种方便的方式来配置涉及许多复杂材料成分的仿真。结果由位移和牵引力场描述,应力和张量也可用于后处理。BESLE主要在Fortran-MPI中实现,但是某些子软件包基于其他语言,例如C和C ++,因此,该软件最适合在可以充分利用并行化的多核体系结构中使用。本文介绍了BESLE的主要功能,下面列出的存储库中提供了《用户指南》,其中提供了更多详细信息并概述了用户如何进行定制模拟。

计划摘要

节目名称: BESLE

CPC库链接到程序文件: https : //doi.org/10.17632/vx4vg47hzg.1

开发人员的资料库链接: https : //github.com/Afgr1087/BESLE_v1.0.git

许可条款: GPL-v3.0

编程语言:Fortran 90,C ++ / C

外部库: LAPACK [1],BLAS [2],SCOTCH [3],ScaLAPACK [4],MUMPS [5],Voro ++ [6],三角形[7]

问题的性质:由于偏微分方程组基础系统的复杂性,异质材料的3D弹性模型的解决方案通常很艰巨。一些需要大量计算的分析是在准静态,惯性和高速载荷下的固体(所有这些都由BESLE处理)。

解决方法:BESLE提供了一种使用边界元法(BEM)的弹力和弹力公式来配置和解决3D非均质固体复杂问题的策略。此外,它提供了灵活的方法来创建曲面网格,以施加诺伊曼和Dirichlet边界条件,并附带了用于快速参数化的材料数据库。它允许在一个简单的框架中处理大规模问题。对各向同性和各向异性体的力学行为进行了分析,其中包括多个域,每个域均由具有各种本构性质和复杂形态的异质材料组成。

其他注释包括限制和异常功能: Fortran在可分配的数组大小方面受到限制。因此,对于非常大的问题,即使计算机具有大量RAM,离散化系统中的自由度数也可以超过Fortran中允许的自由度数。为避免过度分配,我们添加了功能来检查BESLE及其基础的Fortran代码是否能够在执行计算之前处理必要数量的自由度。如果将达到此限制,BESLE将返回一条错误消息,提示所需的条目数将超过Fortran施加的限制的70%。

参考

[1]

LAPACK:http://www.netlib.org/lapack/。

[2]

BLAS:http://www.netlib.org/blas/。

[3]

苏格兰语:https://gforge.inria.fr/projects/scotch/。

[4]

ScaLAPACK:http://www.netlib.org/scalapack/。

[5]

腮腺炎:http://mumps.enseeiht.fr/。

[6]

Voro ++:http://math.lbl.gov/voro++/。

[7]

三角形:https://www.cs.cmu.edu/~quake/triangle.html。

更新日期:2021-04-29
down
wechat
bug