methods for improving sla - tu delft
TRANSCRIPT
Wouter Swart (TU Delft) A literature study February 23, 2018 1 / 25
Methods for improving SLADelft University of Technology
Wouter Swart
February 23, 2018
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 2 / 25
Motivation
Wouter Swart (TU Delft) A literature study February 23, 2018 3 / 25
Motivation: NLFEA incremental-iterativesolution
• Assess structural strength using nonlinear finite element analysis.
• Search for equilibrium in-between load increments.
→ using Newton-Raphson type methods
• When analysing brittle structures large deformations can occurin-between load increments.
→ convergence is difficult
• Proposed solution: sequentially linear analyses (Rots)
Wouter Swart (TU Delft) A literature study February 23, 2018 4 / 25
Motivation: sequentially linear analysis
• Damage is incremented instead of load.
• Assumption: material degrades stepwise.
→ nonlinear behaviour can be approximated with sequence oflinear analyses.
• Requirement: solve large number of linear systems.
Wouter Swart (TU Delft) A literature study February 23, 2018 5 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 6 / 25
Direct solution methods
Want to solve:
Ku = f .
Direct solution methods typically consist of three stages
• Matrix reordering
• Factorisation
• Forward/backward substitution
Wouter Swart (TU Delft) A literature study February 23, 2018 7 / 25
Direct solution methods: factorisationWant to write the stiffness matrix K as a product:
K = LU =
l1,1 0
.... . .
ln,1 . . . ln,n
u1,1 . . . u1,n
. . ....
0 un,n
.
Example:
Wouter Swart (TU Delft) A literature study February 23, 2018 8 / 25
Direct solution methods: factorisation
• Occurrence of fill-in.→ Solution: reordering of the matrix prior to factorisation.
Wouter Swart (TU Delft) A literature study February 23, 2018 9 / 25
Direct solution methods: factorisation
• Occurrence of fill-in.→ Solution: reordering of the matrix prior to factorisation.
Wouter Swart (TU Delft) A literature study February 23, 2018 10 / 25
Direct solution methods: factorisation
• Once factorisation is known solution can be easily computed.
Ku = f ⇒ LUu = f
• Introducing y = Uu it suffices to solve:
Ly = f (Forward substitution)
Uu = y (Backward substitution)
• Costs:
Factorisation: O(n3)
Forward/backward subtitution: O(n2)
Wouter Swart (TU Delft) A literature study February 23, 2018 11 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 12 / 25
Iterative solution methods
Want to solve:
Ku = f .
Instead of exact solution, create a sequence of approximations
u0,u1, . . .
If K is symmetric and positive definite
→ Conjugate gradient method is the best choice
Wouter Swart (TU Delft) A literature study February 23, 2018 13 / 25
Conjugate gradient method
• Constructs solution from a Krylov subspace
• Every iteration Krylov subspace dimension increases by 1
• After n iterations, the Krylov subspace spans the entire space
→ CG requires at most n iterations
• If the stiffness matrix only contains r distinct eigenvalues
→ only r iterations are required
Wouter Swart (TU Delft) A literature study February 23, 2018 14 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 15 / 25
Woodbury identity
Theorem (Woodbury identity)
The inverse of a rank-k correction of the matrix A is given by:(K + UCV )−1 = K−1 − K−1U
(C−1 + VK−1U
)−1VK−1
Solution to Knewu = fnew can then be obtained as:
unew = K−1newfnew
= (K + UCV )−1 fnew
=(K−1 − K−1U
(C−1 + VK−1U
)−1VK−1
)fnew
= K−1fnew − K−1U(C−1 + VK−1U
)−1VK−1fnew
Wouter Swart (TU Delft) A literature study February 23, 2018 16 / 25
Woodbury identity: example
Wouter Swart (TU Delft) A literature study February 23, 2018 17 / 25
Woodbury identity: example
Direct method Flopcount
Fact. (LU) 1.6 · 1013
Back/forward sub. 1.6 · 1010
Total 1.6016 · 1013
Woodbury identity Flopcount
Fact. (LU) 23k
3
Back/forward sub. 2k2
Additional 1.6002 · 1010 + k · 1.6008 · 1010 + k2 · 4 · 106
Wouter Swart (TU Delft) A literature study February 23, 2018 18 / 25
Woodbury identity: example
Determine k for which cost of Woodbury identity is costlier:
k = 828 .
Assume: stiffness matrix gets rank-12 update after each analysis
→ 69 linear analyses can be performed before restart is necessary
Wouter Swart (TU Delft) A literature study February 23, 2018 19 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 20 / 25
Preconditioning CG
• Possible improvement: precondition with (approximate)factorisation of initial stiffness matrix
→ n − k eigenvalues will be equal to 1
→ only k + 1 CG iterations are required
• Use approximate factorisation when complete factorisation tooexpensive
Wouter Swart (TU Delft) A literature study February 23, 2018 21 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 22 / 25
Research proposal
For the remainder of the thesis, the following main research questionis formulated:
How can SLA be improved such that it requires reduced CPUtime?
To answer this, the following approaches are proposed:
• Implement Woodbury matrix identity
• Investigate effectiveness of preconditioning iterative method with(approximate) factorisation
Wouter Swart (TU Delft) A literature study February 23, 2018 23 / 25
Outline
1 Motivation
2 Solution MethodsDirect methodsIterative methods
3 ImprovementsWoodbury identityPreconditioning CG
4 ConclusionResearch proposal
5 Preliminary resultsSetting up element stiffness matrices
Wouter Swart (TU Delft) A literature study February 23, 2018 24 / 25
Preliminary results
• Per iteration only one element stiffness matrix is recomputed.
• Parallel computing environment was set-up nonetheless→ unnecessary computational overhead.
• Removal resulted in significant improvements in CPU times:
Test problem SL Testsuit Shear wall Reinforced slab
Before 16:58 50:00 5:00:38
After 14:18 46:39 3:54:21
-15.72% -6.70% -22.05%
Wouter Swart (TU Delft) A literature study February 23, 2018 25 / 25
Wouter Swart (TU Delft) A literature study February 23, 2018 26 / 25
Methods for improving SLADelft University of Technology
Wouter Swart
February 23, 2018