Overlapping Schwarz methods with adaptive coarse spaces for multiscale problems in 3D

We propose two variants of the overlapping additive Schwarz method for the finite element discretization of scalar elliptic problems in 3D with highly heterogeneous coefficients. The methods are efficient and simple to construct using the abstract framework of the additive Schwarz method, and an idea of adaptive coarse spaces. In one variant, the coarse space consists of finite element functions associated with the wire basket nodes and functions based on solving some generalized eigenvalue problems on the faces. In the other variant, it contains functions associated with the vertex nodes with functions based on solving some generalized eigenvalue problems on subdomain faces and subdomain edges. The functions that constitute the coarse spaces are chosen adaptively, and they correspond to the eigenvalues that are smaller than a given threshold. The convergence rate of the preconditioned conjugate gradients method in both cases is shown to be independent of the variations in the coefficients for the sufficient number of eigenfunctions in the coarse space. Numerical results are given to support the theory.


Introduction
Additive Schwarz methods are considered among the most popular domain decomposition methods for solving partial differential equations because of their simplicity, and inherently parallel algorithms, cf. [8,25,33,36]. We consider in this paper variants of the overlapping additive Schwarz method as preconditioners for solving scalar elliptic equations with highly varying coefficient in the space R 3 . Based on the idea of adaptively constructing the coarse space through solving generalized eigenvalue problems in the lower dimensions, we propose two variants of the algorithm in three dimensions. The resulting system has a condition number which is inversely proportional to λ * , where λ * is the threshold for coarse basis selection of eigenfunctions corresponding to eigenvalues below λ * . The threshold is used as a parameter for the coarse space in the algorithm. The term "lower dimensions" refers to the fact that the eigenvalue problems are solved either on subdomain faces or edges. The methods are effective, inherently parallel, and simple to construct. Additive Schwarz method with adaptive coarse space was recently considered using a different idea based on solving generalized eigenvalue problem in the overlap, cf. [8,9,26].
To see the motivation behind such an approach, we take a brief look into the steps of deriving convergence estimates for two-level overlapping Schwarz methods in their abstract Schwarz framework (cf. [25,33,36] for the abstract framework). These methods are analyzed in the abstract Schwarz framework. And the abstract Schwarz framework is based on the assumption that any function u in the finite element space can be split into its coarse component u 0 and local components associated with the subdomains, and that this splitting is stable with respect to the energy norm. The condition number bound of the preconditioned system then depends explicitly on the constant C 2 0 which enters into the stability estimate, cf. [25,33,36]. Consequently, how robust the method will be with respect to the mesh parameters and the varying coefficients, depends on how robust C 2 0 is concerning those parameters and varying coefficients. Its already known, cf. e.g., [15], that, even with highly varying coefficients as long as the variations are strictly inside the subdomains, this constant is not depend on the variation. The difficulty, however, arises when we have to deal with coefficients which vary along subdomain boundaries. In which case, the crucial term which needs to be bounded in the stability estimate is the boundary term i C/h 2 √ α(u − u 0 ) 2 .
Here Ω h i denotes the layer of all elements along the subdomain boundary ∂Ω i , α the varying coefficient, and C a constant. Because the α is varying, estimating the L 2 term say using the Poincaré or a weighted Poincaré inequality introduces the contrast into the estimate, i.e., the ratio between the largest and the smallest values of α, unless strong assumptions on the distribution of the coefficient are made, cf. [31]. A standard multiscale coarse space alone, cf. [15,29], cannot make the method robust with respect to the contrast unless some form of enrichment of the coarse space is used that can capture the strong variations along the subdomain boundary and improves the approximation. Including selected eigenfunctions of properly defined eigenvalue problems over the subdomain boundary into coarse spaces, enable us to capture those variations and provide estimates with constants independent of the contrast, which is the primary motivation behind the methods presented here.
The idea of adaptively constructing coarse spaces using eigenfunctions of certain eigenvalue problems has already attracted much interest in recent years. Some earlier works in this direction are found in [1,2] around the Neumann-Neumann type substructuring domain decomposition method, and [6] around the algebraic multigrid method, although they were not addressed to solve multiscale problems. In the context of multiscale problems this idea has only recently started to emerge, with its first appearance in [12,13], as well as in [26], and later on in [7,[9][10][11]14,35] in the additive Schwarz framework. This idea of adaptively constructing coarse space, in other words, the primal constraints, for the FETI-DP and BDDC substructuring domain decomposition methods has also been developed and extensively analyzed, cf. [17,19,20,24,34] in 2D and [5,16,18,27,30] in 3D.
The methods above are preconditioners to iterative methods, designed to obtain fine-scale solutions to elliptic equations. In this recent development of coarse space enrichment, it is important to take note of the parallel development in methods designed to solve elliptic equations directly by a coarse approximation, such as the Reduced Basis method, see, e.g., [4,28], cf. also [32], and the Localized Orthogonal Decomposition method, see, e.g., [21,23]. The constructions of these coarse approximations and the constructions of the coarse spaces in the iterative methods show many similarities.
The rest of this paper is organized as follows: In Sect. 2 we define our problem and its discrete formulation. In Sect. 3 we describe the overlapping Schwarz preconditioner, in Sect. 4 we introduce the two new coarse spaces, and in Sect. 5 we establish the convergence estimate for the preconditioned system. Finally, in Sect. 6, we present some numerical results of our method.

Differential problem and discrete formulation
Here we present our continuous test problem, the scalar elliptic equation with coefficients piecewise constant on each fine-scale element and its discrete representation. where We assume that [3]. Keeping in mind that a tetrahedral element consists of four triangular faces and six edges, we denote the fine element face by τ t and the finite element edge by τ e . Let V h = V 0 h (Ω) be the finite element solution space of piecewise linear continuous functions: where v |τ is the function restricted to an element τ ∈ T h (Ω) and P 1 (x) is the set of linear polynomials. Note that as the gradient of u ∈ V h is piecewise constant thus (α∇u∇v) L 2 (τ ) = ∇u∇v τ α dx. Thus without any loss of generality we assume that α(x) = α τ for x ∈ τ where α τ is a positive constant. The discrete problem is then defined as: This problem has a unique solution by the Lax-Milgram theorem. By using standard nodal basis functions φ i with i = 1, . . . , N η , where N η are the number of individual vertex nodes of the tetrahedrons in Ω, the above equation may be stated as a system of algebraic equations where . Here x j is the coordinate value of the node j. The resulting symmetric system is in general very ill-conditioned; any standard iterative method, like the Conjugate Gradients, e.g. cf [22], may perform poorly due to the ill-conditioning of the system. The aim is to introduce an additive Schwarz preconditioner for the original problem (3) to obtain a well-conditioned system for which the convergence of the conjugate gradient method is independent of any variations in the coefficient, thereby improving the overall performance.

Additive Schwarz method
The two-level additive Schwarz method is well known and well understood in the literature, and we refer to [36,Chapter 3] for an overview of the method.

Geometric structures
Let Ω be partitioned into a set of N nonoverlapping subdomains (or generalized subdomains), and Ω = ∪ i∈I Ω i . The intersection between two closed subdomains is either an empty set, a closed face (or a closed generalized face which is a sum of closures of fine element faces), a closed edge (or a closed generalized edge which is a sum of closures of fine element edges), or a vertex. Thus, the triangulation T h (Ω) is aligned with the subdomains Ω i . Each subdomain Ω i inherits its own local triangulation . The corresponding set of overlapping subdomains {Ω i } i∈I is then defined as follows: extend each subdomain Ω i to Ω i , by adding to Ω i a layer of elements, i.e. sum of τ k ∈ T h (Ω) such that τ k ∩ ∂Ω i = ∅.
Since the subdomains inherit their triangulation from the global triangulation  The subdomain in the back at the top is meshed into a fine mesh. The faces that the subdomain Ω 1 shares with its neighbours, Ω 2 and Ω 3 have been meshed. On the face, F I 13 , only the internal nodes have been meshed, while on the face F 12 all the nodes have been meshed. Also, an edge E 1 is indicated where the edge nodes have been dotted. The center red node is a vertex node (color figure online) where | · | is a natural measure of a surface. Note that since the subdomain vertices are matching across the interface, we have Γ = kl F kl \∂Ω. A closed edge is an intersection between two closed faces, consisting of closed fine element edges. The set of all edges are denoted by E. And the set of subdomain vertices are denoted by V. The wire basket is defined as W = k E k \∂Ω.
In the same way as each subdomain inherits a 3D triangulation, each face F kl inherits a 2D triangulation which we denote by T h (F kl ), and each edge E k inherits a 1D triangulation which we denote by T h (E k ). For each of the structures, Ω, Ω, Ω k , Ω k , F, E, and W, we use Ω h , Ω h , Ω k,h , Ω k,h , F h , E h , and W h , respectively, to denote the corresponding set of nodal points (vertices of the elements of T h ) which are on the structure.

Space decomposition, subproblems, and preconditioned system
Let the two local subspaces on Ω k , be defined as Functions of V 0 h (Ω k ) are extended by zero to the rest of the domain Ω\Ω k . For the ease of representation, we denote this extended space by the same symbol, that is using V 0 h (Ω k ). We can repeat these definitions for extended domains Ω i . Let us decompose the finite element solution space into a coarse space and N local subspaces Here V i = V 0 h (Ω i ) are the local function spaces associated with the overlapping subdomains Ω i for i = 1, . . . , N extended by zero to the rest of Ω, cf. (5). Further, V (k) 0 , k = 1, 2 is the coarse space. In the next section, we introduce the two coarse spaces, the wire basket based coarse space V (1) (14), and the vertex based coarse space V (21). In both cases, these are relatively much smaller subspaces of the finite element space V h .
We define projection like operators, P (k) 0 for k = 1, 2, and P i for i = 1, . . . , N , as follows, Defining the additive operator P (k) = P (k) 0 + i P i , we get the following system of equation equivalent to the original problem (3) in the operator form, where 0 , g i can be computed in parallel without knowing u h , cf. e.g. [33,36].

Coarse spaces with enrichment
For our the additive Schwarz method we introduce two alternative coarse spaces. The first one is based on enriching a wire basket coarse space, and the second one is based on enriching a vertex based coarse space.
Discrete harmonic extensions are used to extend our functions from subdomain boundaries into subdomains. We define our discrete harmonic extension operator below.
as the discrete harmonic extension operator in Ω k as follows, If for any u ∈ V h , we have that all its restrictions to the subdomains are locally discrete harmonic then this function is (piecewise) discrete harmonic in Ω.
Functions that are locally discrete harmonic have the minimum energy property locally. This property is well known, but for completeness we restate it in the following lemma, cf. [36] for further details on discrete harmonic extensions.

Wire basket based coarse space
The wire basket based coarse space consists of basis functions, one for each node in the wire basket W, plus eigenfunctions corresponding to the first few eigenvalues of generalized eigenvalue problems associated with the faces, cf. Definition 3. For any face F kl , let V h (F kl ) be the space of piecewise linear continuous functions on the face F kl ∈ F, and V 0 h (F kl ) the corresponding subspace of functions with zero boundary values, that is We need the following interpolation operator and α τ t = max{α τ − , α τ + } for a triangle τ t which is an element of the 2D triangulation of the face F kl , such that For each face F kl , we define the following generalized eigenvalue problem.
where a F kl (·, ·) is defined in (10), and b F kl (·, ·) as follows, where is the space of piecewise continuous functions on T h (F kl ) which are equal to zero on ∂F kl . Note that the bilinear forms a F kl (·, ·) and b F kl (·, ·) in (11) are symmetric and positive definite on V 0 h (F kl ). We extend ξ i F kl by zero to the whole interface Γ , and then as a discrete harmonic function inside each subdomain, denoting the extended function by the same symbol. Now, let be the space of eigenfunctions, where m kl is a nonnegative integer smaller than or equal toM, a number which is either prescribed or decided adaptively. The wire basket based coarse space is then defined as The space I W V h is a natural extension of the 2D multiscale coarse space introduced in [15] to 3D, and the face enrichment spaces V en F kl are natural extensions of the edge enrichment spaces introduced in [14] to 3D.

Vertex based coarse space
The vertex based coarse space consists of basis functions, one for each node in V, plus eigenfunctions corresponding to the first few eigenvalues of generalized eigenvalue problems associated with the edges, cf. Definition 5, and the faces, cf. Definition 6.
For any edge E i , let V h (E i ) be the space of piecewise linear continuous functions on the edge E i ∈ E, and V 0 h (E i ) the corresponding subspace of functions with zero boundary values, that is We need the following interpolation operator

Definition 4
For any u ∈ V h , let I V u be discrete harmonic (cf. Definition 1) such that and α e = max{τ ∈ T h : e ⊂ ∂τ }.
For each edge E k , we define the following generalized eigenvalue problem.
where a E k (·, ·) is defined in (15), and with α x from Definition 3.
Note that, by definition, the bilinear forms a E k (·, ·) and b E k (·, ·) in (16) are both symmetric and positive definite on be the sum of closed fine triangles on the face F kl that touch the wire basket, and kl the interior of the sum of closed triangles that are lying strictly inside the face. Obviously, For each face F kl , we now define the following generalized eigenvalue problem. where where α τ t is defined in Definition 2.
Note that, by definition, the bilinear form b F kl (·, ·) is symmetric and positive defi- (18) is symmetric and positive semidefinite on this space. We know its kernel, it is the one dimensional space containing functions that are constant over F I kl , consequently, we have 0 = λ 1 F kl,I < λ 2 Analogously, as in the wire basket based coarse space, we extend ξ i E k and ξ i F kl,I by zero to the whole Γ , and then as discrete harmonic functions inside each subdomain, denoting the extended function by the same symbols. Now, define the two spaces of eigenfunctions, one associated with the edges and one associated with the faces, as respectively. Both n kl and m k are integers such that 1 ≤ n kl ≤M and 0 ≤ m k ≤ M E k , and are either prescribed or decided adaptively. The vertex based coarse space is then defined as Remark 1 It should be pointed out here that many of the calculations indicated by the use of piecewise discrete harmonic extensions in the definitions above are redundant since, in practice, they are often trivial extensions of zero on subdomain boundaries.

Convergence estimate for the preconditioned system
In this section, we prove that the condition number of our preconditioned system can be kept low, and independent of the contrast if our coarse space enrichments are appropriately chosen. The main result is stated in Theorem 1.
Theorem 1 Let k = 1 and k = 2 in the superscript refer to the two coarse spaces: the wire basket based coarse space and the vertex based coarse space, respectively. Then, for P (k) , cf. (7), we have with C (1) (16), and λ i F kl,I is from (18), and the integer parameters m kl , n kl , m k are defined in (13) or (20), respectively.
The proof is based on the abstract Schwarz framework, cf. e.g. [25,33,36] and is given at the end of the section. The following lemmas are required for the proof.
In particular if u is zero at W h , then and if u is zero at all vertices of ∂Ω k then Proof The first part of the proof follows from the fact that a discrete harmonic function has the minimal energy among all functions taking the same values on the boundary.
which is equal to u on ∂Ω k and zero at the interior nodes Ω k,h . The other case means that u =û. Consequently, where Ω h k is the h boundary layer that is the sum of elements of T h (Ω k ) that touch (has a vertex on) the boundary ∂Ω k . We used a local inverse inequality and the discrete equivalence of the L 2 norm on each τ . Finally, utilizing the fact thatû is zero at the interior nodal points and taking the maximum over α τ such that x ∈ ∂τ we get The last two statements of the lemma follow directly from the first statement of the lemma plus the definitions of the bilinear forms defined in (12) and (17).

Remark 3
The constant in the estimate of Lemma 2 equals C 1 C 2 C 3 , where C 1 is the constant of the inverse inequality |u| 2 is the squared constant of the inequality stating local equivalence of the L 2 norm to the discrete local nodal l 2 norm, i.e. u 2 L 2 (τ ) ≤ C 2 h x k ∈∂τ |u(x k )| 2 , u ∈ V h , τ ∈ T h , and C 3 is the maximum over all x ∈ ∂Ω k,h of the number of τ ∈ T h (Ω k ) such that x is a vertex of τ .
We see from the proof that we could define the coefficient α x as equal to the sum of α x instead of taking the maximum of them.

Lemma 3 Let V be a finite dimensional real space and consider the generalized eigenvalue problem: Find the eigenpair
where the bilinear form b(·, ·) is symmetric positive definite, and the bilinear form a(·, ·) is symmetric positive semi-definite. Then there exist M = dim(V ) eigenpairs with real eigenvalues ordered as follows 0 ≤ λ 1 ≤ · · · ≤ λ M . If λ k is the smallest positive eigenvalue then the operator Π m : and where . See [14,35] for the proof.
We introduce the wire basket based coarse space interpolator or the interpolation operator where cf. also (13) and (12).
We have the following lemma estimating the coarse space interpolant.

Lemma 4
Let the wire basket based coarse space interpolator I W 0 be defined in (28).
where λ m kl +1 F kl is the (m kl + 1)th smallest eigenvalue of the generalized eigenvalue problem in Definition 3.
Proof Note that if we restrict w = u − I W 0 u to Ω k then H k w = H k u − I W 0 u as I W 0 u is discrete harmonic, thus by the fact that H k and I − H k are a |Ω k orthogonal projection in V h (Ω k ), cf. Definition 1, we have Thus it remains to estimate a |Ω k (H k w, H k w). By Lemma 2 and the fact that H k w = w on ∂Ω k we get Let us now consider one such face with respect to the bilinear form a F kl (·, ·), we have From the last two estimates, it follows that Here the last sum is over all pairs of vertices of a 2D face element τ t . Using the definition of α t and the fact that |u| 2 Finally, summing over the faces yields that and then summing the subdomains ends the proof.
For the next lemma we need a partition of unity. We need a discrete version of a partition of unity, i.e we define θ i is a continuous function which is piecewise linear on T h such that: where N x is the number of subdomains Ω j such that x ∈ Ω j,h . As an example, N x = 2 for any nodal point x on a subdomain face.

for any u ∈ V h and I h : C(Ω) → V h -the standard nodal piecewise linear interpolant. Then
The last sum is taken over all subdomains which have a common face to Ω k . Thus We first estimate the second term, that is the sum of the face terms. Note that v k|Ω l is zero at the interior nodes Ω l,h and the boundary nodes ∂Ω l,h \F kl,h . Thus by Lemma 2 and (35) we have This term has already been estimated in the proof of Lemma 4, cf. (31), that is We now estimate the first term in (36), that is the restriction of the bilinear form to the Ω k . By a triangle inequality, we can write The first term has already been estimated in the proof of Lemma 4, cf. (32). Also, note that (w−v k )(x) equals either 1 2 w(x) when x is a face node, or zero when x ∈ ∂Ω k ∩W h and x ∈ Ω k,h . By Lemma 2 and (35) we thus get Again, this term has been estimated in the proof of Lemma 4, cf. (31). Summing all those estimates ends the proof.
Analogous to the wire basket case, we now define the vertex based coarse space interpolator where Π F kl,I n kl cf. also (20), (12) and (17). We have the following lemma.

Lemma 6 Let the vertex based coarse space interpolator I
where λ n kl +1 F kl and λ m k +1 E k are respectively the (n kl + 1)th and the (m k + 1)th smallest eigenvalues of the generalized eigenvalue problems in Definitions 5 and 6.
Proof Let w = u − I V 0 u. In the same way as in the proof of Lemma 4, we get (H k w, H k w).
Next we bound a |Ω k (H k w, H k w). By Lemma 2, cf. (23), and (12) and (17). we get Note that by (21) and Definition 4 we have (u, u). We also used the fact that ( Further, using the fact that, for u linear, |u| 2 H 1 (τ e ) is equivalent to h −1 |u(x) − u(y)| 2 (x, y are the ends of the 1D element τ e ), we get Here the last sum is over the ends x, y of an 1D edge element τ e . Note that h|u(x) − u(y)| 2 τ |∇u| 2 dx if x, y are vertices of τ ∈ T h . Thus we get where the sum is over all 3D fine elements such that one of its edges is contained in E j . Now, consider the term b F kl (w, w) related to a face F kl . Note that u |∂F kl does not have to be equal to zero in general but if we define a functionû such thatû(x) = u(x) x ∈ F kl,h andû(x) = 0 for x ∈ ∂F kl,h , then we have cf. (12) and (19). Thus we see that Π F kl,I n kl u = Π F kl,I n klû and we can apply Lemma 3 replacing u withû and get Here |u| 2 I (u, u). The last inequality follows from the fact that cf. (10) and (19). Further, analogously as in the proof of Lemma 4, cf. (30) and (31), we get Finally, by summing over the edges and faces, and then over the subdomains we end the proof.

Lemma 7 Let the vertex based coarse space interpolator I
The last sum is taken over all subdomains which share an edge with Ω k .  (w, w)).
The face and the edge terms can be estimated following the lines in the proof of Lemma 6.
The first term, on the other hand, can be estimated following the lines in the proof of Lemma 5, that is using Lemma 2, as follows: Again, these terms can be estimated in the same way as in the proof of Lemma 6.
Combining those estimates, we get the proof.
The next and final lemma provides estimates for the stability of decomposition for the two preconditioners presented in this paper, which are required in the proof of Theorem 1.

Lemma 8 (Stable Decomposition)
Let k = 1 and k = 2 in the superscript refer to the two coarse spaces: the wire basket based coarse space and the vertex based coarse space, respectively. Then, for all u ∈ V h there exists a representation u = u for k = 1, 2, with Proof For the wire basket based coarse space, let u . The corresponding statement of the lemma then follows immediately from the Lemmas 4 and 5.
For the vertex based coarse space, let u It's statement of the lemma then follows immediately from the Lemmas 6 and 7.

Proof of Theorem 1
The convergence theory of the abstract Schwarz framework indicates that, under three assumptions, the condition number of our method can be bounded as the following.
The three assumptions are concerned with estimating the three constants ω, ρ and C 2 0 . It is easy to that ω = 1 here, as we have nested subspaces and are using exact solvers for the subproblems, and ρ ≤ N c , where N c is the maximum number of subspaces that cover any x ∈ Ω. We refer to [33,Sect. 5.2] or [36,Sect. 2.3] for details. An estimate of the last parameter (C (k) 0 ) 2 , for k = 1 or k = 2, is given in Lemma 8. The proof of the theorem now follows.

Numerical results
In this section, we present four numerical tests. The test problems are defined on a unit cube domain, with a Dirichlet boundary condition and a constant right-hand side f (x) = 100. For all the test problems, we use coefficient distributions with inclusions across subdomain boundaries (faces and edges), as is illustrated in the Figs. 2 and 3, and channels illustrated in Fig. 4. The coefficient either has a background-value of 1, or a significant value of 10 6 . For any given distribution the region with high-value coefficient is independent of mesh parameters. We use the PCG method as a solver, with a stopping condition when the residual norm is reduced by a factor 10 −6 .
The algorithms have been implemented in MATLAB, using the functions meshgrid and delaunayTriangulation for discretization, and routines from PDEToolbox for assembling the stiffness and mass matrices. For the iterative solver, we used pcgeig, an extension of MATLAB's pcg routine, available at m2matlabdb.ma.tum.de. The pcgeig solver returns an estimate of the condition number for the preconditioned system. We use the built-in function eigs for solving the eigenvalue problems.
The spectral components of our coarse spaces consist of local eigenvectors with corresponding eigenvalues below a given threshold λ * (cf. Theorem 1). This thresholdparameter makes the coarse spaces adaptive, determining the size of the coarse spaces and the performance of the methods. In our experiments, we choose the thresholds as c h H , for some constant c. Another reasonable choice of threshold is the smallest non zero eigenvalue of the eigenvalue problems with the uniform background-value distribution. We refer to [18] for other threshold choices.
In Test 1 the coefficient distributions are inclusions on faces, as shown in Fig. 2. The figure indicates five variants where the high conductivity regions (cells) are shown in red. The distributions vary both in geometrical shape and in the number of separate inclusions. The condition number estimate and the number of iterations are presented in Table 1. Each row corresponds to a particular distribution. The first column lists the condition number estimates when the coarse spaces have no enrichment, while the next three columns have estimates corresponding to solutions with adaptive coarse spaces for varying h. We observe in the first column that the jump in coefficient is reflected in the condition numbers. From the last three columns, we observe that both our suggested preconditioners improve the performance of the PCG method.
To have an idea of the number of eigenfunctions added to the coarse spaces in Test 1, we have listed the lowest eigenvalues of the generalized eigenvalue problems for the case H h = 32, in Table 2. Each distribution in the first row of Fig. 2 represents  The rows correspond to the different α distributions as shown in Fig. 2, and the columns correspond to either no enrichment or to an adaptive enrichment with a threshold denoted by λ *  inclusions on one face. The eigenvalues in each column of Table 2 are from eigenvalue problems on each of these faces respectively. Any eigenvalue printed in boldface is an eigenvalue above the threshold. The first few eigenvalues in each column are several magnitudes lower than the threshold. In all observed cases, the number of eigenvalues that are several magnitudes lower than the threshold is equal to the number of separate inclusions on that particular face. The number of eigenfunctions included into the coarse space in each case is low. In Test 2 the distributions in Fig. 2 are slightly modified. The distribution Face 1 is modified by changing the value of the coefficient in the region 1/16 < x < 7/16, 4/16 < y < 5/16 and 1/16 < z < 7/16 from 1 to 10 6 . This new distribution Face 1 * connects the separate inclusions of Face 1 inside a subdomain. Similarly, the distributions Face 2, Face 3 and Face 4 are modified such that the separate inclusions in each distribution are connected inside a subdomain. These modifications do not change the local eigenvalue problems and the eigenvalues in Table 2 also apply to Test 2. In Test 2 the mesh parameters are fixed H = 1/2 and H /h = 32. The threshold is the same as in Test 1. Additionally, we place a capping restriction on the number of basis functions selected from each local eigenvalue problem.
The numerical results of Test 2 are presented in Table 3. Each row corresponds to a specific distribution. The first column lists the results for the methods with no enrichment. The second and third column lists the results for the methods with capped adaptive coarse spaces. The last column lists the results for the methods with adaptive coarse spaces without a cap beyond the threshold. The condition numbers of the first column in Table 3 are notably lower then the condition numbers in the first column of Table 1. From the last column of Table 3 we see that our method improves the performance of PCG. The rows correspond to the different α distributions as shown in Fig. 2 with the modification that, for each distribution, the inclusions have been connected inside a subdomains. In the columns results for different levels of enrichment are listed. Here cap indicates an upper limit to the number of enrichments allowed from any eigenvalue problem In Test 3 the distribution has inclusions on edges. The inclusions are two rectangular slabs horizontally placed, as is illustrated by in Fig. 3. The slabs trigger the solution of generalized eigenvalue problems both on edges and faces. The corresponding eigenvalues from the generalized eigenvalue problems with H h = 32 are presented in Table 4. Due to the symmetry of the distribution, the eigenvalue problems on the edges are identical. Moreover, there are only two unique eigenvalue problems on the faces.
The results of Test 3 are given in Table 5. The first row lists results for the edge distribution shown in Fig. 3. The second row lists results for the distribution where Edge and Face 1-4 are combined. The first column in the table lists the condition number estimates for the coarse space with no enrichment, while the next three columns list the results from solving the test problems with an adaptive coarse space for different mesh sizes. From the results in the last three columns, we see that our preconditioner improves the performance of PCG.
Up to now, we have seen that our method can handle various challenging distributions on a small number of subdomains. In Test 4, we divide the unit cube into 64 subdomains. This decomposition leads to 27 vertex nodes, 108 edges, and 144 faces, excluding all vertices, edges, and faces that are entirely part of the boundary of the domain. The distribution in this test, see

4.3e−2
Again all the eigenvalues above the one in bold face are below the threshold used in Test 3, cf. Table 5. The eigenvalue in boldface is the first eigenvalue above the threshold. Here λ E denotes the eigenvalues of the edge eigenvalue problem, and λ F I and λ F denotes the eigenvalues of the face eigenvalue problems for the vertex based and the wire basket based coarse space, respectively The results of Test 4 are provided in Table 6. The two rows present results for H h = 8 and H h = 16. The columns list the thresholds, the number of coarse functions in the non-spectral part, the number of coarse functions in the spectral part, and the condition number estimates for the adaptive coarse spaces. The first 4 columns are for the wire basket based preconditioner, and the 4 last columns are for the vertex based preconditioner. Both methods show condition numbers that are independent of the coefficient value in the test problem. The rows correspond to different α distributions as shown in Figs. 2 and 3, and the columns correspond to either no enrichment or to an adaptive enrichment with a threshold denoted by λ * Here λ * denotes the threshold of the local eigenvalue problems. Moreover, #I W denotes the number of basis functions connected to wire nodes, while #I V denotes the number of basis functions connected to vertex nodes. Finally, #I F denotes the number of from the adaptive enrichments