소스 검색

Temporary fix for boundary condition with different kernels.

Dhairya Malhotra 10 년 전
부모
커밋
34ed54efbd
1개의 변경된 파일2개의 추가작업 그리고 0개의 파일을 삭제
  1. 2 0
      include/fmm_pts.txx

+ 2 - 0
include/fmm_pts.txx

@@ -757,6 +757,8 @@ Matrix<typename FMMNode::Real_t>& FMM_Pts<FMMNode>::Precomp(int level, Mat_Type
     case BC_Type:
     {
       if(!this->Homogen() || MultipoleOrder()==0) break;
+      if(kernel->k_m2l->ker_dim[1]!=kernel->k_m2m->ker_dim[1]) break;
+      if(kernel->k_m2l->ker_dim[0]!=kernel->k_l2l->ker_dim[0]) break;
       const int* ker_dim=kernel->k_m2l->ker_dim;
       size_t mat_cnt_m2m=interac_list.ListCount(U2U_Type);
       size_t n_surf=(6*(MultipoleOrder()-1)*(MultipoleOrder()-1)+2);  //Total number of points.