⬇ Download Markdown · ⬇ Download LaTeX · ⬇ original · view original · CSV: table 1 , table 2 , table 3
H 2 -matrices for translation-invariant kernel functions
Steffen B¨orm and Janne Henningsen
arXiv:2210.16609v2 [math.NA]
7
Jun 2024
June 10, 2024
Boundary element methods for elliptic partial differential equations typ-
ically lead to boundary integral operators with translation-invariant kernel
functions. Taking advantage of this property is not straightforward if general
unstructured meshes and general basis functions are used, since we need the
supports of these basis functions to be contained in a hierarchy of subdomains
with translational symmetry.
In this article, we present a modified construction for H 2 -matrices on un-
structured quasi-uniform meshes that uses translation-invariance to signifi-
cantly reduce the storage requirements for the farfield representation.
We construct a nested hierarchy of axis-parallel boxes so that translational
symmetry is preserved and prove optimal-order complexity estimates under
moderate assumptions. In particular, we need only one weak assumption for
proving that the entire farfield requires only O(log(n)) coefficients.
It should be mentioned that, since we are working with an unstructured
mesh and general basis functions, the nearfield of the matrix still requires
O(n) units of storage.
This work was funded by the DFG in project BO 3289/7-1.
Keywords: integral equations, data-sparse approximation, hierarchical matrices
MSC codes: 65N38, 65R20, 45B05, 65D05, 65D15, 41A10, 41A63
1 Introduction
Boundary element methods are an attractive technique for handling homogeneous linear
partial differential equations, e.g., the Laplace, Lam´e, Helmholtz, or Maxwell equations
[24, 27, 30], on a domain Ω ⊆ R d with d ∈ {2, 3}. A Galerkin discretization of related
boundary integral operators based on test functions (ϕ i ) i ∈I and trial functions (ψ j ) j ∈J
leads to matrices G ∈ R I ×J given by
G i j := Γ ϕ i ( x) Γ g(x, y)ψ j (y) dy dx for all i ∈ I, j ∈ J, (1)
1
where Γ := ∂Ω denotes the boundary of Ω and g : R d × R d → R is a kernel function.
In typical applications, the kernel function g is non-zero almost everywhere, and the
matrix G is therefore densely populated. In order to reduce the storage requirements
and computational complexity, compression techniques are employed, e.g., the panel-
clustering technique [26], the fast multipole method [28, 21, 1, 22, 33], interpolation
[18, 10, 12, 13, 17], algebraic approximations [31, 32, 3, 4, 14], or hybrid methods [19, 9, 8].
All of these techniques split the matrix G into submatrices that can belong either to the
nearfield or the farfield. Nearfield submatrices are small and can be stored directly, while
farfield submatrices can be large and have to be approximated, e.g., by low-rank matrices
that can be stored efficiently in factorized form. Unfortunately, even the factorized form
still requires a large amount of storage, and while recompression techniques [11, 20, 7]
can help, they require additional computational work.
In this article, we pursue an alternative approach frequently used in the context of
fast multipole methods for particle systems: if the kernel function g is invariant under
translation, i.e., if
g(x, y) = g(x + c, y + c) for all x, y, c ∈ R d , (2)
we can modify interpolation and certain hybrid methods in a way that reduces the
storage requirements for the farfield matrices to O(k 2 log(n)), where k denotes the rank
of the approximation and n := max{|I|, |J|} the maximal dimension of the matrix G.
This task is straightforward for particle systems with approximately uniformly dis-
tributed particles, since each particle is represented by just one point in space, but it
is significantly more challenging for Galerkin discretizations, since every matrix entry
depends on the supports of the basis functions ϕ i and ψ j , and the supports of different
basis functions may overlap or have a non-trivial shape. In some implementations, this
problem is circumvented by replacing the integrals in eq. (1) by quadrature, thus reduc-
ing the computation to a sum of kernel evaluations closely related to particle methods
[5]. While this is certainly an elegant approach and allows BEM codes to take advan-
tage of highly sophisticated implementations of the fast multipole method, the number
of quadrature points may grow excessively large if higher quadrature orders are used to
keep up with the discretization error as the grid is refined.
In this article, we present a different approach: Initially, we construct a hierarchy of
axis-parallel boxes that cover representative points of the supports of the basis functions,
and we ensure that all boxes on a given level are translations of the same reference
box with a fixed displacement step size. By suitably enlarging the reference boxes
and applying the aforementioned translations to these enlarged reference boxes we then
construct a corresponding hierarchy of axis-parallel boxes that cover the entire supports.
If we apply standard techniques like interpolation [18, 10] or Green quadrature [8]
to this structure, matrices corresponding to translation-equivalent pairs of boxes are
identical and therefore have to be stored only once. As long as the enlargement of the
reference boxes is sufficiently bounded, this allows us to reduce the corresponding storage
requirements to O(k 2 ) for each level. No further assumption is needed for proving this
result.
2
This approach also reduces the assembly time, since the matrices have to be set up only
once. The run-time for the matrix-vector multiplication may benefit, too, since fewer
data has to be moved between main memory and the processor, although the number
of arithmetic operations usually grows since guaranteeing translational symmetry limits
our flexibility when constructing the boxes.
That is why a major part of this article is devoted to proving that our proposed
construction does not change the asymptotically optimal complexity of the H 2 -matrix
method.
In section 2 we introduce H 2 -matrices, a suitable representation of our matrix approx-
imation, and outline the modifications required to take full advantage of translation-
invariance. Section 3 contains the key result of this article: we prove that the entire
farfield of the modified H 2 -matrices requires only O(k 2 log(n)) coefficients if the enlarge-
ment of the reference boxes is sufficiently bounded. The nearfield matrices and the leaf
matrices are directly connected to the unstructured surface mesh and therefore cannot
take advantage of the translation-invariance property, so we store these matrices explic-
itly using O(nk) units of storage. Section 4 illustrates the advantage of the modified
representation in a series of numerical experiments.
2 H 2 -matrices for translation-invariant kernel functions
In order for our approximation technique to achieve the desired accuracy, the kernel
function g needs to be asymptotically smooth, i.e., there have to be constants C as ∈ R ≥0 ,
c 0 ∈ R >0 and a singularity degree σ ∈ N such that for all (x, y) ∈ R d × R d with x ̸= y
the following condition is fulfilled:
|∂ ν ι g(x, y)| ≤ C as (σ − 1 + ν)! c ν 0
∥x − y∥ ν +σ 2 for all ν ∈ N 0 , ι ∈ {1, ..., 2d}. (3)
Kernel functions occurring in typical applications are known to be asymptotically smooth,
see for example [25, Appendix E] and [2]. Additionally, we assume that g satisfies the
translation-invariance property (2).
Definition 1 (Tree notations) Let T be a tree. We use the notation t ∈ T for ”t is a node in T ”. For each node t ∈ T we denote the set of its sons by sons T (t). The set of
a node in T ”. For each node t ∈ T we denote the set of its sons by sons T (t). The set of
leaves of T is denoted by ℒ T := {t ∈ T : sons T (t) = ∅}. We denote the root of T by ℛ T
and define the level of a node by
level T (t) := 0 if t = ℛ T ,
l evel T ( ˇ t ) + 1 if t has a father ˇ t ∈ T for all t ∈ T .
For all ℓ ∈ N 0 we define T (ℓ) := {t ∈ T : level T (t) = ℓ}.
The first phase of our approximation procedure relies on characteristic points (x i ) i ∈I
and (y j ) j ∈J satisfying x i ∈ supp(ϕ i ) for all i ∈ I and y j ∈ supp(ψ j ) for all j ∈ J.
3
These points are split hierarchically into a hierarchy of boxes that will then give rise to
a decomposition of the matrix into submatrices.
We choose a maximal level ℓ m ax ∈ N ≥d and construct trees T I and T J of closed axis-
parallel boxes in R d satisfying
t = r ( ℓ) + δ ( ℓ) ⊙ p t
=: m t
= r ( ℓ) + m t for all t ∈ T (ℓ) I ∪ T (ℓ) J (4)
on every level ℓ ∈ {0, ..., ℓ m ax }, where (r ( ℓ) ) ℓ m ax
ℓ =0 is a family of reference boxes, δ ( ℓ) ∈ R d
consists of the interval lengths of r ( ℓ) for each ℓ ∈ {0, ..., ℓ m ax } and (p t ) t ∈T I ∪T J are
suitable integer vectors.
We start with computing an axis-parallel box r ( 0) ⊆ R d containing Γ. In order to
create the isotropic boxes required by our complexity analysis, we then compute (r ( ℓ) ) ℓ m ax
ℓ =1
recursively by consecutive splitting in each coordinate direction. The corresponding
cyclic sequence of splitting directions is given by
ι ( 0) := 1, ι ( ℓ) := ι ( ℓ−1) + 1 if ι ( ℓ−1) < d,
1 if ι ( ℓ−1) = d for all ℓ ∈ N. (5)
Assuming that r ( ℓ) = [a ( ℓ) 1 , b ( ℓ) 1 ] × ... × [a ( ℓ) d , b ( ℓ) d ] on a level ℓ ∈ {0, ..., ℓ m ax − 1} is already
given, we compute
r ( ℓ+1) := {z ∈ r ( ℓ) : z ι ( ℓ) ≤ c ( ℓ) ι ( ℓ) } with c ( ℓ) ι ( ℓ) := a ( ℓ) ι ( ℓ) + b ( ℓ) ι ( ℓ)
2 . (6)
If ℓ + 1 < ℓ m ax holds, we proceed with r ( ℓ+1) by recursion. Otherwise, we stop.
Next, we create the tree T I by shifting the reference boxes r ( ℓ) in a regular pattern.
In this stage, we also construct subsets (I t ) t ∈T I of I such that
x i ∈ t for all i ∈ I t . (7)
Beginning with r ( 0) as the root ℛ T I of T I , p r ( 0) := 0 and I r ( 0) := I, we construct T I
also recursively: Assuming that a box t = [a t ,1 , b t ,1 ] × ... × [a t ,d , b t ,d ] ∈ T (ℓ) I on a level
ℓ ∈ {0, ..., ℓ m ax − 1} with t = r ( ℓ) + δ ( ℓ) ⊙ p t for a vector p t ∈ N d 0 and a corresponding
non-empty subset I t of I with (7) are already given, we compute the midpoint c t ,ι ( ℓ) :=
(a t ,ι ( ℓ) + b t ,ι ( ℓ) )/2 and
t 1 := {z ∈ R d : z ι ( ℓ) ≤ c t ,ι ( ℓ) } = r ( ℓ+1) + δ ( ℓ+1) ⊙ p t 1 ,
t 2 := {z ∈ R d : z ι ( ℓ) ≥ c t ,ι ( ℓ) } = r ( ℓ+1) + δ ( ℓ+1) ⊙ p t 2
with p t 1 , p t 2 ∈ N d 0 given by
p t 1 , ι := 2 p t ,ι if ι = ι ( ℓ)
p t ,ι if ι ̸= ι ( ℓ) , p t 2 , ι := 2 p t ,ι + 1 if ι = ι ( ℓ)
p t ,ι if ι ̸= ι ( ℓ) for all ι ∈ {1, ..., d}. (8)
4
We let
I t 1 := I t \ I t 2 , I t 2 := ∅ if {x i : i ∈ I t } ⊆ t 1
{ i ∈ I t : x i ∈ t 2 } otherwise (9)
and define sons T I (t) := {t ′ ∈ {t 1 , t 2 } : I t ′ ̸= ∅}. If ℓ + 1 < ℓ m ax holds, we proceed with
all sons t ′ ∈ sons T I (t) by recursion. Otherwise, we stop the recursion.
By replacing I with J and (x i ) i ∈I with (y j ) j ∈J we analogously compute the tree T J
along with a corresponding hierarchical family (J s ) s ∈T J of non-empty subsets of J.
In conjunction with the families (I t ) t ∈T I and (J s ) s ∈T J , our trees T I and T J form cluster
trees for I and J, respectively, which implies (cf. [6, Corollary 3.9])
I = ˙
t∈ ℒ T I
I t , J = ˙
s∈ ℒ T J
J s . (10)
Furthermore, by construction, we have
ℒ T I = T (ℓ m ax )
I , ℒ T J = T (ℓ m ax )
J . (11)
In the second phase we create corresponding support bounding boxes (B t ) t ∈T I and
(C s ) s ∈T J with (see fig. 1) a property based on eq. (4): For every level ℓ ∈ {0, ..., ℓ m ax }
we construct the smallest closed axis-parallel box B (ℓ) containing r ( ℓ) and the shifted
supports (supp(ϕ i ) − m t ) i ∈I t for all t ∈ T (ℓ) I . Likewise, for every level ℓ ∈ {0, ..., ℓ m ax }
we construct the smallest closed axis-parallel box C (ℓ) containing r ( ℓ) and the shifted
supports (supp(ψ j ) − m s ) j ∈J s for all s ∈ T (ℓ) J . According to (4), the properties
r ( ℓ) ∪ i∈I t
supp(ϕ i ) − m t ⊆ B (ℓ) for all t ∈ T (ℓ) I , (12a)
r ( ℓ) ∪ j∈J s
supp(ψ j ) − m s ⊆ C (ℓ) for all s ∈ T (ℓ) J (12b)
then lead to
t ∪ i∈I t
supp(ϕ i ) ⊆ B (ℓ) + m t =: B t for all t ∈ T (ℓ) I , (13a)
s ∪ j∈J s
supp(ψ j ) ⊆ C (ℓ) + m s =: C s for all s ∈ T (ℓ) J . (13b)
In the third phase we construct an approximation of G by combining the trees, boxes
and index sets created before with tensor interpolation. For this purpose we choose a
degree θ ∈ N and define Θ := {0, ..., θ} d .
For every axis-parallel box Q ⊂ R d let
I Q : C(Q) → Π θ , f → ν∈Θ
f (ξ Q ,ν )L Q ,ν ,
5
r ( 6)
m t
t
Γ
B (6)
m t
B t
Γ
Figure 1: Relation between the boxes of T I and their support bounding boxes.
be the corresponding tensor Chebyshev interpolation operator mapping to the set Π θ
of tensor polynomials of degree θ with associated interpolation points (ξ Q ,ν ) ν ∈Θ and
Lagrange polynomials (L Q ,ν ) ν ∈Θ .
We use the admissibility condition
A η : T I × T J → {true, false},
(t, s) → t rue if max{diam(B t ) , diam(C s ) } ≤ η dist(B t , C s )
f alse if max{diam(B t ) , diam(C s ) } > η dist(B t , C s )
(14)
with a given parameter η ∈ R >0 to decide whether the kernel function g can be approx-
imated in a domain B t × C s . For every pair (t, s) ∈ T I × T J with A η (t, s) = true the
corresponding tensor interpolation error satisfies
∥g − (I B t ⊗ I C s )[g]∥ ∞ ,B t ×C s ≤ C in
dist(B t , C s ) σ q θ +1 η
for a constant C in ∈ R >0 and q η := min c 0 η c 0 η +2 , c 0 η 4 (cf. [6, Remark 4.23]) and therefore
converges exponentially to zero with respect to the degree θ. The actual convergence
rates that appear in practice are often considerably better than q η .
For every t ∈ T I let now V t ∈ R I t × Θ be given by
(V t ) i ν := Γ ϕ i ( x)L B t , ν (x) dx for all i ∈ I t , ν ∈ Θ,
and for every s ∈ T J let W s ∈ R J s × Θ be given by
(W s ) j µ := Γ ψ j (y)L C s , µ ( y) dy for all j ∈ J s , µ ∈ Θ.
Then for every pair (t, s) ∈ T I × T J with A η (t, s) = true we get, by using (1) and (13),
6
for all i ∈ I t , j ∈ J s
G i j ≈ Γ ϕ i ( x) Γ (I B t ⊗ I C s )[g](x, y)ψ j (y) dy dx
= ν∈Θ µ∈Θ Γ ϕ i ( x)L B t ,ν (x) dx
=(V t ) i ν
g(ξ B t ,ν , ξ C s , µ ) Γ L C s , µ ( y)ψ j (y) dy
=(W s ) j µ
, (15)
which leads to G| I t × J s ≈ V t S ( t,s) W ∗ s (16)
with S ( t,s) ∈ R Θ ×Θ given by
(S ( t,s) ) ν µ := g(ξ B t ,ν , ξ C s , µ ) for all ν ∈ Θ, µ ∈ Θ,
i.e., we have a factorized low-rank approximation of admissible submatrices G| I t ×J s .
We compute a tree T I ×J ⊆ T I × T J defined by the following properties:
• ℛ T I ×J = ( ℛ T I , ℛ T J ) = (r ( 0) , r ( 0) );
• For all (t, s) ∈ T I ×J the sons are given by
sons T I ×J (t, s) = ∅ if A η (t, s) = true,
s ons T I (t) × sons T J (s) otherwise.
Note that this implies sons T I ×J (t, s) = ∅ if sons T I (t) = ∅ or sons T J (s) = ∅.
Its admissible leaves and inadmissible leaves are denoted by
ℒ + T I ×J := {(t, s) ∈ ℒ T I ×J : A η (t, s) = true},
ℒ − T I ×J := {(t, s) ∈ ℒ T I ×J : A η (t, s) = false}.
Drawing on the properties of the tree T I and T J , we find (cf. [6, Corollary 3.15])
I × J = ˙
(t,s)∈ ℒ T I×J
(I t × J s ) = ˙
(t,s)∈ ℒ + T I ×J
(I t × J s ) ˙ ∪ ˙
(t,s)∈ ℒ − T I ×J
(I t × J s ).
We can therefore use (16) to construct an approximation G ∈ R I ×J of G by
G| I t × J s := V t S ( t,s) W ∗ s for all (t, s) ∈ ℒ + T I ×J ,
G| I t × J s := G| I t × J s for all (t, s) ∈ ℒ − T I ×J .
This means that for admissible blocks (t, s) ∈ ℒ + T I ×J , only a small coupling matrix
S ( t,s) ∈ R Θ ×Θ has to be stored.
7
The row cluster basis (V t ) t ∈T I and the column cluster basis (W s ) s ∈T J can be stored
efficiently using the identity theorem for polynomials: we have
L B t , ν = µ∈Θ
L B t , ν (ξ B t ′ ,µ ) L B t ′ ,µ for all t ∈ T I \ ℒ T I , t ′ ∈ sons T I (t), ν ∈ Θ.
Consequently, for every t ∈ T I \ ℒ T I , t ′ ∈ sons T I (t), i ∈ I t ′ , ν ∈ Θ we get
(V t ) i ν = Γ ϕ i ( x)L B t ,ν (x) dx = Γ ϕ i ( x) µ∈Θ
L B t , ν (ξ B t ′ ,µ ) L B t ′ ,µ ( x) dx
= µ∈Θ Γ ϕ i ( x)L B t ′ ,µ ( x) dx L B t , ν (ξ B t ′ ,µ ) = µ∈Θ
(V t ′ ) i µ L B t , ν (ξ B t ′ ,µ )
and therefore V t | I t ′ ×Θ = V t ′ E t ′ (17)
with E t ′ ∈ R Θ ×Θ given by
(E t ′ ) µ ν := L B t , ν (ξ B t ′ ,µ ) for all µ ∈ Θ, ν ∈ Θ.
Since we also have I t = ˙ t ′ ∈sons T I (t) I t ′ for all t ∈ T I \ ℒ T I by construction, we do not
have to store all the matrices (V t ) t ∈T I explicitly. It is sufficient to store only the leaf
matrices (V t ) t ∈ ℒ T I and the transfer matrices (E t ) t ∈T I \{ ℛ T I } instead.
So far, we have not taken advantage of the translation-invariance eq. (2) of the kernel
function. It allows us to avoid storing all the coupling matrices (S b ) b ∈ ℒ + T I×J individually:
eq. (13) implies
ξ B t , ν = ξ B ( ℓ) , ν + m t for all t ∈ T (ℓ) I , ν ∈ Θ, (18a)
ξ C s , µ = ξ C ( ℓ) , µ + m s for all s ∈ T (ℓ) J , µ ∈ Θ (18b)
on every level ℓ ∈ {0, ..., ℓ m ax } while, due to eq. (11), the tree T I ×J satisfies
level T I ×J (t, s) = level T I (t) = level T J (s) for all (t, s) ∈ T I ×J . (19)
By combining eq. (19) with eq. (18) and eq. (2) we get
(S ( t,s) ) ν µ = g(ξ B t ,ν , ξ C s , µ ) = g(ξ B ( ℓ) ,ν + m t , ξ C ( ℓ) , µ + m s )
= g(ξ B ( ℓ) ,ν + m t − m t , ξ C ( ℓ) , µ + m s − m t )
= g(ξ B ( ℓ) ,ν , ξ C ( ℓ) , µ − (m t − m s ) ) for all (t, s) ∈ ℒ + T I ×J ∩ T (ℓ) I ×J , ν, µ ∈ Θ
on every level ℓ ∈ {0, ..., ℓ m ax }. Hence, on every level ℓ ∈ {0, ..., ℓ m ax } the implication
m t − m s = m ˜ t − m ˜s =⇒ S ( t,s) = S ( ˜ t ,˜s) (20)
holds for all (t, s), ( ˜ t , ˜s) ∈ ℒ + T I ×J ∩ T (ℓ) I ×J .
8
Moreover, due to our regular construction of the cluster tree, we also do not have to
store all the transfer matrices individually: On every level ℓ ∈ {0, ..., ℓ m ax − 1} we have,
according to eq. (18a),
L B t , ν (x) = L B ( ℓ) , ν (x − m t ) for all t ∈ T (ℓ) I , ν ∈ Θ, x ∈ R d ,
which implies
(E t ′ ) µ ν = L B t , ν (ξ B t ′ ,µ ) = L B ( ℓ) , ν (ξ B t ′ ,µ − m t )
= L B ( ℓ) , ν (ξ B ( ℓ+1) ,µ + m t ′ − m t )
= L B ( ℓ) , ν (ξ B ( ℓ+1) ,µ − (m t − m t ′ )) for all t ∈ T (ℓ) I , t ′ ∈ sons T I (t), ν, µ ∈ Θ.
Hence, on every level ℓ ∈ {0, ..., ℓ m ax − 1}, we have
m t − m t ′ = m ˜ t − m ˜ t ′ =⇒ E t ′ = E ˜ t ′ (21)
for all t, ˜ t ∈ T (ℓ) I , t ′ ∈ sons T I (t), ˜ t ′ ∈ sons T I ( ˜ t ). The column cluster basis (W s ) s ∈T J and
the corresponding transfer matrices (F s ) s ∈T J have similar properties.
The implications eq. (20) and eq. (21) allow us to significantly reduce the storage
requirements of the H 2 -matrix representation by taking advantage of the translation-
invariance of the kernel function.
3 Complexity estimates
In the following, let
n := max{|I|, |J|}, k := |Θ| = (θ + 1) d . (22)
For every ι ∈ {1, ..., d} let e ι ∈ R d denote the ι-th canonical unit vector.
Lemma 1 (Storage requirements of the leaf matrices) Storing the leaf matrices
Lemma 1 (Storage requirements of the leaf matrices) Storing the leaf matrices
(V t ) t ∈ ℒ T I and (W s ) s ∈ ℒ T J requires not more than 2kn units of storage.
Proof. Combining eq. (22) with eq. (10) implies that storing the matrices (V t ) t ∈ ℒ T I and
(W s ) s ∈ ℒ T J directly requires not more than
t∈ ℒ T I
|I t | |Θ| + s∈ ℒ T J
|J s | |Θ| = k t∈ ℒ T I
|I t | + s∈ ℒ T J
|J s | = k(|I| + |J|) ≤ 2kn
units of storage. □
Lemma 2 On every level ℓ ∈ {0, ..., ℓ m ax − 1} we have
{m t − m t ′ : t ∈ T (ℓ) I , t ′ ∈ sons T I (t)} ⊆ {0, −δ ( ℓ+1)
ι ( ℓ) e ι ( ℓ) },
{m s − m s ′ : s ∈ T (ℓ) J , s ′ ∈ sons T J (s)} ⊆ {0, −δ ( ℓ+1)
ι ( ℓ) e ι ( ℓ) }.
9
Proof. Let ℓ ∈ {0, ..., ℓ m ax − 1}, let t ∈ T (ℓ) I and let t ′ ∈ sons T I (t). Then p t ′ ∈ N d 0 satisfies
p t ′ ,ι = p t ,ι for all ι ∈ {1, ..., d}\{ι ( ℓ) } and p t ′ ,ι ( ℓ) ∈ {2p t ,ι ( ℓ) , 2p t ,ι ( ℓ) +1}, according to eq. (8).
Due to eq. (4) and eq. (6) we therefore get, as illustrated in Figure 2, (m t − m t ′ ) ι = 0
for all ι ∈ {1, ..., d} \ {ι ( ℓ) } and
(m t − m t ′ ) ι ( ℓ) = p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − p t ′ ,ι ( ℓ) δ ( ℓ+1)
ι ( ℓ)
∈ {p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − 2p t ,ι ( ℓ) δ ( ℓ+1)
ι ( ℓ) , p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − 2p t ,ι ( ℓ) δ ( ℓ+1)
ι ( ℓ) − δ ( ℓ+1)
ι ( ℓ) }
= {p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) , p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − p t ,ι ( ℓ) δ ( ℓ) ι ( ℓ) − δ ( ℓ+1)
ι ( ℓ) }
= {0, −δ ( ℓ+1)
ι ( ℓ) },
which proves the first statement. The second statement can be proven similarly. □
r ( 5)
r ( 4)
Γ
t
m t
m t 1 m t 2
r ( 5)
r ( 4)
Γ
m ˜ t
m ˜ t 1 m ˜ t 2
˜ t
Figure 2: The translations of the boxes of T I and the translations of their sons.
Theorem 1 (Storage requirements of the transfer matrices) The transfer matri-
Theorem 1 (Storage requirements of the transfer matrices) The transfer matri-
ces (E t ) t ∈T I \{ ℛ T I } and (F s ) s ∈T J \{ ℛ T J } require not more than 4k 2 ℓ m ax units of storage.
Proof. Combining the implication eq. (21) with lemma 2 and eq. (22) directly implies
that for representing (E t ) t ∈T I \{ ℛ T I } and (F s ) s ∈T J \{ ℛ T J } not more than
|Θ| 2 ℓ m ax − 1
ℓ=0
{m t − m t ′ : t ∈ T (ℓ) I , t ′ ∈ sons T I (t)}
+ |Θ| 2 ℓ m ax − 1
ℓ=0
{m s − m s ′ : s ∈ T (ℓ) J , s ′ ∈ sons T J (s)}
≤ |Θ| 2 ℓ m ax − 1
ℓ=0
4 = 4k 2 ℓ m ax
units of storage are needed. □
10
In order to obtain further results, we now consider not only the boxes appearing as
nodes in our trees T I and T J , but the infinitely many boxes belonging to T := ℓ m ax
ℓ =0 T ( ℓ)
given by (cf. eq. (4))
T ( ℓ) := {r ( ℓ) + δ ( ℓ) ⊙ p : p ∈ Z d } for all ℓ ∈ {0, ..., ℓ m ax }. (23)
For all ℓ ∈ {0, ..., ℓ m ax } let (p t ) t∈T ( ℓ) be defined by
p t ∈ Z d , t = r ( ℓ) + δ ( ℓ) ⊙ p t
=:m t
= r ( ℓ) + m t for all t ∈ T ( ℓ) (24)
and let (cf. eq. (13))
B t := B (ℓ) + δ ( ℓ) ⊙ p t = B (ℓ) + m t for all t ∈ T ( ℓ) , (25a)
C s := C (ℓ) + δ ( ℓ) ⊙ p s = C (ℓ) + m s for all s ∈ T ( ℓ) . (25b)
Based on (14), let
A η : T × T → {true, false},
( t, s) → t rue if max{diam(B t ) , diam(C s ) } ≤ η dist(B t , C s )
f alse if max{diam(B t ) , diam(C s ) } > η dist(B t , C s ) . (26)
We base the following analysis on one key assumption.
Assumption 1 (Diameters of supports) We assume that there is a constant C bb ∈
Assumption 1 (Diameters of supports) We assume that there is a constant C bb ∈
R ≥1 satisfying
diam(B (ℓ) ) ≤ C bb diam(r ( ℓ) ) and diam(C (ℓ) ) ≤ C bb diam(r ( ℓ) ) (27)
for all ℓ ∈ {0, ..., ℓ m ax }.
We will see later on that under normal circumstances, due to our choice of ℓ m ax , this
condition is actually fulfilled since we do not allow the boxes to become too small (see
Remark 1).
Let λ d denote the d-dimensional Lebesgue measure.
Lemma 3 There is a constant C dv ∈ R >1 such that
diam(r ( ℓ) ) d ≤ C dv λ d ( r ( ℓ) ) for all ℓ ∈ {0, ..., ℓ m ax }. (28)
Proof. According to eq. (5) and eq. (6), we have
diam(r ( ℓ) ) = 1 2 diam(r ( ℓ−d) ) and λ d ( r ( ℓ) ) = 1 2 d λ d ( r ( ℓ−d) ) for all ℓ ∈ {d, ..., ℓ m ax }
and therefore
diam(r ( ℓ) ) d
λ d ( r ( ℓ) ) = diam(r ( ℓ−d) ) d
λ d ( r ( ℓ−d) ) for all ℓ ∈ {d, ..., ℓ m ax }.
11
This implies
diam(r ( ℓ) ) d
λ d ( r ( ℓ) ) : ℓ ∈ {0, ..., ℓ m ax } = diam(r ( ℓ) ) d
λ d ( r ( ℓ) ) : ℓ ∈ {0, ..., d − 1} =: R.
Hence, C dv := max R satisfies eq. (28). □
Lemma 4 (Sparsity) We define
C sp := 2 − d 3 + 2η − 1 d C d bb ω d C dv ,
where ω d := λ d ( {z ∈ R d : ∥z∥ 2 ≤ 1}) is the volume of the d-dimensional unit ball.
For every ℓ ∈ {0, ..., ℓ m ax } we have
{s ∈ T ( ℓ) : A η (t, s) = false} ≤ C sp for all t ∈ T ( ℓ) ,
{t ∈ T ( ℓ) : A η (t, s) = false} ≤ C sp for all s ∈ T ( ℓ) .
Proof. Let ℓ ∈ {0, ..., ℓ m ax } , let t ∈ T ( ℓ) , let H t := {s ∈ T ( ℓ) : A η (t, s) = fa lse} and let β t
denote the midpoint of B t . For every s ∈ H t we have according to eq. (26)
dist(B t , C s ) < η − 1 max{diam(B t ) , diam(C s ) }.
Thus for every s ∈ H t there is at least one pair (x s , y s ) ∈ B t × C s satisfying ∥x s − y s ∥ 2 <
η − 1 max{diam(B t ) , diam(C s ) }, which, according to (25), implies
∥z − β t ∥ 2 ≤ ∥z − y s ∥ 2 + ∥y s − x s ∥ 2 + ∥x s − β t ∥ 2
< diam(C s ) + η − 1 max{diam(B t ) , diam(C s ) } + 1 2 diam(B t )
≤ 1 2 (3 + 2η − 1 ) max{diam(B t ) , diam(C s ) }
= 1 2 (3 + 2η − 1 ) max{diam(B (ℓ) ), diam(C (ℓ) )} =: ρ ( ℓ) for all z ∈ C s ,
which, combined with eq. (12b), eq. (24) and eq. (25b), implies (cf. Figure 3)
s ⊆ C s ⊂ B 2 [ β t , ρ ( ℓ) ] := {z ∈ R d : ∥z − β t ∥ 2 ≤ ρ ( ℓ) }. (29)
Moreover, according to eq. (23), we have (cf. Figure 3)
λ d z ∈ B 2 [ β t , ρ ( ℓ) ] : |{s ∈ H t : z ∈ s}| > 1 = 0. (30)
By using eq. (28), eq. (23), eq. (29), eq. (30) and eq. (27) we now get
diam(r ( ℓ) ) d |H t | ≤ C dv λ d ( r ( ℓ) )|H t | = C dv s∈H t
λ d ( s) = C dv s∈H t B 2 [ β t , ρ ( ℓ) ] 1
s ( z) dz
= C dv B 2 [ β t , ρ ( ℓ) ] s∈H t
1
s ( z) dz ≤ C dv B 2 [ β t , ρ ( ℓ) ] 1
B 2 [ β t , ρ ( ℓ) ] ( z) dz
12
t
B t
· β t
ρ ( 6)
B 2 [ β t , ρ ( 6) ]
Figure 3: For t ∈ T ( 6) the ball B 2 [ β t , ρ ( 6) ] contains all inadmissible s ∈ T ( 6) .
= C dv λ d ( B 2 [ β t , ρ ( ℓ) ]) = C dv ω d ( ρ ( ℓ) ) d
= C dv ω d 2 − d (3 + 2η − 1 ) d max{diam(B (ℓ) ), diam(C (ℓ) )} d
≤ C dv ω d 2 − d (3 + 2η − 1 ) d C d bb diam(r ( ℓ) ) d ,
which proves the first statement. The second statement can be proven similarly. □
Lemma 5 (Difference bound for T I×J ) On every level ℓ ∈ {0, ..., ℓ max } we have
{m t − m s : (t, s) ∈ T (ℓ) I ×J } ≤ 3C s p .
Proof. By definition, we have T (0) I ×J = {( ℛ T I , ℛ T J )} = {(r ( 0) , r ( 0) )} and therefore
{m t − m s : (t, s) ∈ T (0) I ×J } = {m r ( 0) − m r ( 0) } = {0}.
Let ℓ ∈ {1, ..., ℓ m ax } and let (t, s) ∈ T (ℓ) I ×J . Then, by the definition of T I ×J and due
to eq. (19), there is a pair ( ˇ t , ˇs) ∈ T (ℓ−1)
I ×J ⊆ T (ℓ−1)
I × T (ℓ−1)
J satisfying t ∈ sons T I ( ˇ t ),
s ∈ sons T J (ˇs) and A η ( ˇ t , ˇs) = false. According to eq. (13) and eq. (14), we therefore get
max{diam(B (ℓ−1) ), diam(C (ℓ−1) )} = max{diam(B ˇ t ) , diam(C ˇs ) } > η dist(B ˇ t , C ˇs )
= η inf{∥x + m ˇ t − (y + m ˇs ) ∥ 2 : x ∈ B (ℓ−1) , y ∈ C (ℓ−1) }
= η inf x − y − (m ˇ t − m ˇs ) 2 : x ∈ B (ℓ−1) , y ∈ C (ℓ−1)
= η dist B (ℓ−1) , C (ℓ−1) − (m ˇ t − m ˇs ) ,
which, in view of eq. (23), eq. (24), eq. (25) and eq. (26), implies
r ( ℓ−1) −(m ˇ t − m ˇs ) = r ( ℓ−1) +δ ( ℓ−1) ⊙(p ˇs − p ˇ t ) ∈ u ∈ T ( ℓ−1) : A η (r ( ℓ−1) , u) = false
=:H (ℓ− 1)
. (31)
Moreover, lemma 2 implies
m t − m s ∈ {m ˇ t − m ˇs , m ˇ t − m ˇs + δ ( ℓ) ι ( ℓ−1) e ι ( ℓ−1) , m ˇ t − m ˇs − δ ( ℓ) ι ( ℓ−1) e ι ( ℓ−1) },
13
which, combined with eq. (31) and eq. (24), leads to
m t − m s ∈ u∈H (ℓ− 1)
{−m u , −m u + δ ( ℓ) ι ( ℓ−1) e ι ( ℓ−1) , −m u − δ ( ℓ) ι ( ℓ−1) e ι ( ℓ−1) }.
Since we have chosen (t, s) ∈ T (ℓ) I ×J arbitrarily, this leads to
|{m t − m s : (t, s) ∈ T (ℓ) I ×J }| ≤ 3|H (ℓ−1) |.
Furthermore, due to lemma 4, we have |H (ℓ−1) | ≤ C sp . □
Theorem 2 (Storage requirements of the coupling matrices) The coupling ma-
Theorem 2 (Storage requirements of the coupling matrices) The coupling ma-
trices (S b ) b ∈ ℒ + T I×J require not more than 3C s p k 2 (ℓ m ax − d) units of storage.
Proof. On every level ℓ ∈ {0, ..., d} all boxes t ∈ T (ℓ) I and s ∈ T (ℓ) J contain, by con-
struction, the midpoint of r ( 0) , which implies dist(B t , C s ) = 0 for all (t, s) ∈ T (ℓ) I ×J and
therefore ℒ + T I ×J ∩ T (ℓ) I ×J = {(t, s) ∈ T (ℓ) I ×J : A η (t, s) = true} = ∅. Combining this with
the implication eq. (20), lemma 5 and eq. (22) directly implies that for representing all
coupling matrices (S b ) b ∈ ℒ + T I×J not more than
|Θ| 2 ℓ m ax
ℓ=d+1
{m t − m s : (t, s) ∈ ℒ + T I ×J ∩ T (ℓ) I ×J } ≤ k 2 ℓ m ax
ℓ=d+1
3C s p = 3C s p k 2 (ℓ m ax − d)
units of storage are needed. □
In order for arithmetic operations like the matrix-vector multiplication to have the
desired complexity, T I ×J has to be sparse. This property is guaranteed by our construc-
tion.
Lemma 6 (Sparsity of T I×J ) We have
|{s ∈ T J : (t, s) ∈ T I ×J }| ≤ 2C s p for all t ∈ T I ,
|{t ∈ T I : (t, s) ∈ T I ×J }| ≤ 2C s p for all s ∈ T J .
Proof. The statements are implied by the definition of T I ×J , eq. (19), lemma 4 and the
fact that every node of T I or T J has at most two sons. □
For the sake of completeness, we also have to consider the storage requirements of the
nearfield matrices
N ( t,s) := G| I t × J s for all (t, s) ∈ ℒ − T I ×J
that capture the part of the matrix that cannot be compressed. Since we want to
maintain the ability to work with unstructured surface meshes, we cannot avoid storing
all of these matrices explicitly.
14
Lemma 7 (Storage requirements of the nearfield matrices) We define the reso-
Lemma 7 (Storage requirements of the nearfield matrices) We define t
lutions of the cluster trees T I and T J by
γ I := max{|I t | : t ∈ ℒ T I }, γ J := max{|J s | : s ∈ ℒ T J }.
Storing (N b ) b ∈ ℒ − T I×J requires not more than C sp min{γ I , γ J }n units of storage.
Proof. By construction and due to (11), (4) and (23) we have
ℒ − T I ×J ⊆ ℒ T I × ℒ T J = T (ℓ m ax )
I × T (ℓ m ax )
J ⊆ T ( ℓ m ax ) × T ( ℓ m ax ) .
Lemma 4 and (10) therefore imply that storing all nearfield matrices (N b ) b ∈ ℒ − T I×J requires
not more than
(t,s)∈ ℒ − T I ×J
|I t | |J s | = t∈ ℒ T I s∈ ℒ T J
(t,s)∈ ℒ − T I ×J
|I t | |J s | ≤ t∈ ℒ T I s∈T ( ℓ ma x )
A η (t,s)=false
γ J |I t |
≤ t∈ ℒ T I
C sp γ J |I t | = C sp γ J t∈ ℒ T I
|I t | = C sp γ J |I|
units of storage and similarly not more than C sp γ I |J| units of storage, which, in view of
(22), implies the statement. □
Theorem 1, lemma 7 and theorem 2 suggest that we still have to discuss how to
properly choose the maximal level ℓ m ax . On the one hand, we have to choose ℓ m ax large
enough to keep at least one of the resolutions γ I and γ J sufficiently small. On the other
hand, since the complexity of the matrix-vector multiplication mainly depends on |T I |
and |T J | (cf. [6, Theorem 3.42]), we have to choose ℓ m ax small enough to prevent |T I |
and |T J | from getting too large.
In order to be able to analyze γ I and γ J , we assume that the relative number of
characteristic points assigned to a box (cf. (7) and (9)) can essentially be estimated by
its size, i.e., we assume that there is a constant C nd ∈ R >0 satisfying
|I t | ≤ C nd diam(t) d −1 |I|, |J s | ≤ C nd diam(s) d −1 |J| for all t ∈ T I , s ∈ T J . (32)
This condition is, for example, usually fulfilled on shape-regular and quasi-uniform
meshes (cf. [30, Remark 4.1.14]). Due to (5) and (6), we have
diam(r ( ℓ+d) ) = 1 2 diam(r ( ℓ) ) for all ℓ ∈ {0, ..., ℓ m ax − d}. (33)
For the sake of simplicity, we therefore choose ℓ m ax ∈ d · N. According to (32), (4) and
(33), we thus get
|I t | ≤ C nd diam(t) d −1 |I|
= C nd diam(r ( ℓ m ax ) ) d −1 |I|
15
= C nd 2 − d−1 d ℓ m ax diam(r ( 0) ) d −1 |I| for all t ∈ T (ℓ m ax )
I = ℒ T I
and likewise
|J s | ≤ C nd 2 − d−1 d ℓ m ax diam(r ( 0) ) d −1 |J| for all s ∈ T (ℓ m ax )
J = ℒ T J .
Hence, with C rs := C nd diam(r ( 0) ) d −1 we have
γ I ≤ C rs 2 − d−1 d ℓ m ax |I|, γ J ≤ C rs 2 − d−1 d ℓ m ax |J|. (34)
We choose a constant C rk ∈ R >0 satisfying C rk k ≤ min{|I|, |J|} and observe
2 − d−1 d ℓ m ax |I| ≤ C rk k ⇐⇒ ℓ m ax ≥ d d−1 log 2 ( |I|) − log 2 ( C r k k) ,
2 − d−1 d ℓ m ax |J| ≤ C rk k ⇐⇒ ℓ m ax ≥ d d−1 log 2 ( |J|) − log 2 ( C r k k) .
Based on this, we choose
ℓ m ax := min ℓ ∈ d · N : ℓ ≥ d d−1 min{log 2 ( |I|), log 2 ( |J|)} − log 2 ( C r k k) (35)
to gain, according t o eq. (34),
min{γ I , γ J } ≤ C rs C rk k. (36)
In order to be able to analyze |T I | and |T J |, we assume that the number of boxes per
level which contain only a relatively small part of the boundary Γ does not grow too
fast, i.e., we assume that there are constants C da , C sa ∈ R >0 satisfying
|{t ∈ T (ℓ) I : diam(t) d −1 > C da | t ∩ Γ|}| ≤ C sa diam(r ( ℓ) ) − (d−1) (37a)
|{s ∈ T (ℓ) J : diam(s) d −1 > C da | s ∩ Γ|}| ≤ C sa diam(r ( ℓ) ) − (d−1) (37b)
on every level ℓ ∈ {0, ..., ℓ m ax }, where
|X| := Γ 1
X (y) dy for all measurable subsets X ⊆ Γ.
Lemma 8 On every level ℓ ∈ {0, ..., ℓ m ax } we have
|{t ∈ T (ℓ) I : diam(t) d −1 ≤ C da | t ∩ Γ|}| ≤ 2C d a | Γ| diam(r ( ℓ) ) − (d−1) ,
|{s ∈ T (ℓ) J : diam(s) d −1 ≤ C da | s ∩ Γ|}| ≤ 2C d a | Γ| diam(r ( ℓ) ) − (d−1) .
Proof. Let ℓ ∈ {0, ..., ℓ m ax } and let T (ℓ) I ,C d a := {t ∈ T (ℓ) I : diam(t) d −1 ≤ C da | t ∩ Γ|}. Due
to (4), the surface area of the set x ∈ Γ : |{t ∈ T (ℓ) I ,C d a : x ∈ t}| > 2 equals 0. Thus
diam(r ( ℓ) ) d −1 T (ℓ) I ,C d a =
t∈T (ℓ) I,C d a
diam(t) d −1 ≤
t∈T (ℓ) I,C d a
C da | t ∩ Γ|
16
= C da
t∈T (ℓ) I,C d a
Γ 1
t ∩Γ ( y) dy = C da Γ t∈T (ℓ) I,C d a
1
t ∩Γ (y) dy
≤ C da Γ 2 · 1
Γ ( y) dy = 2C d a |Γ|
holds, which proves the first statement. The second statement can be proven similarly. □
Defining C nb := 2C d a |Γ| + C sa and combining assumption (37) with Lemma 8 yield
|T (ℓ) I | ≤ C nb diam(r ( ℓ) ) − (d−1) for all ℓ ∈ {0, ..., ℓ m ax }, (38a)
|T (ℓ) J | ≤ C nb diam(r ( ℓ) ) − (d−1) for all ℓ ∈ {0, ..., ℓ m ax }. (38b)
Moreover, according to (35), we also have
ℓ m ax ≤ d d−1 min{log 2 ( |I|), log 2 ( |J|)} − log 2 ( C r k k) + d. (39)
By using (38), (33) and (39) we get
|T I | = ℓ m ax
ℓ=0
|T (ℓ) I | ≤ ℓ m ax
ℓ=0
C nb diam(r ( ℓ) ) − (d−1) = C nb
ℓ m ax
ℓ=0
diam(r ( ℓ) ) − (d−1)
= C nb diam(r ( 0) ) − (d−1) +
ℓ max d − 1
ℓ=0
d
u=1
diam(r ( dℓ+u) ) − (d−1)
< C nb diam(r ( 0) ) − (d−1) +
ℓ max d − 1
ℓ=0
d diam(r ( d(ℓ+1)) ) − (d−1)
= C nb diam(r ( 0) ) − (d−1) + d
ℓ max d − 1
ℓ=0
2 ( ℓ+1)(d−1) diam(r ( 0) ) − (d−1)
< C nb d diam(r ( 0) ) − (d−1) + d diam(r ( 0) ) − (d−1)
ℓ max d − 1
ℓ=0
2 ( ℓ+1)(d−1)
= C nb d diam(r ( 0) ) − (d−1) 1 +
ℓ max d
ℓ=1
2 d −1 ℓ
= C nb d diam(r ( 0) ) − (d−1)
ℓ max d
ℓ=0
2 d −1 ℓ = C nb d diam(r ( 0) ) − (d−1) 1 − (2 d −1 ) ℓ max d +1
1 − 2 d −1
< C nb d diam(r ( 0) ) − (d−1) (2 d −1 − 1) − 1 2 d−1 d ℓ m ax + d−1
≤ C nb d diam(r ( 0) ) − (d−1) (2 d −1 − 1) − 1 2 d−1 d ( d d−1 (log 2 ( |I|)−log 2 ( C r k k))+d)+d−1
= C nb d diam(r ( 0) ) − (d−1) (2 d −1 − 1) − 1 2 l og 2 ( |I|)−log 2 ( C r k k)+2(d−1)
17
= C nb d diam(r ( 0) ) − (d−1) (2 d −1 − 1) − 1 2 2 (d−1) C − 1 rk k − 1 |I|.
Due to x 2
x−1 = x 2 (x+2)
(x−1)(x+2) = x 2 (x+2)
x 2 + x−2 ≤ x + 2 for x ∈ R ≥2 we therefore have
|T I | < C nb d diam(r ( 0) ) − (d−1) (2 d −1 + 2)C − 1 r k k − 1 |I|
and analogously
|T J | < C nb d diam(r ( 0) ) − (d−1) (2 d −1 + 2)C − 1 r k k − 1 |J|.
Finally, based on our choice of the maximal level ℓ m ax , we can now specify the storage
requirements for our H 2 -matrix approximation:
Theorem 3 (Total storage requirements) G requires not more than
• 2kn units of storage for the leaf matrices,
• 4k 2 d d−1 log 2 ( n) − log 2 ( C r k k) + d units of storage for the transfer matrices,
• C sp C rs C rk kn units of storage for the nearfield matrices,
• 3C s p k 2 d d−1 log 2 ( n) − log 2 ( C r k k) units of storage for the coupling matrices.
Proof. The statement is a direct consequence of Lemma 1, Theorem 1, Lemma 7, The-
orem 2, (36) and (39). □
Compared to the standard H 2 -approach, these storage complexity bounds lead to a
significant reduction of the total storage requirements, as we will see and discuss in
chapter 4.
Remark 1 (Bounded enlargement) Due to (33) and (39), we have
diam(r ( ℓ) ) ≥ diam(r ( ℓ m ax ) ) ∼ 2 − ℓ max d ≳ 2 − log 2 ( n)
d−1 = n − 1 d−1 for all ℓ ∈ {0, ..., ℓ m ax }.
n many situations, the diameters of the supports behave like n − 1 d−1 , for example on
shape-regular and quasi-uniform meshes. In these cases, the condition (27) is therefore fulfilled.
4 Numerical experiments
In the following, let
g : R d × R d → R, (x, y) → 1 4π 1 ∥x−y∥ 2 if x ̸= y
0 if x = y
and for all y ∈ Γ = ∂Ω let n y denote the corresponding outward-pointing unit normal
vector. Under suitable conditions, a solution u of the interior Dirichlet boundary value
problem
−∆u = 0 in Ω,
u = g D on Γ (40)
18
is given by Green’s representation formula (cf. [23, Theorem 2.2.2], [30, Theorem 3.1.6]),
which reduces obtaining u to obtaining the corresponding Neumann boundary values
g N : Γ → R, y → ∂u ∂n y (y). Depending on the situation, g N as well as the given Dirichlet
boundary values g D might only exist in a generalized sense. The Neumann values g N can
be obtained by solving a boundary integral equation resulting from combining Green’s
representation formula with suitable trace operators (cf. [30, Section 3.4.2.1]).
Applying a Galerkin discretization to this integral equation on a triangulation of Γ
with discontinuous piecewise constant basis functions (ϕ i ) i ∈I and replacing g D with the
corresponding L 2 -orthogonal projection ˜g D into a space spanned by continuous piecewise
linear nodal basis functions (ψ j ) j ∈J leads to a linear system
Gx = K + 1 2 M b , (41)
where b ∈ R J contains the coefficients of ˜g D = j ∈J b j ψ j , x ∈ R I contains the coefficients
of the approximate Neumann values ˜g N := i ∈ I x i ϕ i , and where G ∈ R I ×I , K ∈ R I ×J
and M ∈ R I ×J are given by
G i j := Γ ϕ i ( x) Γ g(x, y)ϕ j (y) dy dx for all i ∈ I, j ∈ I,
K i j := Γ ϕ i ( x) Γ
∂g ∂n y (x, y) ψ j (y) dy dx for all i ∈ I, j ∈ J,
M i j := Γ ϕ i ( x)ψ j (x) dx for all i ∈ I, j ∈ J.
The derivative ∂ ∂n y is applied with respect to the y-variable.
We construct an H 2 -matrix approximation G of G as described in section 2. In order to
approximate K, we replace ∂ ∂n y g(x, y) with ∂ ∂n y ( I B t ⊗I C s )[g](x, y) for all (x, y) ∈ B t ×C s ,
(t, s) ∈ ℒ + T I ×J (cf. eq. (15)). This approach leads to an H 2 -matrix approximation K
of K which differs from the H 2 -matrix described in section 2 only in terms of the leaf
matrices for the column cluster basis, which are given by
W s ∈ R J s × Θ , (W s ) j µ := Γ ψ j (y) ∂ ∂n y L C s , µ ( y) dy for all s ∈ ℒ T J , j ∈ J s , µ ∈ Θ.
Hence, all results from section 3 also hold for K. Moreover, we can expect a similar
convergence behavior as for G (cf. [6, Chapter 4]). The sparse matrix 1 2 M can simply be
added to the nearfield entries o f K and therefore does not require any additional storage.
In this way, we approximate the Neumann values of the function u 0 := 4πg(·, y 0 ) with
y 0 := (1.2, 1.2, 1.2) T on an aproximation Γ S of the unit sphere S 2 := {x ∈ R 3 : ∥x∥ 2 = 1}
= ∂{x ∈ R 3 : ∥x∥ 2 < 1} consisting of plane triangles. S 2 and its approximation are
both contained in the box [−1, 1] 3 , which we use as our starting box r ( 0) . We choose
the centers of gravity of the triangles as characteristic points for (ϕ i ) i ∈I , the vertices
of the triangles as characteristic points for (ψ j ) j ∈J , C rk = 2 and η = 2. We denote the
19
maximal level of the trees used for the construction of G by ℓ I ×I m ax and the maximal level
of the trees used for the construction of K by ℓ I ×J m ax . W e compute the matrix entries
by tensor Gauss quadrature as described in [16, 29],[30, Chapter 5] with 3 quadrature
points per dimension for the regular integrals and 5 quadrature points per dimension
for the singular integrals. In order to preserve the convergence behavior of the standard
Galerkin solution, we increase the interpolation degree θ by 1 whenever the mesh width
h is halved, i.e., whenever the number n = max{|I|, |J|} = |I| of triangles is quadrupled
(cf. [6, Section 10.1 and Section 10.2]). We solve the linear system using the cg method
with a relative residual accuracy of 10 − 6 (cf. [30, Section 6.1]).
n θ k ℓ I ×I m ax ℓ I ×J m ax ǫ L 2
8192 4 125 9 9 1.194 − 2
32768 5 216 12 9 5.683 − 3
131072 6 343 12 12 2.870 − 3
524288 7 512 15 15 1.412 − 3
2097152 8 729 18 15 7.050 − 4
Table 1: Parameters and resulting L 2 -error ǫ L 2 := ∥g N − ˜g N ∥ L 2 ( Γ S ) .
n leaf matrices transfer matrices nearfield matrices coupling matrices
8192 15.6 4.3 74.4 51.8
32768 108.1 17.1 303.8 218.6
131072 686.1 43.1 3913.3 509.9
524288 4096.3 120.0 16090.5 1496.1
2097152 23329.2 291.9 65051.2 3762.8
Table 2: Storage requirements of G on Γ S in MB.
n leaf matrices transfer matrices nearfield matrices coupling matrices
8192 11.7 4.3 38.8 54.2
32768 81.0 12.8 476.1 143.9
131072 514.6 43.1 1956.3 524.3
524288 3072.3 120.0 8047.3 1528.1
2097152 17496.3 243.3 128696.6 2765.3
Table 3: Storage requirements of K on Γ S in MB.
It is clearly visible in the Tables 1, 2 and 3 that the storage requirements of our
H 2 -matrices G and K behave as predicted in Chapter 3: The storage for the leaf ma-
trices grows like O(nk) (cf. Lemma 1), the storage for the transfer matrices grows like
O(ℓ m ax k 2 ) (cf. Theorem 1), the storage for the nearfield matrices grows like O(2 − 2 3 ℓ m ax n 2 )
(cf. Lemma 7, (34)) and the storage for the coupling matrices grows like O((ℓ m ax − 3)k 2 )
(cf. Theorem 2).
20
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1 2 2 3
2 3
2 5
2 7
2 9
2 1 1
2 1 3
2 1 5
2 1 7
2 1 9
n
S
t
o
r
a
g
e
i
n
M
B
O(nk)
nearfield matrices
leaf matrices
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1 2 2 3
2 2
2 4
2 6
2 8
2 1 0
2 1 2
2 1 4
n
S
t
o
r
a
g
e
i
n
M
B
O(log 2 ( n)k 2 )
coupling matrices
transfer matrices
Figure 4: Storage requirements of G on Γ S in MB.
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1 2 2 3
2 3
2 5
2 7
2 9
2 1 1
2 1 3
2 1 5
2 1 7
2 1 9
n
S
t
o
r
a
g
e
i
n
M
B
O(nk)
nearfield matrices
leaf matrices
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1 2 2 3
2 2
2 4
2 6
2 8
2 1 0
2 1 2
n
S
t
o
r
a
g
e
i
n
M
B
O(log 2 ( n)k 2 )
coupling matrices
transfer matrices
Figure 5: Storage requirements of K on Γ S in MB.
Figure 4 and Figure 5 show that the storage requirements of the matrix components
can be bounded as predicted by Theorem 3. The expected theoretical convergence rate
of O(h) for the Neumann values in the L 2 -norm (cf. [30, Theorem 4.1.33] and [15,
Theorem 4.6]) is preserved (see Table 1).
We want to compare these results with the corresponding results obtained by conven-
tional H 2 -matrix approximations G c onv and K c onv , which are based on different cluster
trees and support bounding boxes ( cf. [6, Section 3.3]): The construction is focused on
reducing the diameters of the boxes as fast as p ossible instead of keeping them uniform
on every level. Hence, one has to store an individual transfer matrix for almost every
21
box and an individual coupling matrix for every admissible leaf of the block cluster tree.
Since approximating a block with less than k 2 entries would therefore be inefficient, the
recursion of the algorithm for the cluster tree construction stops when it reaches a box
with not more than 2k characteristic points. On the finest mesh (n = 2097152), G c onv
requires 23328.1 MB for the leaf matrices, 33718.1 MB for the transfer matrices, 241218.8
MB for the nearfield matrices and 206819.6 MB for the coupling matrices. K c onv requires
17496.1 MB for the leaf matrices, 25187.2 MB for the transfer matrices, 2 00100.7 MB
for the nearfield matrices and 126874.0 MB for the coupling matrices. The resulting
L 2 -error is 7.022 − 4 .
In order to test our translation-invariant compression method on a more challenging
boundary containing edges and corners, we approximate the Neumann values of the
function u 1 : R 3 → R, x → x 2 1 −x 2 3 on the boundary Γ C := ∂([−1, 1]×[− 3 4 , 3 4 ]×[− 1 2 , 1 2 ]) of
a rectangular cuboid by the same method as before, i.e., we replace the matrices G and K
appearing in (41) with their respective translation-invariant H 2 -matrix approximations
G and K and then solve the resulting perturbed linear system with the cg method.
This time, we use r ( 0) = [−1, 1] × [− 3 4 , 3 4 ] × [− 1 2 , 1 2 ] as the starting box, C rk = 1 for
the determination of ℓ I ×J m ax and increasing quadrature orders. The number of quadrature
points per dimension for the regular integrals is denoted by q r eg and the number of
quadrature points per dimension for the singular integrals is denoted by q s ing . The
characteristic points, η, ℓ I ×I m ax and the accuracy of the cg method are chosen as before.
n q r eg q s ing θ k ℓ I ×I m ax ℓ I ×J m ax ǫ L 2
8112 4 6 4 125 9 9 3.895 − 2
32448 4 7 5 216 12 12 1.484 − 2
129792 4 8 6 343 12 12 7.408 − 3
519168 5 9 7 512 15 15 2.626 − 3
2076672 5 10 8 729 18 18 1.332 − 3
Table 4: Parameters and resulting L 2 -error ǫ L 2 := ∥g N − ˜g N ∥ L 2 ( Γ C ) .
n leaf matrices transfer matrices nearfield matrices coupling matrices
8112 15.5 4.3 55.9 48.0
32448 107.0 17.1 192.4 215.8
129792 679.4 43.1 1906.6 484.8
519168 4056.4 120.0 6915.7 1488.1
2076672 23101.6 291.9 26143.3 3843.8
Table 5: Storage requirements of G on Γ C in MB.
As in the previous experiment, the storage requirements of the translation-invariant
H 2 -matrix approximations and the resulting L 2 -error of the Neumann values behave as
predicted by the theory (cf. Tables 4, 5, 6 and Figures 6, 7).
22
n leaf matrices transfer matrices nearfield matrices coupling matrices
8112 11.6 4.3 31.0 59.0
32448 80.3 17.1 106.7 269.2
129792 509.6 43.1 1237.3 545.8
519168 3042.4 120.0 4480.0 1624.1
2076672 17326.6 291.9 16913.0 4119.6
Table 6: Storage requirements of K on Γ C in MB.
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1
2 3
2 5
2 7
2 9
2 1 1
2 1 3
2 1 5
2 1 7
n
S
t
o
r
a
g
e
i
n
M
B
O(nk)
nearfield matrices
leaf matrices
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1
2 2
2 4
2 6
2 8
2 1 0
2 1 2
n
S
t
o
r
a
g
e
i
n
M
B
O(log 2 ( n)k 2 )
coupling matrices
transfer matrices
Figure 6: Storage requirements of G on Γ C in MB.
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1
2 3
2 5
2 7
2 9
2 1 1
2 1 3
2 1 5
2 1 7
n
S
t
o
r
a
g
e
i
n
M
B
O(nk)
nearfield matrices
leaf matrices
2 1 3 2 1 5 2 1 7 2 1 9 2 2 1
2 2
2 4
2 6
2 8
2 1 0
2 1 2
n
S
t
o
r
a
g
e
i
n
M
B
O(log 2 ( n)k 2 )
coupling matrices
transfer matrices
Figure 7: Storage requirements of K on Γ C in MB.
23
We again want to compare the results of the translation-invariant H 2 -matrix compres-
sion with the corresponding results of the conventional H 2 -matrix compression on the
finest mesh (n = 2076672): G c onv requires 23100.3 MB for the leaf matrices, 26630.6
MB for the transfer matrices, 2 47629.2 MB for the nearfield matrices and 167992.2 MB
for the coupling matrices. K c onv requires 17325.2 MB for the leaf matrices, 20321.7 MB
for the transfer matrices, 193189.7 MB for the nearfield matrices and 115508.9 MB for
the coupling matrices. The r esulting L 2 -error is 1.503 − 3 .
As the complexity bounds suggest and the results demonstrate, the translation-invari-
ant approach reduces the storage requirements for the transfer and coupling matrices
drastically. Furthermore, the translation-invariant H 2 -matrix approximations require
remarkably less storage for the nearfield matrices than their respective conventional
counterparts. This is due to the fact that the leaves of the cluster trees used in the
translation-invariant approach contain significantly less characteristic points than the
leaves of the conventional cluster trees. The resulting increase of the farfield can be
handled very efficiently, since no individual but only very few coupling matrices have to
be stored.
We conclude that by properly exploiting the translation-invariance property (2) of the
kernel function the storage requirements of H 2 -matrix approximations can be greatly
reduced without affecting the desired accuracy.
References
[1] C. R. Anderson. An implementation of the fast multipole method without multi-
poles. SIAM J. Sci. Stat. Comp., 13:923–947, 1992.
[2] L. Banjai and W. Hackbusch. H- and H 2 -matrices for low and high frequency
Helmholtz equations. IMA J. Numer. Anal., 28:46–79, 2008.
[3] M. Bebendorf. Approximation of boundary element matrices. Numer. Math.,
86(4):565–589, 2000.
[4] M. Bebendorf and R. Venn. Constructing nested bases approximations from the entries of non-local operators. Numer. Math., 121(4):609–635, 2012. [5] T. Betcke and M. W. Scroggs. Bempp-cl: A fast Python based just-in-time com- piling boundary element library. J. Open Source Software, 6(59), 2021. available at https://doi.org/10.21105/joss.02879.
[6] S. Börm. Efficient Numerical Methods for Non-local Operators: H 2 -Matrix Com-
pression, Algorithms and Analysis, volume 14 of EMS Tracts in Mathematics. EMS,
pression, Algorithms and Analysis, volume 14 of EMS Tracts in Mathematics. EMS, 2010. [7] S. B¨orm and C. B¨orst. Hybrid matrix compression for high-frequency problems. SIAM J. Matrix Anal. Appl., 41(4):1704–1725, 2020. 24
[8] S. B¨orm and S. Christophersen. Approximation of integral operators by Green
quadrature and nested cross approximation. Numer. Math., 133(3):409–442, 2016.
[9] S. B¨orm and L. Grasedyck. Hybrid cross approximation of integral operators. Nu-
mer. Math., 101:221–249, 2005.
[10] S. B¨orm and W. Hackbusch. H 2 -matrix approximation of integral operators by
interpolation. Appl. Numer. Math., 43:129–143, 2002.
[11] S. B¨orm and W. Hackbusch. Approximation of boundary element operators by
adaptive H 2 -matrices. Found. Comp. Math., 312:58–75, 2004.
[12] S. B¨orm, M. L¨ohndorf, and J. M. Melenk. Approximation of integral operators by
variable-order interpolation. Numer. Math., 99(4):605–643, 2005.
[13] S. B¨orm and J. M. Melenk. Approximation of the high-frequency Helmholtz kernel
by nested directional interpolation: error analysis. Numer. Math., 137(1):1–34,
2017.
[14] E. Corona, A. Rahimian, and D. Zorin. A tensor-train accelerated solver for integral
equations in complex geometries. J. Comp. Phys, 334:145–169, 2015.
[15] W. Dahmen, B. Faermann, I. G. Graham, W. Hackbusch, and S. A. Sauter. Inverse
inequalities on non-quasiuniform meshes and applications to the mortar element
method. Math. Comp., 73:1107–1138, 2004.
[16] S. Erichsen and S. A. Sauter. Efficient automatic quadrature in 3-d Galerkin BEM.
Comput. Meth. Appl. Mech. Eng., 157:215–224, 1998.
[17] W. Fong and E. Darve. The black-box fast multipole method. J. Comp. Phys.,
228:8712–8725, 2009.
[18] K. Giebermann. Multilevel approximation of boundary integral operators. Com-
puting, 67:183–207, 2001.
[19] Z. Gimbutas and V. Rokhlin. A generalized fast multipole method for nonoscillatory
kernels. SIAM J. Sci. Comput., 24(3):796–817, 2002.
[20] L. Grasedyck. Adaptive recompression of H-matrices for BEM. Computing,
74(3):205–223, 2004.
[21] L. Greengard and V. Rokhlin. A fast algorithm for particle simulations. J. Comp. Phys., 73:325–348, 1987. [22] L. Greengard and V. Rokhlin. A new version of the fast multipole method for the Laplace equation in three dimensions. In Acta Numerica 1997, pages 229–269. Cambridge University Press, 1997.
[23] W. Hackbusch. Elliptic Differential Equations. Theory and Numerical Treatment.
W. Hackbusch. Elliptic DifferentialEqua Springer-Verlag Berlin, 1992. 25
[24] W. Hackbusch. Integral equations. Birkh¨auser Basel, 1995. [25] W. Hackbusch. Hierarchical Matrices: Algorithms and Analysis. Springer, 2015. [26] W. Hackbusch and Z. P. Nowak. On the fast matrix multiplication in the boundary element method by panel clustering. Numer. Math., 54(4):463–491, 1989. [27] G. C. Hsiao and W. L. Wendland. Boundary Integral Equations. Number 164 in Appl. Math. Sci. Springer, 2008. [28] V. Rokhlin. Rapid solution of integral equations of classical potential theory. J. Comp. Phys., 60:187–207, 1985. [29] S. A. Sauter. Cubature techniques for 3-d Galerkin BEM. In W. Hackbusch and
G. Wittum, editors, Boundary Elements: Implementation and Analysis of Advanced
G. Wittum, editors, Boundary Elements: Implementation and Analysis of Advanced Algorithms, pages 29–44. Vieweg-Verlag, 1996. [30] S. A. Sauter and C. Schwab. Boundary Element Methods. Springer, 2011. [31] E. E. Tyrtyshnikov. Mosaic-skeleton approximation. Calcolo, 33:47–57, 1996. [32] E. E. Tyrtyshnikov. Incomplete cross approximation in the mosaic-skeleton method. Computing, 64:367–380, 2000. [33] L. Ying, G. Biros, and D. Zorin. A kernel-independent adaptive fast multipole algorithm in two and three dimensions. J. Comp. Phys., 196(2):591–626, 2004. 26