<div dir="ltr">Hi, Xu Hui,<div> I ran a test with your matrix but met</div><div>$ mpirun -n 4 ./ex0 -f test.mat<br>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------<br>[0]PETSC ERROR: Unexpected data in file<br>[0]PETSC ERROR: Not a matrix object in file<br></div><div>...</div><div>[0]PETSC ERROR: #4 main() at ex0.c:18<br>[0]PETSC ERROR: PETSc Option Table entries:<br>[0]PETSC ERROR: -f test.mat<br>[0]PETSC ERROR: -matload_block_size 2<br></div><div><br></div><div>I attach my test ex0.c. You can run at your side to make sure the matrix is OK. Then, could just put the test and matrix files in a tarball and send it back?</div><div>I feel the problem might be related to -matload_block_size 2. But let's see. </div><div><br></div><div>Thanks.</div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">--Junchao Zhang</div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Apr 15, 2022 at 2:43 AM 459543524 <<a href="mailto:459543524@qq.com">459543524@qq.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Sir, I already dump the matrix into binary file and attached in the mail, and please have a look.</div><div>Thanks for your time.</div><div><br></div><div>The follow code can be used to reproduce problem.</div><div>---------------------------------------------------------------</div><div><div>std::string path = "......";</div><div>PetscViewer viewer;</div><div>PetscViewerBinaryOpen(comm, path.c_str(), FILE_MODE_READ, &viewer);</div><div>Mat A;</div><div>MatCreate(comm,&A);</div><div>MatSetType(A,MATMPIAIJ);</div><div>MatLoad(A,viewer);</div><div>PetscViewerDestroy(&viewer);</div></div><div><div>MatView(A, PETSC_VIEWER_STDOUT_(MPI_COMM_WORLD));</div><div>Mat J;</div><div>MatConvert(A, MATIS, MAT_INITIAL_MATRIX, &J);</div></div><div>---------------------------------------------------------------</div><div>The result shown as follows:</div><div>---------------------------------------------------------------</div><div><div>Mat Object: 4 MPI processes</div><div> type: mpiaij</div><div>row 0: (0, 168.75) (1, 0.) (2, 0.) (3, 0.) (4, 0.) (5, 0.) (6, 0.) (7, 0.) </div><div>row 1: (0, 0.) (1, 168.75) (2, 0.) (3, 0.) (4, 0.) (5, 0.) (6, 0.) (7, 0.) </div><div>row 2: (0, 0.) (1, 0.) (2, 168.75) (3, 0.) (6, 0.) (7, 0.) (8, 0.) (9, 0.) (12, 0.) (13, 0.) </div><div>row 3: (0, 0.) (1, 0.) (2, 0.) (3, 168.75) (6, 0.) (7, 0.) (8, 0.) (9, 0.) (12, 0.) (13, 0.) </div><div>row 4: (0, 0.) (1, 0.) (4, 150.) (5, -25.) (6, -100.) (7, 25.) (16, -25.) (17, 25.) (18, 0.) (19, -25.) </div><div>row 5: (0, 0.) (1, 0.) (4, -25.) (5, 150.) (6, 25.) (7, -50.) (16, 0.) (17, -50.) (18, -25.) (19, 0.) </div><div>row 6: (0, 0.) (1, 0.) (2, 0.) (3, 0.) (4, -100.) (5, 25.) (6, 300.) (7, -50.) (12, -100.) (13, 25.) (18, -50.) (19, 25.) (24, 0.) (25, -25.) </div><div>row 7: (0, 0.) (1, 0.) (2, 0.) (3, 0.) (4, 25.) (5, -50.) (6, -50.) (7, 300.) (12, 25.) (13, -50.) (18, 25.) (19, -100.) (24, -25.) (25, 0.) </div><div>row 8: (2, 0.) (3, 0.) (8, 150.) (9, 0.) (10, 0.) (11, 0.) (12, 0.) (13, 0.) (14, 0.) (15, 0.) </div><div>row 9: (2, 0.) (3, 0.) (8, 0.) (9, 150.) (10, 0.) (11, 0.) (12, 0.) (13, 0.) (14, 0.) (15, 0.) </div><div>row 10: (8, 0.) (9, 0.) (10, 150.) (11, 0.) (14, 0.) (15, 0.) </div><div>row 11: (8, 0.) (9, 0.) (10, 0.) (11, 150.) (14, 0.) (15, 0.) </div><div>row 12: (2, 0.) (3, 0.) (6, -100.) (7, 25.) (8, 0.) (9, 0.) (12, 300.) (13, -50.) (14, -100.) (15, 25.) (24, -50.) (25, 25.) (26, 0.) (27, -25.) </div><div>row 13: (2, 0.) (3, 0.) (6, 25.) (7, -50.) (8, 0.) (9, 0.) (12, -50.) (13, 300.) (14, 25.) (15, -50.) (24, 25.) (25, -100.) (26, -25.) (27, 0.) </div><div>row 14: (8, 0.) (9, 0.) (10, 0.) (11, 0.) (12, -100.) (13, 25.) (14, 150.) (15, -25.) (26, -25.) (27, 0.) </div><div>row 15: (8, 0.) (9, 0.) (10, 0.) (11, 0.) (12, 25.) (13, -50.) (14, -25.) (15, 150.) (26, 25.) (27, -50.) </div><div>row 16: (4, -25.) (5, 0.) (16, 150.) (17, -25.) (18, -100.) (19, 25.) (20, -25.) (21, 25.) (22, 0.) (23, -25.) </div><div>row 17: (4, 25.) (5, -50.) (16, -25.) (17, 150.) (18, 25.) (19, -50.) (20, 0.) (21, -50.) (22, -25.) (23, 0.) </div><div>row 18: (4, 0.) (5, -25.) (6, -50.) (7, 25.) (16, -100.) (17, 25.) (18, 300.) (19, -50.) (22, -50.) (23, 25.) (24, -100.) (25, 25.) (28, 0.) (29, -25.) </div><div>row 19: (4, -25.) (5, 0.) (6, 25.) (7, -100.) (16, 25.) (17, -50.) (18, -50.) (19, 300.) (22, 25.) (23, -100.) (24, 25.) (25, -50.) (28, -25.) (29, 0.) </div><div>row 20: (16, -25.) (17, 0.) (20, 75.) (21, -25.) (22, -50.) (23, 25.) </div><div>row 21: (16, 25.) (17, -50.) (20, -25.) (21, 75.) (22, 0.) (23, -25.) </div><div>row 22: (16, 0.) (17, -25.) (18, -50.) (19, 25.) (20, -50.) (21, 0.) (22, 150.) (23, -25.) (28, -50.) (29, 25.) </div><div>row 23: (16, -25.) (17, 0.) (18, 25.) (19, -100.) (20, 25.) (21, -25.) (22, -25.) (23, 150.) (28, 0.) (29, -25.) </div><div>row 24: (6, 0.) (7, -25.) (12, -50.) (13, 25.) (18, -100.) (19, 25.) (24, 300.) (25, -50.) (26, -100.) (27, 25.) (28, -50.) (29, 25.) (30, 0.) (31, -25.) </div><div>row 25: (6, -25.) (7, 0.) (12, 25.) (13, -100.) (18, 25.) (19, -50.) (24, -50.) (25, 300.) (26, 25.) (27, -50.) (28, 25.) (29, -100.) (30, -25.) (31, 0.) </div><div>row 26: (12, 0.) (13, -25.) (14, -25.) (15, 25.) (24, -100.) (25, 25.) (26, 150.) (27, -25.) (30, -25.) (31, 0.) </div><div>row 27: (12, -25.) (13, 0.) (14, 0.) (15, -50.) (24, 25.) (25, -50.) (26, -25.) (27, 150.) (30, 25.) (31, -50.) </div><div>row 28: (18, 0.) (19, -25.) (22, -50.) (23, 0.) (24, -50.) (25, 25.) (28, 150.) (29, -25.) (30, -50.) (31, 25.) </div><div>row 29: (18, -25.) (19, 0.) (22, 25.) (23, -25.) (24, 25.) (25, -100.) (28, -25.) (29, 150.) (30, 0.) (31, -25.) </div><div>row 30: (24, 0.) (25, -25.) (26, -25.) (27, 25.) (28, -50.) (29, 0.) (30, 75.) (31, 0.) </div><div>row 31: (24, -25.) (25, 0.) (26, 0.) (27, -50.) (28, 25.) (29, -25.) (30, 0.) (31, 75.) </div><div>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------</div><div>[0]PETSC ERROR: Argument out of range</div><div>[0]PETSC ERROR: Scatter indices in ix are out of range</div><div>[0]PETSC ERROR: See <a href="https://petsc.org/release/faq/" target="_blank">https://petsc.org/release/faq/</a> for trouble shooting.</div><div>[0]PETSC ERROR: Petsc Release Version 3.15.4, Sep 01, 2021 </div><div>[0]PETSC ERROR: Unknown Name on a named xuhui-Office by xuhui Fri Apr 15 15:40:00 2022</div><div>[0]PETSC ERROR: Configure options --prefix=/opt/petsc/debug_int64 --download-mumps --download-scalapack --download-superlu_dist --download-parmetis --download-metis --with-64-bit-indices=1</div><div>[0]PETSC ERROR: #1 VecScatterCreate() at /home/xuhui/Temp/petsc-3.15.4/src/vec/is/sf/interface/vscat.c:767</div><div>[0]PETSC ERROR: #2 MatISSetUpScatters_Private() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:2403</div><div>[0]PETSC ERROR: #3 MatSetLocalToGlobalMapping_IS() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:2501</div><div>[0]PETSC ERROR: #4 MatSetLocalToGlobalMapping() at /home/xuhui/Temp/petsc-3.15.4/src/mat/interface/matrix.c:2093</div><div>[0]PETSC ERROR: #5 MatConvert_XAIJ_IS() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:651</div><div>[0]PETSC ERROR: #6 MatConvert() at /home/xuhui/Temp/petsc-3.15.4/src/mat/interface/matrix.c:4439</div><div>^C[mpiexec@xuhui-Office] Sending Ctrl-C to processes as requested</div></div><div><br></div><div>---------------------------------------------------------------</div><div><hr align="left" style="margin:0px 0px 10px;border-width:0px 0px 1px;border-top-style:initial;border-right-style:initial;border-left-style:initial;border-top-color:initial;border-right-color:initial;border-left-color:initial;border-bottom-style:solid;border-bottom-color:rgb(228,229,230);height:0px;line-height:0;font-size:0px;padding:20px 0px 0px;width:50px"><div style="font-size:14px;font-family:Verdana;color:rgb(0,0,0)"><div><div style="font-size:12px;font-family:"Arial Narrow""><font face="Verdana">徐辉,Xu Hui<br>清华大学航天航空学院博士研究生<br>PhD Candidate, School of Aerospace Engineering<br>Tsinghua University<br>Tel: 188-1152-7137<br>Mail:<a href="mailto:459543524@qq.com" target="_blank">459543524@qq.com</a></font></div><div style="font-family:Verdana"><div><br></div></div></div>
</div></div><div> </div><div><div><br></div><div><br></div><div style="font-size:12px;font-family:"Arial Narrow";padding:2px 0px">------------------ 原始邮件 ------------------</div><div style="font-size:12px;background:rgb(239,239,239);padding:8px"><div><b>发件人:</b> "Junchao Zhang" <<a href="mailto:junchao.zhang@gmail.com" target="_blank">junchao.zhang@gmail.com</a>>;</div><div><b>发送时间:</b> 2022年4月15日(星期五) 上午6:31</div><div><b>收件人:</b> "459543524"<<a href="mailto:459543524@qq.com" target="_blank">459543524@qq.com</a>>;</div><div><b>抄送:</b> "petsc-users"<<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>>;</div><div><b>主题:</b> Re: [petsc-users] Can not understand why convert matrix type from MPIAIJ to MATIS failed.</div></div><div><br></div><div dir="ltr"><div>Since you already have the test matrix, could you add "-mat_view binary" to dump the matrix and send us the binaryoutput.* files for reproduce?</div><br clear="all"><div><div dir="ltr"><div dir="ltr">--Junchao Zhang</div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 14, 2022 at 10:09 AM 459543524 via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Sir, I can not understand why my convert from MPIAIJ to MATIS failed.</div><div><br></div><div>I already have a matrix A, create by follow commands</div><div>---------------------------------------------------------------------</div><div>Mat A;</div><div>MatCreateAIJ(...)</div><div>MatSetValues(...)</div><div><div>MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY);</div><div>MatAssemblyEnd(A, MAT_FINAL_ASSEMBLY);</div></div><div>---------------------------------------------------------------------</div><div>I want convert the matrix A to MATIS type for future BDDC operation, as advised by ex 72.</div><div>---------------------------------------------------------------------</div><div>Mat J;</div><div>MatConvert(A, MATIS, MAT_INITIAL_MATRIX, &J);</div><div>---------------------------------------------------------------------</div><div><br></div><div>The command failed with the stacktrace</div><div><div>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------</div><div>[0]PETSC ERROR: Argument out of range</div><div>[0]PETSC ERROR: Scatter indices in ix are out of range</div><div>[0]PETSC ERROR: See <a href="https://petsc.org/release/faq/" target="_blank">https://petsc.org/release/faq/</a> for trouble shooting.</div><div>[0]PETSC ERROR: Petsc Release Version 3.15.4, Sep 01, 2021 </div><div>[0]PETSC ERROR: Unknown Name on a named xuhui-Office by xuhui Thu Apr 14 23:06:08 2022</div><div>[0]PETSC ERROR: Configure options --prefix=/opt/petsc/debug_int64 --download-mumps --download-scalapack --download-superlu_dist --download-parmetis --download-metis --with-64-bit-indices=1</div><div>[0]PETSC ERROR: #1 VecScatterCreate() at /home/xuhui/Temp/petsc-3.15.4/src/vec/is/sf/interface/vscat.c:767</div><div>[0]PETSC ERROR: #2 MatISSetUpScatters_Private() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:2403</div><div>[0]PETSC ERROR: #3 MatSetLocalToGlobalMapping_IS() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:2501</div><div>[0]PETSC ERROR: #4 MatSetLocalToGlobalMapping() at /home/xuhui/Temp/petsc-3.15.4/src/mat/interface/matrix.c:2093</div><div>[0]PETSC ERROR: #5 MatConvert_XAIJ_IS() at /home/xuhui/Temp/petsc-3.15.4/src/mat/impls/is/matis.c:651</div><div>[0]PETSC ERROR: #6 MatConvert() at /home/xuhui/Temp/petsc-3.15.4/src/mat/interface/matrix.c:4439</div><div>^C[mpiexec@xuhui-Office] Sending Ctrl-C to processes as requested</div></div><div><br></div><div><br></div><div>I have no idea why this happen. Thanks for your time.</div><div><br></div><div><br></div><div>Further information:</div><div>The matrix A is distributed on 4 processes.</div><div>We can view the matrix as follows:</div><div><br></div><div><div>Mat Object: 4 MPI processes</div><div> type: mpiaij</div><div>row 0: (0, 168.75) (1, 0.) (2, 0.) (3, 0.) (4, 0.) (5, 0.) (6, 0.) (7, 0.) </div><div>row 1: (0, 0.) (1, 168.75) (2, 0.) (3, 0.) (4, 0.) (5, 0.) (6, 0.) (7, 0.) </div><div>row 2: (0, 0.) (1, 0.) (2, 168.75) (3, 0.) (6, 0.) (7, 0.) (8, 0.) (9, 0.) (12, 0.) (13, 0.) </div><div>row 3: (0, 0.) (1, 0.) (2, 0.) (3, 168.75) (6, 0.) (7, 0.) (8, 0.) (9, 0.) (12, 0.) (13, 0.) </div><div>row 4: (0, 0.) (1, 0.) (4, 150.) (5, -25.) (6, -100.) (7, 25.) (16, -25.) (17, 25.) (18, 0.) (19, -25.) </div><div>row 5: (0, 0.) (1, 0.) (4, -25.) (5, 150.) (6, 25.) (7, -50.) (16, 0.) (17, -50.) (18, -25.) (19, 0.) </div><div>row 6: (0, 0.) (1, 0.) (2, 0.) (3, 0.) (4, -100.) (5, 25.) (6, 300.) (7, -50.) (12, -100.) (13, 25.) (18, -50.) (19, 25.) (24, 0.) (25, -25.) </div><div>row 7: (0, 0.) (1, 0.) (2, 0.) (3, 0.) (4, 25.) (5, -50.) (6, -50.) (7, 300.) (12, 25.) (13, -50.) (18, 25.) (19, -100.) (24, -25.) (25, 0.) </div><div>row 8: (2, 0.) (3, 0.) (8, 150.) (9, 0.) (10, 0.) (11, 0.) (12, 0.) (13, 0.) (14, 0.) (15, 0.) </div><div>row 9: (2, 0.) (3, 0.) (8, 0.) (9, 150.) (10, 0.) (11, 0.) (12, 0.) (13, 0.) (14, 0.) (15, 0.) </div><div>row 10: (8, 0.) (9, 0.) (10, 150.) (11, 0.) (14, 0.) (15, 0.) </div><div>row 11: (8, 0.) (9, 0.) (10, 0.) (11, 150.) (14, 0.) (15, 0.) </div><div>row 12: (2, 0.) (3, 0.) (6, -100.) (7, 25.) (8, 0.) (9, 0.) (12, 300.) (13, -50.) (14, -100.) (15, 25.) (24, -50.) (25, 25.) (26, 0.) (27, -25.) </div><div>row 13: (2, 0.) (3, 0.) (6, 25.) (7, -50.) (8, 0.) (9, 0.) (12, -50.) (13, 300.) (14, 25.) (15, -50.) (24, 25.) (25, -100.) (26, -25.) (27, 0.) </div><div>row 14: (8, 0.) (9, 0.) (10, 0.) (11, 0.) (12, -100.) (13, 25.) (14, 150.) (15, -25.) (26, -25.) (27, 0.) </div><div>row 15: (8, 0.) (9, 0.) (10, 0.) (11, 0.) (12, 25.) (13, -50.) (14, -25.) (15, 150.) (26, 25.) (27, -50.) </div><div>row 16: (4, -25.) (5, 0.) (16, 150.) (17, -25.) (18, -100.) (19, 25.) (20, -25.) (21, 25.) (22, 0.) (23, -25.) </div><div>row 17: (4, 25.) (5, -50.) (16, -25.) (17, 150.) (18, 25.) (19, -50.) (20, 0.) (21, -50.) (22, -25.) (23, 0.) </div><div>row 18: (4, 0.) (5, -25.) (6, -50.) (7, 25.) (16, -100.) (17, 25.) (18, 300.) (19, -50.) (22, -50.) (23, 25.) (24, -100.) (25, 25.) (28, 0.) (29, -25.) </div><div>row 19: (4, -25.) (5, 0.) (6, 25.) (7, -100.) (16, 25.) (17, -50.) (18, -50.) (19, 300.) (22, 25.) (23, -100.) (24, 25.) (25, -50.) (28, -25.) (29, 0.) </div><div>row 20: (16, -25.) (17, 0.) (20, 75.) (21, -25.) (22, -50.) (23, 25.) </div><div>row 21: (16, 25.) (17, -50.) (20, -25.) (21, 75.) (22, 0.) (23, -25.) </div><div>row 22: (16, 0.) (17, -25.) (18, -50.) (19, 25.) (20, -50.) (21, 0.) (22, 150.) (23, -25.) (28, -50.) (29, 25.) </div><div>row 23: (16, -25.) (17, 0.) (18, 25.) (19, -100.) (20, 25.) (21, -25.) (22, -25.) (23, 150.) (28, 0.) (29, -25.) </div><div>row 24: (6, 0.) (7, -25.) (12, -50.) (13, 25.) (18, -100.) (19, 25.) (24, 300.) (25, -50.) (26, -100.) (27, 25.) (28, -50.) (29, 25.) (30, 0.) (31, -25.) </div><div>row 25: (6, -25.) (7, 0.) (12, 25.) (13, -100.) (18, 25.) (19, -50.) (24, -50.) (25, 300.) (26, 25.) (27, -50.) (28, 25.) (29, -100.) (30, -25.) (31, 0.) </div><div>row 26: (12, 0.) (13, -25.) (14, -25.) (15, 25.) (24, -100.) (25, 25.) (26, 150.) (27, -25.) (30, -25.) (31, 0.) </div><div>row 27: (12, -25.) (13, 0.) (14, 0.) (15, -50.) (24, 25.) (25, -50.) (26, -25.) (27, 150.) (30, 25.) (31, -50.) </div><div>row 28: (18, 0.) (19, -25.) (22, -50.) (23, 0.) (24, -50.) (25, 25.) (28, 150.) (29, -25.) (30, -50.) (31, 25.) </div><div>row 29: (18, -25.) (19, 0.) (22, 25.) (23, -25.) (24, 25.) (25, -100.) (28, -25.) (29, 150.) (30, 0.) (31, -25.) </div><div>row 30: (24, 0.) (25, -25.) (26, -25.) (27, 25.) (28, -50.) (29, 0.) (30, 75.) (31, 0.) </div><div>row 31: (24, -25.) (25, 0.) (26, 0.) (27, -50.) (28, 25.) (29, -25.) (30, 0.) (31, 75.) </div></div><div><br></div><div><br></div><div><hr align="left" style="margin:0px 0px 10px;border-width:0px 0px 1px;border-top-style:initial;border-right-style:initial;border-left-style:initial;border-top-color:initial;border-right-color:initial;border-left-color:initial;border-bottom-style:solid;border-bottom-color:rgb(228,229,230);height:0px;line-height:0;font-size:0px;padding:20px 0px 0px;width:50px"><div style="font-size:14px;font-family:Verdana;color:rgb(0,0,0)"><div><div style="font-size:12px"><font face="Verdana">徐辉,Xu Hui<br>清华大学航天航空学院博士研究生<br>PhD Candidate, School of Aerospace Engineering<br>Tsinghua University<br>Tel: 188-1152-7137<br>Mail:<a href="mailto:459543524@qq.com" target="_blank">459543524@qq.com</a></font></div><div style="font-family:Verdana"><div><br></div></div></div>
</div></div><div> </div></blockquote></div></div></blockquote></div>