a robust preconditioner for the conjugate gradient method
DESCRIPTION
A robust preconditioner for the conjugate gradient method. Pierre Verpeaux CEA DEN/DM2S/SEMT Stéphane Gounand CEA DEN/DM2S/SFME/LTMF Work context Direct solver Krylov solver New preconditionner Conclusion Further development. General context. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/1.jpg)
04/24/23 ECCM 2010 1
A robust preconditioner for the conjugate gradient method
– Pierre Verpeaux CEA DEN/DM2S/SEMT– Stéphane Gounand CEA DEN/DM2S/SFME/LTMF
• Work context• Direct solver• Krylov solver
– New preconditionner• Conclusion• Further development
![Page 2: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/2.jpg)
04/24/23 ECCM 2010 2
General context
• General purpose Cast3m computer code developed at CEA for mechanical problem solving by FEM method.
• Used in Nuclear Industry and others.• Toolbox for researcher• Blackbox for end user• Important need for qualification and
validation.
![Page 3: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/3.jpg)
04/24/23 ECCM 2010 3
Quality criteria for industrial code
– No need for tuning– Correct solution if correct problem– Incorrect problem detection– Predictable time– No failure
![Page 4: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/4.jpg)
04/24/23 ECCM 2010 4
Context
• Cement paste studies – EHPOC project• Heterogeneous material with inclusions• High mechanical properties contrast• REV analysis• Need for realistic representation of
inclusions including sharp edge• Need for accuracy. Reference calculation• CAO meshes with the Salome framework
![Page 5: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/5.jpg)
04/24/23 ECCM 2010 5
Spherical inclusions
![Page 6: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/6.jpg)
04/24/23 ECCM 2010 6
Sharp inclusions
![Page 7: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/7.jpg)
04/24/23 ECCM 2010 7
23.5 million tetrahedrons
![Page 8: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/8.jpg)
04/24/23 ECCM 2010 8
Solver challenge
• Large number of degrees of freedom• Very bad matrix conditioning due to
– Properties contrast– Flattened elements
• Various boundary condition including periodic condition of different kind. Use of cinematic constraints with Lagrange multiplier.
• Multiple problem solving on the same matrix.
![Page 9: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/9.jpg)
04/24/23 ECCM 2010 9
Direct solver
• Robust and precise• Nested dissection ordering and sparse
Crout solver• Spatial complexity in O(n4/3)• Temporal complexity in O(n5/3) for
preconditioning (factorization). Parallelizable.
• Temporal complexity in O(n4/3) for solving.
![Page 10: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/10.jpg)
04/24/23 ECCM 2010 10
Direct solver - 2
• Out of core storage• Around 100Go of matrix storage for
10.000.000 dof. Practical limit on desktop PC.
• 1d-12 accuracy• Unilateral constraints available
![Page 11: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/11.jpg)
04/24/23 ECCM 2010 11
Krylov method
• Constraint: maintain O(n) spatial complexity• In core preconditioner storage• No convergence with ILU(n) or ILUT
preconditioner• No convergence with domain decomposition
preconditioner• Some hope with algebraic multigrid
preconditioner, but not yet implemented for mechanic.
![Page 12: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/12.jpg)
04/24/23 ECCM 2010 12
New preconditioner
• ILU(0) far better than ILU(n) for n small when it converges
• Non convergence of Krylov iterations is related to small diagonal terms in the preconditioner
• Idea: control the diagonal terms of the preconditioner by augmentation.
• Risk of numerical instability due to the augmentation.
![Page 13: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/13.jpg)
04/24/23 ECCM 2010 13
New preconditioner - 2
• Converge in all tested cases!• Most efficient with conjugate gradient
method and RCM ordering• 1d-15 accuracy• O(n) space complexity• O(n4/3) temporal complexity approx• Poor parallelism• 16 000 000 dof on a 16gB desktop PC
![Page 14: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/14.jpg)
04/24/23 ECCM 2010 14
Stresses in matrix
![Page 15: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/15.jpg)
04/24/23 ECCM 2010 15
Convergence comparaison
![Page 16: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/16.jpg)
04/24/23 ECCM 2010 16
CG versus BiCG
![Page 17: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/17.jpg)
04/24/23 ECCM 2010 17
Iterations versus DOF
![Page 18: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/18.jpg)
04/24/23 ECCM 2010 18
Shell mesh refinement
• Convergence study• No refinement in the thickness of the
element• Degradation of the stiffness matrix
conditioning• No convergence of Krylov iteration at
some point• In our case, loss of respect of cinematic
constraints (Lagrange multiplier)
![Page 19: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/19.jpg)
04/24/23 ECCM 2010 19
New preconditioner - 3
• Idea: exact factorization on constraint unknowns. Incomplete factorization on others
• Applies well in solid mechanic since few filling due to cinematic constraints. To be tested in fluid mechanic with pressure constraint
• Penalization of Lagrange multiplier• Convergence maintained on highly refined
meshes.
![Page 20: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/20.jpg)
04/24/23 ECCM 2010 20
Conclusion
• New preconditioner for CG or BiCG method
• RCM ordering• Augmentation of small diagonal terms• Penalization of Lagrange multipliers• Standard in Cast3M FEM code for
mechanical analysis
![Page 21: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/21.jpg)
04/24/23 ECCM 2010 21
Conclusion -2
• Robust – accurate• Low programming complexity (one
instruction development, 6 months thinking)
• Slower convergence than ILU(0) when ILU(0) works – factor 1.5-2
• No failure (yet)
![Page 22: A robust preconditioner for the conjugate gradient method](https://reader031.vdocuments.us/reader031/viewer/2022020210/5681616a550346895dd0f6f2/html5/thumbnails/22.jpg)
04/24/23 ECCM 2010 22
Further development
• Parallelization by block operations• Unilateral constraints on Lagrange
multiplier• Automatic switch between ILU(0) and
ILU(0)augmented?