diff --git a/lib/gpu/lal_hippo.cpp b/lib/gpu/lal_hippo.cpp index b4b84cc47d..12bf9cfd3c 100644 --- a/lib/gpu/lal_hippo.cpp +++ b/lib/gpu/lal_hippo.cpp @@ -597,7 +597,8 @@ int HippoT::polar_real(const int eflag, const int vflag) { } this->k_polar.set_size(GX,BX); - this->k_polar.run(&this->atom->x, &this->atom->extra, &coeff_amtype, &sp_polar, + this->k_polar.run(&this->atom->x, &this->atom->extra, + &coeff_amtype, &coeff_amclass, &sp_polar, &this->nbor->dev_nbor, &this->_nbor_data->begin(), &this->dev_short_nbor, &this->ans->force, &this->ans->engv, &this->_tep, diff --git a/lib/gpu/lal_hippo.cu b/lib/gpu/lal_hippo.cu index 3bfd4f7019..afc3cf10af 100644 --- a/lib/gpu/lal_hippo.cu +++ b/lib/gpu/lal_hippo.cu @@ -1642,7 +1642,8 @@ __kernel void k_hippo_umutual2b(const __global numtyp4 *restrict x_, __kernel void k_hippo_polar(const __global numtyp4 *restrict x_, const __global numtyp *restrict extra, - const __global numtyp4 *restrict coeff, + const __global numtyp4 *restrict coeff_amtype, + const __global numtyp4 *restrict coeff_amclass, const __global numtyp4 *restrict sp_polar, const __global int *dev_nbor, const __global int *dev_packed, @@ -1683,6 +1684,7 @@ __kernel void k_hippo_polar(const __global numtyp4 *restrict x_, numtyp4* polar3 = (numtyp4*)(&extra[8*nall]); numtyp4* polar4 = (numtyp4*)(&extra[12*nall]); numtyp4* polar5 = (numtyp4*)(&extra[16*nall]); + numtyp4* polar6 = (numtyp4*)(&extra[20*nall]); //numtyp4 xi__; @@ -1749,8 +1751,9 @@ __kernel void k_hippo_polar(const __global numtyp4 *restrict x_, // debug: // xi__ = ix; xi__.w = itype; - numtyp pdi = coeff[itype].x; - numtyp pti = coeff[itype].y; + numtyp corei = coeff_amclass[itype].z; // pcore[iclass]; + numtyp alphai = coeff_amclass[itype].w; // palpha[iclass]; + numtyp vali = polar6[i].x; for ( ; nbor