| 1 | These are a list of solvers that have worked fairly consistently, try them out locally and if the recovery solver is not activated, you should be safe for longer transient runs: |
| 2 | |
| 3 | % biconjugate gradient with block Jacobi preconditioner [Thiago's favorite] |
| 4 | md.toolkits.DefaultAnalysis=bcgslbjacobioptions(); |
| 5 | |
| 6 | % germs with block jacobi preconditioned [Martin's favorite] |
| 7 | md.toolkits.DefaultAnalysis=gmresbjacobioptions(); |
| 8 | md.toolkits.DefaultAnalysis.ksp_max_it=1; |
| 9 | |
| 10 | % ASM, used for mass conservation but may work for other things |
| 11 | md.toolkits.DefaultAnalysis=asmoptions(); |
| 12 | |
| 13 | % An iterative solver may work for one analysis and not another, you can assign a solver to each, like this: |
| 14 | md.toolkits.StressbalanceAnalysis = gmresbjacobioptions(); |
| 15 | md.toolkits.DefaultAnalysis=issmmumpssolver(); |
| 16 | |
| 17 | %Keep recovery mode as MUMPS |
| 18 | md.toolkits.RecoveryAnalysis=issmmumpssolver(); |