remove cached copy of "layout" since this was not always initialized when used
This commit is contained in:
@ -114,7 +114,7 @@ Grid2d::Grid2d(LAMMPS *lmp, MPI_Comm gcomm, int gnx, int gny, int ixlo, int ixhi
|
||||
// additional intialization
|
||||
// other constructor invokes this from setup_grid()
|
||||
|
||||
initialize();
|
||||
Grid2d::initialize();
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -522,7 +522,7 @@ void Grid2d::ghost_grid()
|
||||
// also ensure no other procs use ghost cells beyond +y limit
|
||||
|
||||
if (yextra) {
|
||||
if (layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->myloc[1] == comm->procgrid[1]-1) inyhi = outyhi = ny - 1;
|
||||
} else {
|
||||
if (comm->mysplit[1][1] == 1.0) inyhi = outyhi = ny - 1;
|
||||
@ -553,15 +553,13 @@ void Grid2d::ghost_grid()
|
||||
|
||||
void Grid2d::extract_comm_info()
|
||||
{
|
||||
layout = comm->layout;
|
||||
|
||||
// for non TILED layout:
|
||||
// proc xyz lohi = my 4 neighbor procs in this MPI_Comm
|
||||
// these proc IDs can be overridden by caller using set_proc_neighs()
|
||||
// xyz split = copy of 1d vectors in Comm
|
||||
// grid2proc = copy of 3d array in Comm
|
||||
|
||||
if (layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->layout != Comm::LAYOUT_TILED) {
|
||||
procxlo = comm->procneigh[0][0];
|
||||
procxhi = comm->procneigh[0][1];
|
||||
procylo = comm->procneigh[1][0];
|
||||
@ -585,7 +583,7 @@ void Grid2d::extract_comm_info()
|
||||
// RCBinfo.cut = this proc's inlo in that dim
|
||||
// Allgather creates the tree of dims and cuts
|
||||
|
||||
if (layout == Comm::LAYOUT_TILED) {
|
||||
if (comm->layout == Comm::LAYOUT_TILED) {
|
||||
rcbinfo = (RCBinfo *)
|
||||
memory->smalloc(nprocs*sizeof(RCBinfo),"grid3d:rcbinfo");
|
||||
RCBinfo rcbone;
|
||||
@ -615,7 +613,7 @@ void Grid2d::extract_comm_info()
|
||||
|
||||
void Grid2d::setup_comm(int &nbuf1, int &nbuf2)
|
||||
{
|
||||
if (layout != Comm::LAYOUT_TILED) setup_comm_brick(nbuf1,nbuf2);
|
||||
if (comm->layout != Comm::LAYOUT_TILED) setup_comm_brick(nbuf1,nbuf2);
|
||||
else setup_comm_tiled(nbuf1,nbuf2);
|
||||
}
|
||||
|
||||
@ -1039,7 +1037,7 @@ void Grid2d::setup_comm_tiled(int &nbuf1, int &nbuf2)
|
||||
|
||||
int Grid2d::ghost_adjacent()
|
||||
{
|
||||
if (layout != Comm::LAYOUT_TILED) return ghost_adjacent_brick();
|
||||
if (comm->layout != Comm::LAYOUT_TILED) return ghost_adjacent_brick();
|
||||
return ghost_adjacent_tiled();
|
||||
}
|
||||
|
||||
@ -1085,7 +1083,7 @@ int Grid2d::ghost_adjacent_tiled()
|
||||
void Grid2d::forward_comm(int caller, void *ptr, int which, int nper, int nbyte,
|
||||
void *buf1, void *buf2, MPI_Datatype datatype)
|
||||
{
|
||||
if (layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->layout != Comm::LAYOUT_TILED) {
|
||||
if (caller == KSPACE)
|
||||
forward_comm_brick<KSpace>((KSpace *) ptr,which,nper,nbyte,
|
||||
buf1,buf2,datatype);
|
||||
@ -1190,7 +1188,7 @@ forward_comm_tiled(T *ptr, int which, int nper, int nbyte,
|
||||
void Grid2d::reverse_comm(int caller, void *ptr, int which, int nper, int nbyte,
|
||||
void *buf1, void *buf2, MPI_Datatype datatype)
|
||||
{
|
||||
if (layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->layout != Comm::LAYOUT_TILED) {
|
||||
if (caller == KSPACE)
|
||||
reverse_comm_brick<KSpace>((KSpace *) ptr,which,nper,nbyte,
|
||||
buf1,buf2,datatype);
|
||||
@ -1314,10 +1312,6 @@ void Grid2d::setup_remap(Grid2d *old, int &nremap_buf1, int &nremap_buf2)
|
||||
|
||||
deallocate_remap();
|
||||
|
||||
// set layout to current Comm layout
|
||||
|
||||
layout = comm->layout;
|
||||
|
||||
// overlaps of my old decomp owned box with all owned boxes in new decomp
|
||||
// noverlap_old = # of overlaps, including self
|
||||
// overlap_old = vector of overlap info in Overlap data struct
|
||||
@ -1654,7 +1648,7 @@ int Grid2d::compute_overlap(int ghostflag, int *box, int *pbc, Overlap *&overlap
|
||||
|
||||
// test obox against appropriate layout
|
||||
|
||||
if (layout != Comm::LAYOUT_TILED) {
|
||||
if (comm->layout != Comm::LAYOUT_TILED) {
|
||||
|
||||
// find comm->procgrid indices in each dim for box bounds
|
||||
|
||||
|
||||
Reference in New Issue
Block a user