From 86fc7d455cacf6e74db9bf63e3a0dd9f3bc8187e Mon Sep 17 00:00:00 2001
From: sjplimp <sjplimp@f3b2605a-c512-4ea7-a41b-209d697bcdaa>
Date: Tue, 22 Mar 2016 00:17:14 +0000
Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14767
 f3b2605a-c512-4ea7-a41b-209d697bcdaa

---
 src/accelerator_intel.h | 3 +--
 src/input.cpp           | 7 -------
 src/integrate.cpp       | 6 +++---
 src/min.cpp             | 7 +++++++
 src/neighbor.cpp        | 6 ++++++
 5 files changed, 17 insertions(+), 12 deletions(-)

diff --git a/src/accelerator_intel.h b/src/accelerator_intel.h
index 9398a06f15..fab07989ff 100644
--- a/src/accelerator_intel.h
+++ b/src/accelerator_intel.h
@@ -24,7 +24,6 @@
   #ifdef LMP_INTEL_OFFLOAD
   #ifdef __INTEL_OFFLOAD
   template <class flt_t, class acc_t> friend class IntelBuffers;
-  inline int * special_flag_alloc() { return special_flag; }
   #endif
   #endif
 
@@ -32,7 +31,7 @@
   void *fix_intel;
 
   template <class flt_t, class acc_t>
-  void bin_atoms(void *, int *);
+  void bin_atoms(void *, int *, int *);
 
   template <class flt_t, class acc_t, int, int>
   void hbni(const int, NeighList *, void *, const int, const int, void *,
diff --git a/src/input.cpp b/src/input.cpp
index a387206241..3ceb906911 100644
--- a/src/input.cpp
+++ b/src/input.cpp
@@ -1605,13 +1605,6 @@ void Input::package()
     modify->add_fix(2+narg,fixarg);
     delete [] fixarg;
 
-    // set integrator = verlet/intel
-    // -sf intel does same thing in Update constructor via suffix
-
-    char *str;
-    str = (char *) "verlet/intel";
-    update->create_integrate(1,&str,0);
-
   } else error->all(FLERR,"Illegal package command");
 }
 
diff --git a/src/integrate.cpp b/src/integrate.cpp
index b825a19784..db71ef563c 100644
--- a/src/integrate.cpp
+++ b/src/integrate.cpp
@@ -57,9 +57,9 @@ void Integrate::init()
   // should add checks:
   // for any acceleration package that has its own integrate/minimize
   // in case input script has reset the run or minimize style explicitly
-  // e.g. invalid to have intel pair style with non-intel verlet
-  // but OK to have intel verlet with non intel pair style (just warn)
-  // ditto for USER-CUDA and KOKKOS package verlet with their pair, fix, etc
+  // e.g. invalid to have kokkos pair style with non-kokkos verlet
+  // but OK to have kokkos verlet with non kokkos pair style (just warn)
+  // ditto for USER-CUDA package verlet with their pair, fix, etc
   // making these checks would require all the pair, fix, etc styles have
   //   cuda, kokkos, intel flags
 }
diff --git a/src/min.cpp b/src/min.cpp
index a6cdfcc5fe..5cdd5428de 100644
--- a/src/min.cpp
+++ b/src/min.cpp
@@ -274,6 +274,7 @@ void Min::setup()
     else force->kspace->compute_dummy(eflag,vflag);
   }
 
+  modify->pre_reverse(eflag,vflag);
   if (force->newton) comm->reverse_comm();
 
   // update per-atom minimization variables stored by pair styles
@@ -354,6 +355,7 @@ void Min::setup_minimal(int flag)
     else force->kspace->compute_dummy(eflag,vflag);
   }
 
+  modify->pre_reverse(eflag,vflag);
   if (force->newton) comm->reverse_comm();
 
   // update per-atom minimization variables stored by pair styles
@@ -513,6 +515,11 @@ double Min::energy_force(int resetflag)
     timer->stamp(Timer::KSPACE);
   }
 
+  if (modify->n_pre_reverse) {
+    modify->pre_reverse(eflag,vflag);
+    timer->stamp(Timer::MODIFY);
+  }
+
   if (force->newton) {
     comm->reverse_comm();
     timer->stamp(Timer::COMM);
diff --git a/src/neighbor.cpp b/src/neighbor.cpp
index f2d355db04..206bd7ba91 100644
--- a/src/neighbor.cpp
+++ b/src/neighbor.cpp
@@ -1818,7 +1818,13 @@ void Neighbor::setup_bins()
   if (mbins > maxhead) {
     maxhead = mbins;
     memory->destroy(binhead);
+
+    // USER-INTEL package requires one additional element
+    #if defined(LMP_USER_INTEL)
+    memory->create(binhead,maxhead + 1,"neigh:binhead");
+    #else
     memory->create(binhead,maxhead,"neigh:binhead");
+    #endif
   }
 
   // create stencil of bins to search over in neighbor list construction
-- 
GitLab