Moved precompute() out of the terms in amoeba and hippo, to be involed in the first term in a time step: multipole for amoeba and repulsion for hippo
This commit is contained in:
@ -120,7 +120,27 @@ void hippo_gpu_clear() {
|
||||
HIPPOMF.clear();
|
||||
}
|
||||
|
||||
int** hippo_gpu_compute_repulsion(const int ago, const int inum_full,
|
||||
int** hippo_gpu_precompute(const int ago, const int inum_full, const int nall,
|
||||
double **host_x, int *host_type, int *host_amtype,
|
||||
int *host_amgroup, double **host_rpole,
|
||||
double **host_uind, double **host_uinp, double *host_pval,
|
||||
double *sublo, double *subhi, tagint *tag,
|
||||
int **nspecial, tagint **special,
|
||||
int *nspecial15, tagint **special15,
|
||||
const bool eflag_in, const bool vflag_in,
|
||||
const bool eatom, const bool vatom, int &host_start,
|
||||
int **ilist, int **jnum, const double cpu_time,
|
||||
bool &success, double *host_q, double *boxlo, double *prd) {
|
||||
return HIPPOMF.precompute(ago, inum_full, nall, host_x, host_type,
|
||||
host_amtype, host_amgroup, host_rpole,
|
||||
nullptr, nullptr, nullptr, sublo, subhi, tag,
|
||||
nspecial, special, nspecial15, special15,
|
||||
eflag_in, vflag_in, eatom, vatom,
|
||||
host_start, ilist, jnum, cpu_time,
|
||||
success, host_q, boxlo, prd);
|
||||
}
|
||||
|
||||
void hippo_gpu_compute_repulsion(const int ago, const int inum_full,
|
||||
const int nall, double **host_x, int *host_type,
|
||||
int *host_amtype, int *host_amgroup, double **host_rpole,
|
||||
double *sublo, double *subhi, tagint *tag, int **nspecial,
|
||||
@ -132,7 +152,7 @@ int** hippo_gpu_compute_repulsion(const int ago, const int inum_full,
|
||||
double *host_q, double *boxlo, double *prd,
|
||||
double cut2, double c0, double c1, double c2,
|
||||
double c3, double c4, double c5, void **tep_ptr) {
|
||||
return HIPPOMF.compute_repulsion(ago, inum_full, nall, host_x, host_type,
|
||||
HIPPOMF.compute_repulsion(ago, inum_full, nall, host_x, host_type,
|
||||
host_amtype, host_amgroup, host_rpole, sublo, subhi,
|
||||
tag, nspecial, special, nspecial15, special15,
|
||||
eflag, vflag, eatom, vatom, host_start, ilist, jnum,
|
||||
@ -147,7 +167,7 @@ void hippo_gpu_compute_dispersion_real(int *host_amtype, int *host_amgroup,
|
||||
aewald, off2);
|
||||
}
|
||||
|
||||
int** hippo_gpu_compute_multipole_real(const int ago, const int inum_full,
|
||||
void hippo_gpu_compute_multipole_real(const int ago, const int inum_full,
|
||||
const int nall, double **host_x, int *host_type,
|
||||
int *host_amtype, int *host_amgroup, double **host_rpole,
|
||||
double *host_pval, double *sublo, double *subhi, tagint *tag, int **nspecial,
|
||||
@ -157,7 +177,7 @@ int** hippo_gpu_compute_multipole_real(const int ago, const int inum_full,
|
||||
int **ilist, int **jnum, const double cpu_time,
|
||||
bool &success, const double aewald, const double felec, const double off2,
|
||||
double *host_q, double *boxlo, double *prd, void **tep_ptr) {
|
||||
return HIPPOMF.compute_multipole_real(ago, inum_full, nall, host_x, host_type,
|
||||
HIPPOMF.compute_multipole_real(ago, inum_full, nall, host_x, host_type,
|
||||
host_amtype, host_amgroup, host_rpole, host_pval, sublo, subhi,
|
||||
tag, nspecial, special, nspecial15, special15,
|
||||
eflag, vflag, eatom, vatom, host_start, ilist, jnum,
|
||||
|
||||
Reference in New Issue
Block a user