Check correctness of snes_tutorials-ex69_q2p1bddc*
Hi @stefanozampini,
I've run into test failures related to the snes_tutorials-ex69_q2p1bddc*
sequence in !4469 (merged).
I'm still debugging my code, but as far as I can tell I'm making O(eps) changes to the Newton step problem and the Pardiso solver is failing.
At first I thought it was just a problem with some kind of bug with complex arithmetic in Pardiso (!4510 (merged)), but it's also manifesting in real arithmetic, too.
When I run the test sequence on main
, I find the solvers are sensitive to the number of processes. My intuition
was that PCBDDC
should be valid for any NP
.
While I'm checking my code, could you help me with these questions?
Questions:
- Is there something about this problem that it should only work for
NP=5
? - Can you check the way that we are calling the sparse direct solvers / lapack routines?
NP |
card |
mumps |
adaptive_mumps |
mkl |
adaptive_mkl |
---|---|---|---|---|---|
2 |
|
|
|||
3 |
|
|
|||
4 |
|
|
|||
5 | |||||
6 | |||||
7 |
|
||||
8 | |||||
9 | |||||
10-16 |
|
|
|
|
-
❌ 🅰 :KSPSolve_CG
:Diverged due to indefinite preconditioner
-
⚠ 🅱 : ???:Intel MKL ERROR: Paramter 7 was incorrect on entry to {DSYRK,DSYR2K}