Hello everyone, I had some problem in using superlu_dist with same_nonzero_pattern. Sometimes superlu_dist solver halts there and never finishes. However, when I switched to different_nonzero_pattern or other solvers, the program works nicely. ?Ding had reported this problem a few months ago: ?http://lists.mcs.anl.gov/pipermail/petsc-users/2011-January/007623.html
Following Barry's suggestion, I checked that the nonzero pattern of my matrix is still the same via ?ierr=MatSetOption(M, MAT_NEW_NONZERO_LOCATION_ERR,PETSC_TRUE); CHKERRQ(ierr); I tried two other options: 1 First install the latest superlu_dist (v2.5), then compile petsc with this new superlu_dist package. However, the problem is still there, and the performance is even worse ( comparing to the option --download-superlu_dist=yes (v2.4)). 2 I compiled petsc-dev with --download-superlu_dist. However, I got some errors when compiling my program with petsc-dev. It said that ResonatorOpt.c: In function ?main?: ResonatorOpt.c:154: error: ?MAT_SOLVER_SUPERLU_DIST? undeclared (first use in this function) ResonatorOpt.c:154: error: (Each undeclared identifier is reported only once ResonatorOpt.c:154: error: for each function it appears in.) Besides superlu_dist, MAT_SOLVER_PASTIX and MAT_SOLVER_PASTIX are undeclared either. Am I missing some header files? I used the same procedure as I complied regular petsc, which had no such problems. (I tried to attach the configure log in a previous mail, but it is bounced back.) Can you give me some suggestions on using superlu_dist with same_nonzero_pattern? Thank you. Best, Xiangdong