I have developed, and am interested in improving, basis sets which allow all regular solutions to the Helmholtz equation (the PDE),

to be well approximated in a given domain, for any given energy *E*.
Each member of the set
itself satisfies the PDE, thus so does any linear combination.
Such bases are needed for the Method of Particular Solutions and its
accelerated variants such as the *scaling method*.
In this animation I test a basis of Neumann functions (irregular Bessels)
whose centers lie along a curve exterior to the domain. The domain is the
peanut shape
shown by the dotted line. The exterior curve is visible as the larger
peanut-shaped wall of point sources, and here is a distance 4/*k*
from the boundary, where *k=E*^{1/2}.
Sources are spaced 8 per wavelength (4 times the Nyquist sampling
density).
The basis can be viewed as an approximation to a single-layer potential
on the exterior curve.
Such basis sets have proved very successful for the Dirichlet eigenproblem,
that is, they represent eigenfunctions accurately even for nonconvex
domains and (non-reentrant) corners.

I test the basis approximation error in representing a given field *f*,
shown upper-left, which is a field given by a single Neumann source
located a distance *D* outside the domain. *D* is swept continually
through a range of positive to negative values.
I am interested in how well this singular field can be approximated when
*D* is *less than* the distance to the exterior curve.
This is relevant since eigenfunctions (when analytically continued outside
the domain) can have singularities with arbitrarily small *D*.
A classical example is any corner with angle a non-integral fraction of π.

I minimize the error |*f* - φ|, where φ is a linear
combination of basis functions. This norm is taken using values on the boundary
only, since if *E* is not a Dirichlet eigenvalue of the domain,
then boundary values uniquely define interior values.
For each *f* minimization
is achieved by solving a (possibly ill-conditioned)
linear system for the coefficient vector, via the SVD.
The resulting φ is shown upper-right, and the error field
*f* - φ is shown lower-left.
The size of boundary value and derivative error norms on the boundary
are plotted as a function of *D* in the lower-right.
Notice that as *D* decreases, errors grow exponentially, until
when *D*=0 errors become quite large (but how does this value
depend on *E*?).
Interestingly, when *D*<0, value errors drop once again, however
the field is entirely wrong inside the domain (the internal singularity
cannot be represented).

Continue to research summary...