frontal and multi-frontal solvers: orderings, elimination...
TRANSCRIPT
![Page 1: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/1.jpg)
Maciej Paszynski
Department of Computer Science
AGH University of Science and Technology, Krakow, Poland
http://www.ki.agh.edu.pl/en/research-groups/a2s
Frontal and multi-frontal solvers:
orderings, elimination trees,
refinement trees
![Page 2: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/2.jpg)
EXEMPLARY SIMPLE 1D NUMERICAL PROBLEM
Find temperature distribution such that
Finite difference disretization
![Page 3: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/3.jpg)
TRIDIAGONAL MATRIX FOR EXEMPLARY 1D PROBLEM
![Page 4: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/4.jpg)
FRONTAL SOLVER
Front matrix
Frontal matrix focuses on forward elimination of the first row
![Page 5: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/5.jpg)
FRONTAL SOLVER
Front matrix
2nd row = 2nd row – 1/h2 * 1st row
![Page 6: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/6.jpg)
FRONTAL SOLVER
Front matrix
2nd row = 2nd row – 1/h2 * 1st row
![Page 7: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/7.jpg)
FRONTAL SOLVER
Front matrix
The first row has been eliminated
Frontral matrix focuses on the elimination of the second row
![Page 8: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/8.jpg)
FRONTAL SOLVER
Front matrix
3rd row = 3nd row – [1/h2] / [-2/h2] * 2nd row
![Page 9: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/9.jpg)
FRONTAL SOLVER
Front matrix
3rd row = 3nd row – [1/h2] / [-2/h2] * 2nd row
![Page 10: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/10.jpg)
ELEMENT-WISE DECOMPOSITION
Construct multiple
frontal matrices
in such a way
so they sum up
to the full matrix
Variables must be split
into parts
![Page 11: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/11.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
First all frontal matrices are constructed
![Page 12: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/12.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
First and second frontal matrices are sum up into new 3x3 frontal matrix
Its first and second rows are fully assembled
+
![Page 13: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/13.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+
First column is eliminated by using first row
2nd row = 2nd row – [1/h2] * 1st row
![Page 14: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/14.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+
2nd row = 2nd row – [1/h2] * 1st row
![Page 15: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/15.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
Third and fourth frontal matrices are sum up into new 3x3 frontal matrix
Now only the second row is fully assembled
+ +
![Page 16: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/16.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
Change of the ordering
+ +
![Page 17: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/17.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+ +
Eliminate entries below the diagonal
2nd row = 2nd row – [1/h2] / [-2/h2] * 1st row
3rd row = 3rd row – [1/h2] / [-2/h2] * 1st row
![Page 18: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/18.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+ +
Why can I substract fully assembled 1st row
from not fully assemled rows 2nd and 3rd ?
Eliminate entries below the diagonal
2nd row = 2nd row – [1/h2] / [-2/h2] * 1st row
3rd row = 3rd row – [1/h2] / [-2/h2] * 1st row
![Page 19: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/19.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+ +
This is because substraction and addition are interchangable
(now I am substructing from the 2nd not fully assembled row,
and later I will add the remaining part)
Moreover the 1st row which is utilized for the substractions
in other columns contains only zeros
Eliminate entries below the diagonal
2nd row = 2nd row – [1/h2] / [-2/h2] * 1st row
3rd row = 3rd row – [1/h2] / [-2/h2] * 1st row
![Page 20: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/20.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
+ +
Eliminate entries below the diagonal
2nd row = 2nd row – [1/h2] / [-2/h2] * 1st row
3rd row = 3rd row – [1/h2] / [-2/h2] * 1st row
![Page 21: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/21.jpg)
MULTI-FRONTAL SOLVER ALGORITHM
Fifth and sixth frontal matrices are sum up into new 3x3 frontal matrix
Now the second and third rows are fully assembled
…
+ + +
![Page 22: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/22.jpg)
+ + +
Continue until root node
MULTI-FRONTAL SOLVER ALGORITHM
+
node
+
root
![Page 23: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/23.jpg)
PARALLEL MULTI-FRONTAL SOLVER ALGORITHM
All frontal matrices are generated at the same time
Procesor 1 Procesor 2 Procesor 3 Procesor 4 Procesor 5 Procesor 6
![Page 24: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/24.jpg)
Summing up and elimination are executed at the same time
over different pairs of frontal matrices
+ + +
PARALLEL MULTI-FRONTAL SOLVER ALGORITHM
Procesor 1 Procesor 2 Procesor 3 Procesor 4 Procesor 5 Procesor 6
![Page 25: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/25.jpg)
+ + +
PARALLEL MULTI-FRONTAL SOLVER ALGORITHM
Procesor 1 Procesor 2 Procesor 3 Procesor 4 Procesor 5 Procesor 6
Summing up and elimination are executed at the same time
over different pairs of frontal matrices
![Page 26: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/26.jpg)
+ + +
The agorithm is recursively repeated until we reach the root of the tree
The algorithm results in upper trianguler matrix stored in distributed manner
Computational complexity = height of the tree = logN (where N = #unknowns-1)
PARALLEL MULTI-FRONTAL SOLVER ALGORITHM
Procesor 1 Procesor 2 Procesor 3 Procesor 4 Procesor 5 Procesor 6
+
node
+
root
![Page 27: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/27.jpg)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
)()()()(')(')(')( xfxuxcxuxbxuxa
lCu ,02Find such that
0)0( u
)()(')( lulula
Strong formulation
Weak formulation
)()()('''
00
lvdxvflvludxcuvvbuvau
ll
Find such thatVu
0)0(:,01 vlHvVv
vlvub ,
![Page 28: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/28.jpg)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
Finite element method disretization
Njeleeba jji
N
i
i ,...,1,
1
N
i
ii eau
1
jev
1,5.00
5.0,0211
xfor
xforxxe
1,5.00
5.0,021
xfor
xfor
dx
xde
1,5.022
5.0,022
xforx
xforxxe
1,5.02
5.0,022
xfor
xfor
dx
xde
1,5.012
5.0,003
xforx
xforxe
1,5.02
5.0,003
xfor
xfor
dx
xde
Exemplary basis functions for [0,l] = [0,1], for two finite elements
)()(''',
0
leledxeceebeeaeeeb ji
l
jijijiji )(
0
ledxefel j
l
jj
![Page 29: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/29.jpg)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
3
2
1
3
2
1
333231
232221
131211
,,,
,,,
,,,
el
el
el
a
a
a
eebeebeeb
eebeebeeb
eebeebeeb
N
i
ii eau
1
jev
Exemplary basis functions for [0,l] = [0,1], for two finite elements
)()(''',
0
leledxeceebeeaeeeb ji
l
jijijiji )(
0
ledxefel j
l
jj
1
11K
e
12
212KK
e 2
23K
e
0)()(''', 31
1
0
31313131 leledxeceebeeaeeeb
5.0
0
212121
11
1
0
21212121111
111
)()(''', dxcdx
db
dx
d
dx
daleledxeceebeeaeeeb
KKKKKK
1
5.0
212121
32
1
0
32323232222
222
)()(''', dxcdx
db
dx
d
dx
daleledxeceebeeaeeeb
KKKKKK
![Page 30: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/30.jpg)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
3
2
1
3
2
1
333231
232221
131211
,,,
,,,
,,,
el
el
el
a
a
a
eebeebeeb
eebeebeeb
eebeebeeb
N
i
ii eau
1
jev
Exemplary basis functions for [0,l] = [0,1], for two finite elements
)()(''',
0
leledxeceebeeaeeeb ji
l
jijijiji )(
0
ledxefel j
l
jj
1
11K
e
12
212KK
e 2
23K
e
5.0
0
2
11111
11
1
0
1111111111
111
)()(''', dxcdx
db
dx
d
dx
daleledxeceebeeaeeeb
KKKKK
1
5.0
2
11111
5.0
0
2
22222
22
1
0
22222222
22
222
11
111
)()(''',
dxcdx
db
dx
d
dx
dadxc
dx
db
dx
d
dx
da
leledxeceebeeaeeeb
KKKKK
KKKKK
1
5.0
2
22222
33
1
0
3333333322
222
)()(''', dxcdx
db
dx
d
dx
daleledxeceebeeaeeeb
KKKKK
![Page 31: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/31.jpg)
2
21
1
2222
22221111
1111
2
12
1
3
2
1
2221
12112221
1211
,,0
,,,,
0,,
K
KK
K
KKKK
KKKKKKKK
KKKK
l
ll
l
a
a
a
bb
bbbb
bb
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
GENERALIZATION TO 1D FINITE ELEMENT METHOD
3
2
1
3
2
1
333231
232221
131211
,,,
,,,
,,,
el
el
el
a
a
a
eebeebeeb
eebeebeeb
eebeebeeb
Notice that when we switch from finite difference to finite elements,
it only changes the local systems of equations at tree nodes
![Page 32: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/32.jpg)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
)()(''', lldxcbab Ki
Ki
K
Kj
Ki
Kj
Ki
Kj
Ki
Kj
Ki
)(ldxfel Kj
K
Kjj
12
212KK
e
Global basis functions
are composed with
local shape functions,
e.g.
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
Local system of equations generated over the element K
)()(''', lldxcbab Ki
Ki
K
Kj
Ki
Kj
Ki
Kj
Ki
Kj
Ki
)(ldxfel Kj
K
Kjj
![Page 33: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/33.jpg)
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
K
K
K
K
KKKK
KKKK
l
l
x
x
bb
bb
2
1
2
1
2221
1211
,,
,,
Notice that when we switch from finite difference to finite elements,
it only changes the local systems of equations at tree nodes
GENERALIZATION TO 1D FINITE ELEMENT METHOD
![Page 34: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/34.jpg)
1
hpe 3
hpe 5
hpe
7
hpe 9
hpe8
hpe
15
1i
i
hp
i
hpeuuWe seek the solution u of some weak form of PDE as a linear
combination of shape functions spread over finite element mesh i
hpe
2D hp FINITE ELEMENT METHOD
4
hpe2
hpe
![Page 35: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/35.jpg)
1
hpe 3
hpe 5
hpe
2
hpe 4
hpe7
hpe 9
hpe
8
hpe
15,...,1,15
1
jeleebu j
hp
i
j
hp
i
hp
i
hp
The coefficients
(called „degrees of freedom” d.o.f.)
are obtained by solving
system of linear equations –
finite element disecretization
of a weak (variational) form of PDE
i
hpu
j
hp
i
hp eeb , j
hpelwhere and
are some integrals of shape functions
j
hp
i
hp ee ,
2D hp FINITE ELEMENT METHOD
j
hp
i
hp eeb ,
![Page 36: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/36.jpg)
Generates frontal matrix for the first element,
eliminates fully assembled degrees of freedom
FRONTAL SOLVER
SOLUTION BASED ON LINEAR ORDER OF ELEMENTS
Partial
forward elimination
O(6*9^2)
![Page 37: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/37.jpg)
Generates frontal matrix for the second element,
merges with the current frontal matrix
eliminates fully assembled degrees of freedom
FRONTAL SOLVER
SOLUTION BASED ON LINEAR ORDER OF ELEMENTS
Full
forward elimination
![Page 38: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/38.jpg)
MULTI-FRONTAL SOLVER
SOLUTION BASED ON THE ELIMINATION TREE
Partial
forward elimination
![Page 39: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/39.jpg)
Partial
forward elimination
MULTI-FRONTAL SOLVER
SOLUTION BASED ON THE ELIMINATION TREE
![Page 40: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/40.jpg)
Full forward elimination
of the interface problem matrix
MULTI-FRONTAL SOLVER
SOLUTION BASED ON THE ELIMINATION TREE
![Page 41: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/41.jpg)
Number of operations for partial forward elimination
COMPARISON OF COSTS
![Page 42: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/42.jpg)
CONSTRUCTION OF THE ELIMINATION TREE
BASED ON THE HISTORY OF MESH REFINEMENTS
For any initial mesh, the elimination tree can be created based on
nested dissection algorithm.
![Page 43: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/43.jpg)
CONSTRUCTION OF THE ELIMINATION TREE
BASED ON THE HISTORY OF MESH REFINEMENTS
The elimination tree created for the initial mesh is updated when the mesh is refined
(elimination tree is constructed dynamically, during mesh refinements)
![Page 44: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/44.jpg)
CONSTRUCTION OF THE ELIMINATION TREE
BASED ON THE HISTORY OF MESH REFINEMENTS
The elimination tree created for the initial mesh is updated when the mesh is refined
(elimination tree is constructed dynamically, during mesh refinements)
![Page 45: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/45.jpg)
CONSTRUCTION OF THE REFINEMENT TREES
![Page 46: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/46.jpg)
CONSTRUCTION OF THE REFINEMENT TREES
![Page 47: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/47.jpg)
CONSTRUCTION OF THE REFINEMENT TREES
![Page 48: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/48.jpg)
CONSTRUCTION OF THE REFINEMENT TREES
![Page 49: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/49.jpg)
ELIMINATIONS BASED ON REFINEMENT TREES
• Local matrices for active elements – leaves of the elimination tree –
are created
Level of
initial mesh elements
Level of
refinement trees
![Page 50: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/50.jpg)
• Interior degrees of freedom are eliminated at every leaf
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 51: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/51.jpg)
• Schur complement contributions are merged at parent level
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 52: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/52.jpg)
• Fully assembled degrees of freedom are eliminated at parent nodes level
(degrees of freedom related to common edges shared by both son elements
can be eliminated now)
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 53: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/53.jpg)
• Contributions to Schur complement are merged again at the next level
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 54: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/54.jpg)
• Fully assembled degrees of freedom are eliminated
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 55: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/55.jpg)
• Finally, Schur complement contributions are merged at the tree root node
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 56: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/56.jpg)
• The common interface problem is solved at the tree root node
(The size of the common interface problem corresponds to the size of
crossection of the entire domain)
Level of
initial mesh elements
Level of
refinement trees
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 57: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/57.jpg)
Level of
initial mesh elements
Level of
refinement trees
• The solution obtained at root node is utilized at son nodes.
• The backward substitution is executed
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 58: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/58.jpg)
Level of
initial mesh elements
Level of
refinement trees
• The solution utilized at the second level nodes is utilizes at their sone nodes.
• The backward substitution is executed
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 59: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/59.jpg)
Level of
initial mesh elements
Level of
refinement trees
• The solution obtained at the third level nodes is utilized at leaf nodes.
• The backward substitution is executed on the level of leaf nodes
ELIMINATIONS BASED ON REFINEMENT TREES
![Page 60: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/60.jpg)
PERFORMANCE OF THE 1st VERSION OF THE DISTRIBUTED
MEMORY MULTI-FRONTAL PARALLEL SOLVER
- Embeded into hp code
+ Outperforms MUMPS for large number of processors
- Slower than MUMPS for low number of processors
Profiling showed that the time consuming part for low number of processors
was actually process of merging of matrices –
performed on the level of unknowns, with moving of matrix entries.
Switch to the level of nodes, do not touch matrix entries –work with pointers
1,482,570 degrees of freedom (68,826,475 non-zeros)
![Page 61: Frontal and multi-frontal solvers: orderings, elimination ...home.agh.edu.pl/~paszynsk/Valpa/Presentation1.pdf · MULTI-FRONTAL SOLVER ALGORITHM + + This is because substraction and](https://reader034.vdocuments.site/reader034/viewer/2022043014/5fccc4a06c4cba196b290d97/html5/thumbnails/61.jpg)
PAPERS
http://home.agh.edu.pl/~paszynsk/Publications.html
Maciej Paszyński, David Pardo, Carlos Torres-Verdin, Leszek Demkowicz,
Victor Calo
A PARALLEL DIRECT SOLVER FOR SELF-ADAPTIVE HP FINITE
ELEMENT METHOD
Journal of Parallel and Distributed Computing, 70, 3 (2013) 270-281
Anna Paszynska, Maciej Paszynski, Konrad Jopek, Maciej Wozniak, Damian Goik, Piotr Gurgul, Hassan AbouEisha, Mikhail Moshkov, Victor Calo, Andrew Lenharth, Donald Nguyen, Keshav Pingali
QUASI-OPTIMAL ELIMINATION TREES FOR 2D GRIDS WITH SINGULARITIES
Scientiffic Programming, (2015) Article ID 303024, 1-18
Maciej Paszynski, David Pardo, Anna Paszynska, Leszek DemkowiczOUT-OF-CORE MULTI-FRONTAL SOLVER FOR MULTI-PHYSICS HP ADAPTIVE PROBLEMS
Procedia Computer Science, 4 (2011) 1788-1797