git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@12662 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2014-10-30 15:11:07 +00:00
parent 88d6e13898
commit 04fc77f85d

View File

@ -661,11 +661,14 @@ void Neighbor::init()
// anyghostlist = 1 if any non-occasional list stores neighbors of ghosts // anyghostlist = 1 if any non-occasional list stores neighbors of ghosts
anyghostlist = 0; anyghostlist = 0;
int anybuild = 0;
for (i = 0; i < nrequest; i++) { for (i = 0; i < nrequest; i++) {
if (lists[i]) { if (lists[i]) {
lists[i]->buildflag = 1; lists[i]->buildflag = 1;
if (pair_build[i] == NULL) lists[i]->buildflag = 0; if (pair_build[i] == NULL) lists[i]->buildflag = 0;
if (requests[i]->occasional) lists[i]->buildflag = 0; if (requests[i]->occasional) lists[i]->buildflag = 0;
if (lists[i]->buildflag) anybuild = 1;
lists[i]->growflag = 1; lists[i]->growflag = 1;
if (requests[i]->copy) lists[i]->growflag = 0; if (requests[i]->copy) lists[i]->growflag = 0;
@ -680,6 +683,18 @@ void Neighbor::init()
} else init_list_flags1_kokkos(i); } else init_list_flags1_kokkos(i);
} }
// no request has the buildflag set, so set it for the first request only
// this insure binning is done for any occasional neighbor lists
if (!anybuild) {
for (i = 0; i < nrequest; i++) {
if (lists[i]) {
lists[i]->buildflag = 1;
break;
}
}
}
#ifdef NEIGH_LIST_DEBUG #ifdef NEIGH_LIST_DEBUG
for (i = 0; i < nrequest; i++) lists[i]->print_attributes(); for (i = 0; i < nrequest; i++) lists[i]->print_attributes();
#endif #endif
@ -718,6 +733,16 @@ void Neighbor::init()
} else init_list_flags2_kokkos(i); } else init_list_flags2_kokkos(i);
} }
// no request had buildflag set, so we set it for the first request
// we also need to set other occasional neighbor list properties
if (!anybuild)
for (i = 0; i < nrequest; i++)
if (lists[i] && lists[i]->buildflag) {
if (lists[i]->growflag) glist[nglist++] = i;
if (lists[i]->stencilflag) slist[nslist++] = i;
}
#ifdef NEIGH_LIST_DEBUG #ifdef NEIGH_LIST_DEBUG
print_lists_of_lists(); print_lists_of_lists();
#endif #endif