Hi all, I am trying to find off block diagonal entries of a matrix and I am trying to use MatFindOffBlockDiagonalEntries. However, although my matrix is not NULL, I am getting an error message as follows:
1]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [1]PETSC ERROR: [2]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [2]PETSC ERROR: Null argument, when expecting valid pointer [2]PETSC ERROR: Null Object: Parameter # 1 [2]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting. [2]PETSC ERROR: Petsc Release Version 3.11.1, Apr, 12, 2019 [2]PETSC ERROR: [3]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [3]PETSC ERROR: Null argument, when expecting valid pointer [3]PETSC ERROR: Null Object: Parameter # 1 [3]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting. [3]PETSC ERROR: Null argument, when expecting valid pointer [1]PETSC ERROR: Null Object: Parameter # 1 [1]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting. [1]PETSC ERROR: Petsc Release Version 3.11.1, Apr, 12, 2019 [1]PETSC ERROR: ./approx_cut_deneme_clustering_son_final_edgecut_without_parmetis on a arch-linux2-c-debug named b342.wls.metu.edu.tr by edaoktay Fri Jun 19 18:19:11 2020 [1]PETSC ERROR: Configure options --download-mpich --download-openblas --download-slepc --download-metis --download-parmetis --download-chaco --with-X=1 [1]PETSC ERROR: #1 ISGetSize() line 510 in /home/edaoktay/petsc-3.11.1/src/vec/is/is/interface/index.c [1]PETSC ERROR: ./approx_cut_deneme_clustering_son_final_edgecut_without_parmetis on a arch-linux2-c-debug named b342.wls.metu.edu.tr by edaoktay Fri Jun 19 18:19:11 2020 [2]PETSC ERROR: Configure options --download-mpich --download-openblas --download-slepc --download-metis --download-parmetis --download-chaco --with-X=1 [2]PETSC ERROR: #1 ISGetSize() line 510 in /home/edaoktay/petsc-3.11.1/src/vec/is/is/interface/index.c [2]PETSC ERROR: #2 MatFindOffBlockDiagonalEntries_MPIAIJ() line 211 in /home/edaoktay/petsc-3.11.1/src/mat/impls/aij/mpi/mpiaij.c [2]PETSC ERROR: #2 MatFindOffBlockDiagonalEntries_MPIAIJ() line 211 in /home/edaoktay/petsc-3.11.1/src/mat/impls/aij/mpi/mpiaij.c [1]PETSC ERROR: #3 MatFindOffBlockDiagonalEntries() line 10502 in /home/edaoktay/petsc-3.11.1/src/mat/interface/matrix.c #3 MatFindOffBlockDiagonalEntries() line 10502 in /home/edaoktay/petsc-3.11.1/src/mat/interface/matrix.c Petsc Release Version 3.11.1, Apr, 12, 2019 [3]PETSC ERROR: ./approx_cut_deneme_clustering_son_final_edgecut_without_parmetis on a arch-linux2-c-debug named b342.wls.metu.edu.tr by edaoktay Fri Jun 19 18:19:11 2020 [3]PETSC ERROR: Configure options --download-mpich --download-openblas --download-slepc --download-metis --download-parmetis --download-chaco --with-X=1 [3]PETSC ERROR: #1 ISGetSize() line 510 in /home/edaoktay/petsc-3.11.1/src/vec/is/is/interface/index.c [3]PETSC ERROR: #2 MatFindOffBlockDiagonalEntries_MPIAIJ() line 211 in /home/edaoktay/petsc-3.11.1/src/mat/impls/aij/mpi/mpiaij.c [3]PETSC ERROR: #3 MatFindOffBlockDiagonalEntries() line 10502 in /home/edaoktay/petsc-3.11.1/src/mat/interface/matrix.c And the program is still running. The part of my program is : Mat Ais; MatCreateSubMatrix(A,idUi,idUi,MAT_INITIAL_MATRIX,&Ais); ISSetPermutation(idUi); MatPermute(Ais,idUi,idUi,&PL); IS offd; MatFindOffBlockDiagonalEntries(PL,&offd); Since there isn't any examples for this function, I couldn't understand what should I do. Since it says in the error that it is about parameter 1, the matrix, I don't know how to solve the problem. My matrix PL is parallel sparse. I know there shouldn't be any problem in PL since I can view PL by using MatView. Thanks! Eda