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 summaryProgram Title: BESLECPC Library link to program files:https://doi.org/10.17632/vx4vg47hzg.1Developer's repository link:https://github.com/Afgr1087/BESLE_v1.0.gitLicensing provisions: GPL-v3.0Programming language: Fortran 90, C++/CExternal 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.
Read full abstract