PETSc Users,
I am doing a KSPPREONLY solution (of the heat transfer equation using FEA) and comparing several packages like PARDISO and MUMPS, and I am encountering a MatSolve() failure that I am having trouble diagnosing. The matrix inversion fails and I get "nan". The failure only happens for certain input files, and its not (just) related to problem size. By making a slight change to the geometry of the problem I can get it to solve. The SuperLu solver is the only one that will give me any error message: -ksp_type preonly -pc_type lu -pc_mat_solver_package superlu -info I get the error message: [0] MatSolve(): MatFactorError 2 Is that a PCFailedReason of PC_FACTOR_NUMERIC_ZEROPIVOT? If so, is there a way to perturb the pivot in some way? In another (non-PETSc) code which uses MKL PARDISO I am able to solve the exact same problem by the same approach without any issues, and that code gives PARDISO a pivot perturbation flag value. Is there a better way to figure out what is happening? I have been running the code in TotalView with extreme memory checks and everything appears to be ok. Thanks, Matt Overholt CapeSym, Inc. --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus
