EIM seeks a set of indexes F ⊂ {1, ..., n}, |F | = M , such that to each index corresponds a point of Q and the selected points are called magic points. Being an interpolation procedure, EIM uses the properly selected indexes (or magic points) and the basis in order to compute the coefficient vector Θ(µ), by solving the following interpolation problem:
ΦFΘ(µ) = fF(µ), (3.18)
where ΦF ∈ RM ×M is the matrix formed by the F rows of Φ, and fF(µ) ∈ RM is the vector
we obtain by evaluating f (µ) in the points of Q whose index is in F . EIM selects both the interpolation indexes and basis functions by means of a greedy algorithm. Let us denote by Ξtrain ∈ D a large training set of parameter samples, Mmax the maximum number of terms
in the expansion, tolEIM a fixed tolerance, and select an initial parameter µ1. The EIM
procedure is as follows:
M = 1;
φ1 = f (µ1); compute i = arg max |φ1|; F = {i};
φ1 = φ1/(φ1)i; Φ = [φ1];
for M = 2 : Mmax
solve µM := arg maxµ∈Ξtrainkf (µ) − fM −1(µ)k∞ set φM = f (µM); Φ = [Φ, φM];
set σM = Φ−1F (φM)F;
compute φM = φM −PM −1j=1 (σM)jφj;
compute i = arg max |φM|; F = F ∪ {i} ;
if maxµ∈Ξtrainkf (µ) − fM −1(µ)k∞< tolEIM Mmax = M − 1;
end end
In the following we apply EIM to problem (3.7) by applying the previous algorithm to the parameter dependent functions appearing in the integrals (3.13).
3.6 EIM application
We now apply EIM to the nonaffine bilinear forms and the linear functional in (3.13). More precisely, we approximate with EIM the coefficients νij(x; µ), for 1 ≤ i, j ≤ 2, and f (x; µ).
So, as done in Section 3.5, we build the sets of indexes Fν11 of cardinality M
ν11 ,..., F ν22 of cardinality Mν22, Ff of cardinality Mf, and basis matrices
Φν11 = [φν11 1 , ..., φ ν11 Mν11], ..., Φν22= [φν122, ..., φ ν22 Mν22], Φf = [φ f 1, ..., φ f Mf]. (3.19) First, we choose as set of points Ωhon which to perform EIM the mesh quadrature nodes.
For this reason, we start by realizing the same h-refinement on both the original domain Ωo
and the reference domain Ω; in this way, we have the same number of mesh elements between the two domains and, since we have built Ωo(µ) and Ω by means of the same basis functions,
with Ωh the set of the images of the quadrature nodes in the reference domain Ω
Ωh = {xl,k ∈ Ω : xl,k = S(ξl,k), for l = 1, ..., Ne and k = 1, ..., nk},
and with Ωoh(µ) the set of the images of the quadrature nodes in the original domain Ωo
Ωoh(µ) = {xol,k ∈ Ωo(µ) : xol,k = F (ξl,k; µ), for l = 1, ..., Ne and k = 1, ..., nk},
where ξl,k are the quadrature nodes in the parametric domain (1.47), Ne is the number of
mesh elements, and nk is the number of quadrature nodes for each mesh element. We notice
that, since the reference domain does not depend on µ, the points of Ωh can be computed
once and for all, while the ones of Ωoh(µ) must be recomputed for each new parameter µ.
We introduce a reordering of the quadrature nodes and a global numbering, and rewrite them in matrix form as: Q ∈ Rn×d and Qo ∈ Rn×d, with n the total number of quadrature nodes
and d the dimension of the physical space. Then, we perform EIM on this set of points by following the algorithm reported in the previous section.
Let us focus, for instance, on the term ν11(x; µ). Given the parameter µ1, we modify the
control points coordinates of the original domain, compute Qo(µ), evaluate on this points
JF, the Jacobian of the transformation F , and compute once and for all JS, the Jacobian of
the transformation S in the points of the set Q. Then, computing (3.9) for each point of Qo,
we finally obtain the vector ν11∈ Rn. Then, we set φν111 = ν11 and apply the EIM algorithm
illustrated in Section 3.5. Finally, as output of the algorithm, we obtain the set of indexes Fν11 of cardinality M
ν11
and the basis matrix Φν11 = [φν11
1 , ..., φ ν11
Mν11]. In this way we obtain the desired approximation
ν11(µ) ≈ νM(µ) = Φν11Θν11(µ) (3.20)
where the µ-dependent coefficient vector Θν11(µ) is obtained by solving online the Lagrange interpolation problem (3.18) that in this case can be rewritten as
Θν11(µ) = (Φν11
F ) −1
(ν11)F. (3.21)
In practice online, given a parameter µ, we modify the original domain and compute ν11(·; µ)
only in the images of the quadrature nodes corresponding to the indexes of Fν11, that is in the images of the magic points, and finally compute (3.21). Moreover, for each basis φν11
m , we
define a function ψν11
m such that for each quadrature node ξl,k:
ψν11
m (ξl,k) = (φνm11)i, (3.22)
where i is the index of that quadrature node in the global numbering introduced at the begin. The reason of introducing these functions will be clarified later.
By repeating the procedure for the other nonaffine terms, we obtain
νMij(µ) = Φ
νijΘνij(µ) for 1 ≤ i, j ≤ 2 (3.23)
fM(µ) = ΦfΘf(µ). (3.24)
In the following, in order to simplify the notation, we will rename ν1 = ν11, ν2= ν12, ν3 = ν21,
ν4= ν22. By substituting these expressions in (3.13) we get the final EIM approximate system: