我正在为我的代码使用 KiFMM 和 PETSc。串行版本没有问题,但是当我尝试将 MPI 与 2 个节点一起使用时,我现在收到一个错误(*trgPos)(j,i)
,其类型DblNumMat
如下所示:
http ://www.mrl.nyu.edu/~harper /kifmm3d/documentation/common/html/nummat_8hpp_18ed51e81f911a23442591467d7a83ca.html。
gdb 的回溯显示了这一点:
Program received signal SIGSEGV, Segmentation fault.
0x000000000070761e in NumMat<double>::operator() (this=0x0, i=0, j=0)
at /directory/src/Onepart/../../inc/KIFMM3D/common/nummat.hpp:101
101 assert( i>=0 && i<_m && j>=0 && j<_n );
(gdb) bt
#0 0x000000000070761e in NumMat<double>::operator() (this=0x0, i=0, j=0)
at /directory/src/Onepart/../../inc/KIFMM3D/common/nummat.hpp:101
任何人都知道为什么会发生这种情况以及我能做些什么?