Published: Oct. 4, 2019

Andreas Kloeckner

Department of Computer Science, University of Illinois

Fast Algorithms for the Evaluation of Layer and Volume Potentials

I will present new, asymptotically fast algorithms with high-order error bounds for the evaluation of layer and volume potentials in two and three dimensions. The efficient evaluation of both types of potentials and their effective coupling is essential in the development of efficient integral-equation-based solvers for inhomogeneous elliptic BVPs. I will demonstrate the performance and accuracy of these methods through a number of application examples drawn from electromagnetics and fluid flow.

For the case of layer potentials, I will discuss a guaranteed-accuracy fast algorithm for Quadrature by Expansion (QBX), accelerated through the use of target-specific expansions. QBX is a systematic, high-order approach to Nyström-discretized singular quadrature that applies to layer potential integrals with general kernels on curves and surfaces with high-order unstructured discretizations. Target-specific expansions permit a substantial cost reduction in the fast algorithm, through a decrease of the number of floating point operations required for the evaluation of near-field interactions. Combined with adaptive refinement based on geometric criteria enforced through a tree-based geometry processing method, our fast algorithm, termed GIGAQBX-TS, is governed by a simple, additive error model that robustly controls the truncation, quadrature and acceleration error components while obtaining approximately linear scaling of cost with the size of the geometry.

I will further discuss the coupling of the layer potential scheme with a volume potential evaluation method in two and three dimensions in the presence of complex geometry. Volume potential evaluation is accelerated by a table-driven Fast Multipole algorithm. Time permitting, I will further discuss the automated synthesis of low-complexity expansion and translation operators for a symbolically-supplied kernels.