Professional Documents
Culture Documents
Presentation 1
Presentation 1
Front matrix
Front matrix
Front matrix
Front matrix
Front matrix
Front matrix
Construct multiple
frontal matrices
in such a way
so they sum up
to the full matrix
Variables must be split
into parts
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
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
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
…
MULTI-FRONTAL SOLVER ALGORITHM
root
+
node
+
+ + +
+ + +
+ + +
+ + +
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)
GENERALIZATION TO 1D FINITE ELEMENT METHOD
Strong formulation
Weak formulation
bu, v l v
v V v H 1 0, l : v(0) 0
GENERALIZATION TO 1D FINITE ELEMENT METHOD
a e a be , e l e
N
u i i v ej i i j j j 1,...,N
i 1 i 1
l l
Exemplary basis functions for [0,l] = [0,1], for two finite elements
e2 1K 2 2K1
e3 2K 2
e1 1K1
1
be1 , e3
ae ' e 'be ' e ce e dx e (l )e (l ) 0 d
1 3 1 3 1 3 1 3
1
0.5 K1
d 2K1 d1K1 K1
K1 K1
be , e ae ' e 'be ' e ce e dx e (l )e (l ) a
0
1 2 1 2 1 2 1 2 1 1
1
b c1 2 dx
dx dx dx 2
0 0
1 1
d1 2 d 2 2
K K
d1K 2 K 2
K2 K2
be2 , e3 ae2 ' e3 'be2 ' e3 ce 2 e3 dx e2 (l )e3 (l ) a
b 2 c1 2 dx
0
0.5
dx dx dx
GENERALIZATION TO 1D FINITE ELEMENT METHOD
be1 , e1 be2 , e1 be3 , e1 a1 l e1
N be , e be , e be , e a l e
u a e
i 1
i i v ej 1 2 2 2 3 2 2 2
be1 , e3 be2 , e3 be3 , e3 a3 l e3
l
aei ' e j 'bei ' e j cei e j dx ei (l )e j (l )
l
b ei , e j f e j dx e j (l )
l ej
0 0
Exemplary basis functions for [0,l] = [0,1], for two finite elements
e2 1K 2 2K1
e3 2K 2
K
e1 1 1
dx
2
1 0.5
d1 1 d1 1 d1K1 K1
K K
be1 , e1 ae1 ' e1 'be1 ' e1 ce1e1dx e1 (l )e1 (l ) a
b 1 c 1K1
0
dx
0
dx dx
1
be2 , e2 ae2 ' e2 'be2 ' e2 ce 2 e2 dx e2 (l )e2 (l )
0
2
dx
0.5 1
d 2 1 d 2 1 d 2K1 K1 d1 2 d1 2 d1K 2 K 2
K K K K
2
a b 2 c 2K1 dx a b 1 c 1K 2
dx
0
dx dx
dx
0.5
dx dx
1 1
d 2K 2 d 2K2 d 2K 2
be3 , e3 ae3 ' e3 'be3 ' e3 ce3e3dx e3 (l )e3 (l )
2
a b 2K 2 c 2K 2 dx
0
dx
0.5
dx dx
GENERALIZATION TO 1D FINITE ELEMENT METHOD
b 1K1 , 1K1
b 2K1 , 1K1 0 a1
l 1K1
b 1 , 2
K1 K1
b 2 , 2
K1 K1
b 1 , 1
K2 K2
b 2 , 1
K2 K2
K1
a2 l 2 l 1
K2
0
b 1K 2 , 2K 2 b 2 , 2
K2 K2
a
3
l 2K 2
b 1K , 1K b 2 , 1
K K
x
K
l 1
K
K
a
b iK , Kj i ' j 'b i ' j
K K K K
c iK Kj dx iK (l ) iK (l )
K
f
l ej Kj dx Kj (l )
K
b 1K , 1K b K
, K
x
K
1
l 1
K
K
b 1K , 1K b 2 , 1
K K
x
K
l 1
K
K
b 1K , 1K b 2 , 1
K K
x
K
l 1
K
b 1K , 1K b 2 , 1
K K
x
K
l 1
K
b , b
K K
2 , 1
K K
x K l
K
b 1K , 1K b 2 , 1
K K
x
K
l 1
K
b 1 , 1
K K
b , x
K K K
l
K
b , b x
l b x
1
b b , x
1 1 1 1
2 1 1
2 , 2
b 1 , 2 2 , 2 l 2
K K K K K K K K K K K
1 , 2 l
2
K K K K K
1 2 2 2 2 2 2
e1hp 3
ehp 5
ehp
2 4
ehp ehp 7 9
ehp ehp
8
ehp
2D hp FINITE ELEMENT METHOD
e1hp 3
ehp 5
ehp
2 4
ehp ehp 7 9
ehp ehp
8
ehp
i j
b e ,e hp hp
i 15
hp hp hp
The coefficients u hp
u i
b e i
, e j
l e j
hp j 1,...,15
(called „degrees of freedom” d.o.f.) i 1
are obtained by solving
system of linear equations –
where
i
b ehp , ehpj and l e
j
hp
are some integrals of shape functions
finite element disecretization i
ehp , ehpj
of a weak (variational) form of PDE
FRONTAL SOLVER
SOLUTION BASED ON LINEAR ORDER OF ELEMENTS
Partial
forward elimination
O(6*9^2)
Full
forward elimination
Partial
forward elimination
MULTI-FRONTAL SOLVER
SOLUTION BASED ON THE ELIMINATION TREE
Partial
forward elimination
MULTI-FRONTAL SOLVER
SOLUTION BASED ON THE ELIMINATION TREE
For any initial mesh, the elimination tree can be created based on
nested dissection algorithm.
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)
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)
CONSTRUCTION OF THE REFINEMENT TREES
CONSTRUCTION OF THE REFINEMENT TREES
CONSTRUCTION OF THE REFINEMENT TREES
CONSTRUCTION OF THE REFINEMENT TREES
ELIMINATIONS BASED ON REFINEMENT TREES
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
• Finally, Schur complement contributions are merged at the tree root node
ELIMINATIONS BASED ON REFINEMENT TREES
Level of
initial mesh elements
Level of
refinement trees
Level of
initial mesh elements
Level of
refinement trees
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
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
PERFORMANCE OF THE 1st VERSION OF THE DISTRIBUTED
MEMORY MULTI-FRONTAL PARALLEL SOLVER
1,482,570 degrees of freedom (68,826,475 non-zeros)
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