
In boundary integral and potential methods for Stokes flow, the fundamental solution (Green’s function)
of the Stokes equations appears, namely the stokeslet kernel. In the three-dimensional case, the stokeslet is
a 3 ×3 tensor given by
Sjl(r) = δjl
|r|+rjrl
|r|3,(3)
where δjl is the Kronecker delta. Also commonly used are the stresslet and rotlet kernels, which can be
seen as derivatives of the stokeslet and will be introduced in section 2. In this paper, we are interested in
problems with periodic boundary conditions, in which Dof the three spatial directions will be periodic, and
the remaining 3 −Ddirections will be free, in this context meaning that the domain extends to infinity
and that no boundary conditions are enforced in these directions in the summation procedure. We will call
the problem triply, doubly and singly periodic if D= 3,2,1, respectively, and free-space if D= 0. We will
consider a system of Npoint sources of strengths f(xn) located at positions xn. The velocity field generated
by this system is given as a periodic sum over the point sources, i.e.
uDP(x) =
N
X
n=1 X
p∈PDP
S(x−xn+p)f(xn),(4)
where the set PDPis a D-dimensional lattice containing all periodic images, to be properly defined in
section 2. We assume that we want to evaluate (4) also in Ntarget points, which may or may not be the
same as the source points. The periodic sum can be computed using Ewald summation, which splits the sum
into a short-range part, to be summed directly, and a smooth long-range part, to be treated in Fourier space.
For the stokeslet, the split was derived by Hasimoto [12]. A decomposition parameter ξ, to be introduced
in section 2, controls the Ewald summation split. For fixed ξ, computing the Ewald sums directly leads to a
method with time complexity O(N2). Adjusting ξproperly reduces the complexity of the direct summation
to O(N3/2), see e.g. [13,14]. Fast Ewald summation methods such as the Particle–Mesh–Ewald (PME)
method [13] and smooth Particle–Mesh–Ewald (SPME) method [15,16] reduce the complexity further to
O(Nlog N), a significant improvement.
The Spectral Ewald (SE) method is a PME-type method with spectral accuracy. As in all PME methods,
the interactions between source points and target points are computed via a uniform grid and the fast Fourier
transform (FFT). A so-called window function is used to interpolate between source/target points and the
uniform grid, much like in the nonuniform fast Fourier transform (NUFFT) [17,18]. The spectral accuracy
of the SE method comes from the choice of window function, which was originally a truncated Gaussian. In
contrast, other methods such as e.g. SPME [15,16] use Cardinal B-splines for interpolation, which leads to
algebraic accuracy.
The SE method for Stokes flow has been developed in a series of papers, first for the triply periodic
stokeslet [19], doubly periodic stokeslet [20], triply periodic stresslet [21], and triply periodic rotlet [22].
The method was extended to the free-space case for all three kernels by [23]. The current paper serves to
complete this development, much in the same way as was recently done for electrostatics by [24], by adding
the missing pieces (singly periodic case for all three kernels, and doubly periodic case for the stresslet
and rotlet), and unifying all periodic cases within a single framework. This opens up the possibility to
perform efficient simulations of three-dimensional Stokes flow with arbitrary periodicity (D= 3,2,1,0),
using boundary integral and potential methods.
The SE method has also been adapted to related models, such as Brinkman flow [25], and Stokesian
dynamics [26]. To facilitate the inclusion of Brownian motion, [27] proposed the Positively Split Ewald
(PSE) method for the Rotne–Prager–Yamakawa (RPY) tensor of Stokesian dynamics, thus ensuring that
both the short-range and long-range parts are symmetric positive definite. The PSE method has found
much use in Brownian dynamics [28,29,30,4,7,5,11,31,2,8,9].
In this paper, the aperiodic directions are assumed to be free and extend to infinity. If they are instead
bounded, one possibility is to explicitly discretize the boundary, and enforce boundary conditions on it, as
done e.g. in [32], without modifying the underlying SE method. Another option is the general geometry
Ewald-like method (GGEM) [33,34], which uses the same split into a short-range and long-range part, but
2