- Research article
- Open Access
- Published:

# A port-reduced static condensation reduced basis element method for large component-synthesized structures: approximation and *A Posteriori* error estimation

*Advanced Modeling and Simulation in Engineering Sciences*
**volume 1**, Article number: 3 (2014)

## Abstract

### Background

We consider a static condensation reduced basis element framework for efficient approximation of parameter-dependent linear elliptic partial differential equations in large three-dimensional component-based domains. The approach features an offline computational stage in which a library of interoperable parametrized components is prepared; and an online computational stage in which these component archetypes may be instantiated and connected through predefined ports to form a global synthesized system. Thanks to the component-interior reduced basis approximations, the online computation time is often relatively small compared to a classical finite element calculation.

### Methods

In addition to reduced basis approximation in the component interiors, we employ in this paper port reduction with empirical port modes to reduce the number of degrees of freedom on the ports and thus the size of the Schur complement system. The framework is equipped with efficiently computable *a posteriori* error estimators that provide asymptotically rigorous bounds on the error in the approximation with respect to the underlying finite element discretization. We extend our earlier approach for two-dimensional scalar problems to the more demanding three-dimensional vector-field case.

### Results and Conclusions

This paper focuses on linear elasticity analysis for large structures with tens of millions of finite element degrees of freedom. Through our procedure we effectively reduce the number of degrees of freedom to a few thousand, and we demonstrate through extensive numerical results for a microtruss structure that our approach provides an accurate, rapid, and *a posteriori* verifiable approximation for relevant large-scale engineering problems.

## Background

For several decades the finite element (FE) method has been a popular and important tool in engineering design and analysis of systems modelled by partial differential equations (PDEs). In particular, in fields such as structural analysis and strength assessment, the FE method is in widespread use in industry through a variety of commercial software packages. Many of the structures that are subject to industrial FE analysis are composed of a large number of components — consider for example a truss bridge, a space satellite [1], or a building or vehicle frame. Such large and at first sight complicated structures pose challenges both in terms of initial manual labor related to domain modelling and meshing, and in terms of subsequent computational cost.

Component-based structures which contain many identical or similar components are often analyzed through substructuring or superelement techniques [2], which mitigate some of these issues. Mathematically, superelement techniques are based on static condensation of all FE degrees of freedom that are interior to components, and hence the size of the global but condensed linear-algebraic (Schur complement) system is equal to the number of degrees of freedom associated with component interfaces, henceforth in this paper referred to as ports. The static condensation step necessitates a large number of component-interior FE “bubble” solves — one FE solve for each degree of freedom on each port of each component — and is for this reason rather expensive; however this step is embarrassingly parallel, and is furthermore required only once for each unique component instantiation.

Model order reduction techniques can be applied to substructuring or superelement procedures in order to further reduce the computational cost. A well-known approach is the classical component mode synthesis (CMS) [3, 4], which replaces the original FE spaces for the component-interior bubble solves with spaces spanned by a few component-interior eigenmodes. As a result, the cost associated with each bubble calculation is reduced, and the formation of the global Schur complement system is consequently much less expensive.

A more recent approach, which is relevant in the context of parameter-dependent PDEs and which we for this reason consider here in this paper, is the static condensation reduced basis element method (SCRBE) introduced in [5]. Rather than the eigenmodal expansion typically used in the CMS, the SCRBE employs the reduced basis method (RB) [6] for the bubble function approximations. Each RB approximation space is specifically tailored to a particular bubble and the associated parameter dependence defined by the PDE within each component; the SCRBE thus accommodates parametric variations for example related to component geometry, loads, material properties, or boundary conditions. Furthermore, thanks to the typically very rapid (often exponential) convergence of the RB approximation [7, 8], these RB spaces are low-dimensional and thus bubble function approximation is computationally inexpensive.

In addition to enabling parametric variations, the SCRBE features a strict offline-online computational decoupling. In the offline stage, the RB spaces and associated datasets for each component *archetype* in a component library is computed and stored. This stage requires FE solves and may thus be relatively expensive, but is carried out only once as a library preprocessing step. In the subsequent online stage, the user may instantiate any of the interoperable library archetypes, and assign to each component instantiation the desired parameter values; the RB bubble function approximations are then computed, and the Schur complement system is assembled and solved. This online step is much less expensive and in particular does never invoke the underlying FE discretization.

However, common to all these static-condensation-based approaches — including the SCRBE — is a global Schur complement linear-algebraic system of size equal to the total number of degrees of freedom associated with ports. For large systems with many components and ports, and in particular for problems with three-dimensional vector-valued field variables — such as in linear elasticity — the size of this system is considerable and thus clearly prohibits the fast response required in, say, an interactive design or optimization context. To overcome this limitation various port reduction techniques may be used. For example, for the CMS approaches an eigenmode expansion (with subsequent truncation) for the port degrees of freedom is considered in [9, 10], and an adaptive procedure based on *a posteriori* error estimators for the port reduction is considered in [11]. For the SCRBE, we introduce in [12] port reduction with *empirical modes*; in this case the port approximation spaces are informed by snapshots of relevant port-restricted solutions which are obtained through an offline pairwise empirical training algorithm.

Unique to the SCRBE is a certification framework that allows efficient computation of *a posteriori* bounds or estimators for the error in the SCRBE approximation with respect to the underlying FE “truth” discretization. This framework invokes classical residual arguments on the (RB) bubble level [6], a non-conforming approximation to the error-residual equation at the port level, and finally matrix perturbation at the system level in order to bound (under an eigenvalue proximity assumption) the error contributions from both RB approximation [5] and port reduction [12]. In actual practice, we may reduce online computational cost by consideration of a plausible and asymptotically rigorous error estimator rather than a rigorous error bound.

In this paper, we extend our earlier work for two-dimensional scalar problems in [12] to the more demanding three-dimensional vector-field case. We focus here on applications in linear elasticity, but we note that the component synthesis and indeed RB and port approximations can be readily extended to problems in heat transfer or (frequency domain) acoustics, or any phenomenon described by a linear elliptic or parabolic [13] PDE.^{a} Through our procedure we effectively reduce the number of degrees of freedom from tens of millions (in the underlying FE discretization) to only a few thousand (in the port-reduced SCRBE approximation); the associated computation time is thus reduced from minutes or hours to only a few seconds.

Our approach here features several important innovations. First, as we consider here larger global systems with a much larger number of instantiated components we introduce a new non-symmetric SCRBE approximation, which reduces both offline and online cost and memory footprint; the corresponding linear-algebraic system is subsequently symmetrized in order to (say) accommodate efficient linear solvers. We also demonstrate that our central theoretical results in particular related to *a posteriori* error estimation survive intact for this more efficient revision of our earlier formulations in [12]. Second, we provide a precise formulation for general geometric mappings and port space compatibility, and we demonstrate that (in the isotropic linear-elastic case) rigid-body parameters related to “docking” of component instantiations in a system do not affect the associated bilinear forms and thus do not impact offline — thanks to smaller RB space dimensions — or online — thanks to treatment of differently oriented component instantiations as effectively identical — computational cost. Third, we introduce a new functional interpretation of our algebraic *a posteriori* error estimation framework in [12], which may serve to extend our approach here to larger classes of problems. And finally, we consider multi-reference parameter bound conditioners [14] for sharper error estimation.

The remainder of the paper is organized as follows. We start with a brief presentation of a general parametrized component static condensation framework for *d*-dimensional vector-valued linear elliptic partial differential equations; we focus on the concepts relevant in the SCRBE framework and we formulate the port compatibility requirements. Next, we discuss the RB and port reduction strategies for the computational cost reduction associated with component interiors and component interfaces, respectively. Then, we introduce our *a posteriori* error estimation framework. Finally, we present extensive results for a three-dimensional microtruss application, and provide some conclusive remarks.

We include with this manuscript [Additional file 1]. This short movie presents the main ingredients of the port-reduced SCRBE method, and sums up the key numerical results reported in this paper.

Additional file 1: A short video which illustrates the methodology of this paper is published together with this paper as prscrbe_movie.mp4. (MP4 19 MB)

## Component-based static condensation

### Concepts: library components and system

We now introduce the key concepts for our SCRBE approximation: a *library* of parametrized and interoperable *archetype components*, which is prepared in the offline stage; and a *system* of *component instantiations* connected at *ports*, which is assembled and solved (and, if desired, visualized) in the online stage.

In the context of structural analysis, an archetype component typically (but not necessarily) corresponds to a physical construction unit, such as a beam, a plate, or a connector; in physical *d*-dimensional space (*d*=1,2,3) we denote by {\widehat{\Omega}}_{m}\subset {\mathbb{R}}^{d} the reference domain associated with archetype component *m*, 1≤*m*≤*M*, where *M* is the number of archetypes in the library. The boundary of this domain, \partial {\widehat{\Omega}}_{m}, has a set of {n}_{m}^{\gamma} disjoint *local ports*, denoted as {\widehat{\gamma}}_{m,j}\subseteq \partial {\widehat{\Omega}}_{m}, 1\le j\le {n}_{m}^{\gamma}; these ports enable the components to connect to other components. Note we shall assume that all ports on an archetype component are mutually separated by (at least) a non-port, non-Dirichlet boundary segment. If this is not the case, modifications to our procedures below must be considered [10].

The physical behavior of each archetype component is governed by a vector-valued (we consider *d* field components) parametrized linear elliptic partial differential equation. We thus introduce for 1≤*m*≤*M* the continuous (and here, in this paper, symmetric) archetype bilinear form {\mathit{\xe2}}_{m}(\xb7,\xb7;{\widehat{\mu}}_{m}):{\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d}\times {\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d}\to \mathbb{R}, and the bounded archetype linear functional {\widehat{f}}_{m}(\xb7,\xb7;{\widehat{\mu}}_{m}):{\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d}\to \mathbb{R}. Here, {\widehat{\mu}}_{m}\in {\widehat{\mathcal{D}}}^{m}\subset {\mathbb{R}}^{{\widehat{P}}_{m}} is a vector of {\widehat{P}}_{m} scalar parameters that describe (say) the component geometry, boundary conditions, loads, or material properies, and {\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d} is the usual (*d*-tensorized) first-order Sobolev space over {\widehat{\Omega}}_{m}. We shall assume that {\mathit{\xe2}}_{m} and {\widehat{f}}_{m} admit affine expansions as

where the {\mathit{\xe2}}^{q} and {\widehat{f}}^{q} are parameter-independent forms and the {\Theta}_{a}^{q} and {\Theta}_{f}^{q} are parameter-dependent functions; for computational efficiency of the SCRBE evaluation stage it is critical that {\widehat{Q}}_{m}^{a} and {\widehat{Q}}_{m}^{\phantom{\rule{2.77626pt}{0ex}}f} are relatively small.

We next introduce the discrete archetype component spaces {\widehat{X}}_{m}^{h}\subset {\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d}, 1≤*m*≤*M*, which correspond to standard FE discretizations [15] of {\left({H}^{1}\right({\widehat{\Omega}}_{m}\left)\right)}^{d}; and we introduce the discrete *port spaces*, the restrictions

of dimension {\mathcal{N}}_{m}^{\gamma}\equiv \text{dim}\left({\widehat{P}}_{m,j}\right). We denote the bases for these port spaces by {\left\{{\widehat{\chi}}_{m,j,k}\right\}}_{k=1}^{{\mathcal{N}}_{m,j}^{\gamma}} such that

For simplicity of presentation here we shall assume that Dirichlet conditions are enforced only on ports and thus not through the archetype component discrete spaces {\widehat{X}}_{m}^{h} (this is the case for our numerical results later).

The library component archetypes may be *instantiated* and connected at ports to form a global system. To this end we introduce a mapping \mathcal{\mathcal{M}}:\{1,\dots ,I\}\to \{1,\dots ,M\} from any of the *I* instantiations in the system to exactly one of the *M* archetypes in the library. For instantiated component *i*, we introduce the parameter vector {\mu}_{i}\in {\mathcal{D}}_{i}, where {\mathcal{D}}_{i}\subseteq {\widehat{\mathcal{D}}}_{\mathcal{\mathcal{M}}\left(i\right)}. We then introduce a (parameter-dependent) geometric mapping {\mathcal{T}}_{i}:{\widehat{\Omega}}_{i}\to {\Omega}_{i} from archetype (reference) to system (physical) coordinates; thus {\Omega}_{i}={\mathcal{T}}_{i}\left({\widehat{\Omega}}_{\mathcal{\mathcal{M}}\left(i\right)}\right) is the instantiated component domain and {\gamma}_{i,j}={\mathcal{T}}_{i}\left({\widehat{\gamma}}_{\mathcal{\mathcal{M}}\left(i\right),j}\right), 1\le j\le {n}_{\mathcal{\mathcal{M}}\left(i\right)}^{\gamma}, are the instantiated ports. We consider for each of our mappings {\mathcal{T}}_{i} application of a deformation {\mathcal{T}}_{i}^{\text{def}} and then a rotation {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}} such that {\mathcal{T}}_{i}\equiv {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}}{\mathcal{T}}_{i}^{\text{def}}. In this paper, we consider for {\mathcal{T}}_{i}^{\text{def}} only dilation *and* translation, and we further assume that {\mathcal{T}}_{i}^{\text{def}}, when applied to a port, is pure translation (such that {\gamma}_{i,j}={\mathcal{T}}_{i}\left({\widehat{\gamma}}_{\mathcal{\mathcal{M}}\left(i\right),j}\right) corresponds to a rigid-body transformation). We illustrate the situation (for *d*=2) in Figure 1 and Figure 2: in Figure 1 we show a single archetype library component; in Figure 2 we instantiate two components of the same archetype subject to different mappings {\mathcal{T}}_{1} and {\mathcal{T}}_{2}, the first of which has a non-trivial (piecewise dilation) {\mathcal{T}}_{1}^{\text{def}}.

We also introduce a mapped discrete component-local space

and further, with

we introduce, for 1\le j\le {n}_{\mathcal{\mathcal{M}}\left(i\right)}^{\gamma}, 1≤*i*≤*I*, the mapped discrete port spaces

Note that here and in the following the notation [\phantom{\rule{0.3em}{0ex}}\xb7]\circ {\mathcal{T}}_{i}^{-1} denotes the usual composition,^{b} and the notation {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}}(\xb7) denotes pointwise application of {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}} to the (vector-valued) argument;^{c} we apply {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}} to the dependent variables to eliminate parameters related to spatial orientation of components from the bilinear forms, and to accommodate compatibility of basis functions on instantiated ports.

We may now introduce the synthesized system domain *Ω* as \overline{\Omega}={\cup}_{i=1}^{I}{\overline{\Omega}}_{i}, the system parameter domain \mathcal{D}={\oplus}_{i=1}^{I}{\mathcal{D}}_{i}, and the system parameter vector *μ*=(*μ*_{1},…,*μ*_{
I
}); we denote the total number of system parameters by *P*.

When an instantiated component becomes part of a system, its local ports are associated to global ports. Each global port *Γ*_{
p
}, 1\le p\le {n}_{0}^{\Gamma}, in the system is either a coincidence of two local ports and hence in the interior of *Ω*, or a single local port on the boundary *∂* *Ω*. We define the connectivity of the system through global-to-local index sets *π*_{
p
}, 1\le p\le {n}_{0}^{\Gamma}: an interior global port is associated to two local ports *γ*_{i,j} and {\gamma}_{{i}^{\prime},{j}^{\prime}}, and we thus set *π*_{
p
}={(*i*,*j*),(*i*^{′},*j*^{′})}; a boundary global port is associated to a single local port *γ*_{i,j}, and we thus set *π*_{
p
}={(*i*,*j*)}. We also introduce for instantiated component *i*, 1≤*i*≤*I*, a local-to-global map {\mathcal{G}}_{i} such that for local port *j*, 1\le j\le {n}_{\mathcal{\mathcal{M}}\left(i\right)}^{\gamma}, we have {\mathcal{G}}_{i}\left(j\right)=p if (*i*,*j*)∈*π*_{
p
}. Note that on any global port *Γ*_{
p
}, 1\le p\le {n}_{0}^{\Gamma}, we may elect to impose Dirichlet boundary conditions; we denote by {n}^{\Gamma}\le {n}_{0}^{\Gamma} the number of global ports on which we do *not* impose Dirichlet boundary conditions.

To ensure global continuity of the solution we must require conforming port spaces and bases in the sense that for any shared (that is, interior) global port *π*_{
p
}={(*i*,*j*),(*i*^{′},*j*^{′})} we must have

we discuss this port compatibility requirement further in the “Port compatibility” subsection below.

We may now introduce for any *w*,*v*∈(*H*^{1}(*Ω*))^{d} and any \mu \in \mathcal{D} the system-level symmetric, continuous bilinear form as

and the system-level bounded linear functional

note that the effect of the mapping {\mathcal{T}}_{i} to each archetype bilinear and linear form (defined over the archetype reference domain) is reflected through the parameter *μ*_{
i
}.

In the case that {\mathcal{T}}_{i} is a pure rigid-body transformation (that is, {\mathcal{T}}_{i} is a rotation and a translation) and the material properties of the component do not depend on spatial orientation — such as in isotropic linear elasticity — the application of {\mathcal{T}}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}} to the dependent variables results in cancellation of the mapping Jacobians, and thus the archetype bilinear form does not reflect the associated mapping parameters. Similarly, when {\mathcal{T}}_{i} is a combination of a rigid-body map and (say) dilation, only the latter must be parametrized through the archetype bilinear form. We explicitly demonstrate this cancellation for the case of isotropic linear elasticity in the “Microtruss beam application” section, and we comment on the computational implications in the “Model reduction” section.

We now introduce a global space *X*(*Ω*)⊂(*H*^{1}(*Ω*))^{d} such that *X*(*Ω*) is equal to (*H*^{1}(*Ω*))^{d} except for restrictions to enforce port (and in general also non-port) Dirichlet boundary conditions; we assume that sufficient boundary conditions are enforced such that *a*(·,·;*μ*) is coercive over *X*(*Ω*). The well-posed system-level variational problem then reads as follows. For any \mu \in \mathcal{D}, find *u*(*μ*)∈*X*(*Ω*) such that

we also introduce a compliance output as *s*(*μ*)=*f*(*u*(*μ*);*μ*). (Note that, as discussed in [5], restrictions apply to the geometric maps {\mathcal{T}}_{i} to maintain well-posedness of (10).)

Similarly, we introduce a global FE discretization *X*^{h}(*Ω*)⊂*X*(*Ω*) as {X}^{h}\left(\Omega \right)={\oplus}_{i=1}^{I}{X}_{i}^{h}\left(\Omega \right)\cap X\left(\Omega \right); hence *X*^{h}(*Ω*) inherits the boundary conditions as well as the global continuity enforced by *X*(*Ω*). The FE discretization of (10) now reads as follows. For any \mu \in \mathcal{D}, find *u*^{h}(*μ*)∈*X*^{h}(*Ω*) such that

we also introduce the FE compliance output *s*^{h}(*μ*)=*f*(*u*^{h}(*μ*);*μ*).

### Mathematical formulation: static condensation

To formulate the static condensation procedure we decompose our discrete global space *X*^{h}(*Ω*) into bubble spaces associated with component-interior degrees of freedom and a skeleton space associated with port degrees of freedom.

To this end we introduce on archetype component *m*, 1≤*m*≤*M*, the bubble space

note that members of {\widehat{B}}_{m;0}^{h} vanish on local ports. We next introduce the coupling modes {\widehat{\psi}}_{m,j,k}\in {\widehat{X}}_{m}^{h} such that

for 1\le k\le {\mathcal{N}}_{m,j}^{\gamma}, 1\le j\le {n}_{m}^{\gamma}; we define, on instantiated component *i*, 1≤*i*≤*I*, {\psi}_{i,j,k}\equiv {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}}({\widehat{\psi}}_{\mathcal{\mathcal{M}}\left(i\right),j,k}\circ {\mathcal{T}}_{i}^{-1}), and we introduce the global functions *Ψ*_{p,k}∈*X*^{h}(*Ω*) such that, for *π*_{
p
}={(*i*,*j*),(*i*^{′},*j*^{′})},

We may then introduce the global skeleton space

of dimension

Note that \mathcal{S}\left(\Omega \right) is a continuous space thanks to the port compatibility requirement (7). Also note that in the definition of \mathcal{S}\left(\Omega \right) we include only the {n}^{\Gamma}\le {n}_{0}^{\Gamma} ports on which we do not impose Dirichlet boundary conditions (we assume without loss of generality that we enforce Dirichlet boundary conditions on global ports {\Gamma}_{{n}^{\Gamma}+1},\dots ,{\Gamma}_{{n}_{0}^{\Gamma}}).

Given the bubble spaces and the coupling modes, we now first introduce, for 1≤*i*≤*I*, the source bubble {\widehat{b}}_{i}^{f;h}\left({\mu}_{i}\right)\in {\widehat{B}}_{\mathcal{\mathcal{M}}\left(i\right);0}^{h}, which satisfies

we define {b}_{i}^{f;h}\left({\mu}_{i}\right)\equiv {\mathcal{T}}_{i}^{\text{rot}}\left({\widehat{b}}_{i}^{f;h}\right({\mu}_{i})\circ {\mathcal{T}}_{i}^{-1}). Note that {b}_{i}^{f;h}\left(\mu \right) is a component-local particular solution to our global equation. We next introduce fundamental solutions {\widehat{\varphi}}_{i,j,k}\left({\mu}_{i}\right)\equiv {\widehat{b}}_{i,j,k}^{h}\left({\mu}_{i}\right)+{\widehat{\psi}}_{i,j,k} associated with each coupling mode {\widehat{\psi}}_{i,j,k} and bubble {\widehat{b}}_{i,j,k}^{h}\left({\mu}_{i}\right)\in {B}_{\mathcal{\mathcal{M}}\left(i\right);0}^{h} such that {\widehat{\varphi}}_{i,j,k}\left({\mu}_{i}\right) satisfies

(note (19) is an equation for {\widehat{b}}_{i,j,k}^{h}\left({\mu}_{i}\right) given the known {\widehat{\psi}}_{i,j,k}); we define, on instantiated component *i*, 1≤*i*≤*I*, {\varphi}_{i,j,k}\left({\mu}_{i}\right)\equiv {\mathcal{T}}_{i}^{\text{rot}}\left({\widehat{\varphi}}_{i,j,k}\right({\mu}_{i})\circ {\mathcal{T}}_{i}^{-1}) and we introduce the global functions *Φ*_{p,k}(*μ*)∈*X*^{h}(*Ω*) such that, for *π*_{
p
}={(*i*,*j*),(*i*^{′},*j*^{′})},

Note that each {\mathrm{\Phi}}_{{\mathcal{G}}_{j}\left(i\right),k}\left(\mu \right) is the fundamental solution (local to a component pair) of our (homogeneous) global equation associated with the particular port mode *χ*_{i,j,k}. Also note that {\mathrm{\Phi}}_{{\mathcal{G}}_{j}\left(i\right),k}\left(\mu \right) and {b}_{i}^{f;h}\left({\mu}_{i}\right) scale linearly with certain “free” parameters, such as component-wide thermal conductivity or Young’s modulus, which enter outside the bilinear form in (18) and (19); this will have important cost-saving implications in the context of RB approximation.

For each instantiated component we introduce a global function {u}_{i}^{h}\left({\mu}_{i}\right)\in {X}^{h}\left(\Omega \right) which represents the local solution on component *i* in terms of the source bubbles {b}_{i}^{f;h}\left({\mu}_{i}\right) and the fundamental solutions *ϕ*_{i,j,k}(*μ*_{
i
}) as

where the coefficient vector {\mathbb{U}}_{{\mathcal{G}}_{i}\left(\phantom{\rule{0.3em}{0ex}}j\right),k}\left(\mu \right) contains global unknowns to be determined below. To couple the solutions in neighboring components we require weak flux continuity across global ports:^{d} we write

we then test on all v\in \mathcal{S}\left(\Omega \right) such that *u*^{h}(*μ*)∈*X*^{h}(*Ω*) satisfies

as before, our FE compliance output is *s*^{h}(*μ*)=*f*(*u*^{h}(*μ*);*μ*).

We emphasize that (23) is, thanks to Galerkin orthogonality of the fundamental solutions in (19) with respect to the associated bubble space, equivalent to (11). For this same reason we may further define an alternative skeleton space

such that *u*^{h}(*μ*)∈*X*^{h}(*Ω*) satisfies

There is no distinction between (23) and (25) in the FE static condensation context; however in the context of the SCRBE, direct approximation of (23) leads to a non-symmetric Schur complement system, while direct approximation of (25) leads to a symmetric Schur complement system. In this paper we shall pursue the former with subsequent Schur complement *symmetrization* as the latter implies significantly larger online computational cost.

The formulation (23) is equivalent to the *symmetric* linear-algebraic Schur complement system

of size *n*_{SC}, in which

We may readily demonstrate the symmetry: by (19) and symmetry of {\mathit{\xe2}}_{m}(\xb7,\xb7;{\mu}_{i}) we obtain

and as a result

The matrix \mathbb{A}\left(\mu \right) is thus symmetric and in particular may be rewritten as

We shall invoke the interpretation (34) of \mathbb{A}\left(\mu \right) to symmetrize the SCRBE Schur complement system below.

### Port compatibility

The port compatibility requirement (7) between port basis functions associated with ports which may interconnect in a system — port of the same *type* — ensures solution continuity across shared global ports. We recall the archetype port basis functions {\widehat{\chi}}_{\mathcal{\mathcal{M}}\left(i\right),j,k} introduced in (3), and we recall the associated physical (instantiated) port space basis functions *χ*_{i,j,k} introduced in (6). To honor (7), it is clear that the basis functions {\widehat{\chi}}_{m,j,k} on different archetype ports of the same port type must be defined differently according to the archetype port orientation.

To render this more precise we introduce for each unique port type a reference port domain \beta \subset {\mathbb{R}}^{d-1}; we assume for simplicity of exposition that there is only a single port type and thus *β* needs no subscript. We then consider, on archetype component *m*, each archetype port domain {\widehat{\gamma}}_{m,j} as the image of *β* under a rigid-body map {\mathcal{R}}_{m,j}={\mathcal{R}}_{m,j}^{\mathrm{rot}}{\mathcal{R}}_{m,j}^{\mathrm{tran}}, where {\mathcal{R}}_{m,j}^{\mathrm{rot}} corresponds to rotation and {\mathcal{R}}_{m,j}^{\mathrm{tran}} corresponds to translation, such that

this map is the key to honor the port compatibility requirement (7).^{e}

We then introduce, on the reference port domain *β*, a set of reference port modes {\widehat{\chi}}_{k}^{\beta}, 1\le k\le {\mathcal{N}}^{\beta}, and an associated reference port space

of dimension {\mathcal{N}}^{\beta}. We then define, on archetype port domain {\widehat{\gamma}}_{m,j} of type *β*, the archetype port space basis functions {\widehat{\chi}}_{m,j,k}, 1\le k\le {\mathcal{N}}_{m}^{\gamma}, 1\le j\le {n}_{m}^{\gamma}, as

Note that {\mathcal{N}}_{m}^{\gamma}={\mathcal{N}}^{\beta}.

We now consider two instantiated port domains

on different instantiated components *i* and *i*^{′}. From (5) we have for the associated port space basis functions

and so, with (37),

Now, suppose that *π*_{
p
}={(*i*,*j*),(*i*^{′},*j*^{′})} for a shared global port *Γ*_{
p
} such that {\gamma}_{i,j}={\gamma}_{{i}^{\prime},{j}^{\prime}}. In this case, from (35) and (38), we obtain

We recall that {\mathcal{T}}_{i}^{\mathrm{def}} (for 1≤*i*≤*I*) when applied to a port corresponds to pure translation. As a result, application of the port mapping {\mathcal{T}}_{i}{\mathcal{R}}_{\mathcal{\mathcal{M}}\left(i\right),j} corresponds only to translation and rotation. We now recall that the rotation applied to *β* on each side of (43) is unique, and we may thus conclude from (43) that {\mathcal{T}}_{i}^{\phantom{\rule{0.3em}{0ex}}\mathit{\text{rot}}}{\mathcal{R}}_{\mathcal{\mathcal{M}}\left(i\right),j}^{\mathrm{rot}}={\mathcal{T}}_{{i}^{\prime}}^{\mathrm{rot}}{\mathcal{R}}_{\mathcal{\mathcal{M}}\left({i}^{\prime}\right),{j}^{\prime}}^{\mathrm{rot}}. With (41) and (42), we then obtain {\chi}_{i,j,k}={\chi}_{{i}^{\prime},{j}^{\prime},k}, and we thus honor our port compatibility requirement (7).

## Model reduction

The computational efficacy of our port-reduced SCRBE approach is realized through two separate model reduction techniques. As in the standard SCRBE approach [5] we consider component-interior model reduction through RB approximation [6] of the source bubbles (18) and of the fundamental solutions (19) to reduce the cost of each of the many component-interior linear solves required to form the Schur complement system. In addition to RB approximation in the component interiors, we employ port reduction [12] with empirical port modes to reduce the number of degrees of freedom on the ports and thus the size of the Schur complement system. We now discuss each of these techniques in more detail.

### Component-interior reduction

For the component-interior model reduction we employ RB approximations

and thus {\stackrel{~}{\mathrm{\Phi}}}_{p,k}\left(\mu \right)\approx {\mathrm{\Phi}}_{p,k}\left(\mu \right). The purpose of these RB approximations is to allow for efficient formation of an *approximation to* the Schur complement system (54): each RB approximation {\stackrel{~}{b}}_{i}^{f}\left({\mu}_{i}\right) or {\stackrel{~}{\varphi}}_{i,j,k}\left({\mu}_{i}\right) is associated with a rapidly convergent [7] RB space specifically tailored to the particular bubble and to the parameter dependence defined by the corresponding (archetype domain) PDE (18) or (19). All RB bubble spaces are thus different, and furthermore each space is typically of much lower dimension than the original FE spaces {\widehat{B}}_{m;0}^{h}. As a consequence, the RB approximations to the solutions of (18) and (19) are obtained at significantly reduced computational cost with minimal compromise to solution accuracy. The RB method is now considered standard, and we refer the reader to [6] for all technical details relevant to the particular class of problems (linear elliptic) that we consider here.

We now introduce the SCRBE approximation {\u0169}^{\ast}\left(\mu \right)\approx {u}^{h}\left(\mu \right) as

and we again choose \mathcal{S}\left(\Omega \right) as the test space such that {\u0169}^{\ast}\left(\mu \right)\in {X}^{h}\left(\Omega \right) satisfies

the equivalent linear-algebraic system is

where

for 1\le k\le {\mathcal{N}}_{p}^{\Gamma}, 1\le k\le {\mathcal{N}}_{{p}^{\prime}}^{\Gamma}, 1≤*p*,*p*^{′}≤*n*^{Γ}. Note that {\stackrel{~}{\mathbb{A}}}^{\ast}\left(\mu \right) in (49) is non-symmetric because each RB approximation {\stackrel{~}{\varphi}}_{i,j,k}\left({\mu}_{i}\right) (mapped to the respective archetype domain) satisfies (19) only with respect to the associated RB bubble subspace. These RB approximations are thus not Galerkin orthogonal with respect to other bubble spaces; recall that this Galerkin orthogonality (together with symmetry of {\mathit{\xe2}}_{m}(\xb7,\xb7;{\mu}_{i})) is the key to the symmetry of \mathbb{A}\left(\mu \right) as demonstrated in (29). To recover symmetry we have two options: we may either, as in [5, 12], test on a space

in (47), or we may explicitly symmetrize {\stackrel{~}{\mathbb{A}}}^{\ast}\left(\mu \right) by algebraic manipulation. The former option necessitates larger offline and online computational cost and storage, in fact, when compared to the latter, by a multiplicative factor equal to the number of RB basis functions.

We thus elect to recover symmetry by algebraic manipulation: we exploit the interpretation (34) of \mathbb{A}\left(\mu \right) and we define \stackrel{~}{\mathbb{A}}\left(\mu \right)\approx \mathbb{A}\left(\mu \right) as

such that

We may then finally introduce our symmetric SCRBE linear-algebraic system as

and we define the SCRBE field approximation \u0169\left(\mu \right)\approx {u}^{h}\left(\mu \right) as

The associated SCRBE compliance output approximation is \stackrel{~}{s}\left(\mu \right)=f\left(\u0169\right(\mu );\mu ).

Note that in actual practice, we assemble (54) through a direct-stiffness procedure from component-local matrix and vector blocks associated with and assembled for each of the *I* component instantiations; the procedure is described in detail in [5, 12]. The assembly of these component-local quantities constitutes the majority of online computational cost. However, we need only perform the assembly for each *unique* component instantiation, as identical (or “cloned”) components may share local matrices and vectors. We thus realize significant computational savings for systems which consist of instantiations of many component clones, such that we need only consider *I*_{eff}≪*I* *effective* component instantiations for this assembly proceedure.

There are two particularly important situations in which *different* component instantiations are effectively clones in the sense that the component-local matrix and vector blocks may still be re-used: First, matrix and vector blocks computed for component instantiations which differ only in spatial orientation are (in the case that material properties do not depend on spatial orientation, such as in isotropic linear elasticity) identical thanks to cancellation of the mapping Jacobians in the archetype domain bilinear form; second, “free” parameters such as component-wide thermal conductivity or Young’s modulus enter outside the bilinear forms in (18) and (19), and thus the associated matrix blocks will only differ by a scaling factor. As a result, we often obtain *I*_{eff}≪*I* in practice. We discuss this situation further under “Computational procedures” later in this section.

### Port reduction

#### Framework

While the RB approximation is concerned with component-interior model reduction, we apply port reduction to reduce the number of degrees of freedom associated with component interfaces. For the port reduction procedure we shall consider on each global port *Γ*_{
p
} only {n}_{\mathrm{A},p}^{\Gamma}\le {\mathcal{N}}_{p}^{\Gamma} port modes as “Active” and thus contributing to the approximation; for substantial computational savings we require {n}_{\mathrm{A},p}^{\Gamma}\ll {\mathcal{N}}_{p}^{\Gamma}. We consider in this subsection the generic port reduction framework and in the next subsection our particular choice of port space basis functions which realizes {n}_{\mathrm{A},p}^{\Gamma}\ll {\mathcal{N}}_{p}^{\Gamma}.

Based on the {n}_{\mathrm{A},p}^{\Gamma} active modes associated with each global port we introduce a port-reduced skeleton space {\mathcal{S}}^{\mathrm{PR}}\left(\Omega \right)\subseteq \mathcal{S}\left(\Omega \right) as

of dimension

We further introduce a port-reduced approximation {\u0169}^{\mathrm{PR},\ast}\left(\mu \right)\approx {u}^{h}\left(\mu \right) as

We now choose {\mathcal{S}}^{\mathrm{PR}}\left(\Omega \right) as our test space such that

which leads to the linear-algebraic system

of size *n*_{A}, where

for 1\le k\le {n}_{\mathrm{A},p}^{\Gamma}, 1\le {k}^{\prime}\le {n}_{\mathrm{A},{p}^{\prime}}^{\Gamma}, 1≤*p*,*p*^{′}≤*n*^{Γ}. We then symmetrize as

we define the port-reduced SCRBE system as

and we define the port-reduced SCRBE field approximation {\u0169}^{\mathrm{PR}}\left(\mu \right)\approx {u}^{h}\left(\mu \right) as

The associated port-reduced SCRBE compliance output approximation is {\stackrel{~}{s}}^{\mathrm{PR}}\left(\mu \right)=f\left({\u0169}^{\mathrm{PR}}\right(\mu );\mu ).

The purpose of port reduction is of course to reduce the size of the Schur complement system — and thus computational cost — while maintaining accuracy of the approximation. The size of the system (64), *n*_{A}, is equal to the total number of active port modes in the system. In practice, we shall typically invoke only a few port degrees of freedom on each port such that *n*_{A}≪*n*_{SC}. A good choice for the port modes *χ*_{i,j,k} is key to the accuracy of the port-reduced SCRBE approximation, and is the focus of the next subsection.

#### Empirical port mode training

To ensure port compatibility we must for each port type develop our port basis on the associated reference port domain *β* as discussed under “Port compatibility” above. To this end we pursue a pairwise training algorithm that provides a port space tailored to the family of solutions associated with this port type. We shall develop bases for the full port spaces (6) and not merely the space spanned by “Active” modes; the remaining “Inactive” modes shall play a role in certification (for residual calculation), which we discuss further in the “Certification framework” section.

Our port spaces shall consist of three sets of modes. The first set of modes is explicitly specified and consists of the six modes associated with rigid-body motion.^{f} We include these six modes for two reasons: first, it simplifies the procedure for specification of typical Dirichlet boundary conditions, and second, it ensures invertibility of the Schur complement operator associated with “Inactive” modes, which is a property we require for our non-conforming error estimation framework.

The second set of modes consists of the {n}_{\mathrm{pod}}^{\beta}\le {\mathcal{N}}^{\beta}-6 modes which shall be the outcome of our pairwise training algorithm. The third set of modes consists of {\mathcal{N}}^{\beta}-{n}_{\mathrm{pod}}^{\beta}-6 singular Sturm-Liouville eigenmodes restricted to the orthogonal complement of the first {n}_{\mathrm{pod}}^{\beta}+6 empirical modes [12]. These modes serve to complete the discrete port space in a numerically stable fashion.

Recall that the total number of modes associated with the reference port *β* is {\mathcal{N}}^{\beta}. We consider here the case *d*=3 and thus \beta \subset {\mathbb{R}}^{2}; each port mode {\widehat{\chi}}_{i}^{\beta}, 1\le i\le {\mathcal{N}}^{\beta}, has the form {\widehat{\chi}}_{i}^{\beta}=({\widehat{\chi}}_{i}^{\beta ,1},{\widehat{\chi}}_{i}^{\beta ,2},{\widehat{\chi}}_{i}^{\beta ,3}), where the number of degrees of freedom associated with each field component {\widehat{\chi}}_{i}^{\beta ,j} is {\mathcal{N}}^{\beta}/3.

In the case that *β* is the square *β*= [−0.5,0.5]^{2}, the first six reference port modes are explicitly defined as

for the three ports associated with translation; as

for the mode associated with pure rotation; and as

for the two modes associated with flipping. Note these six modes are mutually (*L*^{2}(*β*))^{d}-orthonormal. (If *β* is not the square *β*= [−0.5,0.5]^{2} we apply Gram-Schmidt orthonormalization to these first six modes to recover (*L*^{2}(*β*))^{d}-orthonormality.)

The next {n}_{\mathrm{pod}}^{\beta} port modes are the outcome of our pairwise empirical training algorithm. In this algorithm we exploit the fact that within any system, the solution on any global (shared, say) port is determined completely by the parameter values assigned to the pair of components sharing the port *and* the (typically relatively smooth) solution on all other ports associated with these two components. The purpose of our pairwise training algorithm is to explore the associated “solution manifold” induced by local parameter dependence and neighboring ports in a systematic fashion such that the empirical modes associated with each port type are tailored to all possible component connectivity and all admissible component parameter values.

For our empirical training algorithm we shall require discrete “Legendre polynomials” {L}_{i}^{\beta},1\le i\le {\mathcal{N}}^{\beta}/3, such that the {L}_{i}^{\beta} are the eigenvectors of a scalar singular Sturm-Liouville eigenproblem [16] over *β* ordered according to increasing eigenvalue; we shall also require a univariate random variable *r* with uniform density; and we introduce an algorithm tuning parameter *γ*>1 related to anticipated regularity. We then identify one or several pairs of components in the component library that may connect through a global port of the relevant port type *β*.

The empirical training procedure for each such pair is now given by Algorithm 1: we sample (solve) each pair *N*_{sample} times for different (random) parameters and different (random but smooth thanks to the parameter *γ*>1) boundary conditions on all non-connected ports (note that we assign random boundary conditions independently to each vector component); for each such sample we extract the solution on the shared port {\Gamma}_{{p}^{\ast}} of the relevant type, map it to the reference port *β*, subtract from this mapped solution its orthogonal (*L*^{2}(*β*))^{d}-projection onto each of the six rigid body modes {\widehat{\chi}}_{i}^{\beta}, 1≤*i*≤6, and then finally include the result *ζ* in a snapshot set *S*_{pair} associated with the current pair. Note that in Algorithm 1{(\xb7,\xb7)}_{{L}^{2}\left(\beta \right)} refers to the vector (*L*^{2}(*β*))^{d} inner product.

**Algorithm 1 Pairwise training (two components connected at global port**
{\mathbf{\Gamma}}_{{\mathbf{p}}^{\mathbf{\ast}}}
**)**

After pairwise training of all pairs relevant for one port type, we form the bigger snapshot set

We then perform a data compression step: we invoke the proper orthogonal decomposition (POD) [17] (with respect to the vector (*L*^{2}(*β*))^{d} inner product). The output from the POD procedure is a set of {n}_{\mathrm{pod}}^{\beta} mutually (*L*^{2}(*β*))^{d}-orthonormal POD modes which are also orthonormal to the six first modes {\widehat{\chi}}_{i}^{\beta}, 1≤*i*≤6, related to rigid-body motion. We choose these {n}_{\mathrm{pod}}^{\beta} POD modes as our next reference port basis functions {\widehat{\chi}}_{6+i}^{\beta}, 1\le i\le {n}_{\mathrm{pod}}^{\beta}; we typically observe rapid (often exponential) convergence [12] of these POD modes with respect to the input snapshot set *S*_{type}.

We refer to all first {n}_{\mathrm{pod}}^{\beta}+6 port modes as our *empirical port modes*. If {n}_{\mathrm{pod}}^{\beta} is chosen such that {n}_{\mathrm{pod}}^{\beta}+6<{\mathcal{N}}^{\beta}, we now complete the discrete space with Sturm-Liouville singular eigenmodes restricted to the orthogonal complement space {\left(\mathrm{span}{\left\{{\widehat{\chi}}_{i}^{\beta}\right\}}_{i=1}^{{n}_{\mathrm{pod}}^{\beta}+6}\right)}^{\perp} (of dimension {\mathcal{N}}^{\beta}-{n}_{\mathrm{pod}}^{\beta}-6) as discussed in detail in [12].

We finally note that for our pairwise training approach we may employ the (non-port-reduced) SCRBE framework or we may use standard FE approximations. The computational cost associated with empirical training is not critical as the procedure is performed offline. For our numerical results in this paper we have used the non-port-reduced SCRBE framework to calculate empirical modes.

### Computational procedures

The computational procedures associated with our port-reduced SCRBE approximation framework naturally decouple into an offline preprosessing stage and an online evaluation stage, and we now discuss each in more detail. Note we provide here only descriptions of each of the offline and online steps involved; for detailed online operation counts we refer to [12].

#### Offline

The offline stage is the preprosessing stage — performed only once — in which we construct and prepare the archetype component library. This stage consists of the following steps.

Off1. Empirical pairwise training by Algorithm 1. For each port type we sample pairs of components to obtain efficient port space basis functions {\widehat{\chi}}_{k}^{\beta}, 1\le k\le {\mathcal{N}}^{\beta}, associated with each reference port domain *β*. In the current implementation, we employ the non-port-reduced SCRBE [5] (rather than standard global FE) for the pairwise training.

Off2. RB space construction. For each archetype component *m*, 1≤*m*≤*M*, we must train \sum _{j=1}^{{n}_{m}^{\gamma}}{\mathcal{N}}_{m,j}^{\gamma}+1*different* RB spaces to accommodate the RB approximations (44) and (45). Each construction of an RB space requires a number of component-local FE solves (each associated with an RB space basis function), and thus this step is potentially rather expensive, depending on the component spatial discretization and parametric complexity {\widehat{Q}}_{m}^{a} and {\widehat{Q}}_{m}^{f} in the bilinear and linear form expansions (1).

Note, however, that the construction of the RB approximation spaces (subsequent to port space construction) is embarrassingly parallel. Also note that we do not consider parameters for spatial orientation (because of the mapping Jacobian cancellations in the archetype domain formulation), and furthermore recall that components often have “free” parameters such as component-wide thermal conductivity or Young’s modulus, with which the solutions to (18) and (19) simply scale linearly. As a result, RB space dimensions are typically rather small (around ten basis functions often suffice for each RB space), and thus although this step typically dominates offline cost the computational effort is not onerous: typically a couple of CPU hours is required for each archetype component.

Off3. Online dataset preparation. For each archetype component we construct data to enable efficient assembly of the component-local Schur complement matrix and vector blocks in the subsequent online stage. The computation time depends stongly on component spatial discretization and parametric complexity, but is typically between minutes and hours (on a single CPU) for each component. The online dataset also contains all RB basis functions, which are required for online global field visualization, if desired.

Off4. Data loading. We finally read the online datasets (typically a few hundred Mb) for all library components into computer memory to prepare for the online stage.

Note that with our current implementation of the framework, since we employ the non-port-reduced SCRBE in step Off1 above, we must first perform a step Off0a (similar to Off2) and then a step Off0b (similar to Off3) in order to enable the necessary “online” pair evaluation in Off1.

#### Online

The online stage is the stage in which we instantiate archetype components, and assemble and solve our system. This stage consists of the following steps, which in the current implementation is performed on a single CPU.

On1. Component instantiation. Instantiate *I* components from the library, assign the relevant parameter values to each component, and connect components to other components through ports of the same type to form a system; this step is most easily effected through a graphical user interface [Additional file 1].

On2. Schur complement system formation. Perform component-local RB solves (of small RB dimension) associated with all “Active” degrees of freedom to obtain (RB coefficients for) the RB approximations {\stackrel{~}{\varphi}}_{i,{j}^{\prime},{k}^{\prime}}\left({\mu}_{i}\right) and {\stackrel{~}{b}}^{\phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}f}\left({\mu}_{i}\right), assemble the associated matrix and vector blocks for each component, and assemble the Schur complement system (64) through a direct-stiffness procedure [5, 12].

The entries in the component-local matrix blocks are of the form

(the symmetrization is performed on the component level) and the entries in the component-local vector blocks are of the form {\stackrel{~}{\mathbb{F}}}_{\mathrm{A};(\phantom{\rule{0.3em}{0ex}}j,k)}^{i}\left({\mu}_{i}\right)\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}f({\psi}_{i,\phantom{\rule{0.3em}{0ex}}j,\phantom{\rule{0.3em}{0ex}}k};\mu )\phantom{\rule{0.3em}{0ex}}-{a}_{i}\left({\stackrel{~}{b}}^{f}\right({\mu}_{i}),*ψ*_{i,j,k};*μ*); the subscripts _{A} refer to assembly of “Active” component matrices and vectors. However, thanks to an efficient construction-evaluation procedure [6], which relies on the affine operator expansions (1), only the RB *coefficients* associated with {\stackrel{~}{\varphi}}_{i,{j}^{\prime},{k}^{\prime}}\left({\mu}_{i}\right) and {\stackrel{~}{b}}^{f}\left({\mu}_{i}\right) are required for this assembly step. We emphasize in particular that the underlying component FE discretization is never invoked. We recall that parameters related to spatial orientation (component “docking”) do not appear in the (archetype) bilinear forms due to cancellation of the associated Jacobians (we demonstrate this for isotropic linear elasticity in the “Microtruss beam application”section); and moreover, certain parametric variations such as component-wide conductivity or Young’s modulus are “free” in the sense that they enter as scalars outside the bilinear forms in (18) and (19). As a consequence, matrix and vector blocks associated with different component instantiations are in practice often identical (in the context of “free” parameters up to a multiplicative constant). We may thus in typical systems often consider only *I*_{eff}≪*I* effectively different (or unique) component instantiations, for which we perform RB solves and assemble component-local matrices and vectors. The component-local matrices and vectors for the remaining *I*−*I*_{eff} component instantiations are then simply copies of the respective data from effectively identical components. This consideration of component “clones” together with the realization of “docking” parameter cancellation and “free” parameters contribute significantly to the modest computational cost associated with On2.^{g} The typical computation time is a few seconds.

On3. Evaluate. Solve the “Active” Schur complement system, and evaluate any relevant derived quantities from the solution vector (for example a compliance output). The typical computation time is a few seconds.

The computational cost associated with this online stage is dominated by On2 (when *I*_{eff} is close to *I*) or On3 (when *I*_{eff}≪*I*). However, the offline and online stages above are only concerned with the port-reduced SCRBE *approximation*. We consider the computational procedures associated with *a posteriori* error estimation in the next section.

## Certification framework

Our port-reduced SCRBE approximation is equipped with efficiently computable *a posteriori* error bounds and estimators that provide certificates for the error in the approximation with respect to the underlying global FE discretization. We employ in this paper the energy-norm and compliance output bound developed in [12], and we present the main ingredients and certain extensions below. We furthermore sharpen the bounds by consideration of a multi-reference parameter bound conditioner.

The error in our approximation derives from two sources: port reduction and RB approximation. Below we first address the error due to port reduction, that is to say, the case in which the error due to RB approximation is zero. In this case the error bound presentation simplifies significantly and in particular admits a pure functional interpretation. We then subsequently perturb the equivalent algebraic interpretation to provide a bound for the general case in which the error due to RB approximation is non-zero.

### Port reduction error contribution

We assume in this subsection only that the only source of error is port reduction and hence that there is no RB-induced error. We introduce the function

which satisfies

hence *u*^{PR}(*μ*) is the port-reduced approximation to *u*^{h}(*μ*) obtained in the absence of RB errors. We note that we may (as in (25)) replace the skeleton space {\mathcal{S}}^{\mathrm{PR}}\left(\Omega \right) in (72) by the skeleton space

and thus *u*^{PR}(*μ*)∈*X*^{h}(*Ω*) also satisfies

note that {u}^{\mathrm{PR}}\left(\mu \right)\notin {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{PR}}\left(\Omega \right) because of the source bubble terms *b*^{f;h}(*μ*_{
i
}) in (71).

We define the associated (RB-error-free) error field as

(in which the subscript _{0} refers to the case of zero RB error contribution) and we note that {e}_{0}^{h}\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right) because the source bubble contributions from *u*^{h}(*μ*) and *u*^{PR}(*μ*) cancel. Our goal is to develop a bound for the energy \parallel {e}_{0}^{h}\left(\mu \right){\parallel}_{\mu}, where

is the usual energy norm. From (25) and (74) we see that

this error-residual relationship is the point of departure for our error bound development.

Thanks to coercivity and symmetry of *a*(·,·;*μ*), the error field {e}_{0}^{h}\left(\mu \right) admits the equivalent definition

where

and furthermore \parallel {e}_{0}^{h}\left(\mu \right){\parallel}_{\mu}^{2}=a\left({e}_{0}^{h}\right(\mu ),{e}_{0}^{h}(\mu );\mu )=-2\mathcal{J}\left({e}_{0}^{h}\right(\mu );\mu ). We now relax the minimization (78) by consideration of a discontinuous (non-conforming) skeleton space

in which the basis functions {\mathrm{\Phi}}_{i}^{\prime}\left(\mu \right), 1≤*i*≤*n*_{NC}, merely represent a re-indexing of the basis functions *Φ*_{p,k}(*μ*), 1\le k\le {n}_{p}^{\Gamma}, 1≤*p*≤*n*^{Γ}, and *ϕ*_{i,j,k}(*μ*), ({n}_{\mathrm{A},i,j}^{\gamma}+1)\le k\le {\mathcal{N}}_{i,j}^{\gamma},1\le j\le {n}_{i}^{\gamma},1\le i\le I. Note that the *ϕ*_{i,j,k}(*μ*) represent independent (non-conforming) degrees of freedom local to component *i*. The dimension of {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right) is

note that {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right)\supseteq {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right). We also define a non-conforming skeleton space {\mathcal{S}}^{\mathrm{NC}}\supseteq \mathcal{S}\left(\Omega \right) as

Hence for

(recall the “broken” definition of *a*(·,·;*μ*) in (8)) we must have

and thus a\left({e}_{0}^{\mathrm{NC}}\right(\mu ),{e}_{0}^{\mathrm{NC}}(\mu );\mu )\ge a\left({e}_{0}^{h}\right(\mu ),{e}_{0}^{h}(\mu );\mu ). This first relaxation of (78) not only provides a bound on the energy of the error field, but also accommodates efficient bound calculation thanks to the non-conforming space {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right).

A second relaxation step is required to obtain a computationally tractable error bound. To this end we introduce a bound conditioner, the bilinear form {b}_{\mu}:{\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right)\times {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\to \mathbb{R}, defined as

for a reference parameter value {\mu}_{\mathrm{ref}}^{\mu}\in \mathcal{D}. Note that here, *b*_{
μ
}(·,·) depends implicitly on *μ* through the parameter-dependent reference parameter {\mu}_{\mathrm{ref}}^{\mu}. In fact, an important innovation of this paper is this multi-reference parameter bound conditioner: in the online stage, we optimally select {\mu}_{\mathrm{ref}}^{\mu} from a database of a few candidate reference parameters (through a discrete enumeration procedure); we discuss the selection of {\mu}_{\mathrm{ref}}^{\mu} further in the “Computational procedures” subsection below. We also define

We then introduce a modified functional

and we consider the minimization

By the definition of *λ*_{min}(*μ*) in (86) it is clear that {\mathcal{J}}_{b}(v;\mu )\le \mathcal{J}(v;\mu ) for all v\in {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right). Thus in particular, since {\u0113}_{0}^{\mathrm{NC}}\left(\mu \right) is the minimizer,

where the last inequality follows from (84). Consequently, we obtain the energy-norm error bound

where the field variable {\u0113}_{0}^{\mathrm{NC}}\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right) — a presumably rather good approximation to the original error field {e}_{0}^{h}\left(\mu \right)[12] — satisfies the elliptic problem {b}_{\mu}\left({\u0113}_{0}^{\mathrm{NC}}\right(\mu ),v)={\lambda}_{\mathrm{min}}{\left(\mu \right)}^{-1}\left(f\right(v;\mu )-a({u}^{\mathrm{PR}}\left(\mu \right),v;\mu \left)\right) for all v\in {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right). Equivalently, because of the Galerkin orthogonality in (19),

Thanks to incorporation of the modes related to rigid-body motion in our port space bases (presuming {n}_{\mathrm{A},p}^{\Gamma}\ge 6 on all global ports *Γ*_{
p
}, 1≤*p*≤*n*^{Γ}) we expect in general (and for a particular system, we computationally verify) that (91) is well-posed; for the simpler class of problems with scalar-valued fields we demonstrate this well-posedness in [12]. The RB-error-free bound given in (90) (together with (91)) is the basis on which we in the next subsection extend our error estimation framework to the general case of non-zero RB errors and furthermore to certain outputs of interest.

In order to implement this error bound, and to facilitate incorporation of RB-induced error contributions, we now interpret the error bound (90) in terms of algebraic quantities. To this end, we first note that, for any v\left(\mu \right)=\sum _{p=1}^{{n}^{\Gamma}}\sum _{k=1}^{{\mathcal{N}}_{p}^{\Gamma}}{\mathbb{V}}_{p,k}\left(\mu \right){\mathrm{\Phi}}_{p,k}\left(\mu \right) — that is, for any v\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right) with coefficients \mathbb{V}\left(\mu \right) — we have

we refer to the right-hand side of (92) as the “Schur energy” of \mathbb{V}\left(\mu \right). It shall prove convenient to introduce the zero-extended solution vectors

in which all but the first *n*_{A} entries are explicitly set to zero. We also define the error coefficient vector

such that the error (75) can be written {e}_{0}^{h}\left(\mu \right)=\sum _{p=1}^{{n}^{\Gamma}}\sum _{k=1}^{{\mathcal{N}}_{p}^{\Gamma}}{\mathbb{E}}_{0;p,k}\left(\mu \right){\mathrm{\Phi}}_{p,k}\left(\mu \right). Note here, we tacitly interpret (without loss of generality) \mathbb{U}\left(\mu \right) such that the first *n*_{A} entries correspond to the *n*_{A} active degrees of freedom. The algebraic version of the error residual equation (77) is

where the residual vector is given as

note that, thanks to (92) and the fact that {e}_{0}^{h}\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right), (95) is equivalent to (77).

We now introduce a non-conforming matrix {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{NC}}\times {n}_{\mathrm{NC}}} and vector {\mathbb{F}}^{\mathrm{NC}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{NC}}} as

for 1≤*i*,*j*≤*n*_{NC}. Note that a\left({\mathrm{\Phi}}_{j}^{\prime}\right(\mu ),{\mathrm{\Phi}}_{i}^{\prime}(\mu );\mu )=a\left({\mathrm{\Phi}}_{j}^{\prime}\right(\mu ),{\Psi}_{i}^{\prime};\mu ) because of the Galerkin orthogonality in (19), and thus {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right) is indeed the non-conforming version of the Schur complement matrix \mathbb{A}\left(\mu \right) in (26); similarly, note that f\left({\mathrm{\Phi}}_{i}^{\prime}\right(\mu );\mu )-\sum _{l=1}^{I}a\left({b}_{l}^{f;h}\right({\mu}_{l}),{\mathrm{\Phi}}_{i}^{\prime}(\mu );\mu )=f({\Psi}_{i}^{\prime};\mu )-\sum _{l=1}^{I}a\left({b}_{l}^{f;h}\right({\mu}_{l}),{\Psi}_{i}^{\prime}(\mu );\mu ) because of (18) and the fact that {\mathrm{\Phi}}_{i}^{\prime}\left(\mu \right)-{\Psi}_{i}^{\prime} vanish on ports, and thus {\mathbb{F}}^{\mathrm{NC}}\left(\mu \right) is the non-conforming version of the vector \mathbb{F}\left(\mu \right) in (26).

We further define a non-conforming reference matrix

which corresponds to the bilinear form *b*_{
μ
}(·,·). We also introduce a non-conforming residual vector {\mathbb{R}}_{0}^{\mathrm{NC}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{NC}}} as

note that {\mathbb{R}}_{0}^{\mathrm{NC}}\left(\mu \right)={\mathbb{F}}^{\mathrm{NC}}\left(\mu \right)-{\mathbb{A}}^{\mathrm{NC}}\left(\mu \right){\widehat{\mathbb{U}}}_{0}^{\mathrm{PR}}\left(\mu \right).

Next, we introduce a (unknown) coefficient vector {\stackrel{\u0304}{\mathbb{E}}}_{0}^{\mathrm{NC}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{NC}}} such that

Thus from (91), (99), and (100) we obtain

Similarly to (92), we note that for any v\left(\mu \right)=\sum _{i=1}^{{n}_{\mathrm{NC}}}{\mathbb{V}}_{i}\left(\mu \right){\mathrm{\Phi}}_{i}^{\prime}\left(\mu \right) — that is, for any v\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right) — we have

Hence in particular, since {\u0113}_{0}^{\mathrm{NC}}\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}^{\mathrm{NC}}\left(\Omega \right), we obtain

Further, since {e}_{0}^{h}\left(\mu \right)\in {\mathcal{S}}_{\mathrm{symm}}, we may invoke (92) and write

Finally, we note that *λ*_{min}(*μ*) of (86) is the smallest eigenvalue associated with the generalized eigenproblem

The algebraic interpretation of the port reduction error bound (90) is thus

We note that the bound (107) necessitates a solve {\left({\mathbb{B}}_{\mu}^{\mathrm{NC}}\right)}^{-1}{\mathbb{R}}_{0}^{\mathrm{NC}}\left(\mu \right) of dimension *n*_{NC}≥*n*_{SC}. However, this solve may be performed efficiently thanks to *i)* the non-conforming skeleton space {\mathcal{S}}^{\mathrm{NC}}\left(\Omega \right) which in a natural way allows component-local elimination of all degrees of freedom that do not couple at shared global ports; and *ii)* the quasi parameter-independent bound conditioner matrix {\mathbb{B}}_{\mu}^{\mathrm{NC}} associated with the bilinear form *b*_{
μ
}, which allows offline pre-factorization for all these component-local solves. And furthermore, in actual practice we invoke not *λ*_{min}(*μ*) but rather a computationally tractable eigenvalue lower bound {\stackrel{~}{\lambda}}_{\mathrm{min},\mathit{\text{LB}}}\left(\mu \right)\le {\lambda}_{\mathrm{min}}\left(\mu \right). We consider computational aspects of our error estimation framework in more detail in the “Computational procedures” subsection below.

### RB error contribution — *A Posteriori* error estimators

We now modify (107) in order to obtain an efficiently computable *a posteriori* error bound which is also valid in the presence of RB error contributions. First, as we in the SCRBE context only have access to an approximation of the FE Schur complement system, the residual can not be computed exactly and we thus instead compute a residual approximation together with bounds on associated RB-error-induced residual perturbation terms. Second, we introduce a lower bound (valid under an eigenvalue proximity assumption) for the eigenvalue *λ*_{min}(*μ*) which is based on the solution to a port-reduced eigenproblem, an approximate eigenproblem residual, and bounds on associated RB-error-induced eigenproblem residual perturbation terms.

Moreover, in the presence of RB error contributions the error in the Schur energy is not equal to the energy of the error in the field, and thus in addition to a bound on the former we require a bound on *additional* RB perturbation terms to obtain a bound for the latter. Further, we develop in this section, from our Schur energy error bound, a new bound on port-restricted compliance outputs. For this output bound we must take into account that we in this paper (in contrast to in [12]) employ {\mathcal{S}}^{\mathrm{PR}}\left(\Omega \right) rather than {\stackrel{~}{\mathcal{S}}}_{\mathrm{symm}}^{\mathrm{PR}}\left(\Omega \right)\subset {\stackrel{~}{\mathcal{S}}}_{\mathrm{symm}}\left(\Omega \right) (the former being a port-reduced version of the latter, which is defined in (51)) as our skeleton space. Finally, we introduce *asymptotically rigorous* error estimators, by which we reduce computational cost by neglecting typically very small quadratic RB error bound contributions.

To begin, we define the error field as

It is again convenient to introduce the zero-extended solution vectors,

in which the solution {\stackrel{~}{\mathbb{U}}}^{\mathrm{PR}}\left(\mu \right) of (64) is extended by *n*_{SC}−*n*_{A} and *n*_{NC}−*n*_{A} zeros, respectively. We may then write

and we note that *e*^{h}(*μ*) is *not* a member of {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right) because of the errors in the RB bubble approximations. We also define a vector of error coefficients as

We first develop a bound for the error in the Schur energy norm, \sqrt{\mathbb{E}{\left(\mu \right)}^{\mathrm{T}}\mathbb{A}\left(\mu \right)\mathbb{E}\left(\mu \right)}, through perturbations of the left-hand side of (107). We subsequently modify this bound to obtain a bound on ∥*e*^{h}(*μ*)∥_{
μ
}; note the former is not equivalent to the latter because *e*^{h}(*μ*) is not a member of {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right).

The usual error-residual relationship still holds in the presence of RB error contributions. In this case the relevant error-residual equation is

where the residual vector is given as

The difference between (95) and (112) is rather subtle: the former features the residual associated with the RB-error-free solution vector {\widehat{\mathbb{U}}}_{0}^{\mathrm{PR}}\left(\mu \right) (never computationally realized), while the latter features the residual associated with the RB-error-affected SCRBE solution vector {\widehat{\mathbb{U}}}^{\mathrm{PR}}\left(\mu \right) (computed in practice). The non-conforming version of the residual is

Next, we *redefine* our quasi parameter-independent (due to online reference parameter selection) bound conditioner matrix {\mathbb{B}}_{\mu}^{\mathrm{NC}} from the previous subsection as {\mathbb{B}}_{\mu}^{\mathrm{NC}}={\stackrel{~}{\mathbb{A}}}^{\mathrm{NC}}\left({\mu}_{\mathrm{ref}}^{\mu}\right); note that any SPD matrix may serve as our bound conditioner, and thus the RB approximations now present in {\mathbb{B}}_{\mu}^{\mathrm{NC}} do not necessitate modifications to the error bound expression (and therefore the {\mathbb{B}}_{\mu}^{\mathrm{NC}} of the previous subsection did not bear a subscript _{0}). Henceforth, the eigenproblem (106) is interpreted with this redefined {\mathbb{B}}_{\mu}^{\mathrm{NC}} as the right-hand side matrix, and *λ*_{min}(*μ*) is interpreted as the associated smallest eigenvalue. In the presence of RB error contributions, (107) now becomes

To bound the error in the Schur energy, we must thus, based on residual and eigenvalue approximations, develop upper and lower bounds for the numerator and denominator, respectively, of the left-hand side of (115).

We first consider the approximation to the non-conforming residual {\mathbb{R}}^{\mathrm{NC}}\left(\mu \right). As we do not have access to {\mathbb{F}}^{\mathrm{NC}}\left(\mu \right) and {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right) as defined in (97) and (98), but rather to RB-approximated versions {\stackrel{~}{\mathbb{F}}}^{\mathrm{NC}}\left(\mu \right)\approx {\mathbb{F}}^{\mathrm{NC}}\left(\mu \right) and {\stackrel{~}{\mathbb{A}}}^{\mathrm{NC}}\left(\mu \right)\approx {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right), we introduce our approximation based on {\stackrel{~}{\mathbb{F}}}^{\mathrm{NC}}\left(\mu \right)\approx {\mathbb{F}}^{\mathrm{NC}}\left(\mu \right) and {\stackrel{~}{\mathbb{A}}}^{\mathrm{NC}}\left(\mu \right)\approx {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right) as

such that {\stackrel{~}{\mathbb{R}}}^{\mathrm{NC}}\left(\mu \right)={\mathbb{R}}^{\mathrm{NC}}\left(\mu \right)+\delta {\mathbb{R}}^{\mathrm{NC}}\left(\mu \right). Here,

is an RB-error-induced perturbation term. We may readily from standard RB error bounds [5, 6] develop bounds on these perturbation quantities; we introduce a vector ** σ**(

*μ*) such that, for any \mu \in \mathcal{D},

We next consider the approximation to the eigenvalue *λ*_{min}(*μ*). Again, as we do not in practice have access to {\mathbb{A}}^{\mathrm{NC}}\left(\mu \right), and furthermore as we wish to avoid solution of a full eigenproblem of dimension *n*_{NC}, we consider an approximation {\stackrel{~}{\lambda}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right) to *λ*_{min}(*μ*) given as the smallest eigenvalue associated with the port-reduced SCRBE eigenproblem

here, {\mathbb{B}}_{\mu}^{\mathrm{PR}} denotes the block of {\mathbb{B}}_{\mu}^{\mathrm{NC}} associated with “Active” degrees of freedom. We denote by {\mathbb{V}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right) the eigenvector associated with {\stackrel{~}{\lambda}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right), and we assume the normalization {\mathbb{V}}_{\mathrm{min}}^{\mathrm{PR}}{\left(\mu \right)}^{\mathrm{T}}{\mathbb{B}}_{\mu}^{\mathrm{PR}}{\mathbb{V}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right)=1. We also introduce an approximate eigenproblem residual

in which {\widehat{\mathbb{V}}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{NC}}} is a zero-expanded version of {\mathbb{V}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{A}}}. Note that the *exact* eigenproblem residual is given as {\mathbb{R}}_{\mathrm{eig}}^{\mathrm{NC}}\left(\mu \right)={\mathbb{A}}^{\mathrm{NC}}{\widehat{\mathbb{V}}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right)-{\stackrel{~}{\lambda}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right){\mathbb{B}}_{\mu}^{\mathrm{NC}}{\widehat{\mathbb{V}}}_{\mathrm{min}}^{\mathrm{PR}}\left(\mu \right), and we may thus define a vector of RB perturbation terms \delta {\mathbb{R}}_{\mathrm{eig}}^{\mathrm{NC}}\left(\mu \right) such that {\mathbb{R}}_{\mathrm{eig}}^{\mathrm{NC}}\left(\mu \right)={\stackrel{~}{\mathbb{R}}}_{\mathrm{eig}}^{\mathrm{NC}}\left(\mu \right)+\delta {\mathbb{R}}_{\mathrm{eig}}^{\mathrm{NC}}\left(\mu \right). We may then develop bounds on these RB-error-induced perturbation quantities — we introduce a vector *σ*_{eig}(*μ*) such that, for any \mu \in \mathcal{D},

We now obtain a *computable* eigenvalue lower bound in

#### Lemma 1

Let *C*>0 be such that

assume that

for all *λ*(*μ*)which satisfy (106) (with the redefined {\mathbb{B}}_{\mu}^{\mathrm{NC}}), and let

Then

#### Proof

We refer to ([12], Proposition 1) for the proof, and we note that a similar residual-based eigenvalue bound has been developed in [18] for the standard eigenproblem. □

With the residual approximation \stackrel{~}{\mathbb{R}}\left(\mu \right), associated RB error bounds ** σ**(

*μ*), and the eigenvalue lower bound

*λ*

_{min,LB}(

*μ*;

*C*) above, we may now obtain a

*computable*bound for the left-hand side of (115) and thus the error in the Schur energy norm in

#### Proposition 1

Let *C*>0 be a computable constant such that

Then define

Then if the assumption (123) holds, we have

#### Proof

We merely note here that the numerator in (128) is an upper bound for the numerator in (115), and that *λ*_{min,LB}(*μ*;*C*)≤*λ*_{min}(*μ*) is a lower bound for the denominator in (115). We refer to ([12], Appendix A) for the detailed proof. □

We proceed to bound the energy of the error in the field. Since *e*^{h}(*μ*) is not a member of {\mathcal{S}}_{\mathrm{symm}}\left(\Omega \right), a small modification to (128) is necessary to obtain a bound for ∥*e*^{h}(*μ*)∥_{
μ
}. To this end, we introduce additional RB perturbation terms

we also introduce an RB error bound [6]*κ*(*μ*) such that, for any \mu \in \mathcal{D},

We then introduce our bound for the energy of the error field in

#### Proposition 2

Define Δ^{u}(*μ*;*C*) as

*where* *κ*(*μ*)*is given in* (132). *Then if the assumption* (123) *holds, we have*

#### Proof

We refer to ([12], Appendix A) for the proof. □

Next, we develop a bound for the error in *port-restricted* compliance outputs. To this end we introduce a matrix {\mathit{\sigma}}_{\mathbb{A}}\left(\mu \right)\in {\mathbb{R}}^{{n}_{\mathrm{A}}\times {n}_{\mathrm{A}}} such that

We then state

#### Proposition 3

Let

(in which |·| denotes entry-wise absolute value and not vector modulus). Assume that the source *f*(·;*μ*) is restricted to ports such that {b}_{i}^{f;h}\left({\mu}_{i}\right)=0, 1≤*i*≤*I*. The error in a port-restricted compliance output {\stackrel{~}{s}}^{\mathrm{PR}}\left(\mu \right)=f\left({\u0169}^{\mathrm{PR}}\right(\mu );\mu ) can then be bounded as

#### Proof

We provide here a full proof as in the present paper (skeleton space {\mathcal{S}}^{\mathrm{PR}}\left(\Omega \right)) the proof is different from a related proof in [12] (skeleton space {\stackrel{~}{\mathcal{S}}}_{\mathrm{symm}}\left(\Omega \right)).

We first note that

note in the port-restricted output case considered here, Δ*b*^{f}(*μ*)=0. For the compliance output error, we may then write (using symmetry of *a*(·,·;*μ*))

and thus by (138) (and again symmetry of *a*(·,·;*μ*))

We note that *e*^{h}(*μ*) is *not* Galerkin-orthogonal to {\u0169}^{\mathrm{PR}}\left(\mu \right) because {\u0169}^{\mathrm{PR}}\left(\mu \right) (even in the case {b}_{i}^{f;h}\left({\mu}_{i}\right)=0) is not a member of the skeleton test space {\mathcal{S}}^{}