MULTIRESOLUTION MATRIX DECOMPOSITION
3.2 MMD with Localization
3.2.1 Algorithm
We now summarize the procedure ofMMD with localizationas Algorithm 6, and the use of MMD to solve linear system as Algorithm 7. Also, Figure 3.1 shows the flowchart of Algorithm 6.
Algorithm 6MMD with localization
Input: PD matrix A = AH(0), energy decomposition E = EH(0), underlying basis V, localization constant , level number K, q(k), error factor bound ε(k) and condition boundc(k) for each level.
Output: AH(K),ΨH(k),U(k), andBH(k).
1: for k = 1 :K do
2: Construct P(k),Φ(k),U(k),HΨ(k) with Algorithm 1, with respect to HA(k−1),EH(k−1), and subject toq(k), ε(k),c(k) and localization error √N(k);
3: Compute AH(k) and BH(k) by (3.13);
4: Compute reduced energyEH(k) by (3.8);
5: output/storeΨH(k),U(k),BH(k);
6: end for
7: output/store AH(K).
Remark 3.2.5.
- Once the MMD is obtained, the first for-loop (Line 1) in Algorithm 7 can be performed in parallel, which makes it much more efficient than nonparalleliz- able iterative methods.
- Once the whole decomposition structure is completed, we can a posterior omit the level-wise energy decompositions and partitions. Then if we see our
Algorithm 7Solving linear system with MMD with localization
Input: HΨ(k),U(k),BH(k) for k = 1,2,· · ·,K, HA(K), load vectorb = b(0), prescribed relative accuracy
Output: Approximated solutionx(0).
1: for k = 1 :K do
2: z(k) = (U(k))Tb(k−1);
3: SolveBH(k)y(k) = z(k) up to relative error;
4: b(k) = (ΨH(k))Tb(k−1);
5: end for
6: Solve AH(K)x(K) = b(K) up to relative error;
7: for k = K : 1do
8: x(k−1) =U(k)y(k) +ΨH(k)x(k);
9: end for
level-wisely constructed Φ as a nested sequence (3.9a), our decomposition is structurally equivalent to the result obtained in [89], where the existence of such nested Φis a priori assumed. Therefore, the required properties of the nested sequence in Condition 2.3 of [89] are similar to the assumption in Theorem 3.2.3.
Complexity of Algorithm 6
Assume that locality conditions (2.63),(2.64),(2.65) are true with constantd,p,q,c. Then allq(k) andc(k) are chosen uniformly over levels to be q,c respectively. ε(k) is chosen subject to scale ratio choice (3.21),(ε(1))2= (log1k+logAk2n)p+l for some small l > 0, and is chosen so that ≤ ε(1). Due to the condition bound c, we have condition number estimate (3.22). Then the complexity of Line 2 can be modified from (2.69) as
O d·s2·logs·n+O(logs·n·logn)+O q·n·(log1
+logn)p+l·(log1
+logn)d+1, wheres = O((log1 +logn)d(1+l/p))according to estimate (3.19). The complexity of Line 3 and 4(sparse matrices multiplication) together can be bounded by
O(n·(log1
+logn)3d)
due to the locality ofΨH(k) and the inherited locality of HA(k−1) andBH(k−1). Therefore the complexity on each level can be bounded by
O d·s2·logs·n +O(logs·n·logn)+O q·n·(log1
+logn)3d+p, (3.28)
where we have assumed that d ≥ 1 ≥ l. The total complexity of Algorithm 6 is then the level numberK times (3.28). By (3.18), we haveK =O log(loglog1n
+logn)
≤ O(logn)andKlogs =O(logn). Thus the total complexity of Algorithm 6 is
O d·s2·logn·n+O(n·(logn)2)+O K ·q·n·(log1
+logn)3d+p
≤ O(m·logn·(log1
+logn)3d+p). (3.29)
wherem=O(d·n)is the number of nonzero entries of A. Complexity of Algorithm 7
Assume that the relative accuracy is the same as the in Algorithm 6. Recall that the number of nonzero entries of each HA(k) is bounded byO(nnz(A)) =O(m), and the condition number each BH(k) can be bounded byO((log1 +logn)p+l), then the complexity of solving linear system in Line 3 using a CG type method is bounded by
O(m·(log1
+logn)p+l·log1 ).
Therefore if we use a CG type method to solve all inverse problems involved in Algorithm 7, based on the MMD with localization given by Algorithm 6, the running time of Algorithm 7 subject to level-wise relative accuracy is
O(K ·m·(log1
+logn)p+l·log1
) ≤ O(m· (log1
+logn)p+l·log1
·logn).
However, by Theorem 3.2.3, the total accuracy is total = O(K). Thus the com- plexity of Algorithm 7 subject to a total relative accuracytotal is
O(m· (log 1
total +logn)p+l ·(log 1
total +log logn)·logn). (3.30) 3.3 Multilevel Operator Compression
We can also consider the MMD from the perspective of operator compression. For any K, by omitting the finer scale subspaces U(k), k = 1,2,· · ·,K, we get an effective approximator of A−1as
A−1≈ Ψ(K) (Ψ(K))TAΨ(K)−1(Ψ(K))T = PΨA(K)A−1. (3.31) Intuitively, this approximation lies above the scale ofε(P(K),q(K)), and therefore should have a corresponding dominant compression error. However we should again notice that the composite basis Φ(k) is not given a priori and directly in Rn, but constructed level-by-level using the information ofA(k) on each level, and recall that
theerror factorε(P(k),q(k))is computed with respect to the reduced spaceRN , not to the whole spaceRn. Thus the total error of compression (3.31) is accumulated over all levels finer than levelK. To quantify such compression error, we introduce the following theorem:
Theorem 3.3.1. Assume that on each levelΦ(k) is given by Construction 2.2.6 with integerq(k). Then we have
kx−PΦ(K)xk2 ≤
K
X
k=0
ε(P(k),q(k))212
kxkA, ∀x ∈Rn, (3.32) and thus for any x ∈Rnandb= Ax, we have
kx− PΨA(K)xkA ≤
K
X
k=1
ε(P(k),q(k))212 kbk2,
kx−PΨA(K)xk2 ≤
K
X
k=1
ε(P(k),q(k))2 kbk2,
kA−1−PΨA(K)A−1k2 ≤
K
X
k=1
ε(P(k),q(k))2 .
Proof. Again by Theorem 2.2.1, we only need to prove (3.32). For consistency, we writeΦ(0) = In, and correspondinglyΨ(0) = In,PΦ(0) = In, PA
Ψ(0) = In. Using (3.9), it is easy to check that for anyx ∈Rnand anyk1 ≤ k2 ≤ k3,
(PΦ(k1)x−PΦ(k2)x)T(PΦ(k2)x−PΦ(k3)x) =0, thus we have
kx−PΦ(K)xk22 = k
K
X
k=1
(PΦ(k−1)x−PΦ(k)x)k22 =
K
X
k=1
kPΦ(k−1)x−PΦ(k)xk22. Notice that
PΦ(k−1)x−PΦ(k)x =Φ(k−1)(Φ(k−1))Tx−Φ(k−1)Φ(k)(Φ(k))T(Φ(k−1))Tx, thus by the construction ofΦ(k)( orΦ(k)), we have
kPΦ(k−1)x−PΦ(k)xk22 =k(Φ(k−1))Tx−Φ(k)(Φ(k))T(Φ(k−1))Txk22
≤ ε(P(k),q(k))2k(Φ(k−1))Txk2
A(k−1)
=ε(P(k),q(k))2xTΦ(k−1) (Φ(k−1))TA−1Φ(k−1)−1(Φ(k−1))Tx
=ε(P(k),q(k))2kPΨA(k−1)xk2A
≤ ε(P(k),q(k))2kxk2A.
We have used the fact that
kPΨA(k)xk2A= xTAΨ(k) (Ψ(k))TAΨ(k)−1(Ψ(k))TAx
= xTΦ(k) (Φ(k))TA−1Φ(k)−1(Φ(k))Tx, ∀k ≥ 0. Therefore we have
kx− PΦ(K)xk22 ≤
K
X
k=0
ε(P(k),q(k))2 kxk2A.
Remark 3.3.2.
- Though the compression error is in a cumulative form, if we assume that ε(P(k),q(k)) increases with k at a certain ratio ε(Pε(P(k−(k)1),q,q(k(k−))1)) ≥ γ for some γ >1, then it is easy to see that
K
X
k=1
ε(P(k),q(k))2 ≤ γ2
γ2−1ε(P(K),q(K))2, which is an error of scaleε(P(K),q(K))2as we expected.
- Again one shall be aware of the difference between the one-level compres- sion witherror factor ε(P(K),q(K))and the multi-level compression in Sec- tion 3.1.3. A one-level compression witherror factor ε(P(K),q(K))requires to constructP(K),Φ(k)and so on directly with respect toAin the whole space Rn, which involves solving eigenvalue problems on considerably large patches in P(K) when ε(P(K),q(K)) is a coarse scale. But the multi-level compres- sion in Section 3.1.3 is computed hierarchically with bounded compression ratio between levels, and thus only involves eigenvalue problems on patches of well-bounded size(s = O(log1 +logn)d+l) in each reduced space RN
(k), and is thus more tractable in practice.
- One can also analyze the compression error when localization of each Ψ(k) is considered. The analysis would be similar to the one in Theorem 3.3.1.