Solving a large dense linear system by adaptive cross approximation

Introduction Low rank approximation Solving linear system Numerical results Conclusions Solving a large dense linear system by adaptive cross approxi...
Author: Shanna Charles
53 downloads 0 Views 1MB Size
Introduction Low rank approximation Solving linear system Numerical results Conclusions

Solving a large dense linear system by adaptive cross approximation Katrijn Frederix, Marc Van Barel Department of Computer Science K.U.Leuven

September 2007

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Outline Introduction Motivation Goal Low rank approximation Cross approximation Adaptive cross approximation Solving linear system Unitary-weight representation Solving linear system with UWR Numerical results Problem formulation Results of numerical experiments Conclusions Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Outline Introduction Motivation Goal Low rank approximation Solving linear system Numerical results Conclusions Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Motivation of this research

Solving integral equations results in linear system Ax = b.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Motivation of this research

Solving integral equations results in linear system Ax = b. I

Time-consuming evaluation of integrals.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Motivation of this research

Solving integral equations results in linear system Ax = b. I

Time-consuming evaluation of integrals.

I

Large, dense, full rank and no explicit structure.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Motivation of this research

Solving integral equations results in linear system Ax = b. I

Time-consuming evaluation of integrals.

I

Large, dense, full rank and no explicit structure.

I

Approximate by a rank structured matrix.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Motivation Goal

Goal of this research

Solve efficiently the linear system without computing all matrix entries of A by use of the adaptive cross approximation.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Outline Introduction Low rank approximation Cross approximation Adaptive cross approximation Solving linear system Numerical results Conclusions Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Motivation of cross approximation

I

Best low rank approximation: SVD I

Cannot lead to fast algorithms.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Motivation of cross approximation

I

Best low rank approximation: SVD I

I

Cannot lead to fast algorithms.

Cross or skeleton approximation. [Goreinov, Tyrtyshnikov, Zamarashkin 1997] I

Less computational effort and uses few entries from the original matrix.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Idea of cross approximation I

Given a matrix M, R ∈ Cm×n with ||M − R|| ≤ τ and rank(R)≤ r.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Idea of cross approximation I

I

Given a matrix M, R ∈ Cm×n with ||M − R|| ≤ τ and rank(R)≤ r. ˆ ⊂ I = {1, . . . , m} and ˆn ⊂ J = {1, . . . , n} . Choose m

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Idea of cross approximation I

I I

Given a matrix M, R ∈ Cm×n with ||M − R|| ≤ τ and rank(R)≤ r. ˆ ⊂ I = {1, . . . , m} and ˆn ⊂ J = {1, . . . , n} . Choose m ˜ = M|m׈n · S · M|mˆ ×n ∈ Rk(min{#ˆn, #m}) ˆ with Construct M S = (M|mˆ ׈n )−1 , (M|mˆ ׈n )−1 a submatrix of M of maximal volume (i.e. determinant in modulus). [Goreinov, Zamarashkin, Tyrtyshnikov 1997]

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Idea of cross approximation I

I I

I

Given a matrix M, R ∈ Cm×n with ||M − R|| ≤ τ and rank(R)≤ r. ˆ ⊂ I = {1, . . . , m} and ˆn ⊂ J = {1, . . . , n} . Choose m ˜ = M|m׈n · S · M|mˆ ×n ∈ Rk(min{#ˆn, #m}) ˆ with Construct M S = (M|mˆ ׈n )−1 , (M|mˆ ׈n )−1 a submatrix of M of maximal volume (i.e. determinant in modulus). [Goreinov, Zamarashkin, Tyrtyshnikov 1997] ˜ ≤ τ (1 + 2√r(√m + √n)). Result: kM − Mk

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Idea of cross approximation

4

     

8

    

























  

2

2

5

                                                              7

2 5 7

                                       

Figure: The matrix M is approximated by a combination of few rows ˆ = {2, 4, 8} and columns ˆn = {2, 5, 7} of the matrix. m Katrijn Frederix, Marc Van Barel

Solving system with ACA

2 4 8

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons. I

Determine pivot index pair (i∗ , j∗ ) with maximal entry in modulus |Mi∗ ,j∗ |.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons. I

I

Determine pivot index pair (i∗ , j∗ ) with maximal entry in modulus |Mi∗ ,j∗ |. Set δ = Mi∗ ,j∗ .

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons. I

Determine pivot index pair (i∗ , j∗ ) with maximal entry in modulus |Mi∗ ,j∗ |.

I

Set δ = Mi∗ ,j∗ .

I

Compute entries ai = Mi,j∗ /δ (i ∈ I) and bj = Mi∗ ,j (j ∈ J).

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons. I

I

Determine pivot index pair (i∗ , j∗ ) with maximal entry in modulus |Mi∗ ,j∗ |. Set δ = Mi∗ ,j∗ .

Compute entries ai = Mi,j∗ /δ (i ∈ I) and bj = Mi∗ ,j (j ∈ J). P Apply same to remainder M − lk=1 ak bk . I

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Compute successively rank one approximations or skeletons. I

I

Determine pivot index pair (i∗ , j∗ ) with maximal entry in modulus |Mi∗ ,j∗ |. Set δ = Mi∗ ,j∗ .

Compute entries ai = Mi,j∗ /δ (i ∈ I) and bj = Mi∗ ,j (j ∈ J). Pl k k Apply same to remainder Pp Mk −k k=1 a b . ˜ = Approximation M k=1 a b . I

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 First skeleton: Determine maximum in modulus element of matrix.   6 4 5 4 3 5 3 4  8 6 7 5 4 7 4 5     10 7 8 7 5 9 5 6     6 4 5 4 3 5 3 4    I i∗ = 3 1  8 5 6 6 4 7 4 5    ∗ =1 I j  10 7 9 6 5 8 5 7  1    6 4 5 4 3 5 3 4  10 7 8 7 5 9 5 6

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 First skeleton: Compute row b1  6 4 5 4 3 5 3 4  8 6 7 5 4 7 4 5   10 7 8 7 5 9 5 6   6 4 5 4 3 5 3 4   8 5 6 6 4 7 4 5   10 7 9 6 5 8 5 7   6 4 5 4 3 5 3 4 10 7 8 7 5 9 5 6

Katrijn Frederix, Marc Van Barel

and column a1 .            

I

i∗1 = 3

I

j∗1 = 1

I

δ = 10

I

˜a1 /δ

I

b1

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 Second skeleton: Subtraction of first skeleton.  1 1 2 2  0 − 15 5 −5 0 −5 0 5 3 3 1 1  2  0 5 5 −5 0 −5 0 5    0 0 0 0 0 0 0 0    1 1 2 2   0 −1 I i∗ = 2 5 5 −5 0 −5 0 5   2  0 −3 −2 −1 0 −1 0 1   5 5 5 5 5  I j∗ = 3 2  0 0 0 0 0 0 0 0    1 2 2  1  0 −1 5 5 −5 0 −5 0 5 0 0 0 0 0 0 0 0

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 Second skeleton: Compute row b2 and column a2 .            

0 0 0 0 0 0 0 0

− 15

1 5 3 5

− 51 2 − 53 5 0 0 0 1 1 − 51 − 5 5 − 35 − 52 − 51 0 0 0 1 1 1 −5 5 −5 0 0 0

0 0 0 0 0 0 0 0

− 25 −1 0 − 25 − 15 0 − 25 0

0 0 0 0 0 0 0 0

Katrijn Frederix, Marc Van Barel

2 5 2 10



  0   2  5  1  5  0   2  5

0

I

i∗2 = 2

I

j∗2 = 3

I

δ = 6/10

I

˜a2 /δ

I

b2

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 Third skeleton:  0 − 13 0  0 0 0   0 0 0   0 −1 0 3   0 −1 0  3  0 −2 0  3  0 −1 0 3 0 0 0

Subtraction of second skeleton.  0 0 − 13 0 1 0 0 0 0 0   0 0 0 0 0   0 0 − 13 0 13  I i∗ = 6  2 0 0 − 13 0 13   I j∗ = 2 2 0 0 − 23 0 23   1 1  0 0 − 0 0 0

3

3

0 0 0

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3 Third skeleton: Compute row b3 and column a3 .            

0 0 0 0 0 0 0 0

− 13 0 0 − 13 − 13 − 23 − 13 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

− 13 0 0 − 13 − 13 − 23 − 13 0

 0 1 0 0   0 0   0 13   0 13   0 23   0 13  0 0

Katrijn Frederix, Marc Van Barel

I

i∗3 = 6

I

j∗3 = 2

I

δ = 2/3

I

˜a3 /δ

I

b3

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3

Third skeleton: Subtraction of third skeleton results in zero matrix.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of CA with exact rank 3

Third skeleton: Subtraction of third skeleton results in zero matrix. P ˜ = 3 ak bk . I Low rank approximation is found M k=1

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Disadvantages of method: I

All elements of M have to be known.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Disadvantages of method: I

All elements of M have to be known.

I

Matrix M has to be updated.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Determination of cross approximation

Disadvantages of method: I

All elements of M have to be known.

I

Matrix M has to be updated.

I

Rank of M has to be known in advance.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Adaptive cross approximation (ACA)

Other approach: I

Small part of rows and columns are considered.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Adaptive cross approximation (ACA)

Other approach: I

Small part of rows and columns are considered.

I

Only necessary rows and columns are updated.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Adaptive cross approximation (ACA)

Other approach: I

Small part of rows and columns are considered.

I

Only necessary rows and columns are updated.

I

Rank is determined according to a stopping criterion.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Adaptive cross approximation (ACA)

Other approach: I

Small part of rows and columns are considered.

I

Only necessary rows and columns are updated.

I

Rank is determined according to a stopping criterion.

Remark: Matrix S is not of maximal volume.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 First skeleton: I

Pivot row index (arbitrary): i∗1 = 1.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 First skeleton: I I

Pivot row index (arbitrary): i∗1 = 1. ¡ ¢ Compute row: b1 = M(1, :) = 6 4 5 4 3 5 3 4 .

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 First skeleton: I I I

Pivot row index (arbitrary): i∗1 = 1. ¡ ¢ Compute row: b1 = M(1, :) = 6 4 5 4 3 5 3 4 . Determine maximum of b1 : j∗1 = 1 and set δ = 6.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 First skeleton: I I I I

Pivot row index (arbitrary): i∗1 = 1. ¡ ¢ Compute row: b1 = M(1, :) = 6 4 5 4 3 5 3 4 . Determine maximum of b1 : j∗1 = 1 and set δ = 6. Compute column: ¡ a1 = M(:, 1)/δ = 1

4 3

Katrijn Frederix, Marc Van Barel

5 3

1

4 3

5 3

1

5 3

Solving system with ACA

¢T

.

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 First skeleton: I I I I

I

Pivot row index (arbitrary): i∗1 = 1. ¡ ¢ Compute row: b1 = M(1, :) = 6 4 5 4 3 5 3 4 . Determine maximum of b1 : j∗1 = 1 and set δ = 6. Compute column: ¡ a1 = M(:, 1)/δ = 1

4 3

5 3

1

4 3

5 3

1

5 3

¢T

.

Stopping criterion: arbitrary set of matrix entries (outside skeleton). Subtract skeleton and compare with original. Stopping criterion not fulfilled.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Second skeleton: I

Determine maximum of a1 : i∗2 = 3.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Second skeleton: I I

Determine maximum of a1 : i∗2 = 3. Compute row: ¡ b2 = M(3, :) − a13 b1 = 0

Katrijn Frederix, Marc Van Barel

1 3

− 31

1 3

0

2 3

Solving system with ACA

0 − 23

¢ .

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Second skeleton: I I

I

Determine maximum of a1 : i∗2 = 3. Compute row: ¡ b2 = M(3, :) − a13 b1 = 0

1 3

− 31

1 3

0

2 3

0 − 23

Determine maximum of b2 : j∗2 = 6 and set δ = 23 .

Katrijn Frederix, Marc Van Barel

Solving system with ACA

¢ .

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Second skeleton: I I

I I

Determine maximum of a1 : i∗2 = 3. Compute row: ¡ b2 = M(3, :) − a13 b1 = 0

1 3

− 31

1 3

1 2

1 0

2 3

0

0 − 23

Determine maximum of b2 : j∗2 = 6 and set δ = 23 . Compute column : ¡ a2 = (M(:, 6) − a1 b16 )/δ = 0

Katrijn Frederix, Marc Van Barel

1 2

Solving system with ACA

− 21

¢ .

0 1

¢T

.

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Second skeleton: I I

I I

I

Determine maximum of a1 : i∗2 = 3. Compute row: ¡ b2 = M(3, :) − a13 b1 = 0

1 3

− 31

1 3

1 2

1 0

2 3

0

0 − 23

Determine maximum of b2 : j∗2 = 6 and set δ = 23 . Compute column : ¡ a2 = (M(:, 6) − a1 b16 )/δ = 0

1 2

− 21

¢ .

0 1

Stopping criterion: Update previous check points and compare with original. Stopping criterion not fulfilled.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

¢T

.

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I

Determine maximum of a2 : i∗3 = 8.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I Determine maximum of a2 : i∗ = 8. 3 I Compute row: ¡ ¢ b3 = M(8, :) − a18 b1 − a28 b2 = 0 0 0 0 0 0 0 0 .

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I I I

Determine maximum of a2 : i∗3 = 8.

Compute row: b3 = M(8, :) − a18 b1 − a28 b2 δ = 0: choose other row index.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I I

Determine maximum of a2 : i∗3 = 8.

Compute row: b3 = M(8, :) − a18 b1 − a28 b2

I

δ = 0: choose other row index.

I

Row index: i∗3 = 2.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I Determine maximum of a2 : i∗ = 8. 3 I Compute row: b3 = M(8, :) − a1 b1 − a2 b2 8 8 I δ = 0: choose other row index. I Row index: i∗ = 2. 3 I Compute row: ¡ b3 = M(2, :) − a12 b1 − a22 b2 = 0 12 12 − 21

Katrijn Frederix, Marc Van Barel

Solving system with ACA

¢ 0 0 0 0 .

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I I

Determine maximum of a2 : i∗3 = 8.

Compute row: b3 = M(8, :) − a18 b1 − a28 b2

I

δ = 0: choose other row index.

I

Row index: i∗3 = 2.

I I

Compute row: b3 = M(2, :) − a12 b1 − a22 b2

Determine maximum of b3 : j∗2 = 2 and set δ = 12 .

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I Determine maximum of a2 : i∗ = 8. 3 I Compute row: b3 = M(8, :) − a1 b1 − a2 b2 8 8 I δ = 0: choose other row index. I Row index: i∗ = 2. 3 I Compute row: b3 = M(2, :) − a1 b1 − a2 b2 2 2 I Determine maximum of b3 : j∗ = 2 and set δ = 1 . 2 2 I Compute column: a3 = (M(:, 2) − a1 b1 − a2 b2 )/δ 2 2 ¡ ¢T = 0 1 0 0 −1 1 0 0 . Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Example of ACA with exact rank 3 Third skeleton: I I

Determine maximum of a2 : i∗3 = 8.

Compute row: b3 = M(8, :) − a18 b1 − a28 b2

I

δ = 0: choose other row index.

I

Row index: i∗3 = 2.

I I I I

Compute row: b3 = M(2, :) − a12 b1 − a22 b2

Determine maximum of b3 : j∗2 = 2 and set δ = 12 . Compute column: a3 = (M(:, 2) − a1 b12 − a2 b22 )/δ

Stopping criterion: Update previous check points and compare with original. Stopping criterion fulfilled. Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Stopping criterion of ACA

I

Arbitrary sets of t matrix entries R, outside skeletons.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Stopping criterion of ACA

I I

Arbitrary sets of t matrix entries R, outside skeletons. Entries are updated every iteration Rpil ,jl = Rpil ,jl − apil bpjl , l = 1, . . . , t.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Stopping criterion of ACA

I I

I

Arbitrary sets of t matrix entries R, outside skeletons. Entries are updated every iteration Rpil ,jl = Rpil ,jl − apil bpjl , l = 1, . . . , t. If for all matrix entries it holds that |Mil ,jl − Rpil ,jl | max |Mi,j |

≤τ

with l = 1, . . . , t and τ a given accuracy, the algorithm stops.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion Matrix entries can be divided in three disjunct subsets: I

Coming from skeleton.

I

Fulfill stopping condition.

I

Do not fulfill stopping condition.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion Matrix entries can be divided in three disjunct subsets: I

Coming from skeleton.

I

Fulfill stopping condition.

I

Do not fulfill stopping condition.

The probability that all the matrix entries fulfill the condition is given by Pt ≈ p t with p the probability that a matrix entry is in the second set. Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion n = 100 1

p = 0.95

0.9

p = 0.8 0.8

p = 0.7

Probability Pt

0.7 0.6

I

0.5 0.4

Number of entries considerably large but not too large.

0.3 0.2 0.1 0

0

20

40

60

80

Amount of checkpoints: t

Katrijn Frederix, Marc Van Barel

100

120

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion ˜ ||M − M||/||M||, n = 200

Amount of iterations 23

−9 −9.5

22 τ = 10−8 τ = 10−10

−8

τ = 10

21

−12

−10.5

τ = 10

Amount of iterations

Relative error in log10 scale

−10

−11 −11.5 −12 −12.5

τ = 10−10 τ = 10−12

20 19 18 17

−13 16 −13.5 −14

15 0

5

10

15

20

Percentage of points checked

25

30

Katrijn Frederix, Marc Van Barel

0

5

10

15

20

Percentage of points checked

Solving system with ACA

25

30

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion Results: I

No increase of accuracy of approximation

I

No increase of number of iterations

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Cross approximation Adaptive cross approximation

Choice of the number of matrix entries used in stopping criterion Results: I

No increase of accuracy of approximation

I

No increase of number of iterations

Value in numerical experiments: One percent of total matrix entries is used for stopping criterion.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Outline Introduction Low rank approximation Solving linear system Unitary-weight representation Solving linear system with UWR Numerical results Conclusions Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation (UWR) [Delvaux, Van Barel 2006] I Rank structured matrix: every block beginning in the bottom left corner is of low rank. i i i

i

i

1

2 3

j1 r1 r

j2 2

j3 r3 j

4

N

Katrijn Frederix, Marc Van Barel

4

r4

j N rN

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation (UWR) [Delvaux, Van Barel 2006] I

I

Rank structured matrix: every block beginning in the bottom left corner is of low rank. Compact representation of the rank structure.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation

Rk 1 Rk 2

I

Rank structure with three blocks.

Rk 1

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation I

Rk 1 I

Rk 2 I

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 I

Katrijn Frederix, Marc Van Barel

Unitary transformation on bottom block. Created zeros in two bottom rows. Top row contains compressed information about whole block. Block of weights is stored.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation I

Rk 1 I

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0 0 0 0 0 0 0

I

I

Katrijn Frederix, Marc Van Barel

Unitary transformation on second block. Created zeros in two bottom rows. Top rows contain compressed information about whole block. Block of weights is stored.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation

I

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0 0 0 0 0 0 0

Katrijn Frederix, Marc Van Barel

I

I

Schematic picture of the unitary-weight representation for this rank structure. Three unitary transformations . Three weight blocks.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

r

2

I

Rank structure with three blocks.

r3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

r

2

Katrijn Frederix, Marc Van Barel

I

Consider bottom block.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

r

2

I

B3

A

Adaptive cross approximation on bottom block.

3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

r

Q

3

2

I

QR-factorization of A3 .

B3

R3 0 0 0 0

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

I

Q3

R3 0 0 0 0

! ! ! ! ! ! ! ! ! ! ! ! ! #""# ""## ""## ""## ""## #""# ! ! ! ! ! ! ! ! ! ! ! ! ! #"#" #""# #""# #""# #""# #"#" && %$%$ && %$%$ && %$%$ && %$%$

Katrijn Frederix, Marc Van Barel

Save weight block and Q3 .

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

1

I

Q3

R3 0 0 0 0

(' (' (' (' (' (' (' (' (' (' (' (' (' *))* ))** ))** ))** ))** *))* (' (' (' (' (' (' (' (' (' (' (' (' (' *)*) *))* *))* *))* *))* *)*) -,+,+ -,+,+ -,+,+ -,+,+

Katrijn Frederix, Marc Van Barel

Consider second block.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

A

1

32

2

32

0 0 0 0 0 0 R3

B2

32 32 23

0 Q

I

32 /. ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ /. 10 01 01 01 01 01 /. /. ./ ./ ./ ./ ./ ./ ./ ./ ./ ./ /. 011001 010101 010101 010101 010101 010101

Adaptive cross approximation on second block.

3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA I

¯2 = Consider blocks: A

·

A2 0 0 R3

Katrijn Frederix, Marc Van Barel

¸

¯2 = and B

Solving system with ACA

·

B2 B3 |1,...,j2

¸

.

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA I I

¸ · ¸ B A 0 2 2 ¯2 = ¯2 = and B . Consider blocks: A B3 |1,...,j2 0 R3 ¯ 2 = U 2 Σ2 V ∗ . Apply truncated SVD to B ·

2

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA I I I

¸ · ¸ B A 0 2 2 ¯2 = ¯2 = and B . Consider blocks: A B3 |1,...,j2 0 R3 ¯ 2 = U 2 Σ2 V ∗ . Apply truncated SVD to B ·

2

¯ 2 U2 Σ2 . Apply QR-factorization to A

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA I I

¸ · ¸ B A 0 2 2 ¯2 = ¯2 = and B . Consider blocks: A B3 |1,...,j2 0 R3 ¯ 2 = U 2 Σ2 V ∗ . Apply truncated SVD to B ·

2

I

¯ 2 U2 Σ2 . Apply QR-factorization to A

I

Save weight matrix R2 V2∗

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA r

Q

R2 0 0 0 0

2

Q

1

54 54 45 45 45 45 45 7667 54 54 54 45 45 45 54 6767

7676 6767 7676 6767

7676 6767 7676 6767

7676

I

7676 9889 8899 8899 8899 8899 8899 9898 9898 9898 9889 9889 9889

I

Compress rows B2 and B3 |1, . . . , j2 with SVD. QR-factorization of column block.

3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA

Q

R2 0 0 0 0

2

Q

;: ;: :; :; :; :; :; =>? ?>>? ?>>?

I

Save weight block and Q2 . Consider first block.

3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA A1

0

0 0 0 0 0 0 R2

B1

D ED DE DE DE DE DE A@@A D ED ED DE DE DE ED @A@A

A@A@ @A@A A@A@ @A@A

A@A@ @A@A A@A@ @A@A

A@A@ A@A@

I

CBCB BCBC CBCB BCBC

Katrijn Frederix, Marc Van Barel

CBCB BCBC CBCB BCBC

CBCB BCBC CBCB BCBC

Adaptive cross approximation on first block.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Unitary-weight representation with ACA FF FFGG FF FFGG

FFGG FFGG FFGG FFGG

FFGG FFGG FFGG FFGG

FFGG FFGG I

Q1

IHIH HIHI IHIH HIHI

IHIH HIHI IHIH HIHI

IHIH HIHI IHIH HIHI I

Q

2

KJJK JJKK JJKK JJKK JJKK JJKK KJKJ KJKJ KJKJ KJJK KJJK KJJK

Q3

Katrijn Frederix, Marc Van Barel

I

Compress rows B1 and B2 |1, . . . , j1 with SVD. QR-factorization of column block. Save weight block and Q1 .

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Solving linear system with UWR

[Delvaux, Van Barel 2006] I

Compute QR-factorization of a rank structured matrix using unitary-weight representation.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Solving linear system with UWR

[Delvaux, Van Barel 2006] I

I

Compute QR-factorization of a rank structured matrix using unitary-weight representation. QR-factorization is used as a preprocessing step for solving the linear system.

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR s1

s2

s3

r1

r2

I

Rank structured matrix with three blocks.

r3

Katrijn Frederix, Marc Van Barel

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR `M_ `M_ `M_ `M_ `M_ `_ s

1

ZMY ZMY ZMY ZMY ZY r

^M] ^M] ^M] ^M] ^M] ^]

s

2

\M[ \M[ \M[ \M[ \[

Preparative phase: s

3

1 r

2 r

3

NMLNML NMLNML NMLNML NMLNML NLNL NLMNLMNMLNML NMLNML NMLNML NLNL NMLXWMNMLXMW NMLXMW NMLXMW NLXW

PMOPMO PMOPMO PMOPMO PMOPMO POPO VMUVMU VMUVMU VMUVMU VMUVMU VUVU POMPOMPMOPMO PMOPMO PMOPMO POPO VMUVMU VMUVMU VMUVMU VMUVMU VUVU PMORQMPMORMQ PMORMQ PMORMQ PORQ VMUTMS VMUTMS VMUTMS VMUTMS VUTS RQMRMQ RMQRMQ RMQRMQ RMQRMQ RQRQ TMSTMS TMSTMS TMSTMS TMSTMS TSTS RQMRQMRMQRMQ RMQRMQ RMQRMQ RQRQ TMSTMS TMSTMS TMSTMS TMSTMS TSTS

Katrijn Frederix, Marc Van Barel

I

Apply precomputed unitary transformations.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR xMw xMw xMw xMw xMw xw s

1

nMm nMm nMm nMm nm rMq rMq rMq rMq rMq rq r

1 r

2

s

Preparative phase: 2

pMo pMo pMo pMo po tMs tMs tMs tMs ts bMabMa bMabMa bMabMa bMabMa baba bMabMa bMabMa bMabMa bMabMa baba bMavMulkba bMavMulkba bMavMulkba bMavMulkba bavulkba lMk lMk lMk lMk lk r

3

I s

3

dMcdMc dMcdMc dMcdMc dMcdMc dcdc r 2 dcMdcMdMcdMc dMcdMc dMcdMc dcdc jMijMi jMijMi jMijMi jMijMi jiji dMcfedcMdMcfMedc dMcfMedc dMcfMedc dcfedc jMijMihg jMijMihg jMijMihg jMijMihg jijihg feMfMe fMefMe fMefMe fMefMe fefe hMghMg hMghMg hMghMg hMghMg hghg feMfeMfMefMe fMefMe fMefMe fefe hMghMg hMghMg hMghMg hMghMg hghg fMe fMe fMe fMe fe hMg hMg hMg hMg hg

Katrijn Frederix, Marc Van Barel

I

No mixture real size and weight elements. Regression of column representation.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR s1

”M“ ”M“ ”M“ ”M“ ”M“ ”“ ’M‘ ’M‘ ’M‘ ’M‘ ’‘ s2

r1

r2

†M…†M… †M…†M… †M…†M… †M…†M… †…†… †…M†…M†M…†M… †M…†M… †M…†M… †…†… ‰M†M…Š ‰M†M…Š ‰M†M…Š ‰M†M…Š ‰†…Š r3

‚M‚M ‚M‚M ‚M‚M ‚M‚M ‚‚ ‚M‚M‚M‚M ‚M‚M ‚M‚M ‚‚ ƒM‚M„„ƒMƒM‚M„„Mƒ ƒM‚M„„Mƒ ƒM‚M„„Mƒ ƒ‚„„ƒ „MƒƒM„ „MƒƒM„ „MƒƒM„ „MƒƒM„ „ƒƒ„ „ƒMˆM‡ „MƒˆM‡ „MƒˆM‡ „MƒˆM‡ „ƒˆ‡

€M€M €M€M r 1€M€M €M€M €€ –•–• s 3 r 2 €M€M€M€M €M€M €M€M €€ –•–•   }M€M~~}M}M€M~~M} }M€M~~M} }M€M~~M} }€~~} —˜ŒM‹–•ŒM‹ ŽŽ ŒM‹ŒM‹ ŒM‹ŒM‹ ŒM‹ŒM‹ Œ‹Œ‹ ~M}}M~ ~M}}M~ ~M}}M~ ~M}}M~ ~}}~ ŒM‹ŒM‹ ŒM‹ŒM‹ ŒM‹ŒM‹ ŒM‹ŒM‹ Œ‹Œ‹ ~}MzMy ~M}zMy ~M}zMy ~M}zMy ~}zy ŒM‹|M{ ŒM‹|M{ ŒM‹|M{ ŒM‹|M{ Œ‹|{ zyMzyMzMyzMy zMyzMy zMyzMy zyzy |M{|M{ |M{|M{ |M{|M{ |M{|M{ |{|{ zMyzyMzMyzMy zMyzMy zMyzMy zyzy |M{|M{ |M{|M{ |M{|M{ |M{|M{ |{|{

Katrijn Frederix, Marc Van Barel

Preparative phase: I

All precomputed unitary transformations are applied.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR ºM¹ ºM¹ ºM¹ ºM¹ ºM¹ º¹ s

2

Residual phase: I r

¶Mµ ¶Mµ ¶Mµ ¶Mµ ¶Mµ ¶µ M§¨M§¨ ¨M§¨M§ ¨M§¨M§ ¨M§¨M§ ¨§¨§ M§¨M§¨ ¨M§¨M§ ¨M§¨M§ ¨M§¨M§ ¨§¨§ ²M±M§¨§¨M±² ²M±¨M§¨§²M± ²M±¨M§¨§²M± ²M±¨M§¨§²M± ²±¨§¨§²± r

1

2

r

3

¤M£¤M£ ¤M£¤M£ ¤M£¤M£ ¤M£¤M£ ¤£¤£ ¤£M¤£M¤M£¤M£ ¤M£¤M£ ¤M£¤M£ ¤£¤£ ¦¥M¤M£¤£¦¥M¦M¥¤M£¤£¦M¥ ¦M¥¤M£¤£¦M¥ ¦M¥¤M£¤£¦M¥ ¦¥¤£¤£¦¥ ¦M¥¦¥M¦M¥¦M¥ ¦M¥¦M¥ ¦M¥¦M¥ ¦¥¦¥ ¦¥M¸M·´³¦¥ ¦M¥¸M·´³¦¥ ¦M¥¸M·´³¦¥ ¦M¥¸M·´³¦¥ ¦¥¸·´³¦¥ ´³M´M³ ´M³ ´M³ ´³

r

1

s r

 MŸ MŸ  MŸ MŸ  MŸ MŸ  MŸ MŸ  Ÿ Ÿ ®­®­ 3°°¯¯°¯ 2  ŸMžM Ÿ  MŸžM Ÿ  MŸžM Ÿ  MŸžM Ÿ  Ÿž Ÿ ®­ª©ª®­ °°¯¯°¯¬¬°¯ žMžMžMžM žMžM žMžM žž ©¢M¡ °¯«¬«« ¢M¡ ¢M¡ ¢M¡ ¢¡ žMžM žMžM žMžM žMžM žž ¢M¡¢M¡ ¢M¡¢M¡ ¢M¡¢M¡ ¢M¡¢M¡ ¢¡¢¡ žš™Mš™MžMš™šM™ žMš™šM™ žMš™šM™ žš™š™ ¢M¡œ›œM› ¢M¡œ›œM› ¢M¡œ›œM› ¢M¡œ›œM› ¢¡œ›œ› šM™š™MšM™šM™ šM™šM™ šM™šM™ š™š™ œM›œM› œM›œM› œM›œM› œM›œM› œ›œ› š™MšM™ šM™šM™ šM™šM™ šM™šM™ š™š™ œM›œM› œM›œM› œM›œM› œM›œM› œ›œ›

Katrijn Frederix, Marc Van Barel

I

No mixture real size and weight elements. Spreading out of column representation.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR ìMë ìMë ìMë ìMë ìMë ìë ÀM¿¿MÀ ÀM¿¿MÀ ÀM¿¿MÀ ÀM¿¿MÀ À¿¿À ÂMÁÁM ÂMÁÁM ÂMÁÁM ÂMÁÁM ÂÁÁ À¿MÀ¿MÀM¿ÀM¿ ÀM¿ÀM¿ ÀM¿ÀM¿ À¿À¿ ÂMÁÂMÁ ÂMÁÂMÁ ÂMÁÂMÁ ÂMÁÂMÁ ÂÁÂÁ ¿MÀ ¿MÀ ¿MÀ ¿MÀ ¿À âMáÁâMá âMáÁâMá âMáÁâMá âMáÁâMá âáÁâá âMáâMá âMáâMá âMáâMá âMáâMá âáâá âMáäMãâá âMáäMãâá âMáäMãâá âMáäMãâá âáäãâá äMãäMã äMãäMã äMãäMã äMãäMã äãäã äMãäMã äMãäMã äMãäMã äMãäMã äãäã ðMïæåäãæMå ðMïæåäãæMå ðMïæåäãæMå ðMïæåäãæMå ðïæåäãæå r 2

r

3

ÄMÃÃMÄ ÄMÃÃMÄ ÄMÃÃMÄ ÄMÃÃMÄ ÄÃÃÄ ÄÃMÄÃMÄMÃÄMà ÄMÃÄMà ÄMÃÄMà ÄÃÄà ÈMÇÃÈÇMÄ ÈMÇÃÈMÇÄ ÈMÇÃÈMÇÄ ÈMÇÃÈMÇÄ ÈÇÃÈÇÄ ÈÇMÈMÇ ÈMÇÈMÇ ÈMÇÈMÇ ÈMÇÈMÇ ÈÇÈÇ ÈÇMÆÅMÈÇ ÈMÇÆMÅÈÇ ÈMÇÆMÅÈÇ ÈMÇÆMÅÈÇ ÈÇÆÅÈÇ ÆMÅÆÅMÆMÅÆMÅ ÆMÅÆMÅ ÆMÅÆMÅ ÆÅÆÅ ÆÅMÆMÅ ÆMÅÆMÅ ÆMÅÆMÅ ÆMÅÆMÅ ÆÅÆÅ èçMÆÅèçMèMçÆÅèMç èMçÆÅèMç èMçÆÅèMç èçÆÅèç èMçèçMèMçèMç èMçèMç èMçèMç èçèç èçMîMíêéèç èMçîMíêéèç èMçîMíêéèç èMçîMíêéèç èçîíêéèç êéMêMé êMé êMé êé

s

ÐÏÏÐ 2 ÜÛÜÛÛÜ

r

1

ÐÏÐÏ ÛÜÜÜÛÛÜÛ ÒÑÏMÒÑÐMÜÜÛÛÜÛÒMÑÒMÑ ÒMÑÒMÑ ÒMÑÒMÑ ÒÑÒÑ ÚMÚMÙÙÎÍÎÍ s 3ÚÚÙÙ r 2 ÒÑMÒÑMÒMÑÒMÑ ÒMÑÒMÑ ÒMÑÒMÑ ÒÑÒÑ ÚMÙÚMÚMÙÙÚMÙÍÎÎÍ ÚÙÚÚÙÙÚÙ ÒÑMÔMÓÒÑ ÒMÑÔMÓÒÑ ÒMÑÔMÓÒÑ ÒMÑÔMÓÒÑ ÒÑÔÓÒÑ ÚMÚMÙÙÚMÙÚMÙËÎÍÌÍËÎ ÚÚÙÙÚÙÚÙ ÔÓMÔÓMÔMÓÔMÓ ÔMÓÔMÓ ÔMÓÔMÓ ÔÓÔÓ ÚMÙØ×ØØM××ØM×ËÌËÌ ÚÙØ×ØØ××Ø× ÔMÓÔÓMÔMÓÔMÓ ÔMÓÔMÓ ÔMÓÔMÓ ÔÓÔÓ ØM×ØM××MØ×MØÌËÊËÌ Ø×Ø××Ø×Ø ÞÝMÔÓÞÝMÞMÝÔÓÞMÝ ÞMÝÔÓÞMÝ ÞMÝÔÓÞMÝ ÞÝÔÓÞÝ ØM×ØMØM××ÖÕÖÕÉÊÌÉ Ø×ØØ××ÖÕÖÕ ÞMÝÞÝMÞMÝÞMÝ ÞMÝÞMÝ ÞMÝÞMÝ ÞÝÞÝ ÖMÕ¾½¾M½ ÖÕ¾M½¾M½ ¾M½¾M½ ¾M½¾M½ ¾½¾½ ÞÝMàMßÞÝ ÞMÝàMßÞÝ ÞMÝàMßÞÝ ÞMÝàMßÞÝ ÞÝàßÞÝ ¾M½¾M½¼» ¾M½¾M½¼» ¾M½¾M½¼» ¾M½¾M½¼» ¾½¾½¼» àßMàßMàMßàMß àMßàMß àMßàMß àßàß ¼M»¼M» ¼M»¼M» ¼M»¼M» ¼M»¼M» ¼»¼» àMßàßMàMßàMß àMßàMß àMßàMß àßàß ¼M»¼M» ¼M»¼M» ¼M»¼M» ¼M»¼M» ¼»¼» àßMàMß àMß àMß àß ¼M» ¼M» ¼M» ¼M» ¼»

Katrijn Frederix, Marc Van Barel

Residual phase: I

I

Make first block column upper triangular. Apply same unitary transformation to other part.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR !!!!!!

öMõõMö öMõõMö öMõõMö öMõõMö öõõö øM÷÷Mø øM÷÷Mø øM÷÷Mø øM÷÷Mø ø÷÷ø öõMöõMöMõöMõ öMõöMõ öMõöMõ öõöõ øM÷øM÷ øM÷øM÷ øM÷øM÷ øM÷øM÷ ø÷ø÷ õMö õMö õMö õMö õö ÷Mø ÷Mø ÷Mø ÷Mø ÷ø

úMùùMú úMùùMú úMùùMú úMùùMú úùùú úùMúùMúMùúMù úMùúMù úMùúMù úùúù ùMþýMú ùMþMýú ùMþMýú ùMþMýú ùþýú þýMþMý þMýþMý þMýþMý þMýþMý þýþý þýMþýMþMýþMý þMýþMý þMýþMý þýþý üMûüûMüMûüMû üMûüMû üMûüMû üûüû üûMüMû üMûüMû üMûüMû üMûüMû üûüû üûM üMû üMû üMû üû

s

 2 

r

1

                                                        









 









       







                                                                         r            3                     

 s 3 2         ÿ   ôMó ôMó ôMó ôMó ôó r

ôMóôMó ôMóôMó ôMóôMó ôMóôMó ôóôó ôóòñMòñMôMóòñòMñ ôMóòñòMñ ôMóòñòMñ ôóòñòñ òMñòñMòMñòMñ òMñòMñ òMñòMñ òñòñ òñMòMñ òMñòMñ òMñòMñ òMñòMñ òñòñ

Katrijn Frederix, Marc Van Barel

Residual phase: I

I

Spreading out column representation. Make second block upper triangular.

Solving system with ACA

Introduction Low rank approximation Solving linear system Numerical results Conclusions

Unitary-weight representation Solving linear system with UWR

Computation of QR-factorization of rank structured matrix using UWR #""# #""# #""# #""# #""# #"#"#"#" #"#" #"#" #"#" "# "# "# "# "#

%$$% %$$% %$$% %$$% %$$% %$%$%$%$ %$%$ %$%$ %$%$ $)(%$)(% $)(% $)(% $)(% )()( )()( )()( )()( )()( )()( )()( )()( )()( )()(

D G D G D G D G D GF ED F E F E F E F E F E G B C B C B C B CB C s r &&' &&' &&' &&A@ && A@@ 2;:;:: 1 ' '  @ '' && '' && '' && '' && AA @@ ''&& AA@@ ;:;;:;:;: '  '  '  ' ;: &  &  &  & @ ' + ' + ' + ' A A '&+*' A@- * * * , ,A, ;:;: - ,, - ,, - ,, -,, ?>> s 3= ==