Chapter 3. Installing BETL

Table of Contents

Preliminary remarks
Installing BETL

Preliminary remarks

This part of the documentation describes the installation of the Boundary Element Template Library. In principle the installation should be the same on all POSIX-like operating systems such as Unix, Linux, and Mac OS X. In addition, since BETL's build process relies on CMake, the library's installation should be also possible with other operating systems like Microsoft Windows. Nevertheless, the installation's focus is clearly on POSIX systems. Up to now, the installation on Windows systems is not sufficiently tested by what it has to be considered as experimental.

The installation of BETL requires the following packages:

Additionally, the use of the following libraries is recommended:

The term AHMED is an abbreviation for Another software library on hierarchical matrices for elliptic differential equations. Although the library is not mandatory its use is highly recommended since it accelerates the computations of boundary layer potentials significantly. The AHMED library implements the so-called Adaptive Cross Approximation (ACA) by what the overall algorithm's complexity can be reduced to a logarithmic order instead of its originally quadratic complexity. For non-commercial purpose the library is freely available. Please contact Prof. Dr. Mario Bebendorf for further details.

The use of the SuperLU and the SuiteSparse package becomes advantageous in situations where decompositions of sparse matrices and/or matrix operations other than a matrix-vector product might be necessary. Those operations usually arise within some preconditioning techniques. Of course, you can use also iterative methods for those tasks, but a direct solver is often more convenient since the sparse matrices are usually an order of magnitude smaller than sparse matrices arising from Finite Element discretisations. Alternatively, if you are using the Intel's Math Kernel Library (MKL) you can interface BETL also with the MKL's built-in direct sparse solver Pardiso. When you intend to use AHMED, linking against the MKL might be also a good idea since the MKL offers a highly optimised BLAS functionality on which the ACA heavily relies.

But no matter whether you intend to use the recommended libraries or not, the building process of BETL is not affected by the recommendations above. Hence, in the following section we will describe the installation process of BETL itself. A detailed description on how the additional libraries can be included will follow later.