Skip to content
/ wbfmm Public

Wide Band (eventually) Fast Multipole Method

License

mjcarley/wbfmm

Repository files navigation

WBFMM is a Wide Band (soon) Fast Multipole Method library for the Helmholtz equation, with an extension for the Laplace (static) problem. It efficiently computes an estimate of the field generated by distributions of point sources at a set of target points.

The basic algorithms are those of Gumerov and Duraiswami (details are given at appropriate points in the in-code documentation).

Prerequisites

WBFMM requires

which is a wrapper for BLAS routines used in the code.

Installation

Installation instructions are given in the file INSTALL. If you have downloaded the github distribution, you will need to set up the automake system by running

./autogen.sh

in the root directory of the source code. You can then go through the usual autotools configure process

./configure (options)

Default optimization

WBFMM gives quite poor performance with the default -O2 optimization from autotools. The default compiler flags in the configuration are -O3 -g. If you want to override this default (for debugging, for example), you can use the CFLAGS variable. For example, to switch off all optimization and use debugging:

./configure CFLAGS="-O0 -g" ...

If you want to use code optimized with AVX extensions (this is experimental but does give a performance improvement in the code where it is in use) pass the compiler flag WBFMM_USE_AVX. For example:

./configure CFLAGS="-O3 -g -DWBFMM_USE_AVX" ...

To compile the code:

make

and to install it:

make install

About

Wide Band (eventually) Fast Multipole Method

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published