1 Introduction

In recent years, interest has grown in discretization methods for partial differential equations which allow for more general meshes while retaining optimal approximation properties [14]. The virtual element method (VEM) is a finite element method (FEM) type procedure which allows for the use of polygonal meshes that may contain non-convex elements and hanging nodes. This is achieved through implicitly defining the shape functions by local PDE problems on each element, making them unknowable (hence “virtual”) inside the elements, but providing flexibility in the definition of function spaces with desirable properties, such as higher regularity of the solution [3, 13, 34]. The relaxed mesh assumptions allow for a highly localized mesh refinement process and an increased fidelity of the grid to possibly complex underlying geometries. The VEM has already been formulated for numerous different problems [2, 7, 9, 10, 12, 20, 42, 44]. To make it suitable for larger scale problems, the nonoverlapping domain discretization method FETI-DP (Finite Element Tearing and Interconnecting - Dual Primal), [18, 19, 28, 29] can be applied to virtual element discretizations. This has already been proposed and analyzed in [15, 16, 36]. FETI-DP is a robust and parallel scalable iterative solver for the discrete systems of equations arising from discretized partial differential equations. The scalability and robustness of such nonoverlapping domain discretization methods for elliptic partial differential equations are due to an appropriate coarse space. A simple approach is to sub-assemble the system in certain primal variables. Given fairly strict assumptions on the coefficient function of the given model problem, (robust) condition number estimates have been proven [28, 29]. In the case of highly heterogeneous materials, in general, the condition number of the FETI-DP method is known to deteriorate, leading to large iteration numbers and hence poor performance. As a remedy, different adaptive coarse spaces have been proposed for numerous domain decomposition methods in order to deal with complex coefficient functions such as arbitrary jumps along or across the interface. A recent list of references to the large number of publications in this field can be found in the introduction of [21].

Here, we consider two types of coarse spaces for FETI-DP. The first is an adaptive coarse space first proposed in [31] which has been further developed and analyzed in [23, 25, 30, 37, 38]. Applying this coarse space leads to a robust algorithm with respect to discontinuities in the coefficient function across the interface for both stationary diffusion and compressible linear elasticity. Its downside is, that the construction of the coarse space involves the solution of local generalized eigenvalue problems.

The second coarse space is computationally less expensive while often still robust. It is based on the new frugal constraint approach introduced in [21]. The frugal coarse space is a heuristic method that tries to mimic the eigenvectors belonging to the largest eigenvalues of the local generalized eigenvalue problems used to define the adaptive coarse space. Since this can be done without solving an eigenvalue problem this approach is less expensive then the original adaptive coarse space. It was shown to outperform the classical coarse spaces in every situation considered so far; see [21].

Here, we consider the frugal and adaptive FETI-DP methods applied to the virtual element method. Preliminary results for the adaptive coarse space applied to FETI-DP for virtual elements have been presented in [43]. We implement the coarse spaces using the Deflation/Balancing approach [27] and investigate whether the performance of the frugal and adaptive coarse spaces in fairly general situations can justify further inquiry into mesh refinement and parallel load balancing considerations, in the context of FETI-DP.

The remainder of this paper is organized as follows. In Section 2, we give a brief overview of the virtual element method and its application to our model problems. In Section 3, the FETI-DP method and its frugal and adaptive coarse spaces are introduced, and the proof of the condition number estimate for the adaptive variant of FETI-DP for virtual elements is transferred from known FETI-DP theory. Finally, in Section 4, we provide results of numerical experiments which confirm the theoretical estimates for the adaptive coarse space and also heuristically indicate the robustness of the frugal coarse space. In Section 5, a conclusion is given.

2 Model Problems and the Virtual Element Method

We consider both, stationary diffusion and linear elasticity problems with jumps in the coefficient functions, i.e., the diffusion coefficient or, respectively, Young’s modulus. For both problems, the domain \({{\varOmega }}\subset \mathbb {R}^{2}\) is assumed to be a polygon.

2.1 Stationary Diffusion

Let fL2(Ω). We consider the stationary diffusion equation with homogeneous Dirichlet boundary values

$$ \begin{array}{@{}rcl@{}} -\nabla \cdot (\rho \nabla u)&=& f \quad \text{in }~{{\varOmega}}, \\ u&=&0 \quad \text{on }~\partial {{\varOmega}}. \end{array} $$

Here, we assume ρ to satisfy 0 < ρρ(x) ≤ ρ for two constants \(\rho _{\ast },\rho ^{\ast }\in \mathbb {R}\). The corresponding weak formulation is given by

$$ \left\{\begin{array}{l} \text{Find } u \in {H^{1}_{0}}({{\varOmega}}) \text{ such that } \\ a(u,v) = (f,v)_{L^{2}({{\varOmega}})} \text{ for all } v \in {H^{1}_{0}}({{\varOmega}}), \end{array}\right. $$

where \(a(v,w):=(\rho \nabla v,\nabla w)_{L^{2}({{\varOmega }})}\) for \(v,w\in {H^{1}_{0}}({{\varOmega }})\).

2.2 Compressible Linear Elasticity

For Ω as above and f ∈ (L2(Ω))2, the equations for compressible linear elasticity are given by

$$ \begin{array}{@{}rcl@{}} -2 \mu \text{div}(\varepsilon(u)) - \lambda \nabla(\text{div}(u)) &=& f \quad \text{ in }~ {{\varOmega}}, \\ u&=&0 \quad \text{ on }~\partial {{\varOmega}}. \end{array} $$

The corresponding variational formulation reads

$$ \left\{\begin{array}{l} \text{Find } u \in \left( {H^{1}_{0}}({{\varOmega}})\right)^{2} \text{ such that } \\ a(u,v) = (f,v)_{(L^{2}({{\varOmega}}))^{2}} \text{ for all } v \in \left( {H^{1}_{0}}({{\varOmega}})\right)^{2}, \end{array}\right. $$

where

$$ a(u,v) := 2 {\int}_{{{\varOmega}}} \mu \varepsilon(u) : \varepsilon(v) \mathrm{d}x + {\int}_{{{\varOmega}}} \lambda \text{div}(u)\text{div}(v) \mathrm{d}x. $$

Here, the strain tensor ε(u) and its product ε(u) : ε(v) are given by

$$ \varepsilon(u) = \tfrac{1}{2}\left( \nabla u + \nabla u^{T}\right) \quad \text{ and } \quad \varepsilon(u) : \varepsilon(v) = \sum\limits_{i,j=1}^{2}\varepsilon_{ij}(u)\varepsilon_{ij}(v), $$

where μ and λ are the Lamé parameters that can be computed from Poisson’s ratio ν and Young’s modulus E using

$$ \lambda = \frac{\text{E}\nu}{(1+\nu)(1-2\nu)} \quad \text{ and } \quad \mu = \frac{\text{E}}{2(1+\nu)}. $$

2.3 The Virtual Element Method

We give a brief outline of the VEM theory as it applies to our model problems. For more details we refer to [1, 6, 7]. Let \(\{\mathcal {T}_{h}\}_{h}\) be a sequence of tessellations of Ω into a finite number of simple polygons K, where \(h:={\max \limits }_{K\in \mathcal {T}_{h}} h_{K}\) and hK := diam(K). Each polygon has a finite number of vertices. Let \(\mathbb {P}_{k}(K)\) denote the space of polynomials of at most degree k on K. We further write \(\mathbb {P}_{k}^{K} := \mathbb {P}_{k}(K)\) in the case of stationary diffusion and \(\mathbb {P}_{k}^{K} := (\mathbb {P}_{k}(K))^{2}\) for linear elasticity. We assume that there exists a γ > 0 such that for all h and for all \(K \in \mathcal {T}_{h}\):

  1. 1.

    There exists a ball B with radius rγhK such that K is star-shaped with respect to every point inside B.

  2. 2.

    The distance between any two vertices of K is at least γhK.

We further assume, that the coefficient functions ρ, E, and ν are element-wise constant on \(\mathcal {T}_{h}\) for each h and that the bilinear form a(⋅,⋅) can be split into

$$ a(v,w) = \sum\limits_{K\in \mathcal{T}_{h}} a^{K}(v,w) \quad \forall v,w\in V. $$

The idea of VEM is to find a finite dimensional subspace VhV and a symmetric bilinear form ah(⋅,⋅) such that a splitting of the form

$$ a_{h}(v_{h},w_{h}) = \sum\limits_{K\in \mathcal{T}_{h}} {a_{h}^{K}}(v_{h},w_{h}) \qquad \forall v_{h},w_{h}\in V_{h} $$

is possible, where \({a^{K}_{h}}(\cdot ,\cdot )\) is bilinear on Vh|K × Vh|K for each \(K \in \mathcal {T}_{h}\). In order to establish the target order of accuracy \(k\in \mathbb {N}_{\ge 1}\) the following properties must hold for all h and for all \(K\in \mathcal {T}_{h}\):

  • \(\mathbb {P}_{k}^{K} \subset V_{h|K}\),

  • k-consistency: \({a_{h}^{K}}(p,v_{h}) = a^{K}(p,v_{h})\) for all \((p,v_{h})\in \mathbb {P}_{k}^{K} \times V_{h|K} \),

  • stability: There exist α,α > 0, that do not depend on h and on K, such that \(\alpha _{\ast } a^{K}(v_{h},v_{h}) \le {a_{h}^{K}}(v_{h},v_{h}) \le \alpha ^{\ast } a^{K}(v_{h},v_{h})~~\forall v_{h} \in V_{h}\).

The discrete formulation is then given by

$$ \left\{\begin{array}{l} \text{Find } u_{h} \in V_{h} \text{ such that } \\ a_{h}(u_{h},v_{h}) = \langle f_{h},v_{h}\rangle \text{ for all } v_{h} \in V_{h}, \end{array}\right. $$

with \(f_{h}\in V^{\prime }_{h}\). It can be shown that this formulation satisfies the optimal convergence properties; see, for example, [1, 6]. To achieve this, a virtual element space Vh is defined by the following properties. Let vhVh be a (possibly vector valued) function.

  • Each component of vh is a continuous function on the boundary of each \(K\in \mathcal {T}_{h}\).

  • Each component of vh is a polynomial of degree k on each edge e of every polygon K.

  • Each component of \(({{\varDelta }} v_{h}){\kern -.8pt}|_{K}\) (where the Laplace-operator is evaluated component wise) is a polynomial of degree k − 2 inside every K.

We can choose the following degrees of freedom on Vh:

  • The values of vh on each polygon vertex.

  • For k ≥ 2 the k − 1 values of vh on each point of the Gauss–Lobatto quadrature rule on every edge of the tessellation.

  • For k ≥ 2 and all \(K\in \mathcal {T}_{h}\), the volume moments up to order k − 2 of vh in K:

    $$ \frac{1}{|K|} {\int}_{K} v_{h} \cdot p \mathrm{d} x\qquad \forall p \in \mathbb{P}_{k}^{K}. $$

Remark 2.1

For our purposes, we may as well choose the modified VEM space introduced in [1]. Indeed, the proof of Theorem 3.1 only relies on the properties of the trace spaces of the virtual element space of each subdomain. These trace spaces of the classical and modified virtual element spaces coincide, therefore the proof is valid in both cases.

We choose the standard scaled monomials as a basis for \(\mathbb {P}_{k}^{K}\); see, e.g., [6]. The resulting shape functions are computable on the edges of the tessellation, but not realistically computable in the interior of the elements. However, for vh,whVh(K) the bilinear form aK(vh,wh) can be computed to a sufficient precision to guarantee optimal convergence properties. In practice this can be achieved by defining for each element K a computable projection operator \({{{\varPi }}^{K}_{a}}: V_{h}(K) \to \mathbb {P}_{k}^{K}\) using

$$ a^{K}\left( {{{\varPi}}^{K}_{a}} v_{h},p\right) = a^{K}(v_{h},p) \qquad \forall p\in \mathbb{P}_{k}^{K}. $$

In general, these equations do not determine \({{{\varPi }}^{K}_{a}} v\) uniquely and thus further equations must be enforced. The details are outlined, for example, in [8, 33]. The projection operator and the symmetry of aK(⋅,⋅) yield the identity

$$ a^{K}(v_{h},w_{h}) = a^{K}\left( {{{\varPi}}^{K}_{a}} v_{h}, {{{\varPi}}^{K}_{a}} w_{h}\right) + a^{K}\left( \left( I-{{{\varPi}}^{K}_{a}}\right) v_{h},\left( I-{{{\varPi}}^{K}_{a}}\right) w_{h}\right) \quad\forall v_{h},w_{h} \in V_{h}(K). $$

The first additive term of the right-hand side above can be computed exactly, while the second one cannot be evaluated in general. Therefore, the discrete bilinear form \({a^{K}_{h}}(\cdot , \cdot )\) is defined by replacing the second term by an appropriate stability term SK(⋅,⋅), which is assumed to be symmetric, positive definite, and to scale as aK(⋅,⋅) on the kernel of \({{{\varPi }}^{K}_{a}}\), satisfying

$$ c_{\ast} a^{K}(v_{h},v_{h}) \le S^{K}(v_{h},v_{h}) \le c^{\ast} a^{K}(v_{h},v_{h}) \qquad \forall v_{h}\in \ker\left( {{{\varPi}}^{K}_{a}}\right). $$

Here, we obtain the discrete bilinear form

$$ {a^{K}_{h}}(v_{h},w_{h}) := a^{K}\left( {{{\varPi}}^{K}_{a}} v_{h}, {{{\varPi}}^{K}_{a}} w_{h}\right) + S^{K}\left( \left( I-{{{\varPi}}^{K}_{a}}\right) v_{h},\left( I-{{{\varPi}}^{K}_{a}}\right) w_{h}\right) \qquad\forall v_{h},w_{h} \in V_{h}(K). $$

The matrix formulation is obtained as follows. We denote by NK the number of local degrees of freedom on a polygon K and by dofi(⋅) the evaluation of a (smooth enough) function φ in the i-th local degree of freedom of K and by \(\varphi _{1},{\dots } \varphi _{N_{K}}\) the corresponding nodal basis functions which satisfy dofi(φj) = δij, where δij is the Kronecker Delta. Define the consistency part of the stiffness matrix

$$ (\mathbf{K_{c}})_{ij} = a^{K}\left( {{{\varPi}}^{K}_{a}} \varphi_{i},{{{\varPi}}^{K}_{a}} \varphi_{j}\right). $$

We choose the following stability terms

$$ \begin{array}{@{}rcl@{}} S^{K}(v_{h},w_{h}) &=& \rho^{K} \sum\limits_{i=1}^{N_{K}} \text{dof}_{i}(v_{h})\text{dof}_{i}(w_{h}) \quad\qquad\text{for diffusion and}\\ S^{K}(v_{h},w_{h}) &=& \frac{1}{2}\text{tr}(\mathbf{K_{c}})\sum\limits_{i=1}^{N_{K}} \text{dof}_{i}(v_{h})\text{dof}_{i}(w_{h}) \quad \text{for elasticity}, \end{array} $$

for all vh,whVh(K), where ρK is the value of ρ(x) on the polygon K; see [7, p. 809] for the case of linear elasticity. We can now define the stability part of the stiffness matrix

$$ (\mathbf{K_{s}})_{ij} = S^{K}\left( \left( I-{{{\varPi}}^{K}_{a}}\right) \varphi_{i},\left( I-{{{\varPi}}^{K}_{a}}\right) \varphi_{j}\right) $$

and the local stiffness matrix

$$ \mathbf{K} = \mathbf{K_{c}} + \mathbf{K_{s}}. $$

The (global) stiffness matrix can then be assembled the same way as in the classical finite element method. For a comprehensive description of the implemenation; see [8, 33]. For an investigation of different stability terms we refer to [11, 32].

3 The FETI-DP Domain Decomposition Method

Let us give a brief description of the FETI-DP method. Let \(\{{{\varOmega }}_{i}\}_{i=1}^{N}\) be a nonoverlapping domain decomposition of the polygonal domain \({{\varOmega }} \subset \mathbb {R}^{2}\), such that \(\overline {{{\varOmega }}} = \cup _{i=1}^{N} \overline {{{\varOmega }}}_{i}\), equipped with sequences of quasi-uniform tessellations \(\mathcal {T}^{h}_{i},~i=1,\dots ,N\). A sequence of tessellations \(\mathcal {T}^{h}\) of a domain Ω is called quasi-uniform, when there exists a constant C > 0 such that

$$ h \le C h_{K} \quad \text{ for each } K \in \mathcal{T}_{h}. $$

For each subdomain Ωi, we obtain local stiffness matrices K(i) and local load vectors f(i) by a finite element discretization. The local solutions u(i) are given by K(i)u(i) = f(i) with respect to the tessellations above. Let Hi denote the diameter of Ωi and \(H:=\max \limits _{i}H_{i}\). Let Γ := ∪ijΩiΩjΩD be the interface, that is, the set of all points that belong to at least two subdomains. We further write \({{\varGamma }}^{(i)}:= {{\varGamma }} \cap \partial {{\varOmega }}_{i}\). We denote by \(\mathcal {E}^{i j}\) the nodes of the open part of the edge between Ωi and Ωj and by \(\overline {\mathcal {E}}^{i j}\) the closed edge, which includes the boundary cross-points. Further denoting by Γh the set of all finite element nodes which lie on the interface, we split these nodes into two distinct sets, the set of primal nodes (π), and the set of dual nodes (Δ) obtaining Γh = Δπ. While the choice of primal nodes usually depends on the given problem, in this article every node that lies on the boundary of three or more subdomains is chosen to be a primal vertex. As such, the dual nodes are those, which lie on the edges between two subdomains. Nodes that neither lie on the boundary nor on the interface are called interior nodes and we denote its set with I. Finally, we require the decomposition to be conforming, that is, the finite element nodes coincide on the interface. We define VhV to be a finite dimensional FE space which can be split into \(V^{h} = {\prod }_{i=1}^{N} {V_{i}^{h}}\), where \({V^{h}_{i}}\subset V_{i}\) are the local discrete FE spaces. We further define the discrete trace spaces \(W_{i}:= V^{h}(\partial {{\varOmega }}_{i} \cap {{\varGamma }}_{h})\) and let \(W := {\prod }_{i=1}^{N} W_{i}\). Functions in W may have multiple values on Γh. We therefore introduce function spaces with additional continuity constraints on Γh

$$ \widehat{W} := \left\{w_{h} \in W : \forall \overline{\mathcal{E}}^{i j} \subset {{\varGamma}}_{h}, \forall x\in \overline{\mathcal{E}}^{i j}~~ {w_{h}^{i}}(x) = {w_{h}^{j}}(x)\right\}, \\ $$

and in the primal nodes

$$ \widetilde{W} := \left\{ w_{h} \in W : \forall \overline{\mathcal{E}}^{i j} \subset {{\varGamma}}_{h}, \forall x\in {{\varPi}} \cap \overline{\mathcal{E}}^{i j} ~~ {w_{h}^{i}}(x) = {w_{h}^{j}}(x)\right\}. $$

These sets satisfy \(\widehat {W} \subset \widetilde {W} \subset W\).

3.1 Standard FETI-DP

The FETI-DP method is defined as follows. We assume the following local ordering of the degrees of freedom which yields the following representation of the local stiffness matrices, solution vectors, and right-hand sides

$$ K^{(i)} = \left[\begin{array}{lll} K^{(i)}_{I I} & K^{(i)}_{I {{\varDelta}}} & K^{(i)}_{I {{\varPi}}} \\ K^{(i)}_{{{\varDelta}} I} & K^{(i)}_{{{\varDelta}} {{\varDelta}}} & K^{(i)}_{{{\varDelta}} {{\varPi}}} \\ K^{(i)}_{{{\varPi}} I} & K^{(i)}_{{{\varPi}} {{\varDelta}}} & K^{(i)}_{{{\varPi}} {{\varPi}}} \end{array}\right], \qquad u^{(i)} = \left[\begin{array}{lll} u^{(i)}_{I}\\ u^{(i)}_{{{\varDelta}}} \\ u^{(i)}_{{{\varPi}}} \end{array}\right], \qquad \text{and} \qquad f^{(i)} = \left[\begin{array}{lll} f^{(i)}_{I} \\ f^{(i)}_{{{\varDelta}}} \\ f^{(i)}_{{{\varPi}}} \end{array}\right]. $$

Defining B := IΔ, we can also write

$$ K^{(i)} = \left[\begin{array}{ll} K^{(i)}_{B B}& K^{(i)}_{B {{\varPi}}} \\ K^{(i)}_{{{\varPi}} B} & K^{(i)}_{{{\varPi}} {{\varPi}}} \end{array}\right], \qquad u^{(i)} = \left[\begin{array}{ll} u^{(i)}_{B}\\ u^{(i)}_{{{\varPi}}} \end{array}\right], \qquad \text{and} \qquad f^{(i)} = \left[\begin{array}{ll} f^{(i)}_{B} \\ f^{(i)}_{{{\varPi}}} \end{array}\right], $$

where

$$ K^{(i)}_{B B} = \left[\begin{array}{lll} K^{(i)}_{I I}& K^{(i)}_{I {{\varDelta}}} \\ K^{(i)}_{{{\varDelta}} I} & K^{(i)}_{{{\varDelta}} {{\varDelta}}} \end{array}\right], \quad K^{(i)}_{B {{\varPi}}} = \left[\begin{array}{ll} K^{(i)}_{I {{\varPi}}} \\ K^{(i)}_{{{\varDelta}} {{\varPi}}}, \end{array}\right], \quad u^{(i)}_{B} = \left[\begin{array}{ll} u^{(i)}_{I} \\ u^{(i)}_{{{\varDelta}}} \end{array}\right], \quad \text{and} \quad f^{(i)}_{B} = \left[\begin{array}{lll} f^{(i)}_{I} \\ f^{(i)}_{{{\varDelta}}} \end{array}\right]. $$

Similarly, we group the dual and the primal indices into the index set Γ and find

$$ K^{(i)}_{{{\varGamma}} {{\varGamma}}} = \left[\begin{array}{lll} K^{(i)}_{{{\varDelta}} {{\varDelta}}}& K^{(i)}_{{{\varDelta}} {{\varPi}}} \\ K^{(i)}_{{{\varPi}} {{\varDelta}}} & K^{(i)}_{{{\varPi}} {{\varPi}}} \end{array}\right], \quad K^{(i)}_{{{\varGamma}} I} = \left[\begin{array}{lll} K^{(i)}_{{{\varDelta}} I} \\ K^{(i)}_{{{\varPi}} I}, \end{array}\right],\quad u^{(i)}_{{{\varGamma}}} = \left[\begin{array}{ll} u^{(i)}_{{{\varDelta}}} \\ u^{(i)}_{{{\varPi}}} \end{array}\right], \quad \text{and} \quad f^{(i)}_{{{\varGamma}}} = \left[\begin{array}{lll} f^{(i)}_{{{\varDelta}}} \\ f^{(i)}_{{{\varPi}}} \end{array}\right]. $$

We further define block diagonal matrices corresponding to nodes of a certain type

$$ K_{I I} := \text{diag}^{N}_{i=1}K_{II}^{(i)}. $$

For the different node collections, KBB, KΓΓ, and Kππ are defined similarly. We denote by \(R^{T}_{{{\varPi }}} = \left (R^{(1)T}_{{{\varPi }}},R^{(2)T}_{{{\varPi }}},\dots ,R^{(N)T}_{{{\varPi }}}\right )\) the partial finite element assembly operator with values in {0,1}, which assembles the system in the primal variables. We obtain the partially assembled matrices

$$ \begin{array}{@{}rcl@{}} \widetilde{K}_{{{\varPi}} {{\varPi}}} &=& \sum\limits_{i=1}^{N} R^{(i)T}_{{{\varPi}}} \! K^{(i)}_{{{\varPi}} {{\varPi}}} R^{(i)}_{{{\varPi}}}, \quad\widetilde{K}_{{{\varPi}} B} = \left( R^{(1)T}_{{{\varPi}}} \!{K}^{(1)}_{{{\varPi}} B},\dots, R^{(N)T}_{{{\varPi}}}\! {K}^{(N)}_{{{\varPi}} B}\right), \\ \widetilde{u}_{{{\varPi}}} &=& \left( R^{(1)T}_{{{\varPi}}} \!{u}^{(1)}_{{{\varPi}} },\dots, R^{(N)T}_{{{\varPi}}}\! {u}^{(N)}_{{{\varPi}}}\right), \quad \text{and} \quad \widetilde{f}_{{{\varPi}}} = \left( R^{(1)T}_{{{\varPi}}} \!{f}^{(1)}_{{{\varPi}} },\dots, R^{(N)T}_{{{\varPi}}}\! {f}^{(N)}_{{{\varPi}}}\right). \end{array} $$

Similarly, we denote by \(R^{T}_{{{\varGamma }}} = (I_{{{\varDelta }}}, R^{T}_{{{\varPi }}})^{T}\) the primal assembly operator for all interface nodes. We further introduce an operator \(B = (B^{(1)},\dots , B^{(N)})\) with entries in {− 1,0,1} such that Bu = 0 holds if and only if uW is continuous over the interface. We therefore denote B as the jump operator. We also introduce the following notation

$$ B_{B} = \left( B^{(1)}_{B},\dots,B^{(N)}_{B}\right) \quad \text{ and } \quad B_{{{\varGamma}}} = \left( B^{(1)}_{{{\varGamma}}},\dots,B^{(N)}_{{{\varGamma}}}\right). $$

Each row in BB belongs to a physical interface node x and contains exactly a single 1 and a single − 1 such that BBuB = 0 ensures that u is continuous in x. We enforce the continuity constraint using Lagrange multipliers λ and obtain the FETI-DP saddle point system

$$ \left[\begin{array}{ll} \widetilde{K} & B^{T} \\ B & 0 \end{array}\right] \left[\begin{array}{ll} \widetilde{u} \\ \lambda \end{array}\right] = \left[\begin{array}{ll} \widetilde{f} \\ 0 \end{array}\right], $$

where

$$ \widetilde{K} = \left[\begin{array}{ll} K_{B B} & \widetilde{K}_{B {{\varPi}}} \\ \widetilde{K}_{{{\varPi}} B} & \widetilde{K}_{{{\varPi}} {{\varPi}}} \end{array}\right], \quad \widetilde{u}= \left[\begin{array}{ll} u_{B} \\ \widetilde{u}_{{{\varPi}}} \end{array}\right], \quad \text{and} \quad \widetilde{f}= \left[\begin{array}{ll} f_{B} \\ \widetilde{f}_{{{\varPi}}} \end{array}\right]. $$

Using block Gaussian elimination, we derive the standard FETI-DP system Fλ = d where

$$ \begin{array}{@{}rcl@{}} F &=& B_{B} K^{-1}_{B B} {B_{B}^{T}} + B_{B} K^{-1}_{B B} \widetilde{K}_{B {{\varPi}}} \widetilde{S}_{{{\varPi}} {{\varPi}}}^{-1} \widetilde{K}_{{{\varPi}} B} K^{-1}_{B B} {B_{B}^{T}} \qquad\text{and} \\ d &=& B_{B} K^{-1}_{B B} f_{B} + B_{B} K^{-1}_{B B} \widetilde{K}_{B {{\varPi}}} \widetilde{S}_{{{\varPi}} {{\varPi}}}^{-1} \left( \widetilde{f}_{{{\varPi}}} -\widetilde{K}_{{{\varPi}} B} K_{B B}^{-1} f_{B}\right). \end{array} $$
(3.1)

Here, \(\widetilde {S}_{{{\varPi }} {{\varPi }}}\) is the global Schur complement

$$ \widetilde{S}_{{{\varPi}} {{\varPi}}} = \widetilde{K}_{{{\varPi}} {{\varPi}}} - \widetilde{K}_{{{\varPi}} B} K_{B B}^{-1} \widetilde{K}_{B {{\varPi}}} $$

and \(\widetilde {S}_{{{\varPi }} {{\varPi }}}^{-1}\) in (3.1) constitutes the coarse problem of FETI-DP. We further define local Schur complements

$$ {S}^{(i)}_{{{\varGamma}} {{\varGamma}}} = K^{(i)}_{{{\varGamma}} {{\varGamma}}} - K^{(i)}_{{{\varGamma}} I} \left( K^{(i)}_{I I}\right)^{-1} \!\! {K}^{(i)}_{I {{\varGamma}}}, \qquad S_{{{\varGamma}} {{\varGamma}}} = \text{diag}^{N}_{i=1} S_{{{\varGamma}}{{\varGamma}}}^{(i)}, $$

and the primally assembled Schur complement

$$ \widetilde{S} := R^{T}_{{{\varGamma}}} S_{{{\varGamma}} {{\varGamma}}} R_{{{\varGamma}}}. $$

Next, we introduce scaling matrices D(i) belonging to their subdomains Ωi. Consider the domain Ωi which shares the edges \(\mathcal {E}^{i j_{1}},\dots , \mathcal {E}^{i j_{n}}\) with the subdomains \({{\varOmega }}_{j_{1}},\dots , {{\varOmega }}_{j_{n}}\), respectively. Ordering D(i) according to the edges, yields

$$ D^{(i)} = \text{diag}^{n}_{m=1} D^{[j_{m}]}_{\mathcal{E}^{i j_{m}}}. $$

We further require that the two scaling matrices belonging to an interface edge \(\mathcal {E}^{i j}\) satisfy

$$ D^{[i]}_{\mathcal{E}^{i j}} + D^{[j]}_{\mathcal{E}^{i j}} = I, $$

where I denotes the identity matrix. We consider ρ-scaling and deluxe scaling; see [17, 25, 29].

With these scaling matrices, the scaled version of BΓ is defined as

$$ B_{D,{{\varGamma}}} = \left( B_{D,{{\varGamma}}}^{(1)},\dots,B_{D,{{\varGamma}}}^{(N)}\right)= \left( D^{(1)T} B^{(1)}_{{{\varGamma}}},\dots,D^{(N)T} \! B^{(N)}_{{{\varGamma}}}\right). $$

The Dirichlet preconditioner is then given by

$$ M^{-1}_{D} = B_{D,{{\varGamma}}} \widetilde{S} B^{T}_{D,{{\varGamma}}}. $$

The preconditioned FETI-DP system \(M^{-1}_{D} F \lambda = M^{-1}_{D} d \) is solved iteratively using the preconditioned conjugate gradient (PCG) method. It is well-known that the convergence of the PCG method depends on the spectral condition number of the given system. The above system admits the condition number bound

$$ \kappa(M^{-1}_{D} F) \le C \left( 1+\log\left( \frac{H k^{2}}{h}\right)\right)^{2}, $$
(3.2)

where C is a constant independent of H, k, and h; see [28, 29, 41] for k = 1, [24, Theorem 1] for spectral elements, and [15, Corollary 1] for virtual elements. However, this bound only holds under specific conditions, such as slowly varying coefficients inside each subdomain.

3.1.1 Implementation of Constraints

We give a brief description of the deflation and balancing approaches to enforce edge constraints that are given as the columns of a matrix U; see, e.g., [27]. The exact choice of the columns of U for the constraints considered in the present work will be given in Subsections 3.23.3 and 3.4. In the FETI-DP system, the continuity condition Bu = 0 is already enforced. Therefore enforcing the additional condition UTBu = 0 does not change the solution but can lead to a faster convergence of the PCG algorithm. We define the F-orthogonal projection P = U(UTFU)− 1UTF, denote by λ the solution of the FETI-DP system Fλ = d, and consider the deflated and preconditioned system \(M_{D}^{-1}(I-P)^{T}F\lambda = M_{D}^{-1}(I-P)^{T} d\). Additionally, we define

$$ \bar{\lambda} = U\left( U^{T}FU\right)^{-1}U^{T}d = PF^{-1}d = P\lambda^{\ast} $$

and obtain the solution of the original system by \(\lambda ^{\ast }= \bar {\lambda } + (I-P)\lambda \). One can show, that we can project the correction onto range(IP) in each iteration, obtaining the symmetric deflation or projector preconditioner

$$ M^{-1}_{PP} = (I-P)M^{-1}_{D}(I-P)^{T}. $$

For further details, see, e.g., [27]. If λ is the PCG solution of \( M^{-1}_{PP}F\lambda = M^{-1}_{PP}d\), the solution to the original problem is now given by \(\lambda ^{\ast } = \bar {\lambda } + \lambda \). The balancing approach adds the correction \(\bar {\lambda }\) in each PCG iteration through the definition of the balancing preconditioner

$$ M^{-1}_{BP} = M^{-1}_{PP} +U\left( U^{T}FU\right)^{-1}U^{T}, $$

since both additive terms on the right-hand side are symmetric, the resulting preconditioner is also symmetric. In the present article, we use the balancing approach to enforce additional adaptive, frugal, or classic constraints, which are described in the following sections.

3.1.2 FETI-DP for Virtual Elements

To define the FETI-DP method for problems discretized using virtual elements, we simply replace the finite element stiffness matrices K(i) and load vectors b(i) with their equivalents obtained using the VEM. The implementation of the FETI-DP method for virtual elements in 2D is nearly identical to its finite element counterpart, with the exception that a different data structure is necessary in order to accommodate for the more general meshes used with virtual elements.

3.2 Adaptive Constraints

The goal of this section is to define a coarse space, which yields a condition number bound that is independent of arbitrary coefficient jumps. More precisely, for a given tolerance TOL > 1, and a fixed mesh as well as a fixed domain decomposition, the resulting preconditioned system should satisfy a bound of the form

$$ \kappa\left( M_{BP}^{-1}F\right) \le C \text{TOL}, $$

where C > 0 is a constant which only depends on certain geometric parameters of the domain decomposition. To achieve this, we use an approach which has been introduced in [31] together with a condition number indicator; see [25, Section 5] for a theoretical analyis and the first full proof for the condition number bound.

For an edge \(\mathcal {E}^{i j}\) shared by the subdomains Ωi and Ωj, let \(B_{\mathcal {E}^{i j}} = \left [B^{(i)}_{\mathcal {E}^{i j}},B^{(j)}_{\mathcal {E}^{i j}}\right ]\) be the restriction of \(\left [B^{(i)}, B^{(j)}\right ]\) with rows related to the degrees of freedom of the Lagrange multipliers of \(\mathcal {E}^{i j}\) consisting of exactly one 1 and one − 1. Let \(B_{D,\mathcal {E}^{i j}} := \left [B^{(i)}_{D,\mathcal {E}^{i j}},B^{(j)}_{D,\mathcal {E}^{i j}}\right ]\) be obtained the same way from \(\left [B^{(i)}_{D,{{\varGamma }}},B^{(j)}_{D,{{\varGamma }}}\right ]\). We further define \(S_{i j} := \text {diag}\left (S_{{{\varGamma }} {{\varGamma }}}^{(i)},S_{{{\varGamma }} {{\varGamma }}}^{(j)}\right )\) and \(P_{Dij} := B^{T}_{D,\mathcal {E}^{i j}}B^{\vphantom {1}}_{\mathcal {E}^{i j}}\), the local version of the operator \(P_{D} := B_{D,{{\varGamma }}}^{T} B^{\vphantom {1}}_{{{\varGamma }}}\), which is central to the analysis of any FETI-DP method; see, e.g., [28]. Following [21, 23, 31], we now solve the generalized eigenvalue problem

$$ \langle P_{Dij} v_{ij}, P_{Dij} w_{ij} \rangle_{S_{ij}} = \mu_{ij}\langle v_{ij},w_{ij}\rangle_{S_{ij}} \quad \forall v_{ij}\in (\ker S_{ij})^{\perp}. $$
(3.3)

A detailed description on how to solve this eigenvalue problem can be found in [25]. Let \(w^{l}_{ij}\), \(l=1,\dots ,L\) be the eigenvectors belonging to eigenvalues \(\mu _{ij}^{l}\) that are bigger than a user-defined tolerance TOL. The adaptive constraints are then given by \(c^{(l)}_{\mathcal {E}^{ij}}=B_{D,\mathcal {E}^{ij}} S_{ij} P_{Dij} w^{l}_{ij}\) and enforced by a balancing approach. This results in a matrix \(U_{\mathcal {E}^{ij}} = \left (c^{(1)}_{\mathcal {E}^{ij}},\dots ,c^{(L)}_{\mathcal {E}^{ij}}\right )\), which contains the constraint vectors associated with the edge \(\mathcal {E}^{ij}\). For a decomposition with M edges and assuming an ordering \(\mathcal {E}_{1},\dots , \mathcal {E}_{M}\), the complete constraint matrix U is then given by

$$ U = \left( U_{\mathcal{E}_{1}},\dots,U_{\mathcal{E}_{M}}\right). $$

We can now formulate the following theorem.

Theorem 3.1

Let \(N_{\mathcal E}\) be the maximum number of edges of a single subdomain. We further assume all subdomain vertices to be primal. The condition number of the FETI-DP algorithm with finite or virtual elements and adaptive constraints as introduced above with tolerance TOL > 1 and implemented using the deflation method \(M^{-1}= M^{-1}_{PP}\) or balancing method \(M^{-1}= M^{-1}_{B P}\) satisfies the condition number bound

$$ \kappa\left( M^{-1}F\right) \le N_{\mathcal E}^{2} \text{TOL}. $$

Proof

The proof for FETI-DP and finite element discretizations has been given in [25]. The proof for the variant using virtual elements turns out to be analogous, as the kernels of the Schur complements are identical, regardless if the local discretization is obtained using finite or virtual elements. Furthermore, the interface consists of line segments in both cases, therefore the discrete trace spaces can be constructed the same way as in the finite element case. □

3.3 Frugal Constraints

The frugal coarse space introduced in [21] attempts to approximate heuristically the adaptive constraints introduced above without the need to solve an eigenvalue problem. More precisely, for each edge of the interface Γ, a single constraint is built heuristically which, in many cases, belongs to a large eigenvalue of the eigenvalue problem (3.3). Consequently, we obtain a robust FETI-DP method for many coefficient distributions at a computationally low cost. It is therefore a viable alternative to the classical weighted edge average constraints described, for example, in [26]. A brief description is also provided in Subsection 3.4. The frugal constraint is also often a computationally efficient alternative for the adaptive constraints that belong to the first nonzero eigenvalue. Let us now define the frugal constraints for virtual element discretizations for stationary diffusion and linear elasticity problems. Let us note that here the frugal constraints can be defined exactly as in the finite element case.

3.3.1 Stationary Diffusion

Denote by ω(x) the support of the virtual element basis function on a node xΩ. We compute, for l = i,j,

$$ \hat{\rho}^{(l)}(x) := \underset{y\in\omega(x)\cap{{\varOmega}}_{l}}{\max} \rho(y). $$

We then define \(v^{(l)}_{\mathcal {E}^{ij}}\) as

$$ v^{(l)}_{\mathcal{E}^{ij}}(x) := \left\{\begin{array}{ll} \hat{\rho}^{(l)}(x), &\quad x\in \mathcal{E}^{ij}, \\ 0, &\quad x\in \partial {{\varOmega}}_{l} \backslash \mathcal{E}^{ij}. \end{array}\right. $$

A visualization of this construction can be found in Fig. 1. We then obtain \(v^{T}_{\mathcal {E}^{ij}} := \left [v^{(i)T}_{\mathcal {E}^{ij}}, -v^{(j)T}_{\mathcal {E}^{ij}}\right ]\) and the frugal constraint is given by

$$ c_{\mathcal{E}^{ij}} := B_{D,\mathcal{E}^{ij}} S_{ij} P_{Dij} v_{\mathcal{E}^{ij}}. $$
Fig. 1
figure 1

Left: Illustration of the construction of a frugal constraint on edge \(\mathcal {E}^{ij}\) for a heterogeneous diffusion coefficient. Middle: Maximum coefficient per finite element node on \(\mathcal {E}^{ij}\) with respect to subdomain Ωi. Right: Maximum coefficient per finite element node on \(\mathcal {E}^{ij}\) with respect to subdomain Ωj

3.3.2 Linear Elasticity

When applying the FETI-DP method to linear elasticity in two dimensions, we need three constraints for each edge to account for the three (linearized) rigid-body motions. Let \(\hat {{{\varOmega }}}\) denote an arbitrary domain with diameter \(\hat {H}\). The kernel of the strain tensor ε is given by

$$ r_{1} = \left[\begin{array}{ll} 1 \\ 0 \end{array}\right], \quad r_{2} = \left[\begin{array}{ll} 0 \\ 1 \end{array}\right], \quad r_{3} = \frac{1}{\hat{H}}\left[\begin{array}{ll} -x_{2} +\hat{x}_{2} \\ x_{1} - \hat{x}_{1} \end{array}\right], $$

where \(\hat {x}\in \hat {{{\varOmega }}}\) is the center of the linear rotation. The frugal constraints are generated as follows. The rigid-body modes are first scaled pointwise by

$$ \hat{\text{E}}^{(l)}(x) := \underset{y\in\omega(x)\cap{{\varOmega}}_{l}}{\max} \text{E}(y), $$

defining the scaled rigid-body modes \(\hat {r}_{m}^{(l)}\), for l = i,j and m = 1,2,3. We then proceed by defining

$$ v^{(m,l)}_{\mathcal{E}^{ij}}(x) := \left\{\begin{array}{ll} \hat{r}_{m}^{(l)}(x), &\quad x\in \mathcal{E}^{ij}, \\ 0, &\quad x\in \partial {{\varOmega}}_{l} \backslash \mathcal{E}^{ij}, \end{array}\right. $$

and, writing \(v^{(m)T}_{\mathcal {E}^{ij}}(x) := \left [v^{(m,i)T}_{\mathcal {E}^{ij}}(x),-v^{(m,j)T}_{\mathcal {E}^{ij}}(x)\right ]\) we obtain the three edge constraints as in the stationary diffusion case by

$$ c^{(m)}_{\mathcal{E}^{ij}} := B_{D,\mathcal{E}^{ij}} S_{ij} P_{Dij} v^{(m)}_{\mathcal{E}^{ij}}, \quad m=1,2,3. $$

3.4 Classic Weighted Edge Constraints

Finally, we consider the classic coarse space introduced in [26] for the linear elasticity case, which we briefly describe here. We define the weighted average

$$ \frac{{\sum}_{x_{i}\in \mathcal{E}} \hat{r}_{j}(x_{i}) u(x_{i})}{{\sum}_{x_{i}\in \mathcal{E}} \hat{r}_{j}(x_{i})}, \quad j=1,2, $$

on an edge \(\mathcal {E}\) of the interface Γ, where \(\hat {r}_{j}(x) = \hat {\text {E}}(x) r_{j}(x)\) for j = 1,2 as above. We note, that in [26] only weighed translations have been used, whereas the extended variant with weighed rotations has been considered and compared to the frugal coarse space in [21]. In this article, we only use weighed translations (Figs. 2 and 3).

Fig. 2
figure 2

Examples of tessellations of [0,1]2 with 200 elements

Fig. 3
figure 3

Square root of the condition numbers for the preconditioned FETI-DP method for virtual elements for a linear elasticity problem with constant coefficients for each subdomain. We used ρ-scaling and f ≡ 1 on the 5 × 5 domain decomposition depicted in (a). The meshes on each subdomain consist of 100 ⋅ 2n elements for \(n \in \{0,\dots ,6\}\) and are of the types shown in Fig. 2. Young’s modulus E is set to 210 ⋅ 106 on the red subdomains in (a) and to 210 elsewhere. The polynomial degree is denoted by k. We used 500 Lloyd iterations in the generation of the CVT meshes

4 Numerical Results

4.1 Implementation and Model Problems

We considered our own FETI-DP implementation in Matlab and carried out our numerical experiments using MATLAB R2020b. The implementation given in [39] forms the basis of the VEM Code, which we extended by elements with polynomial degree k = 2. For the implementation of linear elasticity, we followed [33]. To compute norms and the right-hand side we used the 2D quadrature rules given in [5]. The code can be found under the link given in [4]. For the generation of the irregular domain decompositions we used METIS 5.1.0 [22].

For the model problems, we always consider a right-hand side of f = 1 everywhere and zero Dirichlet boundary values. We analyze the coefficient distributions shown in Fig. 4. If not stated differently, the small and large coefficients (diffusion coefficient and Young’s modulus) are given by 1 and 106 in the diffusion case, and 210GPa and 210 ⋅ 106GPa for linear elasticity. In the case of random coefficient distributions, approximately a quarter of the polygons are set to the relevant large coefficient. Furthermore, we iterate the PCG method until a relative residual reduction of 10− 8 is reached. The tolerance for the computation of adaptive constraints is always set to TOL = 100. The obtained adaptive constraints are normalized and orthogonalized using Matlabs orth() function before being implemented by the balancing method.

Fig. 4
figure 4

Four different coefficient distributions for a 3 × 3 domain decomposition with quadratic subdomains. Red elements: ρ = 106 for diffusion, E = 210 ⋅ 106 for elasticity (with ν = 0.3 everywhere). White elements: ρ = 1 for diffusion, E = 210 for elasticity

4.2 Meshes and Domain Decomposition

We consider two different types of meshes. The first one is a bounded Voronoi diagram, generated from uniformly randomly distributed points inside Ω = [0,1]2, using the code provided in [35]. The meshes of the second type are generated with PolyMesher [40] using an appropriate number of iterations of Lloyd’s algorithm. This creates a mesh which approximates a Centroidal Voronoi Tessellation (CVT). In Fig. 2 examples for Voronoi and CVT meshes are shown. Both types consist entirely of convex polygons. We note that the given sequence of CVT is quasi-uniform with \(h/h_{\min \limits }\le 1.4\), whereas this fraction deteriorates when the Voronoi meshes are refined. Here, we have \(h := \max \limits _{K\in \mathcal {T}_{h}} h_{K}\) and, respectively, \(h_{\min \limits } := \min \limits _{K\in \mathcal {T}_{h}} h_{K}\) the maximal and minimal diameter of all polygons in \(\mathcal {T}_{h}\). The regular domain decompositions are created by generating a mesh for a single quadratic subdomain and then mirroring this mesh across the interface edges. Consequently, the resulting domain decomposition is conforming. A solution of a stationary diffusion problem on such a domain decomposition can be found in Fig. 5. In contrast, for the irregular domain decompositions, we create a Voronoi or CVT mesh for the entire domain and partition it using Metis.

Fig. 5
figure 5

Solutions for a stationary diffusion problem with coefficient distribution Fig. 4(b)

4.3 Unconstrained Preconditioned FETI-DP for Virtual Elements

As a sanity check of our implementation of FETI-DP for virtual elements, we first consider a simple coarse space consisting exclusively of vertex constraints and choose a simple coefficient distribution with constant coefficients within each subdomains. In Fig. 3 we can see that the condition numbers of FETI-DP for virtual elements show a similar behavior as would be expected from FETI-DP with finite elements in the case of linear elasticity for subdomain-wise constant coefficient functions; see [24, Fig. 4]. Especially for the CVT meshes, we see the typical linear behavior in the log plot. A proof of the condition number estimate (3.2) for stationary diffusion and constant coefficients on every subdomain, and detailed numerical results pertaining to this case, can be found in [15]. For linear elasticity with subdomain-wise constant coefficients, such a result has not yet been established. Our numerical experiments support the fact that a polylogrithmic behavior also holds for this case. They also suggest, that the quasi-uniformity assumption might be necessary, since the square roots of the condition numbers for meshes that are not quasi-uniform do not show a clearly linear behavior in the log plot. For a more specific statement, further investigations and numerical experiments should be carried out.

4.4 Various Constraints for Regular Domain Decompositions

Let us now discuss the performance of frugal and adaptive coarse spaces for highly heterogeneous problems with large coefficient jumps discretized with VEs, i.e., frugal and adaptive coarse spaces for FETI-DP for virtual elements. We consider coefficient distributions, for which we know that the frugal constraints are sufficient for FETI-DP with finite elements for a robust convergence (see Fig. 4(a) and (b)), but we also consider distributions, for which usually adaptive constraints are necessary (Fig. 4(c) and (d)). Let us first consider the simpler coefficient distributions with straight beams and beams with offsets across the interface.

Results for stationary diffusion as well as linear elasticity and coefficient distributions as shown in Fig. 4(a) and (b) are presented in Tables 1 and 2. The coefficient distributions are 2D projections of the ones considered in [21] for FETI-DP and finite element discretizations, and show comparable results here for virtual elements. In addition, the frugal algorithm shows a similarly robust performance as the adaptive algorithm, at the cost of a larger coarse space dimension. The frugal coarse space dimension can be reduced by eliminating the superfluous constraints belonging to edges that have no problematic coefficient jump. This has already been discussed in [21]. We can further observe that frugal FETI-DP shows a comparable behavior for polynomial degrees k = 1 and k = 2.

Table 1 Condition numbers (cond), iteration numbers (it), and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for stationary diffusion and linear elasticity problems in 2D with one straight beam cutting through each subdomain; see also Fig. 4(a). Each subdomain is discretized by a CVT mesh with 200 elements, which was created with 500 Lloyd iterations. The polynomial degree is denoted by k. We consider frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100 and ρ-scaling was used
Table 2 Condition numbers (cond), iteration numbers (it), and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for stationary diffusion and linear elasticity problems in 2D with one beam with offsets cutting through each subdomain; see also Fig. 4(b). Each subdomain is discretized by a CVT mesh with 200 elements, which was created with 500 Lloyd iterations. The polynomial degree is denoted by k. We consider frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100 and ρ-scaling was used

Next, we consider a coefficient distribution with two beams cutting through each subdomain; see also Fig. 4(c). For the finite element case, we know that the frugal coarse space is not sufficient to obtain a numerically scalable method which is robust against coefficient jumps. This is confirmed for virtual element discretizations by the results presented in Tables 3 and 4. First, in Table 3, we consider an increasing coefficient jump. Although frugal FETI-DP shows to be not robust against the jump, the increase in the number of iterations is mild when using deluxe scaling. For comparison, we also show results for adaptive FETI-DP, which has, as expected, low condition numbers in all cases. Second, in Table 4, we increase the number of subdomains and fix the coefficient jump. As can be expected, frugal FETI-DP, in contrast to adaptive FETI-DP, is not numerically scalable for this specific coefficient distribution with two beams cutting each subdomain. Further results for a random coefficient distribution as in Fig. 4(d) are presented in Table 5. Here, the frugal constraint together with the simple ρ-scaling is overwhelmed by the problem, as is especially evident in the linear elasticity case. On the other hand, we can see that the frugal approach in combination with deluxe scaling handles this difficult problem very well. Let us note that the underlying quasi-uniformity of the mesh does not seem to play a deciding role in the quality of the coarse space.

Table 3 Condition numbers (cond), iteration numbers (it), and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for linear elasticity problems in 2D with two straight beams cutting through each subdomain; see also Fig. 4(c). Each subdomain is discretized by a CVT mesh with 200 elements, which was created with 500 Lloyd iterations. The smaller coefficient is E = 210 and the higher coefficients are chosen such that the resulting coefficient jump is 10α. The polynomial degree is denoted by k. We consider frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100
Table 4 Condition numbers (cond), iteration numbers (it), and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for stationary diffusion and linear elasticity problems in 2D with two straight beams cutting through each subdomain; see also Fig. 4(c). Each subdomain is discretized by a CVT mesh with 200 elements, which was created with 500 Lloyd iterations. The polynomial degree is denoted by k. The higher coefficients are chosen such that the resulting coefficient jump is 10α. We consider frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100 and ρ-scaling was used
Table 5 Condition numbers (cond), iteration numbers (it), and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for stationary diffusion (sd) and linear elasticity (le) problems in 2D with element-wise randomly distributed coefficients; see also Fig. 4(d). Each subdomain is discretized by a CVT mesh with 200 elements, which was created with 500 Lloyd iterations. The polynomial degree chosen as 1. We consider frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100. The same meshes and randomness seeds were used for stationary diffusion and linear elasticity. If #c = 0 this means that the adaptive algorithm did not find any constraints and therefore the unconstrained preconditioned FETI-DP method was used to generate the results

To summarize, the frugal as well as the adaptive coarse space perform very well also for FETI-DP applied to virtual element discretizations. Especially frugal FETI-DP in combination with deluxe scaling shows to be surprisingly robust.

Table 6 Condition numbers (cond), iteration numbers (it) and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for linear elasticity problems in 2D. The coefficient distribution is five straight beams, on a Voronoi/CVT mesh with 5000 elements and four different domain decompositions into 25 subdomains generated by Metis as depicted in Fig. 6(c) and (d). The CVT mesh used 3000 Lloyd iterations. The polynomial degree is k = 1. We consider classic weighted average (wa), frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100
Table 7 Condition numbers (cond), iteration numbers (it) and the size of the coarse space (#c) for the FETI-DP algorithm for virtual elements for linear elasticity problems in 2D. The coefficient distribution is element-wise random coefficients, similar to Fig. 4(d) on a Voronoi/CVT mesh with 5000 elements and four different domain decompositions into 25 subdomains generated by Metis as in Fig. 6(a) and (b). The CVT mesh used 3000 Lloyd iterations. The polynomial degree is k = 1. We consider classic weighted average (wa), frugal (fr) and adaptive (ad) coarse spaces. The adaptive tolerance is TOL = 100

4.5 Metis Domain Decompositions

We consider a similar problem as in Table 1 for N = 52, with 5 straight beams cutting through a mesh with 5000 virtual elements. Here, we use Metis for the decomposition of the mesh and we consider both, a Voronoi type mesh and a CVT mesh; see Fig. 6 for the decomposition, mesh quality and coefficient distribution. We further consider random coefficients as shown in Fig. 4(d) for the same meshes and Metis decompositions. We use different randomness seeds to generate four different Metis decompositions with 25 subdomains each. This is to test for the dependence on the specific domain decomposition. The results are shown in Tables 6 and 7. We observe that the robustness of the frugal algorithm depends on the specific domain decomposition, while the adaptive algorithm handles all of them with ease. Just as in the case of regular domain decompositions, the underlying quasi-uniformity of the meshes does not seem to have a consistent effect on the condition and iteration numbers. As in the case of regular domain decompositions, the use of deluxe scaling reduces the iteration numbers drastically for the frugal FETI-DP algorithm for virtual elements in most cases. For adaptive FETI-DP, deluxe scaling improves the general performance slightly in the case of straight beams, and lowers the coarse space dimension to an impressive amount in the random case.

Fig. 6
figure 6

Examples of Metis domain decompositions into 25 subdomains for the two mesh types with 5000 elements each. The red regions in c) and d) are the ones, where the coefficient is high

5 Conclusion

We have applied frugal and adaptive coarse spaces to the FETI-DP method for virtual elements, used regular as well as Metis domain decompositions, and also considered polygonal meshes of varying quasi-uniformity. We especially considered different highly heterogeneous coefficient distributions with large jumps for both, stationary diffusion and linear elasticity problems. Our numerical results suggest that the resulting frugal and adaptive FETI-DP methods are as robust as their finite element counterparts. A theoretical condition number estimate for adaptive FETI-DP has been transferred to the virtual element case and the numerical results confirm the condition number bound. Especially the frugal FETI-DP method in combination with deluxe scaling showed numerically to be very robust in most scenarios and might be a good choice for many realistic applications discretized by virtual elements.